Гарчиг[Нуух][Үзүүлэх]
Та их сургуулийн оюутан эсвэл мэдээллийн шинжлэх ухааны чиглэлээр ажилладаг эсэхээс үл хамааран математикийг тойрон гарах боломжгүй юм.
Мэдээллийн шинжлэх ухаан нь хэрэглээний математик/статистикийн нэг төрөл гэж маргаж магадгүй юм. NumPy, SciPy, Scikit-сурахБолон TensorFlow Эдгээр нь математикийг тоон байдлаар авч үздэг Python номын сангуудын хэдхэн юм.
Гэсэн хэдий ч математикийн тэмдэгтүүдийг тодорхой харьцах ганц өрсөлдөгч бий: SymPy.
SymPy-ийн талаар бүгдийг олж мэдье.
Гэж юу вэ SymPy?
SymPy бол Python симбол математикийн номын сан юм. Энэ нь ойлгомжтой, хялбархан өргөжүүлэхийн тулд кодыг аль болох энгийн байлгахын зэрэгцээ бүрэн ажиллагаатай компьютерийн алгебрийн систем (CAS) байхыг эрмэлздэг.
Энэ нь Python дээр бүрэн бичигдсэн байдаг. Энэ нь зөвхөн mpmath буюу дурын хөвөгч цэгийн арифметикийн цэвэр Python номын санд тулгуурладаг тул ашиглахад хялбар юм.
Номын сангийн хувьд энэ нь ашиглахад ихээхэн ач холбогдол өгч бүтээгдсэн. Өргөтгөх чадвар нь түүний хэрэглээний програмын интерфейс (API) дизайн хийхэд чухал ач холбогдолтой.
Үүний үр дүнд энэ нь Python хэлийг сайжруулах оролдлого хийдэггүй. Зорилго нь хэрэглэгчид үүнийг бусадтай зэрэгцүүлэн ашиглах боломжтой байх явдал юм Python номын сангууд Интерактив орчинд эсвэл илүү том системийн програмчлагдсан бүрэлдэхүүн хэсэг болохоос үл хамааран тэдгээрийн ажлын урсгалд.
SymPy нь номын сангийн хувьд суурилагдсан график байхгүй хэрэглэгчийн интерфэйс (GUI). Номын сан нь:
- BSD лицензийн дагуу лицензтэй тул яриа, шар айрагны хувьд үнэ төлбөргүй.
- Python-д суурилсан: Энэ нь бүхэлдээ Python хэл дээр боловсруулагдсан бөгөөд Python-ийг хэл болгон ашигладаг.
- Энэ нь зөвхөн mpmath дээр тулгуурладаг учраас хөнгөн жинтэй Python номын сан дурын хөвөгч цэгийн арифметикийн хувьд ашиглахад хялбар болгодог.
- Интерактив хэрэглүүр болгон ашиглахаас гадна өөр программд оруулж, захиалгат функцээр өөрчилж болно.
Яагаад SymPy ашигладаг вэ?
Компьютерийн алгебрийн систем болох Sage нь Python хэлийг програмчлалын хэл болгон ашигладаг. Харин Sage нь асар том бөгөөд нэг гигабайтаас илүү татаж авах шаардлагатай. Хөнгөн жинтэй гэдгээрээ давуу талтай.
Авсаархан байхаас гадна Python-оос өөр хамааралгүй тул хаа сайгүй ашиглах боломжтой.
Цаашилбал, Sage болон SymPy-ийн зорилго ижил биш юм. Sage нь математикийн иж бүрэн систем байхыг эрмэлздэг бөгөөд энэ нь бүх үндсэн нээлттэй эхийн математикийн системийг нэг системд нэгтгэснээр үүнийг хийдэг.
Та нэгтгэх гэх мэт Sage функцийг ашиглах үед энэ нь түүнд агуулагдах нээлттэй эхийн багцуудын аль нэгийг дууддаг. Бодит байдал дээр энэ нь Sage-д баригдсан байдаг. Харин SymPy нь бүх функцийг өөртөө хэрэгжүүлсэн, бие даасан систем байхыг эрмэлздэг.
Номын сангийн үйл ажиллагаа явуулах чадвар нь чухал онцлог юм. Олон тооны компьютерийн алгебрийн системийг интерактив орчинд ашиглах зорилготой боловч автоматжуулах эсвэл өргөжүүлэхэд хэцүү байдаг.
Үүнийг Python дээр интерактив байдлаар ашиглах эсвэл өөрийн Python програм руу оруулж болно. Энэ нь мөн өөрийн горимоор үүнийг хялбархан сунгах API-уудтай.
SymPy суулгаж байна
Өөрийн орчинд суулгахын тулд доорх командыг ашиглана уу.
Симпи тэмдэг
Одооноос эхэлцгээе! Үүний үндсэн объект нь тэмдэг юм. SymPy дээр та дараах бичгээр x тэмдгийг үүсгэж болно.
Дээрх код нь x тэмдгийг үүсгэдэг. Тэнд байгаа тэмдэгтүүд нь үл мэдэгдэх утгыг илэрхийлдэг математик тэмдэгтүүдийг дуурайх зориулалттай.
Үүний үр дүнд дараах тооцооллыг доор харуулав.
Дээр дурдсанчлан, x тэмдэг нь үл мэдэгдэх хэмжээтэй адил ажилладаг. Хэрэв та олон тэмдэглэгээ хийхийг хүсвэл дараах байдлаар бичнэ үү.
Та энэ тохиолдолд y, z гэсэн хоёр тэмдгийг нэгэн зэрэг үүсгэсэн. Эдгээр тэмдгүүдийг хүссэнээр нэмж, хасаж, үржүүлж, хувааж болно:
SymPy функцууд
1. sympify() функц
sympify() арга нь дурын илэрхийллийг SymPy илэрхийлэл болгон хувиргадаг. Энэ нь бүхэл тоо гэх мэт стандарт Python объектуудыг хөрвүүлдэг.
Мөрүүдийг илэрхийлэл болон бүхэл тоо гэх мэтээр өөрчилдөг.
2. evalf() функц
Энэ функц нь 100 хүртэлх цифрийн хөвөгч цэгийн нарийвчлалтай заасан тоон илэрхийллийг үнэлдэг.
Энэ функц нь тэмдэгтүүдийн тоон утгатай толь бичгийн объектыг нэмэлт аргумент болгон хүлээн авдаг. Дараахь хэллэгийг анхаарч үзээрэй.
Хөвөгч цэгийн нарийвчлалыг анхдагчаар 15 оронтой болгож тохируулсан. Гэхдээ үүнийг 1-ээс 100 хүртэлх тоо болгон өөрчилж болно.
Дараахь тэгшитгэлийг 20 цифрийн нарийвчлалтайгаар үнэлнэ.
3. Lambdify() функц
Lambdify нь илэрхийллээ Python функц болгон хувиргадаг функц юм. Өргөн хүрээний утгуудын илэрхийлэлийг үнэлэхэд evalf() арга үр ашиггүй байдаг.
Lambdify нь lambda функцтэй адилхан ажилладаг бөгөөд SymPy нэрийг өгөгдсөн тоон номын сангийн нэр рүү хөрвүүлдэг бөгөөд энэ нь ерөнхийдөө NumPy юм.
Анхдагчаар Lambdify нь математикийн стандарт номын сангийн хэрэгжилтэд хэрэглэгддэг.
онцлог
Номын сангийн хамгийн чухал шинж чанаруудыг энд жагсаав; Өөр олон зүйл ороогүй байгаа ч та тэдгээрийг шалгаж болно энд.
1. Үндсэн чадварууд
- Үндсэн арифметик: +, -, *, /, болон ** операторуудыг дэмждэг (хүч чадал)
- Олон гишүүнт тэлэлт
- Дурын нарийвчлал бүхий бүхэл тоо, рациональ, хөвөгч
- Тригонометр, гипербол, экспоненциал функц, үндэс, логарифм, үнэмлэхүй утга, бөмбөрцөг гармоник, факториал ба гамма функц, зета функц, олон гишүүнт, тусгай функц
- Шилдэг бус тэмдэгтүүд
- Тохирох загварууд
2. Тооцоолол
- Интеграци: Энэ арга нь өргөтгөсөн Риш-Норманы эвристикийг ашигладаг
- Ялгаатай байдал.
- Хязгаарлалтын функцууд
- Лоран Тейлорын цуврал
3. Олон гишүүнт
- Грёбнерийн суурь
- Хэсэгчилсэн фракцуудын задрал
- Хуваалт, gcd Үр дүн нь үндсэн арифметикийн жишээ юм.
4. Комбинаторик
- Зөвшөөрөл
- Саарал ба Пруфер кодууд
- Хослолууд, хуваалтууд, дэд олонлогууд
- Олон талт, рубик, тэгш хэмт ба бусад орлуулах бүлгүүд
5. Дискрет математик
- Дүгнэлт
- Логик илэрхийллүүд
- Бином коэффициентүүд
- Тооны онол
Програм
1. Барилгын тооцоолуур
2. Компьютерийн алгебрийн системүүд
Бусад компьютерийн алгебрийн системүүдээс ялгаатай нь та Symbol() функцийг ашиглан доторх симбол хувьсагчдыг гараар зарлах ёстой.
3. Тооцоолол
Симболын тооцооллын системийн бүх төрлийн тооцооллыг симболын хувьд хийх чадвар нь түүний гол хүч чадал юм.
Энэ нь мэдэгдлүүдийг хялбарчлах, бэлгэдлийн хувьд дериватив, интеграл, хязгаарыг тооцоолох, тэгшитгэлийг шийдвэрлэх, матрицуудтай харилцах болон бусад олон зүйлийг хийх боломжтой.
Таны хоолны дуршлыг татахын тулд бэлгэдлийн хүчний амтыг энд оруулав.
Та SymPy-ээр өөр юу хийж чадах вэ?
Нэмэлт асуудлуудын талаар дэлгэрэнгүй ярихын оронд ур чадвараа дээшлүүлэхэд тань туслах эх сурвалжуудын жагсаалтыг өгье.
- Матриц ба шугаман алгебр: Энэ нь матрицтай ажиллах, шугаман алгебрийн үндсэн үйлдлүүдийг гүйцэтгэх боломжтой. Хэл нь NumPy-ийн синтакстай төстэй. Гэсэн хэдий ч мэдэгдэхүйц ялгаа бий. Эхлэхийн тулд судалж үзээрэй матриц номын санд.
- Үзүүлбэр: Энэ нь илэрхийлэлийг хянахын тулд модонд суурилсан бүтэц болох илэрхийллийн модыг ашигладаг. Хараач илэрхийллийн мод Хэрэв та тэдний дотоод үйл ажиллагааны талаар илүү ихийг мэдэхийг хүсвэл.
- Дериватив ба интеграл: Энэ нь тооцооллын анхан шатны хичээл дээр сурч байсан зүйлсийнхээ ихэнхийг (сэтгэлгээ хасаж) хийж чадна. Та манай функцийг үзэж эхэлж болно ялгаа SymPy дээр.
- NumPy-тэй харилцах харилцаа: NumPy болон SymPy нь хоёулаа математиктай холбоотой номын сан юм. Гэсэн хэдий ч тэд үндсэндээ өөр юм! NumPy тоонуудтай ажилладаг бол бэлгэдлийн илэрхийлэлтэй ажилладаг.
- Хялбаршуулсан зүйлс: Энэ нь илэрхийлэлийг автоматаар хялбарчлахад хангалттай ухаалаг юм. Гэсэн хэдий ч, хэрэв та үүнийг илүү нарийн хянахыг хүсч байвал үүнийг хараарай хялбаршуулсан.
Дүгнэлт
SymPy бол бэлгэдлийн математикийн хүчирхэг номын сан юм.
Та үүнийг хувьсагч, функц үүсгэх, мөн математикийн мэдэгдлийг бэлгэдлийн хэлбэрээр өргөжүүлж, хялбарчлах, тэгшитгэл, тэгш бус байдал, тэр ч байтугай тэгшитгэл/тэгш бус байдлын системийг шийдвэрлэхэд ашиглаж болно.
Та функцуудыг скриптийн текст болон шууд терминал дээр бичиж болно (эсвэл Бархасбадь гаригийн дэвтэр) хийсэн тооцооллыг хурдан үнэлж, илүү сайн графикаар дүрслэх.
Та SymPy-г илүү их судлахад бэлэн үү? Сэтгэгдэл дээр бидэнд мэдэгдээрэй.
хариу үлдээх