wxMaxima для студентов-физиков

Материал из Викиучебника — открытых книг для открытого мира

Установка и запуск[править]

Программа wxMaxima является графическим интерфейсом к программе Maxima. На данный момент обе программы присутствуют в большинстве дистрибутивов GNU/Linux в качестве опционального ПО. В Ubuntu/Debian дистрибутивах установка может быть произведена следующей командой:

sudo apt-get install wxmaxima

Примечание 1: Пользователям OS X и Windows необходимо скачать эти программы с официального сайта.

Примечание 2: Обратите внимание на UNIX-концепцию разделения на интерфейс и функционал. В тексте руководства я буду говорить о программах Maxima и wxMaxima, подразумевая разные части одного программного комплекса.

Если вы используете GNU/Linux — то после установки программа появится в меню, в разделе «Обучение». Если она по каким-то причинам не появилась, значит такова ваша судьба. В таком случае я рекомендую вам запускать ее через диалоги запуска, которые в большинстве дистрибутивов вынесены на сочетание клавиш alt-f2. Лично я предпочитаю инициировать этот диалог с панели. А вообще, вы можете расположить на панели любое приложение, которое бы вы хотели, хоть ту же максиму.

Диалог запуска на панели.


После запуска программы вы попадете в ее главное окно, которое выглядит следующим образом:

Главное окно wxMaxima.


Если это окно открылось, то вы прошли самую сложную часть руководства, и можете двигаться далее.

Простейшие расчеты и ввод данных.[править]

На этом этапе вы уже можете выбросить свой карманный калькулятор, потому что wxMaxima может его заменить. На последующем, сможете выбросить и инженерный. Но пока оставьте, для того чтобы проконтролировать соответствие максимовских алгоритмов правилам математики.

Для начала следует разобраться, как сюда что-то вводить. Нажав на Enter вы обнаружите, что перед вами возникла неведомая фигура, обозначающая здесь приглашение командной строки. Попробуйте ввести какое-нибудь выражение, а затем нажать на Ctrl-Enter, прямо как в аське. И, о чудо, wxMaxima выдает вам ответ!

Простейшие расчеты в wxMaxima


Если в аське вы привыкли отправлять сообщения по Enter, а не по Ctrl-Enter, то и такую возможность предоставляют настройки программы. Вам необходимо зайти в меню Правка → Настройки и там, на вкладке «Опции» вы увидите последним в списке поле для галочки «Enter evalutes cells». Именно она отвечает за то, чтобы сообщения для максимы отправлялись по Enter.

Настройка отправки по Enter


Если вы хотите обозначить какое-то значение для более удобного оперирования, вы можете присвоить ему имя. Проще говоря, вы можете задать константу, которую максима будет затем подставлять в выражения автоматически. Делается это следующей не очевидной командой:

pi: 3.14

Знак ':' является «оператором» присваивания, а левая и правая часть выражения, как можно догадаться, являются именем и значением константы соответственно. Теперь константу pi можно использовать в выражениях.

Что касается числа π, то оно доступно в maxima под именем %pi. Знак процента означает, что константа служебная. Еще одним примером такой константы может служить мнимая единица - %i. Проверьте, если вы возведете %i в квадрат, то получите минус единицу.

Использование констант в максиме.


При расчете лабораторных зачастую приходится использовать массивы данных. Сейчас я расскажу вам, как их вводить. Как их использовать можно будет прочитать далее. Для введения массива можно воспользоваться следующей конструкцией:

a: [1,2,3]

Вообще говоря, называть эту структуру массивом некорректно. В maxima эта структура называется списком, а массив это несколько другое. Но такой терминологией удобнее оперировать, и я буду выражаться то так, то правильно. Доступ к элементам списка напоминает доступ к элементам массива в C-подобных языках программирования:

a[1]
a[3]

Как уже поняли некоторые читатели, работа в максима напоминает программирование на каком-нибудь интерпретируемом языке, и тем, кто ознакомлен с таким программированием будет легче в ней работать. Я постараюсь писать это пособие таким образом, чтобы остальным тоже было понятно. Если же у меня это не получится, переделайте мое руководство, ведь оно под лицензией Creative Commons!

Использование списков.


И последнее, о чем я хочу вам рассказать в разделе о данных, это флаг численных вычислений (да-да, именно так тавтологично он здесь и называется :) ). Этот флаг влияет на представление чисел, которыми вы оперируете. Грубо говоря, его значение по умолчанию означает, что целые числа, которыми вы оперируете, при делении друг на друга предстанут перед вами не в виде иррационального числа с десятичной точкой, а в виде дроби. Если вы его переключите, то все ваши числа будут как будто бы дробными.

Влияние флага численных вычислений.


Вот и все. Теперь у вас есть отличный калькулятор для выражений любой сложности. Если вы хотите, чтобы максима для вас стала чем-то большим, не переключайте канал!

Функции в Maxima.[править]

В Максима реализована возможность задания математических функций. Но я начну с того, что расскажу о встроенных функциях. Как правило, эти функции записываются аналогично математике.

sin(3.14)

Только вот математика эта американская, а не отечественная. Поэтому привычные нам со школы tg следует заменять на tan. Вот список тех функций, которые я смог обнаружить самостоятельно:

Функция в Maxima Функция в математике
sin(x) Синус
cos(x) Косинус.
tan(x) Тангенс.
sinh(x) Гиперболический синус.

Примечание: А вы знали, что если взять арксинус/арккосинус от числа больше 1, то у вас получится комплексное значение?

Наверняка встроенных функций куда больше. Если вам еще что-то нужно, то попробуйте обратиться к руководству по wxMaxima/Maxima. Там много интересного для начинающего любителя численных вычислений.

Встроенные функции в Maxima.

Если вы введете функцию, которая программе не известна, то она покажет вам точно такую же строку, как вы ввели. Но будьте внимательны! Если у вас установлен флаг numeric в дефолтное положение, то она поведет себя точно так же и с заданной функцией. Так что если вы намерены все же получить свой ответ, то переключите флаг, или передавайте функции вещественный параметр.

Теперь о том, как задавать собственные функции. Как и в математике, функция может быть определена выражением. Чтобы задать функцию, вы должны воспользоваться следующим оператором:

f(x) := x/2

После определения вы можете использовать ее также, как и встроенные функции:

f(3)

У функции также может быть несколько параметров, которые задаются и передаются через запятую. Пример вы можете увидеть на следующем скриншоте.

Собственные функции в wxMaxima

Как вы видите, ничего сложного. Используйте функции для упрощения ваших расчетов. Если вы последовательно посчитаете свои данные используя функцию, то у вас уже получится красивая табличка.

Циклическая обработка данных.[править]

Сохранение и печать результатов.[править]

Построение дискретных графиков.[править]

Метод наименьших квадратов.[править]

Maxima без интерфейса.[править]

Эпилог[править]

Источник[править]

Методичка по wxMaxima