Sage, et flott matematisk verktøy for Linux

Når det gjelder å løse matematiske ligninger på Linux, har vi tidligere diskutert GeoGebra, en programvare for geometri og 2D-grafikk. Men hvis du ser etter kraftigere verktøy, bør du prøve Sage. Vi har alle hørt om Matlab eller Magma, men Sage tilbyr et åpen kildekode-alternativ til disse to, og er, etter min mening, enklere å bruke.

Anlegget

Sage er alltid under utvikling, noe som betyr at nye forbedringer legges til veldig ofte. For å installere det fra kilden:

Først av alt må du tilfredsstille noen avhengigheter.

sudo apt-get install build-essential m4 gfortran libssl-dev dpkg-dev

Du kan deretter laste ned skriftene fra den offisielle siden til . Trekk dem ut og start skriptet fra en terminal

./hacer

Merk : Du trenger omtrent 3 GB ledig plass for at Sage skal fungere skikkelig. Sørg for at du har dem før du slipper konstruksjonen (noe som vil ta litt tid).

Hvis du foretrekker den binære versjonen, er det også en PPA tilgjengelig for Ubuntu:

sudo apt-add-repository -y ppa:aims/sagemath
sudo apt-get update
sudo apt-get install sagemath-upstream-binary

Du kan også installere alle valgfrie pakker:

sudo apt-get install texlive evince xpdf xdvi tk8.5-dev

Bruk

For å starte Sage, kan du gjøre det med kommandoen

./sage

fra den nedlastede katalogen.

Hvis du ønsker å lansere salvie fra hvor som helst, kan du opprette en symbolsk kobling med

ln -s[path to the sage launcher] /usr/local/bin/sage

eller til og med lage et alias i ~/.bashrc-filen din som jeg gjorde:

alias sage=/home/adrien/sage-5.2/sage

Sage er et ikke-grafisk verktøy som standard. Ved lansering bør du få noe slikt

Du har da muligheten: fortsett med konsollen, eller gå til den nettleserbaserte GUI ved å skrive

 notebook()

Begge er praktisk talt like når det gjelder funksjonalitet. Det grafiske brukergrensesnittet er mer intuitivt, spesielt for diagrammer og grafer, men terminalen fungerer ganske bra også. Bruk GUI, prøv kommandoen

circulo((0,0), 1, rgbcolor=(1,1,0))

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>.

Du vil se en gul sirkel som vises under den.

Hvis du gjør det samme i konsollen, åpnes standardbildevisningen og viser den samme sirkelen.

Merk : Både GUI og konsollen har en autofullføringsfunksjon.

Nå som du har valgt sage-grensesnittet, kan vi begynne å snakke om selve funksjonene. Salvie er helt enorm, og det mener jeg. Det er ingen måte vi kan diskutere alle aspekter i én artikkel. I stedet vil jeg vise deg noen vanlige apper du kanskje vil prøve.

1. Kalkulator

Ja, Sage kan gjøre litt grunnleggende matematikk. Addisjon, multiplikasjon osv. Siden det primært er skrevet i Python, kan du også bruke python-syntaks til å gjøre ting som heltallsdivisjon.

2. Polynomrøtter

Det er ganske vanlig å få et polynom og bedt om dets røtter. Med Sage lager du først en polynomring med

P.x> = PolynomialRing(RR)

hvor x vil være generatoren, og RR betyr de reelle tallene. Hvis du vil at ringen din skal være over rasjonelle tall, for eksempel, erstatt RR med QQ. Deretter kopierer du polynomet ditt:

t = x^2 - 25

Og så spør du etter røttene

t.roots()

Merk : dette vil returnere røttene i basisringen til polynomet og dets multiplisiteter. Hvis du vil at røttene skal være fra en annen grunnring, send den som et argument til roots()-funksjonen.

3. Invers matrise

Hvis du er litt interessert i business eller økonomi, kan det hende du har sett matriser på et tidspunkt i livet ditt. Generelt er det en hel prosess for å finne inversen til disse matrisene. Vel, Sage gjør det veldig enkelt for deg. Lag din matrise på baseringen du ønsker.

m = matriz(QQ, [[1, 2],[3, 4]]])

Og finn det motsatte:

m.inverse()

4. Grafikk

Sage har også noen grafiske muligheter. Før vi tegner en sirkel med

circulo((0,0), 1, rgbcolor=(1,1,0))

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>.

Jeg er ganske sikker på at du forsto at den første parameteren var sentrum av sirkelen, den andre var radius, og den siste var fargen på sirkelen i RGB-standarden. Vel, du kan også plotte grunnleggende funksjoner ved først å erklære en variabel:

x = var('x')

Og bruk deretter plot()-funksjonen:

plot(x^3, (-10,10))

Det første argumentet er ligningen til funksjonen, det andre er spennet. Så her spurte jeg om den kubiske funksjonen vist fra -10 til 10 på x-grafen.

Merk : Hvis du har Jmol installert, kan du til og med lage 3D-plott ved å deklarere to variabler

x, y = var('x,y')

Og bruk deretter draw3d()-funksjonen:

plot3d(x^2 + y^2, (x,-2,2), (y,-2,2))

5. Løse ligninger

Noen ganger vil vi ha en løsning på en ligning, men kalkulatoren gir oss bare en tilnærming. Det er enda verre hvis det er andre variabler i den ligningen og vi vil at løsningen skal uttrykkes i form av dem. I flere år på videregående ble jeg sittende fast ved å gjøre det manuelt. For noe tull! Sage gjør det perfekt. Deklarer alle variablene dine

x, a, b, c = var('x a b c')

Og bruk deretter solve()-funksjonen, med ligningen(e) som det første argumentet, og variabelen(e) du vil uttrykkes etter:

solve([x - 3*a == 6, x + b*c == 10], x, b)

Skulle ønske jeg visste det på videregående...

6. Differensiering og integrasjon

Her er den ultimate appen når du er skikkelig lat. Du kan bruke dette programmet til å differensiere og integrere funksjoner. Som vanlig, deklarer variablene dine

 x = var('x')

Og bruk deretter diff()-funksjonen eller integrate()-funksjonen.

 diff(x^3 + 4*x + 16, x)

å differensiere og

 integral(x^3 + 4*x + 16, x)

for integrering.

konklusjon

Salvie er virkelig et fantastisk verktøy. Syntaksen er rask å lære og forblir ganske standard. Ulempen er at dokumentasjonen virkelig er noe å lese for å forstå hva som faktisk kan gjøres. Appene er så mange at det er lett å gå seg vill. Du kan gjøre differensialligninger sammen med kryptografi. Og det blir så spesifikt at akkurat nå er en funksjon for å finne delingsfeltet til polynomer over det endelige feltet under utvikling (ja, jeg aner ikke hva det betyr heller).

Har du noe annet eksempel å foreslå? Et spørsmål om Sage? Gi oss beskjed i kommentarene.

Bildekreditt: matte av BigStockPhoto.

Hvis du vil lese flere artikler som Sage, et flott matematisk verktøy for Linux, kan du besøke kategorien Android.

Index
  1. Anlegget
  2. Bruk
  3. 1. Kalkulator
  4. 2. Polynomrøtter
  5. 3. Invers matrise
  6. 4. Grafikk
  7. 5. Løse ligninger
  8. 6. Differensiering og integrasjon
  9. konklusjon

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *

Go up