Edukien aurkibidea[Ezkutatu][Erakutsi]
Ez dago matematikatik inguratu, unibertsitateko ikaslea izan edo datu zientzietan lan egiten baduzu.
Datuen zientzia matematika/estatistika aplikatu mota bat dela ere esan liteke. NumPy, SciPy, Scikit-Ikasi, eta TensorFlow Matematika kuantitatiboki lantzen duten Python liburutegietako batzuk besterik ez dira.
Hala ere, lehiakide bakarra dago sinbolo matematikoei esplizituki aurre egiteko: SymPy.
Ikus dezagun SymPy-ri buruzko guztia.
Zer da SymPy?
SymPy Python-en matematika-liburutegi sinbolikoa da. Funtzio osoko ordenagailu aljebra sistema (CAS) izan nahi du, kodea ahalik eta oinarrizkoena mantenduz ulergarria eta erraz zabaltzeko.
Python-en idatzita dago guztiz. Erabilera erraza da, mpmath-en soilik oinarritzen baita, puntu mugikorreko aritmetika arbitrariorako Python liburutegi hutsean.
Liburutegi gisa, erabilgarritasunari garrantzia handia emanez sortu zen. Hedagarritasuna funtsezkoa da bere aplikazio-programaren interfazearen (API) diseinuan.
Ondorioz, ez da saiakerarik egiten Python hizkuntza hobetzeko. Helburua erabiltzaileek besteekin batera erabili ahal izatea da Python liburutegiak beren lan-fluxuan, ingurune interaktibo batean edo sistema handiago baten programatutako osagai gisa.
SymPy-k, liburutegi gisa, ez du barne-grafikorik erabiltzaileen interfazea (GUI). Liburutegia hau da:
- Doan, bai hizkerari dagokionez, bai garagardoari dagokionez, BSD lizentziapean dagoelako.
- Python-en oinarrituta: Python-en guztiz garatuta dago eta Python erabiltzen du hizkuntza gisa.
- Arina, mpmath-en bakarrik oinarritzen delako, hutsa Python liburutegia koma mugikorreko aritmetika arbitrariorako, erabiltzeko erraza izan dadin.
- Beste programa batzuetan txertatu eta pertsonalizatutako funtzioekin alda daiteke, tresna interaktibo gisa erabiltzeaz gain.
Zergatik erabili SymPy?
Sage, ordenagailu aljebra sistema batek, Python ere erabiltzen du programazio-lengoaia gisa. Sage, berriz, izugarria da, gigabyte bat baino gehiagoko deskarga behar du. Arinak izatearen onura du.
Trinkoa izateaz gain, ez du Python-ek ez beste menpekotasunik, eta ia nonahi erabiltzeko aukera ematen du.
Gainera, Sage eta SymPyren helburuak ez dira berdinak. Sage-k ezaugarri osoko sistema matematiko bat izan nahi du, eta kode irekiko sistema matematiko nagusi guztiak bakarrean konbinatuz egiten du.
Sage funtzio bat erabiltzen duzunean, integratzea adibidez, dituen kode irekiko paketeetako bat deitzen du. Errealitatean, Sage-n eraikia dago. SymPy-k, berriz, sistema autonomo bat izan nahi du, funtzionaltasun guztiak bere baitan ezarrita dituena.
Liburutegi gisa funtzionatzeko duen gaitasuna ezaugarri garrantzitsu bat da. Aljebra informatikoko sistema asko ingurune interaktiboetan erabiltzeko pentsatuta daude, baina zailak dira automatizatzen edo zabaltzen.
Python-en modu interaktiboan erabil daiteke edo zure Python programara inportatu daiteke. Zure errutinekin erraz zabaltzeko APIak ere baditu.
SymPy instalatzen
Besterik gabe, erabili beheko komandoa zure ingurunean instalatzeko.
SymPy ikurrak
Has gaitezen orain! Bere oinarrizko objektua sinbolo bat da. SymPy-n, x ikur bat sor dezakezu idatziz:
Goiko kodeak x ikurra sortzen du. Bertan dauden sinboloek balio ezezagunak adierazten dituzten sinbolo matematikoak imitatu nahi dituzte.
Ondorioz, ondorengo kalkulu hau erakusten da:
Goian erakusten den bezala, x sinboloak kopuru ezezagun baten antzera funtzionatzen du. Ikur asko egin nahi badituzu, idatzi honela:
Bi sinbolo sortu dituzu, y eta z, une berean kasu honetan. Sinbolo hauek nahi bezala batu, kendu, biderkatu eta zatitu daitezke orain:
SymPy Funtzioak
1. sympify() funtzioa
Sympify() metodoak adierazpen arbitrario bat SymPy adierazpen batean bihurtzen du. Python objektu estandarrak bihurtzen ditu, esate baterako, zenbaki osoak.
Kateak beren adierazpenetara eraldatzen dira, baita zenbaki osoetara, etab.
2. evalf() funtzioa
Funtzio honek zenbakizko adierazpen zehatz bat ebaluatzen du 100 zifrako koma mugikorreko zehaztasunarekin.
Funtzioak, gainera, sinboloetarako zenbakizko balioak dituen hiztegi-objektua onartzen du azpi argumentu gisa. Kontuan izan esaldi hau:
Koma mugikorreko zehaztasuna 15 digitutan ezartzen da lehenespenez. Hala ere, 1 eta 100 arteko edozein zenbakira alda daiteke.
Hurrengo ekuazioa 20 zifren zehaztasunarekin ebaluatzen da.
3. Lambdify() funtzioa
Lambdify bere adierazpenak Python funtzio bihurtzen dituen funtzio bat da. Evalf() metodoa ez da eraginkorra adierazpen bat balio sorta zabal batean ebaluatzen denean.
Lambdify-k lambda funtzio baten antzera funtzionatzen du, izan ezik, SymPy izenak emandako zenbakizko liburutegiaren izenetara itzultzen ditu, oro har NumPy dena.
Lehenespenez, Lambdify matematikako liburutegi estandarren inplementazioetan aplikatzen da.
Ezaugarriak
Liburutegiaren ezaugarri esanguratsuenetako batzuk zerrendatzen dira hemen; beste asko ez daude sartuta, baina ikus ditzakezu hemen.
1. Oinarrizko gaitasunak
- Oinarrizko aritmetika: +, -, *, / eta ** operadoreak onartzen dira (potentzia)
- Hedapen polinomiala
- Zenbaki osoak, arrazionalak eta flotatzaileak zehaztasun arbitrarioz
- Funtzio trigonometrikoak, hiperbolikoak eta esponentzialak, erroak, logaritmoak, balio absolutua, armoniko esferikoak, faktoreak eta gamma funtzioak, zeta funtzioak, polinomioak eta funtzio bereziak
- Konmutatiboak ez diren sinboloak
- Ereduak parekatzea
2. Kalkulua
- Integrazioa: metodo honek Risch-Norman heuristika zabaldua erabiltzen du
- Bereiztea.
- Mugatu funtzioak
- Laurent Taylorren seriea
3. Polinomioak
- Gröbner fundazioak
- Zatiki partzialen deskonposizioa
- Zatiketa, mcd Emaitzatzaileak oinarrizko aritmetikaren adibideak dira.
4. Konbinatoria
- Permutazioak
- Gray eta Prufer kodeak
- Konbinazioak, zatiketak, azpimultzoak
- Poliedrikoa, Rubik, Simetrikoa eta Beste Permutazio Taldeak
5. Matematika diskretuak
- Batuketak
- Adierazpen logikoak
- Koefiziente binomialak
- Zenbakien teoria
aplikazioak
1. Eraikinen kalkulagailua
2. Informatika Aljebra Sistemak
Beste Konputagailu Aljebra Sistemak ez bezala, aldagai sinbolikoak eskuz deklaratu behar dituzu Symbol() funtzioa erabiliz.
3. Kalkulua
Konputazio-sistema sinboliko batek era guztietako kalkuluak sinbolikoki egiteko duen ahalmena da bere indargune nagusia.
Enuntziatuak sinplifikatu ditzake, sinbolikoki, deribatuak, integralak eta mugak kalkulatu, ekuazioak ebatzi, matrizeekin elkarreragin eta askoz gehiago egin ditzake.
Gosea pizteko, hona botere sinbolikoaren zaporea.
Zer gehiago egin dezakezu SymPy-rekin?
Gai gehigarriei buruz sakonki sakondu beharrean, utz iezadazu baliabide zerrenda bat eskaintzen zure gaitasunak hobetzen laguntzeko:
- Matrizeak eta aljebra lineala: Matrizeekin lan egin dezake eta oinarrizko aljebra linealeko eragiketak egin ditzake. Hizkuntza NumPy-ren sintaxiaren antzekoa da. Hala ere, alde nabarmenak daude. Hasteko, ikertu matrizeak liburutegian.
- Adierazpena: Adierazpenen zuhaitz bat erabiltzen du, hau da, zuhaitzetan oinarritutako egitura bat, adierazpenen jarraipena egiteko. Begiratu adierazpen zuhaitzak haien barne funtzionamenduari buruz gehiago jakin nahi baduzu.
- Deribatuak eta integralak: Sarrerako kalkuluko klase batean ikasiko zenukeenaren gehiengoa lor dezake (pentsamendua kenduta). Gure funtzioa aztertzen has zaitezke desberdintzea SymPyn.
- NumPy-rekin harremana: NumPy eta SymPy matematikari lotutako liburutegiak dira biak. Hala ere, funtsean desberdinak dira! NumPy-k zenbakiekin lan egiten du, eta adierazpen sinbolikoekin lan egiten du.
- Sinplifikazioak: Esamoldeak automatikoki errazteko nahikoa adimentsua da. Hala ere, honen gaineko kontrol finagoa nahi baduzu, begiratu bere sinplifikazioak.
Ondorioa
SymPy matematika sinbolikorako liburutegi indartsua da.
Aldagaiak eta funtzioak sortzeko erabil dezakezu, bai eta enuntziatu matematikoak sinbolikoki hedatu eta sinplifikatzeko eta ekuazioak, inekuazioak eta baita ekuazio/desberdintasun sistemak ebazteko ere.
Funtzioak gidoiaren testuan eta zuzenean terminalean idatz ditzakezu (edo Jupyter koadernoak) egindako kalkuluen ebaluazio azkarra eta grafiko hobea izateko.
Prest al zaude SymPy gehiago arakatzeko? Jakin iezaguzu iruzkinetan.
Utzi erantzun bat