Maksimalni opis. Kako raditi s maxima

Matematički paket Maxima jedna je od najboljih besplatnih zamjena za MathCAD.

Ovaj udžbenik (u pdf formatu) može se koristiti u disciplinama matematičke analize, diferencijalnih jednadžbi, aplikacijskih programskih paketa itd. u različitim specijalnostima u ustanovama visokog stručnog obrazovanja, ako je državnim obrazovnim standardom predviđeno proučavanje odjeljka „Diferencijalni Jednadžbe”, kao iu okviru izbornih predmeta. Također može biti koristan za upoznavanje sa sustavima računalne matematike u specijaliziranim razredima općeobrazovnih ustanova s ​​produbljenim studijem matematike i računarstva.

  • Predgovor
  • Poglavlje 1. Osnove rada u sustavu računalne matematike Maxima
    • 1.1. O sustavu Maxima
    • 1.2. Instalacija Maxima na osobno računalo
    • 1.3. Sučelje glavnog prozora Maxima
    • 1.4. Rad sa ćelijama u Maximi
    • 1.5. Rad s Maxima sustavom pomoći
    • 1.6. Funkcije i naredbe sustava Maxima
    • 1.7. Upravljanje procesom obračuna u Maximi
    • 1.8. Jednostavne transformacije izraza
    • 1.9. Rješavanje algebarskih jednadžbi i njihovih sustava
    • 1.10. Grafičke mogućnosti
  • Poglavlje 2. Numeričke metode za rješavanje diferencijalnih jednadžbi
    • 2.1. Opće informacije o diferencijalnim jednadžbama
    • 2.2. Numeričke metode rješavanja Cauchyjevog problema za običnu diferencijalnu jednadžbu prvog reda
      • 2.2.1. Eulerova metoda
      • 2.2.2. Euler-Cauchyjeva metoda
      • 2.2.3. Runge-Kutta metoda 4 reda točnosti
    • 2.3. Rješavanje rubnih problema za obične diferencijalne jednadžbe metodom konačnih razlika
    • 2.4. Mrežna metoda za rješavanje parcijalnih diferencijalnih jednadžbi
  • Poglavlje 3. Pronalaženje rješenja diferencijalnih jednadžbi u sustavu Maxima
    • 3.1. Ugrađene funkcije za pronalaženje rješenja diferencijalnih jednadžbi
    • 3.2. Rješavanje diferencijalnih jednadžbi i njihovih sustava u simboličkom obliku
    • 3.3. Konstrukcija putanja i polja smjerova diferencijalnih jednadžbi.
    • 3.4. Primjena numeričkih metoda za rješavanje Cauchyjevog problema za obične diferencijalne jednadžbe
      • 3.4.1. Eulerova metoda
      • 3.4.2. Euler-Cauchyjeva metoda
      • 3.4.3. Runge-Kutta metoda
    • 3.5. Implementacija metode konačnih razlika za rješavanje problema rubnih vrijednosti za obične diferencijalne jednadžbe
    • 3.6. Primjena mrežne metode za parcijalne diferencijalne jednadžbe
  • Zadaci za samostalno rješavanje
  • Književnost

Predgovor

Teorija diferencijalnih jednadžbi jedna je od najvećih grana moderne matematike. Jedna od glavnih značajki diferencijalnih jednadžbi je izravna veza između teorije diferencijalnih jednadžbi i primjena. Proučavajući bilo koji fizikalni fenomen, istraživač prije svega stvara njegovu matematičku idealizaciju ili matematički model, zapisuje osnovne zakone koji upravljaju tim fenomenom u matematičkom obliku. Vrlo često se ti zakoni mogu izraziti u obliku diferencijalnih jednadžbi. Ispostavilo se da su to modeli raznih pojava mehanike kontinuuma, kemijskih reakcija, električnih i magnetskih pojava itd. Proučavanjem dobivenih diferencijalnih jednadžbi zajedno s dodatnim uvjetima, koji se u pravilu zadaju u obliku početnih i rubnih uvjeta , matematičar dobiva informacije o fenomenu koji se događa, ponekad može saznati njegovu prošlost i budućnost.

Da biste sastavili matematički model u obliku diferencijalnih jednadžbi, u pravilu morate poznavati samo lokalne veze i ne trebate informacije o cjelokupnom fizičkom fenomenu u cjelini. Matematički model omogućuje proučavanje fenomena u cjelini, predviđanje njegovog razvoja i kvalitativne procjene mjerenja koja se u njemu događaju tijekom vremena. Na temelju analize diferencijalnih jednadžbi otkriveni su elektromagnetski valovi.

