В этом блоге публикуются заметки и решения, найденные в процессе работы, освоения и жизни в дистрибутиве Debian GNU/Linux.
Maxima: компьютерная алгебра и символьные вычисления в Linux
Чудище обло, озорно, огромно, стозевно и лаяй.
В начало поста вынесен эпиграф к книге «Путешествие из Петербурга в Москву» Александра Николаевича Радищева (1749-1802), что в переводе означает «Чудовище тучное, гнусное, огромное, стозевное и лающее». Это, пожалуй, самый точный * «портрет» системы символьных вычислений Maxima после логичности, простоты и превосходной документации Maple.
В инженерной практике очень часто бывает необходимо по-быстрому взять интеграл, продифференцировать длинное и занудное выражение, сложить пару километровых матриц или ещё чего по мелочи. Делать это от руки, хотя и можно, но лениво — вот тут нам и пригодится система компьютерной алгебры Maxima, которая есть в любом уважающем себя дистрибутиве.
Установка Maxima
Дроны атакуют Москву — реакция Путина и элит / Максим Кац* / Персонально ваш // 30.05.2023 @Max_Katz
Скачивать Maxima с варёзных сайтов, в отличие от Maple, не надо (а если всё-таки надо, скачать Maxima бесплатно можно на официальном сайте). В Debian просто устанавливаем:
aptitude install wxmaxima maxima
Стоит подчеркнуть, что б ез wxmaxima , которая предоставляет возможность копирования результатов в LaTeX, автозакрытия двоеточием и форматированным выводом , сама Maxima почти бесполезна и крайне раздражает своим невменяемым интерфейсом — настолько, что чаще сделать всё от руки проще и быстрее.
Графическая оболочка сильно выправляет ситуацию с идиотскими косяками текстового режима и делает Maxima в целом съедобной. В конце команды не забываем написать точку с запятой, если работаем с консольным интерфейсом. В графической среде это сделают за нас.
Выход из Maxima
Это достойно интерфейса одного текстового редактора, который пищит и всё портит. Чтобы выйти из Maxima, нужно дать команду:
Как признаётся даже официальная документация, «This is a bit confusing for new users, but you must type that full command». Почему бы не наступить на горло собственной песне и сделать хотя бы вот это просто и пряморуко, автор понять не в силах. Опять-таки, графический интерфейс всё делает за нас.
Простые вычисления
Вот есть у нас выражение типа x^2 , и мы хотим его вычислять, меняя x . Это достигается следующей хитроумной конструкцией:
Или ещё. Если мы хотим упрощать что-то вроде a — b + 2*a то Maxima это надо разжевать, положить в ротик, залить кипяточком и хорошенько пнуть:
То есть функция eval тут не проходит, обязательно expand. И функцию объявляем с явным прописыванием переменной вот так: K(s):= s^2+2;
Ну и наконец, как выглядит мнимая единица в Maxima? Вот как:
(%i12) (0.1*%i)^2;
(%o12) -0.01
Статус / Екатерина Шульман* и Максим Курников // 30.05.2023 @Ekaterina_Schulmann
То есть i это в Maxima вот так: %i
Матрицы
Так как по роду приходится иметь дело с линейной алгеброй и (отчасти) символьными вычислениями, приходится иметь дело с оценкой свойств матриц. В силу того, что я ленивый и несколько забывчивый, мне приходится использовать Maxima с её откровенно наркоманским интерфейсом считать матрицы, особенно если они параметрические.
(%i16) A: matrix([1,e],[3,4]);
[ 1 e ]
(%o16)
[ ]
[ 3 4 ]
То есть строки набиваются через [], разделение строк и каждого элемента — запятая.
Простейшие операции с матрицами
Например, нужно нам матрицу умножить саму на себя, но это будет параметрическая матрица:
(%i1) A: matrix([a,b],[c,d]);
[ a b ]
(%o1) [ ]
[ c d ]
Теперь умножим матрицу саму на себя. Казалось бы, это очевидно: K*K даст желаемый результат:
(%i15) K*K;
[ 2 2 ]
[ a b ]
(%o15)
[ ]
[ 2 2 ]
[ c d ]
Однако это вызывает удивлённую реакцию в формате «что за . «. Дело в том, что очевидное у пользователей и у программистов Maxima разное , и операция K*K даст нам поэлементное умножение матрицы. А чтобы получить обычное матричное умножение (строка на столбец), используем операцию K.K и получаем:
(%i16) K.K;
[ 2 ]
[ b c + a b d + a b ]
(%o16) [ ]
[ ]
[ c d + a c d + b c ]
искомое умножение матриц. Подсыпаем ещё подосиновиков в турбокальян, и, попыхивая чёрным дымом, медленно двигаемся дальше.
Упрощениевыполнение символических вычислений
Пусть у нас есть перемножение нескольких матриц, ячейки которых содержат параметры. Мы слишком ленивы (и это правильно), чтобы делать это вручную, поэтому попробуем запрячь Maxima на выполнение этого. Например, умножили несколько матриц, и хочется развернуть алгебраическое выражение в каждой ячейке:
(%i21) A*A1.A;
[ c (c c1 + b b1) b (b c1 + b1 c) ]
(%o21) [ ]
[ b (b c1 + b1 c) c (c c1 + b b1) ]
Тут можно бы предположить, что пройдёт вариант с функцией ev если использовать её как detout:
(%i22) ev A*A1.A;
Incorrect syntax: a is not an infix operatorevSpaceA*^
Тут нас облаяли, но и синтаксис:
(%i22) ev(A*A1.A);
[ c (c c1 + b b1) b (b c1 + b1 c) ]
(%o22) [ ]
[ b (b c1 + b1 c) c (c c1 + b b1) ]
желаемого не даёт. А жаль. Впрочем, Капитан Документация спешит на помощь: нужна функция expand:
(%i23) expand(A*A1.A);
[ 2 2 ]
[ c c1 + b b1 c b c1 + b b1 c ]
(%o23) [ ]
[ 2 2 ]
[ b c1 + b b1 c c c1 + b b1 c ]
Это сэкономило нам пять минут ручной работы, но прибавило десять минут поиска в документации. Неплохо, бывало и хуже.
Вычисление детерминанта матрицы в Maxima
Это делается сравнительно длинной командой determinant:
(%i17) determinant(A);
(%o17) 4 — 3 e
Автодополнением в консоли даже не думайте пользоваться: оно всё заменит на ЗАГЛАВНЫЕ БУКВЫ и вычислять откажется, что в общем ставит вопрос вменяемости разработчиков ещё острее.
Производные
Для вычисления производных испольуем функцию diff в формате
diff ( f(x) , x, k )
- f(x) == дифференцируемая функция
- x == переменная, по которой следует дифференцировать
- k == порядок производной (k=1 — первая производная, k=2 — вторая производная)
(%i14) diff(1/(s+1)^2,s);
2
(%o14) — ———
3
(s + 1)
Вторая производная от той же функции:
(%i15) diff(1/(s+1)^2,s,2);
6
(%o15) ———
4
(s + 1)
Всё работает правильно.
Преобразование Лапласа
Если вы занимаетесь или изучаете теорию автоматического управления (Control Theory), вам очень даже пригодится прямое и обратное преобразование Лапласа (Laplace Transform)
Автор недоумевает по поводу отсутствия такой тривиальной вещи в Максиме, как Z-transform. Вроде бы Максиме не полгода, и цифровые контроллеры сейчас вроде как распространены достаточно, чтобы об этом подумать. Но не здесь.
Заключение и дискуссии
В целом: MAXIMA можно пользоваться ТОЛЬКО с графическим интерфейсом, который нужно устанавливать сразу же. Пакет в Debian называется wxmaxima и особенно при первом знакомстве будет очень кстати. Максима страдает обычными опенсорсными болячками: дурная документация и не всегда логичный командный интерфейс. Если же заткнуть нос и уши, поставив wxmaxima , Максимой пользоваться можно с некоторым даже комфортом: вы даже сможете копировать выхлоп Максимы в формате ЛаТеХ.
Ссылки
Имеет место быть, хотя и довольно топорная, но всё-таки официальная документация. В разогретый кальян хорошо бы покрошить ссылки о базовых способах вычислений в Maxima.
У издательства Alt Linux, как выясняется, есть очень неплохая книга Е.А. Чичкарева «Компьютерная математика с Maxima».
- хороший «10-ти минутный туториал» по Максиме (ин инглиш), есть оный туториал и на русском.
- примеры из книжки Maxima by Example,
- ещё примеры (теперь уже на русском).
- подборка из журнала LinuxFormat про Maxima.
- Maxima доступна и онлайн.
- Расчет лабы по физике в Maxima, решение прикладных задач с помощью Maxima.
- рисование графиков в Maxima через «Gnuplot and VTK»(английский).
- Книжка Maxima для физиков [PS]
25 комментариев: |высказаться!| RSS-лента дискуссии.|
Дрозд Олег комментирует. 16 июл. 2012 г., 12:49:00
У издательства Alt Linux есть очень неплохая книга «Компьютерная математика с Maxima» за авторством Е.А. Чичкарева. Ищется в сети при необходимости)
Есть хороший «10-ти минутный туториал» по Максиме:
Хорошие примеры лежат тут:
Тарнавскго вы уже наверное видели, но вдруг:
А консольная Максима оооочень хороша в больших «многоходовых» расчетах — причем можно посмотреть логи того, что считалось вручную в wxMaxima — и скомпоновать из их .mac-файл, который скормить консольной версии.
maxima -b laminarn.mac
При желании можно законектить это на Тот-Самый-Редактор (ну или emacs) чтобы иметь в одном окне скрипт с подсветкой и всеми прочими плюшками (:set ft=maxima), в другом — результат вычислений — и наращивая ходы одной-двумя кнопками просматривать результаты.
Из очень полезных консольных команд — tex() — которая «делает TeX» — например tex(%); — распечатать предыдущее выражение в техе. Еще можно сразу определить как должна выглядеть переменная в ТеХ-представлении — есть команда texput() — но это тема отдельного разговора.
Словом, зная инструмент — есть где развернуться 🙂
собственно, пример рабочего скрипта для:
сохраняется в файл и скармливается консольной максиме:
maxima -b file.mac
в пастебине подсветки для этого формата нет, но в любом продвинутом текстовом редакторе он как правило находится 🙂
А вот и автор, пришёл насаждать демократию 🙂
Альтлинукс теперь и книги выпускает? Надо же, удивительное рядом 🙂
Ищется в сети при необходимости
Нет варёзу! Мы же честные люди — пойдём и купим 🙂
[Тут автор покосился на свою коллекцию научных книг размером в 12Гб, покраснел и начал шаркать ножкой].
Огромное спасибо за ссылки. Про 10-минутный туториал я честно забыл, но добавил в пост (как и другие ссылки). Тут надо заметить, что автор Максиму пользует от случая к случаю, и в основном по мелочам, с упором на теорию управления (которую я к своей адаптивной оптике прилаживаю).
Тарнавскго вы уже наверное видели
Видел, и читал, но не знал, что его выложили в открытый доступ. Добавил в пост.
А консольная Максима оооочень хороша в больших «многоходовых» расчетах
Не спорю, просто консоль у Максимы, которая переводит всё в КАПСЛОК и отказывается выполнять после этого — несколько раздражает.
При желании можно законектить это на Тот-Самый-Редактор
этот у меня для конфигов, а Kate — для души 🙂
Из очень полезных консольных команд — tex() — которая «делает TeX»
В принципе, графическая морда всё делает за нас — собственно, тем она и хороша.
Словом, зная инструмент — есть где развернуться 🙂
Это верно, просто, как уже отмечалось выше, Максима для меня — типа моторной лодки. То есть обычно рыбачу с удочкой, но иногда нужно пойти за дальний кордон, а тут инструкция к применению толщиной с Войну и Мир 🙂 Приведённое в посте — наиболее часто забываемые вещи.
собственно, пример рабочего скрипта для:
Ох мать честна. 🙂 Выкладывать такое в пост страшно, но себе на дробокс скачал. Мало ли, пригодится.
И ещё раз спасибо тов.tengu911 за информативные комментарии. Если ещё какие ссылки найдутся — милости просим.
virens, какой вы, однако, полезный человек)
если у меня возникают проблемы с тех, я их решаю в основном этим блогом, если мне нужно осилить максиму, я снова натыкаюсь в гугле на этот блог. Я почти уверен, что следующее, что мне понадобится из околонаучных штук в линуксе, уже описано здесь:)
Как там говорилось в мультфильме «Крылья, ноги и хвосты»? «Лучше день потерять, зато потом за пять минут долететь».
если мне нужно осилить максиму, я снова натыкаюсь в гугле на этот блог.
🙂
Там вон выше тов.tengu911 ссылок полезных накидал. У него в пэйстбине такой могучий пример лежит, что даже мне страшно его приводить тут.
Я почти уверен, что следующее, что мне понадобится из околонаучных штук в линуксе, уже описано здесь:)
Почему околонаучных? Вполне себе научных. Гнуплот, латех и матлаб — нормальные исследовательские инструменты.
Помимо латеха и октавы, есть у меня в загашниках ещё пост по Scilab. Мне он нравится ещё меньше Максимы, и там много затейливых ругательств 🙂
А так да, здесь много постов по мотивам моих приключений с научным софтом. Вообще, бложик с Дебиана плавно перетёк в Гнуплот+Латех. Собственно, это мои основные инструменты. Ну и Матлаб конечно, куда ж без него. Кстати, есть у меня пара постов в черновиках про sparse matrix в MATLAB и про численную линейную алгебру.
Надо бы выложить, что ли.
Я не хотел сказать, что это ненаучно, я вложил в это слово смысл «связанный с наукой», а не «псевдонаучный» или что похуже.
Огромное упущение статьи: не указано, что на пробу Maxima доступна и онлайн. Прежде, чем выливать ушат помоев на авторов Maxima, нужно ознакомиться с историей создания. Не надо использовать Maxima только как калькулятор и пытаться получить результат парой кликов. Я соглашусь только по поводу странных обозначений, в остальном — Maxima ты не освоил.
без wxmaxima, которая предоставляет возможность копирования результатов в LaTeX, автозакрытия двоеточием и форматированным выводом, сама Maxima почти бесполезна
Maxima — это консольная версия-то? Ну ты и загнул, virens. Про tex(%); уже сказали; поскольку «вывод результата вычисления можно заглушить, завершив команду символом $ вместо ;», то автозакрытие неуместно. А какой еще может быть вывод в консоли, если не в виде псевдографики?
Чтобы выйти из Maxima, нужно дать команду: quit();
Но кто ж так делает? Если в консоли, то просто Ctrl+D.
Если мы хотим упрощать что-то вроде a — b + 2*a то Maxima это надо разжевать, положить в ротик, залить кипяточком и хорошенько пнуть
У меня все работает без магии:
(%i5) a+b+2*a;
(%o5) b + 3 a
И так, между прочим, тоже:
(%i6) K(s):=s^2+2$
тоже занимаюсь научными делами отошел от матлаб в сторону С++ +qt+plplot, octave как калькулятор.
А максима это вроде ближе к wolfram mathematica, в матлаб кстати тоже есть мощный символьный движок
virens,
> В Debian просто устанавливаем:
> aptitude install wxmaxima maxima
а мне больше нравится так (maxima подтянется как зависимость):
# apt-get install wxmaxima
iv_vl,
>> Чтобы выйти из Maxima, нужно дать команду: quit();
> Но кто ж так делает? Если в консоли, то просто Ctrl+D.
кстати, был удивлен, что эта комбинация работает во многих консольных программах (например, bc).
Кстати, в KDE4 есть Cantor — фронтенд к различным алгебраическим системам, в том числе и к maxima
С какой реализацией коммон лиспа собрана максима у автора?
Maxima за 10 минут на русском: http://lugnsk.org/lugnskru/2010/03/wxmaxima-za-10-minut.html
-на русском:
Расчет лабы по физике в Maxima
http://bit.ly/Nzupjh
Решение прикладных задач с помощью Maxima
http://bit.ly/Mmz6Na
Численное решение дифференциальных уравнений
http://bit.ly/NBy5hJ
— на испанском и английском языках по рисованию графиков в Maxima через «Gnuplot and VTK» (Ну и ещё немного сопутствующей информации)
http://riotorto.users.sourceforge.net/index.html
А есть ли графические интерфейсы для Maxima в Windows кроме wxmaxima? Для научных вычислений использую Scilab. Удобно писать небольшие программы для вычислений.
> есть ли графические интерфейсы для Maxima в Windows кроме wxmaxima?
Вроде на Tcl/Tk еще что-то есть
В дебиановских пакетах максима собрана с GNU Common Lisp. Не самый лучший выбор мягко говоря.
Про автодополнение в консольной максиме:
http://www.math.utexas.edu/pipermail/maxima/2009/018463.html
Ну уж вот это-то можно проще:
Причём, этой же конструкцией можно подставлять не только одиночные переменные, но и целые выражения (veryBigFormula, sqrt(x^2-5+9) = d).
Кстати, говорят (http://freetonik.com/sage/), что в Sage можно использовать maxima. Сам не пробовал, потому как необходимости не было, но, судя по роликам, система довольно интересная.
З.Ы. Что-то в моём Firefox сломалось, не хочет капчу показывать. Соответственно посты не проходят. Из Оперы работает нормально 🙁
Доброе утро!
Пишу здесь впервые, но сам пару раз уже пользовался — хочу немного отдать долг :).
На http://maxima.sourceforge.net/ru/documentation.html
есть ссылка на книгу: Ильина, Силаев Maxima для физиков: http://tex.bog.msu.ru/numtask/max07.ps
Наверное, наиболее подробное изложение среди того, что мне удалось найти. Хотя точка зрения у авторов довольно экстремистская :).
Огромное упущение статьи: не указано, что на пробу Maxima доступна и онлайн.
А я и не знал. Исправил, спасибо за подсказку.
Я соглашусь только по поводу странных обозначений
Собственно, на это критика и была нацелена.
в матлаб кстати тоже есть мощный символьный движок
Если не ошибаюсь, он там тягает Maple.
Для научных вычислений использую Scilab.
Редкостный глюкодром, особенно в Xcos (оно ни одну сколько-нибудь сложную задачу симулировать не могло). Книг нет, справки тоже. Тогда уже лучше Octave — на Матлаб переучиваться не придётся.
Про автодополнение в консольной максиме
Вот в этом весь опенсорц: это не наш велосипед, это всё Лисп!
Что-то в моём Firefox сломалось, не хочет капчу показывать.
Вырубил на время капчу.
Я её использую, чтобы отбить всяких СЕОшных исчадий с большими членами 🙂
есть ссылка на книгу: Ильина, Силаев
Добавил в ссылки.
Хотя точка зрения у авторов довольно экстремистская
Главное, чтобы понятно было, а то некоторые и конвексную оптимизацию любят объяснять так, что волосы шевелятся не только на голове 🙂
Ссылки добавил, пост немного поправил.
Огромное спасибо комментаторам!
Вот ещё до кучи: «MAXIMA HOWTO»:
http://www.uic.unn.ru/~zoav1/writings/maxima-howto.html
> Автор недоумевает по поводу отсутствия такой тривиальной вещи в Максиме, как Z-transform
aptitude install maxima-share
/etc/init.d/eyes restart
Правильно использовать максиму (и гнуплот) из Емакса. Так же почитайте man info.
в емаксе набираем
c-h i
m maxima
s строкапоиска
У wxMaxima большие проблемы с относительно большими числами. Например, 2^(10^4) в wxMaxima это
в то время как в консоли и в XMaxima это ожидаемое
Источник: mydebianblog.blogspot.com
Что за программа максима
Рассмотрим немного подробнее установку программы на компьютер под управлением OS Windows (наиболее популярный вариант операционной системы). Дистрибутив последней версии программы скачивается одним файлом в exe -формате maxima -5.28.0-2. exe с сайта разработчиков программы http://sourceforge.net/projects/maxima/files/ . Заметим, что на сайте имеются также более ранние версии программы. Для установки программы на компьютер необходимо иметь права администратора.
Установка программы стандартна и доступна начинающему. На первом этапе тут же после запуска инсталлятора будет задан вопрос о том, какие компоненты программы необходимо установить (рис. 2.1).
Рис. 2.1. Инсталляция программы
Можно не выбирать Пакеты поддержки языков Maxima и выбрать оба варианта графической оболочки: wxMaxima и XMaxima (рис. 1.1).
На втором этапе инсталлятор спросит, создавать ли ярлыки для запуска программы. Можно создать оба ярлыка. Но со временем оставить только один из них:
поскольку более удобной является графическая оболочка wxMaxima . А графическую оболочку XMaxima можно запускать и без создания ярлыка.
Для первичного знакомства с программой загрузим XMaxima , выбрав название из меню Пуск рабочего стола. Пользователи компьютеров под управлением OS Linux также могут загрузить оболочку XMaxima из меню рабочего стола KDE или из Терминала (программы Konsole), введя с клавиатуры xm axima (маленькими (строчными) буквами) и нажав Enter. Maxima откроет сразу два окна.
Рис. 2.2. Консольный интерфейс программы Maxima
В просмотровом окне Xmaxima: browser приведены некоторые примеры (Here are some examples from basic calculus.) основных вычислений . В консольном окне Xmaxima : console после первого приглашения (% i 1) моргает курсор. Интерфейс предлагает с клавиатуры (консоли) ввести команду.
Поскольку первый пример, записанный в окне Xmaxima : browser
малопонятен, введём с клавиатуры 2*2 и нажмём Enter . Курсор перейдёт на новую строчку и будет готов к продолжению записи. Но никакого ответа не видно, поэтому снова внимательно посмотрим на примеры в окне Xmaxima : browser и заметим, что в конце каждого примера (кроме первого) имеется терминальный символ ; – точка с запятой. Вернём курсор в конец первой записи. После добавления у нас получилась очень простая команда (%i1) 2*2; и мы желаем узнать, знает ли об этом Maxima ? Нажав Enter, мы получаем ответ, но не в начале строки (% o 1), а на её середине. «Конечно же, знает», – делаем вывод и даем ещё несколько заданий (рис. 2.3).
Рис. 2.3. Знакомство с консольным интерфейсом Maxima
Из рассмотренных примеров видим, что Maxima не интересуется тем, какое число или выражение прячется за символом а или словом ″Вася″, записанным русскими буквами, и взятым в двойные кавычки. Умножая одинаковые выражения, Maxima получает степени, деля одинаковые выражения получает единицу: а*а = а 2 , ″Вася″ / ″Вася″ = 1. Можно ожидать, что ″Вася″+″Вася″ окажется равным 2″Вася″.
Из первого знакомства с программой Maxima можно сделать вывод, что мы действительно имеет дело с математиком, который умеет работать с символами. Что касается интерфейса XMaxima , то он неинтересен. Степени позиционируются правильно, но все символы выводятся в текстовом режиме одинаковыми по размеру и никак не масштабируются — правильно по смыслу, но неправильно по форме. Так математики не пишут, это скорее пародия, нежели строгая математическая запись.
Кроме того из полученного начального опыта работы с программой Maxima мы, конечно же, прежде всего вынуждены запомнить, что точку с запятой в конце каждого задания надо ставить обязательно, если мы хотим получить ответ от Maxima . Сами ответы, так же как и команды, Maxima нумерует. Команды непрерывно нумеруются как (%in) – введённые (input), ответы как (%on) – выведенные (output), временные ответы как (%tn) (от англ. temporary – временный).
На основании уже полученного начального опыта можно ожидать, что, поняв специфику работы с программой Maxima и очень богатые вычислительные возможности, о которых будет рассказано далее, пользователь просто забудет, что на его компьютере имеется программа «Калькулятор», так как Maxima все вычисления делает лучше.
Далее мы не будем уточнять, что Maxima – это «программа», что это «система компьютерной алгебры» и не будем как-либо склонять по падежам название Maxima (типа в Maxim ’е, Maxim ’ой ), полагая, что читатель сам вставит пропущенное нами слово: или «программа» или «система» и вместо плохо читаемого сокращённого варианта «в Maxima» прочитает по-русски «в программе Maxima».
Переходя к рассмотрению интерфейса wx Maxima, сделаем несколько предварительных замечаний.
1. Названия переменных в программе Maxima принято писать латинскими буквами, причём прописные буквы необходимо отличать от строчных.
2. В имени переменной (идентификаторе) могут присутствовать также цифры, символ подчёркивания «_» и знак процента «%». Русские буквы и русские тексты Maxima тоже частично понимает, если их записывать в двойных кавычках, но все же, как видим из следующего, примера, полной эквивалентности нет.
Maxima сумела выполнить деление ″Петя″ / ″Петя″, но присвоить объекту ″Петя″ численное значение – не может. Перемножить одинаково написанные символы (см. строку %о2) ей также не удалось, поскольку две из них – латинские, а две другие – кириллические (в другой кодировке).
Интерфейс wx Maxima имеет много достоинств:
1. При записи команд можно вставлять дополнительные пробелы для повышения читабельности.
2. Длину строки с командой можно брать любой, можно переносить текст команды на новую строку.
3. Интерпретатор Maxima выполняет вычисления и тут же выводит результат. Вызов интерпретатора производится нажатием клавиш Shift + Enter , если даже не записан последний терминальный символ ; – точка с запятой. При вызове интерпретатора символ (;) добавляется автоматически. Можно сэкономить время и, не записывая символа (;), нажать клавишу Enter , придерживая нажатой клавишу Shift Курсор при вызове интерпретатора может находиться в любом месте, даже в начале строки.
4. В одну группу можно объединить несколько команд, разделяя их символами ; или $. Каждая команда получит свой номер, но только для первой из них номер будет указан в окне wx Maxima. Команды будут выполняться в том порядке, в которой они записаны. Каждый результат будет иметь номер, соответствующий номеру введённой команде, но напечатаны будут ответы тогда, когда терминальным символом у соответствующей команды была записана точка с запятой (;) и не напечатаны в том случае, если терминальным символом служил $.
5. Тексты команд можно копировать, вставлять и редактировать как обычный текст в обычном текстовом редакторе. Можно вставлять текст примеров из других источников, например из файлов, открытых в Word ’ e или Блокноте, или в других текстовых редакторах. При вставке только одной строки никаких дополнительных действий не потребуется. Но при вставке нескольких строк из другого источника придется удалять символ перевода строки, который кодируется в Maxima иначе.
6. Можно повторно выполнить ранее записанную команду или серию команд: поднять курсор вверх и на записанной строке вызвать интерпретатор нажатием Shift + Enter . Выполненная строка получит новый (очередной) номер.
7. Нумерацию команд можно снова начать с номера (% i 1), если выполнить команду kill ( all ). При этом будут сброшены значения всех ранее использованных переменных, kill ( x ) – сбрасывает значение переменной х.
8. При ссылке на последний полученный результат можно не приводить номер строки полностью, достаточно указать только символ %.
9. Ссылка на последнюю введенную команду имеет вид _ (подчерк).
10. Строки ввода вместе со строками вывода в окне wx Maxima соединены специальной квадратной скобкой и образуют блок, состоящий из блока ввода и блока вывода. При необходимости можно скрыть ( hide ) все строки, кроме первой, если щелкнуть мышью на треугольнике в верхнем углу квадратной скобки.
11. Строки вывода (они имеют номер вида %о N ) удалять не нужно, они тут же останутся в истории, если исправить текст команды и исполнить команду повторно.
12. Чтобы удалить блок целиком, его сначала нужно выделить: щелкнуть, например, левой кнопкой мыши по квадратной скобке блока, а затем удалить с клавиатуры. Или щелкнуть правой кнопкой мыши по квадратной скобке указателя блока (вызывает контекстное меню) и выбрать Delete Selection (удалить выделение).
13. Среди набираемых команд может быть использован комментарий – текст, набранный в скобках /* */, в то же время блок ввода не может заканчиваться комментарием – последний (комментарий) не должен быть в блоке ввода последним.
Далее мы будем активно вставлять пояснения в виде комментария в блоки ввода, а для внедрения выполненных примеров в текст изложения – выделять блоки в окне wx Maxima правой кнопкой мыши, выбирать в контекстном меню Copy as Image (копировать как изображение) и вставлять графику в текст. Вставка небольшими понятными читателю порциями позволит нам отказаться от создания громоздких копий экрана (скриншотов) и организации объёмных листингов.
Заметим, что скопированное в окне wx Maxima графическое изображение может быть вставлено в Word или Writer , работающий в OS Windows , без посредника (без перекодирования). Однако при вставке графики из окна wx Maxima в окно OpenOffice . org Writer , открытое в другой операционной системе, в качестве посредника (для перекодирования) необходим графический редактор.
Только после вставки скопированного изображения в окно графического редактора, оно может быть тут же снова скопировано и уже вставлено в документ в окне текстового редактора.
Сразу же после вставки графики в окно OpenOffice . org Writer , мы рекомендуем, вызвать правой кнопкой мыши контекстное меню и сначала применить выбор Обтекание – Без обтекания, далее Привязка – Как символ, только в этом случае документ можно будет удобно редактировать.
Источник: www.sites.google.com
Скачать Maxima
Maxima — это специализированная программа, которая предназначена для работы с самыми разными математическими формулами, функциями и так далее. Подобного рода компьютерная алгебра или математика включает в себя огромное количество различных составляющих. Все характеристики программы делают ее чрезвычайно удобной и практичной, поэтому она без сомнения должна Вам понравится. Благодаря Maxima можно создавать графики в 2-ух и даже 3-ех измерениях. Интересно то, что исходный код данного приложения может спокойно использоваться на всех популярных операционных системах, среди которых: привычная для всех Windows, популярная Linux, а также MacOS X.
Если обратиться к истории Программа Максима, то это программа является продолжением легенды алгебры компьютерной — приложения «Macsyma», которая активно использовалась в далеком 1960 году. И в настоящий момент именно наше приложение осталось единственным доступным активным, благодаря тому, что им пользуется большое количество людей. В 60-х годах компьютерная алгебра произвела определенный фурор и повлияло на развитие многих других математических систем, к примеру: Maple и Mathematica.
Вы можете Maxima скачать бесплатно для Windows для последующей работы в сфере компьютерной графики. Сложно представить себе более удобную и современную систему, которая позволит легко управляться с численными и символьными математическими выражениями.
У программы “Максима” большое количество преимуществ и особенностей:
- Это известная во всем мире система, которая используется множеством различных людей;
- Программа доступна всем, без особых ограничений;
- Приложение отличается большим количеством функций и свойств.
Скачать Maxima
Разработчик | Andrej Vodopivec |
Лицензия | Бесплатно |
ОС | Windows XP/7/8/10/11 32|64-bit |
Язык | Русский |
Категория | Скачать программы для образования |
Скачали, раз | 664 |
На сайте с: | 18 апр 2023 |
Источник: freeloadnet.ru