Table of Contents[Veşartin][Rêdan]
Li dora matematîkê tune ye, gelo hûn xwendekarek zanîngehê ne an di zanistiya daneyê de bixebitin.
Tewra meriv dikare bibêje ku zanista daneyê celebek matematîkî / statîstîkî ya sepandî ye. NumPy, SciPy, Scikit-Fêr bibe, û TensorFlow tenê çend pirtûkxaneyên Python in ku bi matematîkê ve bi jimarî ve mijûl dibin.
Lêbelê, tenê hevrikek heye ku bi eşkere bi sembolên matematîkî re mijûl bibe: SymPy.
Ka em her tiştî li ser SymPy fêr bibin.
Çi ye SymPy?
SymPy pirtûkxaneyek matematîkê ya sembolîk a Python e. Ew daxwaz dike ku bibe pergalek cebraya komputerê ya bi tevahî-taybetmendî (CAS) di heman demê de ku kodê bi qasî ku gengaz be bihêle ku were fam kirin û bi hêsanî were berfireh kirin.
Ew bi tevahî di Python de hatî nivîsandin. Bikaranîna wê hêsan e ji ber ku ew tenê xwe dispêre mpmath, pirtûkxaneyek Python a safî ji bo arîtmetîka xala hêlînê ya keyfî.
Wekî pirtûkxaneyek, ew bi girîngiyek girîng li ser karanîna di hişê de hate afirandin. Berfirehbûn di sêwirana navrûya bernameya serîlêdana wê (API) de krîtîk e.
Wekî encamek, ew ti hewldan nake ku zimanê Python zêde bike. Armanc ew e ku bikarhêner bikarin wê li gel yên din bikar bînin pirtûkxaneyên Python di xebata wan de, çi di hawîrdorek înteraktîf de be an jî wekî hêmanek bernamekirî ya pergalek mezintir.
SymPy, wekî pirtûkxaneyek, grafîkîyek çêkirî tune user interface (GUI). Pirtûkxane ev e:
- Belaş, hem di derbarê axaftin û hem jî bîrê de, ji ber ku ew di bin lîsansa BSD de destûrdar e.
- Python-based: Ew bi tevahî li Python-ê hatî pêşve xistin û Python wekî zimanê xwe bikar tîne.
- Sivik ji ber ku ew tenê xwe dispêre mpmath, paqij Pirtûkxaneya Python ji bo arîtmetîk-xala hêlînê ya keyfî, karanîna wê hêsan dike.
- Digel ku wekî amûrek danûstendinê were bikar anîn, dikare di bernameyên din de were girêdan û bi fonksiyonên xwerû ve were guheztin.
Çima SymPy bikar bînin?
Sage, pergalek cebraya komputerê, di heman demê de Python wekî zimanê bernamesaziya xwe jî bikar tîne. Sage, ji hêla din ve, pir mezin e, ku ji gigabyte zêdetir dakêşanê hewce dike. Feydeya wê ya sivikbûnê heye.
Ji bilî tevlihevbûna wê, ji bilî Python-ê ti pêwendiyek wê tune, ku dihêle ku ew bi pratîkî li her deverê were bikar anîn.
Wekî din, armancên Sage û SymPy ne yek in. Sage daxwaz dike ku bibe pergalek matematîkî ya bêkêmasî, û ew wiya bi yekkirina hemî pergalên matematîkî yên sereke yên çavkaniya vekirî di yek de dike.
Gava ku hûn fonksiyonek Sage bikar tînin, wek entegrasyonê, ew yek ji pakêtên çavkaniya vekirî ya ku tê de vedixwîne. Di rastiyê de, ew di Sage de hatî çêkirin. SymPy, ji hêla din ve, daxwaz dike ku bibe pergalek xweser, ku hemî fonksiyonên wê di nav xwe de têne bicîh kirin.
Kapasîteya wê ya fonksiyona pirtûkxaneyek taybetmendiyek girîng e. Gelek pergalên cebrî yên komputerê têne armanc kirin ku di hawîrdorên înteraktîf de bêne bikar anîn, lê ew dijwar in ku ew bixweber an berfireh bibin.
Ew dikare di Python-ê de înteraktîf were bikar anîn an jî di bernameya xweya Python-ê de were şandin. Di heman demê de API-yên wê hene ku bi hêsanî wê bi rûtînên xwe dirêj bikin.
Sazkirina SymPy
Tenê fermana jêrîn bikar bînin da ku li hawîrdora xwe saz bikin.
Sembolên SymPy
Ka em niha bi wê re dest pê bikin! Tişta wê ya bingehîn sembol e. Di SymPy de, hûn dikarin bi nivîsandinê nîşanek x biafirînin:
Koda li jor sembola x çêdike. Sembolên di wê de têne armanc kirin ku sembolên matematîkî yên ku nirxên nenas temsîl dikin bişopînin.
Wekî encamek, hesabê jêrîn li jêr tê nîşandan:
Wekî ku li jor hatî destnîşan kirin, sembola x bi qasî mîqdarek nenas bi heman rengî tevdigere. Heke hûn dixwazin gelek sembolan çêbikin, wan wekî jêrîn binivîsin:
Di vê rewşê de we du sembol, y, û z, di heman demê de afirandin. Naha ev sembol dikarin li gorî xwestinê werin zêdekirin, jêkirin, pirkirin û dabeş kirin:
Fonksiyonên SymPy
1. fonksiyona sympify().
Rêbaza sympify() îfadeyek kêfî vediguherîne îfadeyek SymPy. Ew tiştên standard ên Python-ê, wekî jimar-hejmaran vediguherîne.
Rêz li biwêjên xwe û hem jî jimareyên xwe û hwd têne guheztin.
2. fonksiyona evalf().
Ev fonksîyonek jimareyek diyarkirî bi rastbûna xala herikînê ya heya 100 reqeman dinirxîne.
Fonksiyon ji bo sembolan wekî argûmanek binavûdeng objeyek ferhengê ya bi nirxên hejmarî qebûl dike. Gotina jêrîn bifikirin:
Rastbûna xala herikînê ji hêla xwerû ve li ser 15 reqeman hatiye danîn. Lêbelê, ev dikare bi her hejmarek di navbera 1 û 100-ê de were guheztin.
Wekheviya jêrîn bi rastbûna 20 reqeman tê nirxandin.
3. fonksiyona Lambdify().
Lambdify fonksiyonek e ku îfadeyên xwe vediguherîne fonksiyonên Python. Rêbaza evalf() dema ku bilêvkirinekê di nav cûrbecûr nirxan de dinirxîne bêbandor e.
Lambdify mîna fonksiyonek lambda dixebite, ji bilî ku ew navên SymPy li navên pirtûkxaneya hejmarî ya peydakirî, ku bi gelemperî NumPy ye, werdigerîne.
Bi xwerû, Lambdify li ser pêkanînên pirtûkxaneya standarda matematîkê tê sepandin.
Features
Çend taybetmendiyên girîng ên pirtûkxaneyê li vir têne navnîş kirin; gelekên din jî ne tê de hene, lê hûn dikarin wan kontrol bikin vir.
1. Kapasîteyên bingehîn
- Arîtmetîka bingehîn: +, -, *, /, û ** operator têne piştgirî kirin (hêz)
- Berfirehbûnek pirnomî
- Hêjmar, rasyonel, û float bi rastbûna keyfî
- Fonksiyonên trigonometrîk, hîperbolîk, û berfirehî, kok, logarîtm, nirxa mutleq, ahengên gerok, faktorîal û fonksiyonên gama, fonksiyonên zeta, pirnomî û fonksiyonên taybetî
- Sembolên ku neguherbar in
- Nimûneyên lihevhatî
2. Hesab
- Yekbûn: Ev rêbaz heurîstîkê ya berfirehkirî ya Risch-Norman bikar tîne
- Cûdahî.
- fonksiyonên Sînora
- Rêzeya Laurent Taylor
3. Pirjimar
- bingehên Gröbner
- Parçekirina perçeyên qismî
- Dabeşkirin, gcd Encam mînakên jimareya bingehîn in.
4. Kombinatorîk
- Destûrdanan
- Kodên Grey û Prufer
- Kombinasyon, Parvekirin, Binkom
- Komên Polyhedral, Rubik, Symmetric, and Other Permutation Groups
5. Mathên Veqetandî
- Summations
- Gotinên mantiqî
- Rêjeyên binomial
- Teoriya hejmarê
Applications
1. Building Calculator
2. Pergalên Cebrayê Kompîturê
Berevajî Pergalên din ên Aljebraya Kompîturê, divê hûn bi destan guhêrbarên sembolîk di wê de bi karanîna fonksiyona Symbol() ragihînin.
3. Hesab
Kapasîteya pergalek hesabkirina sembolîk a ku hemî cûreyên hesaban bi rengek sembolîk bike hêza wê ya sereke ye.
Ew dikare daxuyaniyan bi awayekî sembolîk hêsan bike, jêderan, entegral û sînoran hesab bike, hevkêşeyan çareser bike, bi matrican re têkilî daynin, û hê bêtir bike.
Ji bo ku hûn êvara xwe vekin, li vir tama hêza sembolîk heye.
Wekî din hûn dikarin bi SymPy re çi bikin?
Li şûna ku hûn bi kûrahî li ser mijarên din hûr bibin, bila ez navnîşek çavkaniyan ji we re peyda bikim da ku ji we re bibe alîkar ku hûn jêhatîyên xwe zêde bikin:
- Matrices û Algebra Linear: Ew dikare bi matrican re bixebite û operasyonên cebraya xêzikî ya bingehîn pêk bîne. Ziman dişibe hevoksaziya NumPy. Lêbelê, cûdahiyên berbiçav hene. Ji bo destpêkirinê, lêpirsîn matrice di pirtûkxaneyê de.
- Îfade: Ew dara vegotinê, ku avahiyek darê ye, bikar tîne da ku biwêjan bişopîne. Nêrîn li darên îfadeyê heke hûn dixwazin li ser karên hundurê wan bêtir fêr bibin.
- Derivative û Integral: Ew dikare piraniya tiştê ku hûn ê di dersek hesabkirina destpêkî de fêr bibin (bêyî ramanê) pêk bîne. Hûn dikarin bi dîtina fonksiyona me dest pê bikin cûda li SymPy.
- Têkiliya bi NumPy re: NumPy û SymPy herdu pirtûkxaneyên bi matematîkê ve girêdayî ne. Lêbelê, ew bi bingehîn cûda ne! NumPy bi hejmaran re dixebite, lê ew bi vegotinên sembolîk re dixebite.
- Simplifications: Ew têra xwe jîr e ku bixweber îfadeyan hêsan bike. Lêbelê, heke hûn li ser vê yekê kontrolek zexmtir dixwazin, li wê binêrin simplifications.
Xelasî
SymPy ji bo matematîkên sembolîk pirtûkxaneyek hêzdar e.
Hûn dikarin wê bikar bînin da ku guhêrbar û fonksiyonan biafirînin, hem jî bi awayekî sembolîk daxuyaniyên matematîkî dirêj bikin û hêsan bikin û hevkêşan, newekheviyan, û tewra pergalên hevkêşan/nehevkêşan jî çareser bikin.
Hûn dikarin fonksiyonan hem di nivîsa nivîsê de û hem jî rasterast di termînalê de binivîsin (an defterên Jupyter) ji bo ku nirxandinek bilez û wêneyek grafîkî ya çêtir a hesabên hatî çêkirin bistînin.
Ma hûn amade ne ku bêtir SymPy bigerin? Di şîroveyan de ji me re agahdar bikin.
Leave a Reply