Možemo reći da je potreba rješavanja diferencijalnih jednadžbi za potrebe mehanike, odnosno pronalaženja trajektorija gibanja, pak, bila poticaj Newtonu da stvori novi račun. Primjene novog računa na probleme geometrije i mehanike napravljene su putem običnih diferencijalnih jednadžbi.

Uzimajući u obzir suvremeni razvoj računalne tehnologije i intenzivan razvoj novog smjera - računalne matematike - programski paketi koji se nazivaju sustavi računalne matematike postali su široko rasprostranjeni i traženi.

Računalna matematika novi je smjer u znanosti i obrazovanju koji je nastao na sjecištu fundamentalne matematike, informacijskih i računalnih tehnologija. Računalni matematički sustav (SCM) skup je programa koji omogućuje automatiziranu, tehnološki objedinjenu i zatvorenu obradu matematičkih problema prilikom zadavanja uvjeta u posebno dizajniranom jeziku.

Suvremeni sustavi računalne matematike su programi s višeprozorskim grafičkim sučeljem i razvijenim sustavom pomoći, što ih čini lakšim za učenje i korištenje. Glavni trendovi u razvoju SCM-a su rast matematičkih mogućnosti, posebno u području analitičkih i simboličkih izračuna, značajno širenje alata za vizualizaciju za sve faze izračuna, široka uporaba 2D i 3D grafike, integracija raznih međusobnog i drugog softvera, širok pristup Internetu, organiziranje suradnje na obrazovnim i znanstvenim projektima na Internetu, korištenje alata za obradu animacije i slike, multimedijskih alata i dr.

