Кіріспе

Компьютерлік алгебра жүйесі

Maxima (['/m//æ//k//s//ɪ//m//ə/]) – математика және физика ғылымдарында компьютерлік алгебралық есептеулерді жүзеге асыруға арналған қуатты бағдарламалық пакет. Ол Common Lisp тілінде жазылған және macOS, Unix, BSD және Linux сияқты барлық POSIX платформаларында, сондай-ақ Microsoft Windows және Android жүйелерінде жұмыс істейді. Бұл бағдарламалық жасақтама GNU General Public License (GPL) лицензиясы шарттары бойынша тегін таратылады.

Тарих

Максима 1982 жылы АҚШ Энергетика министрлігі және басқа да мемлекеттік мекемелердің қаржысымен MIT-де жасалған Macsyma нұсқасына негізделген. Билл Шелтер 1982 жылдан 2001 жылы қайтыс болғанға дейін Macsyma нұсқасын қолдап келді. 1998 жылы Шелтер Энергетика министрлігінен рұқсат алып, өзінің нұсқасын GPL лицензиясымен жариялады. Бұл нұсқа қазір Maxima деп аталады және тәуелсіз пайдаланушылар мен әзірлеушілер тобы тарапынан қолдау көрсетіледі. Maxima 1982–1999 жылдар аралығында Macsyma коммерциялық нұсқасына енгізілген көптеген өзгертулер мен жақсартуларды қамтымайды. Негізгі функционалдық мүмкіндіктері ұқсас болғанымен, осы жақсартуларға байланысты код Maxima-да жұмыс істемеуі мүмкін, ал Macsyma-да түзетілген қателер Maxima-да әлі де кездесуі мүмкін, сондай-ақ керісінше де болуы мүмкін. Максима 2019 жылы Халықаралық нейроинформатиканы үйлестіру орталығының қолдауымен Google Summer of Code бағдарламасына қатысты.

Символды есептеулер

Көптеген компьютерлік алгебра жүйелері сияқты, Maxima символдық алгебралық өрнектерді қайта ұйымдастырудың әртүрлі тәсілдерін қолдайды, мысалы, полиномдарды факторлау, полиномдардың ең үлкен ортақ бөлгішін табу, ашу, нақты және жорамал бөліктерге бөлу, тригонометриялық функцияларды экспоненциалдық функцияларға және керісінше түрлендіру. Ол тригонометриялық функциялар, түбірлер және экспоненциалдық функциялармен байланысты алгебралық өрнектерді жеңілдетудің әртүрлі әдістерін қамтиды. Ол символдық антитуындыларды ("белгісіз интегралдарды"), анықталған интегралдарды және лимиттерді есептей алады. Ол жабық түрдегі қатарларды кеңейтуді, сондай-ақ Тейлор, Маклорен және Лоран қатарларының мүшелерін шығара алады. Ол символдық элементтері бар матрицалық операцияларды жүзеге асыра алады. Maxima – жалпы мақсаттағы жүйе, сондықтан үлкен сандарды факторлау, өте үлкен полиномдарды өңдеу сияқты арнайы жағдайлардағы есептеулер кейде мамандандырылған жүйелерде жақсырақ орындалады.

Сандық есептеулер

Максима символдық операцияларға маманданған, бірақ кеңістік және уақыт шектеулерімен ғана шектелген, кез келген дәлдіктегі бүтін сан, рационалды сан және қозғалмалы нүктелі сандар сияқты сандық мүмкіндіктерді де ұсынады.

Бағдарламалау

Максима ALGOL-ға ұқсас синтаксиспен, бірақ Lisp-ке ұқсас семантикасы бар толық бағдарламалау тілін қамтиды. Ол Common Lisp тілінде жазылған және бағдарламалық түрде қолжетімді әрі кеңейтілген, себебі негізгі Lisp-ті Maxima-дан шақыруға болады. Ол сурет салу үшін gnuplot-ты пайдаланады. Жылжымалы нүкте сандары мен массивтерді көп пайдаланатын есептеулер үшін Maxima Maxima тілінен басқа бағдарламалау тілдеріне (әсіресе Fortran) аудармашыларды қолданады, олар тиімдірек жұмыс істей алады.

Арнайы функциялары

Бессель j(0, 4.5); Эйри ai(1.5);