Table of Contents[Hide][Show]
Tsis muaj kev kawm lej, txawm tias koj yog tub ntxhais kawm hauv tsev kawm lossis ua haujlwm hauv cov ntaub ntawv tshawb fawb.
Ib tug yuav txawm hais tias cov ntaub ntawv kev tshawb fawb yog ib hom kev siv lej / lej. NumPy, SciPy, Kawm Dab Neeg- Kawm, Thiab TensorFlow tsuas yog ob peb ntawm cov tsev qiv ntawv Python uas cuam tshuam nrog lej ntau.
Txawm li cas los xij, tsuas muaj ib tus neeg sib tw rau kev qhia meej txog cov cim lej: SymPy.
Cia peb kawm paub txhua yam txog SymPy.
Yuav ua li cas yog SymPy?
SymPy yog lub tsev qiv ntawv Python cim lej. Nws aspires los ua ib tug tag nrho-featured computer algebra system (CAS) thaum khaws cov cai raws li yooj yim li ua tau kom to taub thiab yooj yim expandable.
Nws tau sau tag nrho hauv Python. Nws yog ib qho yooj yim los siv vim nws tsuas yog tso siab rau mpmath, lub tsev qiv ntawv Python ntshiab rau arbitrary floating-point arithmetic.
Raws li lub tsev qiv ntawv, nws tau tsim nrog qhov tseem ceeb ntawm kev siv tau hauv siab. Extensibility yog ib qho tseem ceeb hauv kev tsim nws daim ntawv thov kev pab cuam interface (API).
Yog li ntawd, nws ua rau tsis muaj kev sim txhim kho cov lus Python. Lub hom phiaj yog kom cov neeg siv tuaj yeem siv nws nrog rau lwm yam Python cov tsev qiv ntawv nyob rau hauv lawv cov workflow, txawm nyob rau hauv ib tug sib tham sib ib puag ncig los yog raws li ib tug programed feem ntawm ib tug loj system.
SymPy, raws li lub tsev qiv ntawv, tsis muaj cov duab kos duab cov neeg siv interface (GUI). Lub tsev qiv ntawv yog:
- Dawb, ob qho tib si hais txog kev hais lus thiab npias, vim tias nws muaj ntawv tso cai raws li BSD daim ntawv tso cai.
- Python-based: Nws yog tag nrho tsim hauv Python thiab ntiav Python ua nws hom lus.
- Lub teeb vim nws tsuas yog tso siab rau mpmath, ib qho ntshiab Python tsev qiv ntawv rau arbitrary floating-point arithmetic, ua rau nws yooj yim rau siv.
- Nws tuaj yeem muab tso rau hauv lwm cov kev pab cuam thiab hloov kho nrog kev cai ua haujlwm ntxiv rau kev siv los ua cov cuab yeej sib tham sib.
Vim li cas thiaj siv SymPy?
Sage, lub tshuab computer algebra, kuj siv Python ua nws cov lus programming. Sage, ntawm qhov tod tes, yog qhov loj heev, xav tau kev rub tawm ntau dua li ib gigabyte. Nws muaj qhov txiaj ntsig ntawm kev sib sib zog nqus.
Ntxiv nrog rau kev cog lus, nws tsis muaj kev vam khom lwm yam tshaj li Python, tso cai rau nws siv tau rau txhua qhov chaw.
Tsis tas li ntawd, lub hom phiaj ntawm Sage thiab SymPy tsis zoo ib yam. Sage aspires los ua ib tug tag nrho-featured lej system, thiab nws ua li ntawd los ntawm combining tag nrho cov ntawm lub ntsiab open-source lej systems rau hauv ib tug.
Thaum koj siv Sage muaj nuj nqi, xws li kev sib koom ua ke, nws thov ib qho ntawm cov pob qhib uas nws muaj. Nyob rau hauv kev muaj tiag, nws yog tsim rau hauv Sage. SymPy, ntawm qhov tod tes, aspires los ua tus kheej-muaj qhov system, nrog rau tag nrho cov functionality siv nyob rau hauv nws tus kheej.
Nws lub peev xwm ua haujlwm raws li lub tsev qiv ntawv yog qhov tseem ceeb. Ntau lub khoos phis tawj algebra yog txhais tau tias siv rau hauv qhov chaw sib tham sib, tab sis lawv nyuaj rau automate lossis nthuav dav.
Nws tuaj yeem siv sib cuam tshuam hauv Python lossis tuaj rau hauv koj tus kheej Python program. Nws kuj muaj APIs kom yooj yim txuas nrog koj tus kheej li niaj zaus.
Txhim kho SymPy
Tsuas yog siv cov lus txib hauv qab no los nruab rau hauv koj ib puag ncig.
SymPy Cov Cim
Cia peb pib nrog nws tam sim no! Nws cov khoom tseem ceeb yog lub cim. Hauv SymPy, koj tuaj yeem tsim lub cim x los ntawm kev sau ntawv:
Cov cai saum toj no generates lub cim x. Cov cim hauv nws yog npaj los ua cov cim lej uas sawv cev tsis paub qhov tseem ceeb.
Raws li qhov tshwm sim, kev suav hauv qab no tau qhia hauv qab no:
Raws li qhia saum toj no, lub cim x ua haujlwm zoo ib yam li tus lej tsis paub. Yog tias koj xav ua ntau lub cim, sau lawv li hauv qab no:
Koj tsim ob lub cim, y, thiab z, tib lub sijhawm hauv qhov no. Cov cim tam sim no tuaj yeem muab ntxiv, rho tawm, sib npaug, thiab faib raws li xav tau:
SymPy Functions
1. sympify() muaj nuj nqi
Txoj kev sympify() hloov ib qho kev qhia tsis ncaj rau hauv SymPy qhia. Nws hloov cov khoom Python txheem, xws li cov lej.
Cov hlua tau hloov mus rau lawv cov kab lus thiab cov lej, thiab lwm yam.
2. evalf() muaj nuj nqi
Qhov kev ua haujlwm no ntsuas qhov kev qhia tus lej tshwj xeeb nrog rau qhov tseeb qhov tseeb txog li 100 tus lej.
Lub luag haujlwm tseem lees txais cov khoom siv phau ntawv txhais lus nrog cov lej muaj txiaj ntsig rau cov cim raws li kev sib cav subs. Xav txog cov lus hauv qab no:
Floating-point precision yog teem rau 15 tus lej los ntawm lub neej ntawd. Txawm li cas los xij, qhov no tuaj yeem hloov mus rau ib tus lej ntawm 1 thiab 100.
Cov kab zauv hauv qab no raug ntsuas rau qhov tseeb ntawm 20 tus lej.
3. Lambdify() muaj nuj nqi
Lambdify yog ib txoj haujlwm uas hloov nws cov kab lus mus rau Python functions. Txoj kev evalf() tsis muaj txiaj ntsig thaum ntsuas qhov kev qhia thoob plaws ntau qhov txiaj ntsig.
Lambdify ua haujlwm zoo ib yam li lambda muaj nuj nqi, tshwj tsis yog tias nws txhais cov npe SymPy rau cov npe ntawm cov tsev qiv ntawv muab lej, uas feem ntau yog NumPy.
Los ntawm lub neej ntawd, Lambdify yog siv rau kev ua lej lej hauv tsev qiv ntawv.
nta
Ib txhais tes ntawm lub tsev qiv ntawv cov yam ntxwv tseem ceeb tshaj plaws tau teev nyob ntawm no; muaj ntau ntau yam tsis suav nrog, tab sis koj tuaj yeem tshawb xyuas lawv no.
1. Cov peev txheej tseem ceeb
- Cov lej lej tseem ceeb: +, -, *, /, thiab ** tus neeg teb xov tooj tau txais kev txhawb nqa (lub zog)
- Ib tug polynomial expansion
- Integers, rationals, thiab ntab nrog arbitrary precision
- Trigonometric, hyperbolic, thiab exponential functions, cov hauv paus hniav, logarithms, tus nqi kiag li, spherical harmonics, factorials thiab gamma functions, zeta functions, polynomials, thiab tshwj xeeb functions
- Cov cim uas tsis muaj kev sib txuas
- Cov qauv zoo sib xws
2. Calculus
- Kev koom ua ke: Txoj kev no siv cov kev nthuav dav Risch-Norman heuristic
- Kev sib txawv.
- Txwv kev ua haujlwm
- Laurent Taylor's series
3. Cov Khoom Polynomials
- Gröbner foundations
- Decomposition ntawm ib nrab feem
- Division, gcd Cov txiaj ntsig yog cov piv txwv ntawm cov lej lej yooj yim.
4. Combinatorics
- Tso Cai
- Grey thiab Prufer Codes
- Combinations, Partitions, Subsets
- Polyhedral, Rubik, Symmetric, thiab lwm pab pawg Permutation
5. Discrete lej
- Cov ntsiab lus
- Logical nthuav qhia
- Binomial coefficients
- Tooj zauv
daim ntawv sau npe
1. Lub Tshuab xam zauv
2. Computer Algebra Systems
Tsis zoo li lwm lub Computer Algebra Systems, koj yuav tsum manually tshaj tawm cov cim hloov pauv hauv nws siv Symbol() muaj nuj nqi.
3. Calculus
Lub peev xwm ntawm lub cim kev suav sau ua txhua yam kev suav ua cim yog nws lub zog loj.
Nws tuaj yeem ua kom yooj yim cov nqe lus, piv txwv, suav cov derivatives, suav nrog, thiab txwv, daws qhov sib npaug, cuam tshuam nrog matrices, thiab ua ntau yam ntxiv.
Txhawm rau whet koj qab los noj mov, ntawm no yog qhov saj ntawm lub zog cim.
Dab tsi ntxiv koj tuaj yeem ua nrog SymPy?
Tsis yog droneing txog cov teeb meem ntxiv rau qhov tob, cia kuv muab cov npe ntawm cov peev txheej los pab koj txhim kho koj cov kev txawj ntse:
- Matrices thiab Linear Algebra: Nws tuaj yeem ua haujlwm nrog matrices thiab ua cov haujlwm linear algebra. Cov lus zoo ib yam li NumPy's syntax. Txawm li cas los xij, muaj qhov sib txawv tseem ceeb. Txhawm rau pib, tshawb xyuas kev ua lej hauv tsev qiv ntawv.
- Qhia: Nws leverages tsob ntoo qhia, uas yog tsob ntoo raws li qauv, kom taug qab cov kab lus. Saib qhia ntoo yog tias koj xav kawm ntxiv txog lawv cov haujlwm sab hauv.
- Derivatives thiab Integrals: Nws tuaj yeem ua tiav feem ntau ntawm yam koj xav kawm hauv chav qhia kev suav lej (tsis suav qhov kev xav). Koj tuaj yeem pib los ntawm saib peb lub luag haujlwm txawv hauv SymPy.
- Kev sib raug zoo nrog NumPy: NumPy thiab SymPy yog ob lub tsev qiv ntawv hais txog lej. Lawv, txawm li cas los xij, qhov tseem ceeb sib txawv! NumPy ua haujlwm nrog cov lej, thaum nws ua haujlwm nrog cov cim qhia.
- Simplifications: Nws yog qhov ntse txaus los ua kom yooj yim cov lus qhia. Txawm li cas los xij, yog tias koj xav tau kev tswj hwm zoo tshaj qhov no, saib nws yooj yim.
xaus
SymPy yog lub tsev qiv ntawv muaj zog rau kev ua lej cim.
Koj tuaj yeem siv nws los tsim qhov sib txawv thiab ua haujlwm, nrog rau cov cim txuas ntxiv thiab ua kom yooj yim cov lus lej thiab daws qhov sib npaug, qhov tsis sib xws, thiab txawm tias cov kab ke sib npaug / qhov tsis sib xws.
Koj tuaj yeem sau cov haujlwm ob qho tib si hauv cov ntawv sau thiab ncaj qha rau hauv lub davhlau ya nyob twg (lossis Jupyter phau ntawv) kom tau txais kev ntsuam xyuas sai thiab pom cov duab zoo dua ntawm kev suav ua tiav.
Koj puas tau npaj los tshawb nrhiav ntau dua ntawm SymPy? Qhia rau peb paub hauv cov lus.
Sau ntawv cia Ncua