Značajna okolnost koja je donedavno sprječavala široku primjenu SCM-a u obrazovanju je visoka cijena profesionalnog znanstvenog matematičkog softvera. Međutim, nedavno mnoge tvrtke koje razvijaju i distribuiraju takve programe predstavljaju (putem Interneta - http://www.softline.ru) prethodne verzije svojih programa za besplatnu upotrebu, naširoko koriste sustav popusta za obrazovne ustanove i distribuiraju demo ili probne verzije besplatnih programa

Osim toga, pojavljuju se besplatni analozi računalnih matematičkih sustava, na primjer, Maxima, Scilab, Octave itd.

Ovaj vodič ispituje mogućnosti računalnog matematičkog sustava Maxima za pronalaženje rješenja diferencijalnih jednadžbi.

Zašto Maxima?

Prvo, Maxima sustav je neprofitni open source projekt. Maxima pripada klasi softverskih proizvoda koji se distribuiraju pod GNU GPL (Opća javna licenca).

Drugo, Maxima je program za rješavanje matematičkih problema u numeričkom i simboličkom obliku. Raspon njegovih mogućnosti je vrlo širok: radnje za transformaciju izraza, rad s dijelovima izraza, rješavanje problema linearne algebre, matematičke analize, kombinatorike, teorije brojeva, analize tenzora, statistički problemi, konstruiranje grafova funkcija na ravnini iu prostoru u raznim koordinatnim sustavima itd. d.

Treće, Maxima sada ima moćno, učinkovito i jednostavno GUI za više platformi pod nazivom WxMaxima (http://wxmaxima.sourceforge.net).

Autori knjige već deset godina proučavaju računalne matematičke sustave kao što su Mathematica, Maple, MathCad. Stoga, poznavajući mogućnosti ovih softverskih proizvoda, posebice za pronalaženje rješenja diferencijalnih jednadžbi, želio sam proučiti pitanje vezano uz organizaciju izračuna u simboličkom obliku u slobodno distribuiranim računalnim matematičkim sustavima.

Ovaj priručnik govori o mogućnostima organiziranja procesa traženja rješenja diferencijalnih jednadžbi na temelju sustava Maxima te sadrži opće informacije o organizaciji rada u sustavu.

Priručnik se sastoji od 3 poglavlja. Prvo poglavlje upoznaje čitatelje s wxMaxima grafičkim sučeljem sustava Maxima, značajkama rada u njemu i sintaksom jezika sustava. Razmatranje sustava počinje time gdje možete pronaći distribuciju sustava i kako ga instalirati. U drugom poglavlju razmatraju se opća pitanja teorije diferencijalnih jednadžbi i numeričke metode za njihovo rješavanje.

Treće poglavlje posvećeno je ugrađenim funkcijama računalnog matematičkog sustava Maxima za pronalaženje rješenja običnih diferencijalnih jednadžbi 1. i 2. reda u simboličkom obliku. Također u trećem poglavlju prikazana je implementacija numeričkih metoda za rješavanje diferencijalnih jednadžbi u sustavu Maxima. Na kraju priručnika nalaze se zadaci za samostalno rješavanje.

Nadamo se da će široki krug korisnika biti zainteresiran za priručnik te da će im on postati pomoćnik u svladavanju novog alata za rješavanje matematičkih problema.

T.N. Gubina, E.V. Andropova
Yelets, srpanj 2009

p.s. Brzi početak: za izvršavanje naredbi i funkcije u mwMaxima, prvo morate unijeti samu naredbu i zatim pritisnuti crtl+Enter.


Operacije matematičke analize

Iznosi

Funkcija zbroja koristi se za pronalaženje zbrojeva. Sintaksa funkcije:

Zbroj (izraz, varijabla, donja granica promjene varijable, gornja granica promjene varijable)

Na primjer:

Ako zadnjem argumentu dodijelite vrijednost sistemske varijable pozitivna beskonačnost "inf", to će ukazati na nepostojanje gornje granice i izračunat će se beskonačni zbroj. Također, izračunat će se beskonačni zbroj ako argumentu "donja granica promjene varijable" dodijelite vrijednost sistemske varijable negativne beskonačnosti "minf". Iste vrijednosti koriste se u drugim funkcijama matematičke analize.

Na primjer:


Djela

Za pronalaženje konačnih i beskonačnih umnožaka upotrijebite funkciju umnožaka. Ima iste argumente kao funkcija zbroja.

Na primjer:


Ograničenja

Da biste pronašli ograničenja, upotrijebite funkciju ograničenja.

Sintaksa funkcije:

granica (izraz, varijabla, prijelomna točka)

Ako je argument "breakpoint" postavljen na "inf", to će značiti nepostojanje granice.

Na primjer:

Za izračun jednostranih granica koristi se dodatni argument koji ima vrijednost plus za izračun granica s desne strane i minus za lijevu stranu.

Na primjer, proučimo kontinuitet funkcije arctan(1/(x - 4)). Ova funkcija je nedefinirana u točki x = 4. Izračunajmo granice s desne i lijeve strane:

Kao što vidimo, točka x = 4 je točka diskontinuiteta prve vrste za ovu funkciju, jer postoje granice s lijeve i desne strane koje su jednake -PI/2 odnosno PI/2.


Diferencijali

Funkcija diff koristi se za pronalaženje diferencijala. Sintaksa funkcije:

diff(izraz, varijabla1, red derivacije za varijablu1 [,varijabla2, red derivacije za varijablu2,...])

gdje je izraz funkcija koja se diferencira, drugi argument je varijabla s obzirom na koju mora biti uzet izvod, treći (neobavezno) je redoslijed izvoda (prema zadanom - prvi red).

Na primjer:

Općenito, samo je prvi argument potreban za diff funkciju. U ovom slučaju funkcija vraća diferencijal izraza. Diferencijal odgovarajuće varijable označen je s del(ime varijable):

Kao što možemo vidjeti iz sintakse funkcije, korisnik ima mogućnost simultano definirati nekoliko varijabli diferenciranja i postaviti redoslijed za svaku od njih:

Ako koristite parametarsku funkciju, mijenja se način pisanja funkcije: iza naziva funkcije ispisuju se simboli ":=", a funkciji se pristupa preko njezina naziva s parametrom:

Derivacija se može izračunati u danoj točki. To se radi ovako:

Funkcija diff također se koristi za označavanje derivata u diferencijalnim jednadžbama, kao što je objašnjeno u nastavku.


Integrali

Za pronalaženje integrala u sustavu koristite funkciju integrirati. Za pronalaženje neodređenog integrala funkcije koriste se dva argumenta: naziv funkcije i varijabla nad kojom se vrši integracija. Na primjer:

Ako je odgovor dvosmislen, Maxima može postaviti dodatno pitanje:

Odgovor mora sadržavati tekst iz pitanja. U ovom slučaju, ako je vrijednost varijable y veća od "0", bit će "pozitivna", au suprotnom - "negativna". U tom slučaju može se unijeti samo prvo slovo riječi.

Da biste pronašli određeni integral u funkciji, morate navesti dodatne argumente: granice integrala:

Maxima također dopušta beskonačna ograničenja integracije. Da biste to učinili, vrijednosti "-inf" i "inf" koriste se za treći i četvrti argument funkcije:

Da biste pronašli približnu vrijednost integrala u numeričkom obliku, kao što je ranije navedeno, trebali biste odabrati rezultat u izlaznoj ćeliji, pozvati kontekstni izbornik na njemu i odabrati stavku "To Float" (pretvoriti u broj s pomičnim zarezom) .

Sustav također može izračunati višestruke integrale. Da biste to učinili, funkcije integriranja ugniježđene su jedna u drugu. Slijede primjeri izračuna dvostrukog neodređenog integrala i dvostruko određenog integrala:


Rješenja diferencijalnih jednadžbi

Što se tiče mogućnosti rješavanja diferencijalnih jednadžbi, Maxima je znatno inferiorna u odnosu na, na primjer, Maple. Ali Maxima vam još uvijek omogućuje rješavanje običnih diferencijalnih jednadžbi prvog i drugog reda, kao i njihovih sustava. Za to se, ovisno o namjeni, koriste dvije funkcije. Za opće rješavanje običnih diferencijalnih jednadžbi koristi se funkcija ode2, a za pronalaženje rješenja jednadžbi ili sustava jednadžbi na temelju početnih uvjeta koristi se funkcija desolve.

Funkcija ode2 ima sljedeću sintaksu:

ode2(jednadžba, zavisna varijabla, nezavisna varijabla);

Funkcija diff koristi se za predstavljanje derivacija u diferencijalnim jednadžbama. Ali u ovom slučaju, kako bi se prikazala ovisnost funkcije o njenom argumentu, ona se piše kao "diff(f(x), x), a sama funkcija je f(x).

Primjer. Pronađite opće rješenje obične diferencijalne jednadžbe prvog reda y" - ax = 0.

Ako je vrijednost desne strane jednadžbe nula, tada se može u potpunosti izostaviti. Naravno, desna strana jednadžbe može sadržavati izraz.

Kao što možete vidjeti, pri rješavanju diferencijalnih jednadžbi, Maxima koristi integracijsku konstantu %c, koja je, s matematičkog gledišta, proizvoljna konstanta određena dodatnim uvjetima.

Postoji još jedan način rješavanja obične diferencijalne jednadžbe, koji je lakši za korisnika. Da biste to učinili, pokrenite naredbu Equations > Solve ODE i unesite argumente funkcije ode2 u prozor Solve ODE.

Maxima vam omogućuje rješavanje diferencijalnih jednadžbi drugog reda. Za to se također koristi funkcija ode2. Za označavanje derivacija u diferencijalnim jednadžbama koristi se diff funkcija u koju se dodaje još jedan argument - red jednadžbe: "diff(f(x), x, 2). Na primjer, rješenje obične sekunde diferencijalna jednadžba reda a·y"" + b·y" = 0 izgledat će ovako:

Zajedno s funkcijom ode2 možete koristiti tri funkcije čija vam uporaba omogućuje pronalaženje rješenja pod određenim ograničenjima na temelju općeg rješenja diferencijalnih jednadžbi dobivenih funkcijom ode2:

  1. ic1 (rezultat funkcije ode2, početna vrijednost nezavisne varijable u obliku x = x 0, vrijednost funkcije u točki x 0 u obliku y = y 0). Dizajniran za rješavanje diferencijalne jednadžbe prvog reda s početnim uvjetima.
  2. ic2(rezultat funkcije ode2, početna vrijednost nezavisne varijable u obliku x = x 0, vrijednost funkcije u točki x 0 u obliku y = y 0, početna vrijednost za prvu derivaciju zavisne varijable u odnosu na nezavisna varijabla u obliku (y,x) = dy 0). Dizajniran za rješavanje diferencijalne jednadžbe drugog reda s početnim uvjetima
  3. bc2(rezultat funkcije ode2, početna vrijednost nezavisne varijable u obliku x = x 0, vrijednost funkcije u točki x 0 u obliku y = y 0, konačna vrijednost nezavisne varijable u obliku x = x n, vrijednost funkcije u točki x n u obliku y = y n). Dizajniran za rješavanje problema rubne vrijednosti za diferencijalnu jednadžbu drugog reda.

Detaljna sintaksa ovih funkcija može se pronaći u dokumentaciji sustava.

Riješimo Cauchyjev problem za jednadžbu prvog reda y" - ax = 0 s početnim uvjetom y(n) = 1.

Navedimo primjer rješavanja rubnog problema za diferencijalnu jednadžbu drugog reda y""+y=x s početnim uvjetima y(o) = 0; y(4)=1.

Treba imati na umu da vrlo često sustav ne može riješiti diferencijalne jednadžbe. Na primjer, kada pokušavamo pronaći opće rješenje obične diferencijalne jednadžbe prvog reda, dobivamo:

U takvim slučajevima Maxima ili izdaje poruku o pogrešci (kao u ovom primjeru) ili jednostavno vraća "false".

Druga opcija za rješavanje običnih diferencijalnih jednadžbi prvog i drugog reda dizajnirana je za pronalaženje rješenja s početnim uvjetima. Implementira se pomoću funkcije desolve.

Sintaksa funkcije:

razriješi(diferencijalna jednadžba, varijabla);

Ako se rješava sustav diferencijalnih jednadžbi ili postoji više varijabli, tada se jednadžba i/ili varijable prikazuju u obliku liste:

desolve([popis jednadžbi], [varijabla1, varijabla2,...]);

Kao i kod prethodne verzije, diff funkcija se koristi za označavanje derivacija u diferencijalnim jednadžbama, koja ima oblik “diff(f(x), x).

Početne vrijednosti za varijablu osigurava funkcija atvalue. Ova funkcija ima sljedeću sintaksu:

atvalue(funkcija, varijabla = točka, vrijednost u točki);

U ovom slučaju, predviđeno je da su vrijednosti funkcija i (ili) njihovih derivata postavljene na nulu, stoga je sintaksa funkcije atvalue:

atvalue(funkcija, varijabla = 0, vrijednost u točki "0");

Primjer. Pronađite rješenje diferencijalne jednadžbe prvog reda y"=sin(x) s početnim uvjetom.

Imajte na umu da čak i ako ne postoji početni uvjet, funkcija će također raditi i dati rezultat:

To omogućuje testiranje rješenja za određenu početnu vrijednost. Zaista, zamjenom vrijednosti y(0) = 4 u rezultirajući rezultat, dobivamo y(x) = 5 - cos(x).

Desolve funkcija omogućuje rješavanje sustava diferencijalnih jednadžbi s početnim uvjetima.

Navedimo primjer rješavanja sustava diferencijalnih jednadžbi s početnim uvjetima y(0) = 0; z(0) = 1.


Obrada podataka

Statistička analiza

Sustav omogućuje izračun osnovne statističke deskriptivne statistike, uz pomoć koje se opisuju najopćenitija svojstva empirijskih podataka. Osnovna deskriptivna statistika uključuje srednju vrijednost, varijancu, standardnu ​​devijaciju, medijan, mod, maksimalne i minimalne vrijednosti, raspon varijacije i kvartile. Mogućnosti Maxime u tom smislu su donekle skromne, ali većinu ovih statistika je prilično lako izračunati uz njenu pomoć.

Najlakši način za izračunavanje statističke deskriptivne statistike je korištenje palete Statistika.

Ploča sadrži niz alata grupiranih u četiri skupine.

  1. Statistički pokazatelji (deskriptivna statistika):
    • srednja (aritmetička sredina);
    • medijan(medijan);
    • varijanca (varijanca);
    • devijacija (standardna devijacija).
  2. Testovi.
  3. Konstrukcija pet vrsta grafova:
    • histogram. Koristi se prvenstveno u statistici za opisivanje intervalnih nizova distribucija. Tijekom njegove konstrukcije, dijelovi ili frekvencije iscrtavaju se duž ordinatne osi, a vrijednosti atributa iscrtavaju se na apscisnoj osi;
    • scatter plot (korelacijski dijagram, korelacijsko polje, Scatter Plot) - grafikon točaka kada se točke ne spajaju. Koristi se za prikaz podataka za dvije varijable, od kojih je jedna faktor, a druga ishod. Uz njegovu pomoć, grafički prikaz parova podataka izvodi se u obliku skupa točaka ("oblaka") na koordinatnoj ravnini;
    • Stupčasti grafikon - grafikon u obliku okomitih stupaca;
    • sektorski ili tortni grafikon (Pie Chart). Takav dijagram podijeljen je u nekoliko segmenata-sektora, od kojih je površina svakog proporcionalna njihovom dijelu;
    • box plot (box with a whisker, box with a whisker, Box Plot, box-and-whisker dijagram). To je onaj koji se najčešće koristi za prikaz statističkih podataka. Informacije u ovoj tabeli su vrlo informativne i korisne. Istovremeno prikazuje nekoliko vrijednosti koje karakteriziraju niz varijacija: minimalne i maksimalne vrijednosti, prosjek i medijan, prvi i treći kvartil.
  4. Alati za čitanje ili izradu matrice. Za korištenje alata palete morate imati početne podatke u obliku matrice - jednodimenzionalnog niza. Možete ga stvoriti u dokumentu s trenutnom sesijom i naknadno zamijeniti njegovo ime kao unos u prozorima alata palete na isti način kao rješavanje jednadžbi pomoću ploče Opće matematike. Također možete izravno unijeti podatke u prozore za unos podataka. U tom se slučaju unose u obliku koji je prihvaćen u sustavu, odnosno u uglatim zagradama i odvojene zarezima. Jasno je da je prva opcija puno bolja jer zahtijeva samo jednokratni unos podataka.

Osim panela, svi statistički alati se također mogu koristiti koristeći odgovarajuće funkcije.

Maksima- računalni sustav koji vam omogućuje rad sa simboličkim i numeričkim izrazima. Podržava operacije proširenja niza, diferencijacije, Laplaceove transformacije, integracije. Program se ne boji običnih diferencijalnih jednadžbi, matrica i tenzora, sustava linearnih jednadžbi, lista, vektora, polinoma, skupova. Računalni računalni sustav može proizvesti izračune s visokim stupnjem točnosti. Koristi cijele brojeve i frakcijske izraze. Aplikacija može graditi grafikone u dvije ili tri dimenzije. Ima priručnik koji detaljno opisuje kako raditi s uslužnim programom, koji operatori su podržani sustavom matematičkih operacija. Program je savršen za ljubitelje računalne algebre: studente, nastavnike, studente.



- Radi s matematičkim numeričkim i simboličkim izrazima.
- Podržava rad s listama, polinomima, matricama, tenzorima, diferencijalnim jednadžbama i sustavima linearnih jednadžbi.
- Podržava operacije proširenja serije, diferencijacije, Laplaceove transformacije, integracije.
- Izvodi izračune s visokim stupnjem točnosti.
- Koristi cijele brojeve, razlomke.
- Sposobnost izrade grafikona u dvodimenzionalnim ili trodimenzionalnim dimenzijama.
- Pogodno za ljubitelje računalne algebre.
- Ima dostupnu dokumentaciju za upoznavanje s radom sustava.
- Ne utječe na performanse i brzinu radnog okruženja.
- Postoji podrška za ruski jezik.

Nedostaci programa

- Ne postoji prijenosna verzija.

- Procesor s taktom od 1200 MHz ili jačim.
- RAM 256 MB ili više.
- Slobodan prostor na tvrdom disku od 185 MB.
- 32-bitna ili 64-bitna arhitektura (x86 ili x64).
- Operacijski sustav Windows XP, Windows Vista, Windows 7, Windows 8

Višenamjenski kalkulatori: usporedne tablice

Naziv programa Na ruskom Distribucije Instalater Popularnost Veličina Indeks
★ ★ ★ ★ ★ 48,7 MB 100
★ ★ ★ ★ ★ 59,8 MB 99
★ ★ ★ ★ ★ 1,3 MB 86

Sustav Maxima ima mnogo ugrađenih funkcija. Svaka ugrađena funkcija može se opisati u dokumentaciji koja se nalazi u sustavu pomoći. Pomoći se može pristupiti pomoću funkcijske tipke F1. Maxima također ima posebnu funkciju koja daje informacije iz dokumentacije za određene riječi. Skraćena verzija ovog poziva funkcije: ?? ime (slika 12). Ovdje?? je naziv operatora, a argument mora biti odvojen od njega razmakom. Operater?? prikazuje popis odjeljaka pomoći i naziva funkcija koji sadrže navedeni tekst, nakon čega se od vas traži da unesete broj odjeljka ili opis funkcije koju želite pogledati:

Slika 12. Pozivanje pomoći na naredbi Maxima sustava od interesa

Imajte na umu da u sustavu Maxima ne postoji jasna razlika između operatora i funkcija. Štoviše, svaka izjava je zapravo funkcija.

Sve Maxima funkcije i operatori rade ne samo s realnim brojevima, već i sa složenim brojevima. Sami kompleksni brojevi zapisani su u algebarskom obliku, s imaginarnom jedinicom označenom s %i; odnosno u obliku a+b*%i gdje A I b- realni, odnosno imaginarni dio broja.

Razmotrimo sintaksa osnovne funkcije Maxima sustavi.

1. Aritmetički operatori: + , -, *, /, -->. Primjer:

3. Logički operatori: i, ili, ne. Primjer:

4. Funkcija za pronalaženje faktorijela broja: !

Faktorijel je dan u najopćenitijem obliku i zapravo je gama funkcija (točnije x! = gama(x+1)), odnosno definiran je na skupu svih kompleksnih brojeva osim cijelih negativnih brojeva. Faktorijel prirodnog broja (i nule) automatski se pojednostavljuje na isti prirodni broj.

5. Funkcija za pronalaženje polufaktorijela je: !! (umnožak svih parnih (za parni operand) ili neparnih brojeva manjih ili jednakih zadanom).

6. Funkcija negacije sintaktičke jednakosti: # Oznaka a#b je ekvivalentna noti a=b Primjer:

7. Funkcija za pronalaženje modula broja x: abs(x) Modul je definiran za sve kompleksne brojeve. Primjer:

8. Funkcija koja vraća predznak broja x: signum(x)

9. Funkcije koje vraćaju najveću i najmanju vrijednost zadanih realnih brojeva: max(x1,...,xn) i min(x1,...,xn).

10. Neke ugrađene matematičke funkcije:

sqrt(x) Kvadratni korijen iz x
akos(x) Arkosinus argumenta x
acosh (x) Hiperbolički arkosinus od x
akot(x) Arkotangens argumenta x
akoth (x) Hiperbolički arkotangens argumenta x
acsc(x) Arkosekant argumenta x
acsch(x) Hiperbolički arkokosekans argumenta x
asec(x) Arkusesant argumenta x
asech(x) Hiperbolički arcsekans argumenta x
asin(x) Arkus sinus argumenta x
asinh(x) Hiperbolički arcsinus argumenta x
atan(x) Arktangens argumenta x
atanh (x) Hiperbolički arktangens argumenta x
cosh(x) Hiperbolički kosinus argumenta x
coth(x) Hiperbolički kotangens argumenta x
csc(x) Kosekans argumenta x
csch(x) Hiperbolički kosekans argumenta x
sek(x) Sekans argumenta x
sech(x) Hiperbolički sekans argumenta x
grijeh(x) Sinus od x
sinh(x) Hiperbolički sinus od x
tan (x) Tangenta x
tanh(x) Hiperbolički tangens argumenta x
log(x) Prirodni logaritam od x
exp(x) Eksponent x

11. Funkcije za rad s matricama:

determinanta – pronalaženje determinante matrice:

svojstvene vrijednosti – pronalaženje svojstvenih vrijednosti matrice:

preokrenuti– dobivanje inverzne matrice:

manja osoba– definira minor matrice. Prvi argument je matrica, drugi i

treći su indeksi retka i stupca:

rang– rang matrice:

podmatrica– vraća matricu dobivenu od originala uklanjanjem

odgovarajuće retke i (ili) stupce. Parametri su:

broj redaka koji se brišu, izvorna matrica, broj stupaca koji se brišu.

transponirati– transpozicija matrice:

Jezik sustava Maxima sadrži osnovne izvršne operatore koji se nalaze u bilo kojem programskom jeziku. Pogledajmo ih.

Operatori za dodjelu vrijednosti (izrazi za imenovanje).

1. Operator “:” (operator za postavljanje vrijednosti varijable).

2. Operator “:=” (operator za određivanje korisničke funkcije).

3. Proširene verzije operatora dodjele i dodjele funkcija, označenih s:: i::=.

Korištenje operatora korisničke funkcije čini rad s korisničkom funkcijom puno lakšim jer joj se može pristupiti po imenu, a vrijednosti funkcije u danim točkama mogu se lako i praktično izračunati.

Primjer: pronaći vrijednost funkcije f (x,y)=cosx + sin g u točki

Operator petlje. Operator petlje može se odrediti na nekoliko načina. Metoda specificiranja ovisi o tome je li unaprijed poznato koliko se puta tijelo petlje treba izvesti.

Primjer: Postavljanje petlje za prikaz vrijednosti varijable A u rasponu od -3 do 10 u koracima od 5:

Sljedeća važna karakteristika Maxima sustava je rad s popisima i nizovima.

Za generiranje popisa koristite naredbu makelist. Na primjer, pomoću naredbe

formirali smo popis pod nazivom x, koji se sastoji od deset elemenata, čije se vrijednosti nalaze prema formuli.

Za formiranje nizova koristite naredbu array. Na primjer, pomoću naredbe,

formirali smo dvodimenzionalni niz A koji se sastoji od 10 redaka i 5 stupaca. Za popunjavanje niza elementima koristit ćemo petlju s parametrom. Na primjer,

Za prikaz elemenata niza na ekranu, možete koristiti naredbu:

Niz se može formirati bez prethodne deklaracije. U sljedećem primjeru formirali smo jednodimenzionalni niz x koji se sastoji od 5 elemenata, čije su vrijednosti izračunate pomoću formule x( ja)=grijeh ja

Neugodnost rada s nizovima je u tome što se vrijednosti elemenata niza prikazuju u stupcu. Mnogo je prikladnije ako se vrijednosti (dvodimenzionalnog) niza prikazuju kao matrica. U ove svrhe možete koristiti naredbu genmatrix. Na primjer, da biste generirali dvodimenzionalni niz (matricu), trebali biste navesti naredbu u sljedećem obliku:

Izbacimo rezultirajući niz:

6. Najjednostavnije transformacije izraza.

Prema zadanim postavkama, u sustavu Maxima aktivna je funkcija AutoSimplification, tj. sustav pokušava sam pojednostaviti uneseni izraz bez ikakve naredbe.

Primjer. Pretpostavimo da trebate pronaći vrijednost sljedećeg numeričkog izraza:

Postavimo izraz prema pravilima jezika sustava Maxima.

Kao što vidite, sustav je odgovorio vrijednošću izraza, iako nismo naveli nikakvu naredbu.

Kako možete natjerati sustav da ispiše ne rezultat, već sam izraz? Da biste to učinili, funkcija pojednostavljenja mora biti onemogućena pomoću naredbe simp: false$. Tada dobivamo:

Kako biste aktivirali funkciju pojednostavljenja, morate navesti naredbu simp:true$. Funkcija automatskog pojednostavljivanja može raditi i s numeričkim i s nekim nenumeričkim izrazima. Na primjer,

Prilikom unosa možemo se pozvati na bilo koju od prethodnih ćelija po imenu, zamijenivši ga u bilo kojem izrazu. Dodatno, zadnja izlazna ćelija označena je sa %, a zadnja ulazna ćelija označena je sa _. To vam omogućuje da pogledate zadnji rezultat bez da vas ometa njegov broj. Ali takvi pozivi na ćelije ne bi se trebali zlorabiti, jer pri ponovnom ocjenjivanju cijelog dokumenta ili njegovih pojedinačnih ulaznih ćelija može doći do odstupanja između brojeva ćelija.

Primjer. Odredite vrijednost izraza i rezultat povećajte 5 puta.

Preporučljivo je koristiti varijable umjesto imena ćelija i dodijeliti njihova imena svim izrazima. U ovom slučaju, bilo koji matematički izraz može djelovati kao vrijednost varijable.

Vrijednosti naziva varijabli zadržavaju se tijekom cijelog rada s dokumentom. Podsjetimo se da ako je potrebno ukloniti definiciju iz varijable, to se može učiniti pomoću funkcije kill(name), gdje je name naziv izraza koji treba uništiti; štoviše, to može biti ili ime koje ste dodijelili ili bilo koja ulazna ili izlazna ćelija. Slično, možete očistiti svu memoriju i osloboditi sva imena unosom naredbe kill(all) (ili odabirom izbornika Makhta->Očisti memoriju(Očisti memoriju)). U tom će slučaju sve I/O ćelije također biti obrisane, a njihovo numeriranje ponovno počinje od jedan.

Funkcija automatskog pojednostavljivanja ne može uvijek pojednostaviti izraz. Osim toga, postoji niz naredbi koje su dizajnirane za rad s izrazima: racionalnim i iracionalnim. Pogledajmo neke od njih.

štakor (izraz) - pretvara racionalni izraz u kanonski oblik: otvara sve zagrade, zatim sve dovodi na zajednički nazivnik, zbraja i reducira; pretvara sve brojeve u konačnom decimalnom zapisu u racionalne brojeve. Kanonski oblik se automatski "poništava" u slučaju bilo kakvih transformacija koje nisu racionalne

ratsimp (izraz) - pojednostavljuje izraz kroz racionalne transformacije. Također radi "dubinski", to jest, iracionalni dijelovi izraza ne smatraju se atomskim, već su pojednostavljeni, uključujući sve racionalne elemente unutar njih

fullratsimp(expression) - funkcija za pojednostavljenje racionalnog izraza uzastopnom primjenom funkcije ratsimp() na proslijeđeni izraz. Zbog toga je funkcija nešto sporija od ratsimp(), ali daje pouzdaniji rezultat.

expand (expression) - proširuje zagrade u izrazu na svim razinama ugniježđenja. Za razliku od funkcije ratexpand(), ona ne svodi razlomke na zajednički nazivnik.

radcan(expression) - funkcija za pojednostavljenje logaritamskih, eksponencijalnih i potencijskih funkcija s necjelobrojnim racionalnim eksponentima, odnosno korijenima (radikalima).

Često, kada pokušate pojednostaviti izraz u Maximi, to ga zapravo samo može učiniti složenijim. Do povećanja rezultata može doći zbog činjenice da nije poznato koje vrijednosti varijable uključene u izraz mogu uzeti. Da biste to izbjegli, trebali biste postaviti ograničenja na vrijednosti koje varijabla može poprimiti. To se radi pomoću funkcije pretpostaviti (uvjet). Stoga se u nekim slučajevima najbolji rezultat može postići kombinacijom radcan() s ratsimp() ili fullratsimp().



Povezane publikacije