Мазмұны[Жасыру][Көрсету]
Сіз университет студенті болсаңыз да, деректер ғылымында жұмыс істейсіз бе, математиканы айналып өту мүмкін емес.
Тіпті деректер ғылымы қолданбалы математика/статистиканың бір түрі деп дауласуға болады. NumPy, SciPy, Scikit-үйреніңіз, және TensorFlow математикамен сандық түрде айналысатын Python кітапханаларының бірнешеуі ғана.
Дегенмен, математикалық белгілермен нақты жұмыс істеу үшін бір ғана бәсекелес бар: SymPy.
SymPy туралы бәрін білейік.
қандай SymPy?
SymPy — Python символдық математикалық кітапханасы. Ол түсінікті және оңай кеңейтілетін кодты мүмкіндігінше қарапайым етіп сақтай отырып, толық функционалды компьютерлік алгебра жүйесі (CAS) болуға ұмтылады.
Ол толығымен Python тілінде жазылған. Оны пайдалану оңай, өйткені ол тек mpmath-қа негізделген, еркін өзгермелі нүкте арифметикасына арналған таза Python кітапханасы.
Кітапхана ретінде ол ыңғайлылыққа ерекше назар аудара отырып жасалған. Кеңейтімділік оның қолданбалы бағдарлама интерфейсін (API) жобалауда маңызды.
Нәтижесінде ол Python тілін жақсартуға әрекет жасамайды. Мақсат - пайдаланушылардың оны басқалармен бірге пайдалана алуы Python кітапханалары интерактивті ортада немесе үлкенірек жүйенің бағдарламаланған құрамдас бөлігі ретінде олардың жұмыс процесінде.
SymPy кітапханасы ретінде кірістірілген графикасы жоқ Қолданушы интерфейсі (GUI). Кітапхана дегеніміз:
- Тегін, сөйлеуге де, сыраға да қатысты, өйткені ол BSD лицензиясы бойынша лицензияланған.
- Python негізіндегі: ол толығымен Python тілінде жасалған және оның тілі ретінде Python қолданылады.
- Жеңіл, өйткені ол тек мпматқа, тазалыққа негізделген Python кітапханасы еркін өзгермелі нүктелі арифметикаға арналған, бұл оны пайдалануды жеңілдетеді.
- Басқа бағдарламаларға қосуға және интерактивті құрал ретінде пайдаланудан басқа теңшелетін функциялармен өзгертуге болады.
Неліктен SymPy пайдалану керек?
Sage, компьютерлік алгебра жүйесі де Python-ды бағдарламалау тілі ретінде пайдаланады. Екінші жағынан, Sage өте үлкен, ол гигабайттан астам жүктеп алуды қажет етеді. Оның жеңілдігінің артықшылығы бар.
Ықшам болуымен қатар, оның Python-дан басқа ешқандай тәуелділігі жоқ, бұл оны барлық жерде қолдануға мүмкіндік береді.
Сонымен қатар, Sage және SymPy мақсаттары бірдей емес. Sage толық мүмкіндікті математикалық жүйе болуға ұмтылады және ол мұны барлық негізгі ашық бастапқы математикалық жүйелерді бір жүйеге біріктіру арқылы жасайды.
Біріктіру сияқты Sage функциясын пайдаланған кезде ол құрамындағы ашық бастапқы бумалардың бірін шақырады. Шындығында, ол Sage-ге салынған. SymPy, екінші жағынан, барлық функционалдығы оның өзінде жүзеге асырылатын дербес жүйе болуға ұмтылады.
Оның кітапхана ретінде жұмыс істеу мүмкіндігі маңызды мүмкіндік болып табылады. Көптеген компьютерлік алгебра жүйелері интерактивті ортада пайдалануға арналған, бірақ оларды автоматтандыру немесе кеңейту қиын.
Оны Python тілінде интерактивті түрде пайдалануға немесе жеке Python бағдарламаңызға импорттауға болады. Сондай-ақ, оны өз әрекеттеріңізбен оңай кеңейтуге арналған API интерфейстері бар.
SymPy орнатылуда
Ортаңызға орнату үшін жай ғана төмендегі пәрменді пайдаланыңыз.
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 қосымшасын зерттеуге дайынсыз ба? Түсініктемелерде бізге хабарлаңыз.
пікір қалдыру