- •Оглавление
- •Программа Maxima и ее возможности для профессиональной подготовки обучающихся
- •Программа Maxima и ее возможности для профессиональной подготовки обучающихся
- •1.1. История и особенности
- •Основные функциональные возможности программы Maxima
- •Интерфейс и основные панели инструментов скм Maxima
- •Аналитические (символьные) преобразования и вычисления
- •Функции и их графики
- •Системы уравнений
- •Тригонометрические и геометрические задачи
- •1.3. Применение программы Maxima для решения задач высшей математики
- •3. Задачи линейной алгебры.
- •1.4. Достоинства программы Maxima
- •2. Система дидактических материалов и задач для изучения программы Maxima
- •2.1. Основные алгоритмы решения конкретных задач в системе Maxima
- •2.2. Текущий контроль
- •2.2.1. Основные команды в Maxima
- •2.2.2. Задачи элементарной математики
- •2.2.3. Графики
- •2.2.4. Решение уравнений
- •2.2.5. Задачи математического анализа
- •2.2.6. Задачи линейной алгебры
- •2.3. Итоговый (тестовый) контроль знаний
- •Список использованных источников и литературы
1.4. Достоинства программы Maxima
Основными преимуществами программы Maxima являются:
• возможность свободного использования (Maxima относится к классу свободных программ и распространяется на основе лицензии GNU);
• возможность функционирования под управлением различных ОС (в частности Linux и Windows);
• небольшой размер программы (дистрибутив занимает порядка 23 мегабайт, в установленном виде со всеми расширениями потребуется около 80 мегабайт);
• широкий класс решаемых задач;
• возможность работы, как в консольной версии программы, так и с использованием одного из графических интерфейсов (xMaxima, wxMaxima или как плагин (plug-in) к редактору TexMacs);
• расширение wxMaxima (входящее в комплект поставки) предоставляет пользователю удобный и понятный интерфейс, избавляет от необходимости изучать особенности ввода команд для решения типовых задач;
• интерфейс программы на русском языке;
• наличие справки и инструкций по работе с программой (русскоязычной версии справки нет, но в сети Интернет присутствует большое количество статей с примерами использования Maxima);
• возможность графического вывода формул;
• упрощенный ввод наиболее часто используемых функций (через диалоговые окна), а не набор команд, как в классической Maxima.
• разделение окна ввода данных и области вывода результатов (в классической Maxima эти области объединены, и ввод команд происходит в единой рабочей области с полученными результатами).
2. Система дидактических материалов и задач для изучения программы Maxima
2.1. Основные алгоритмы решения конкретных задач в системе Maxima
Задача 1. Вычислить х! и xy. После выполнения задания очистить значения переменных, при х=4, y=7
После ввода каждой команде присваивается порядковый номер. На приведенном ниже рисунке 1 введенные команды имеют номера 1–2 и обозначаются соответственно (%i1), (%i2). Результаты вычислений имеют соответственно порядковый номер (%o1), (%o2) и т.д. Где "i" – сокращение от англ. input (ввод), а "o" – англ. output (вывод).
Присваиваем переменным значения. Присваивание значения переменной осуществляется с использованием символа: (двоеточие), например так:
Возведение в степень можно обозначать тремя способами: ^, ^^, **. Извлечение корня степени n записывают, как степень ^^(1/n).
Имеется еще одна встроенная в Maxima полезная операция – нахождение факториала числа. Эта операция обозначается восклицательным знаком. Например, 6!=1*2*3*4*5*6=120.
Если необходимо удалить значение переменной (очистить ее), то применяется метод kill:
kill(x) – удалить значение переменной x;
kill(all) – удалить значения всех используемых ранее переменных.
Метод kill начинает новую нумерацию для исполняемых команд (обратите внимание, что ответом на команду (%i3), приведенную выше, оказался ответ с номером ноль (%o0) done, и далее нумерация команд продолжится с единицы).
Вывод. Ввод простейших команд в wxMaxima необходим для дальнейшего использования, чтобы облегчить использование сложных данных.
Задача 2. Нарисовать двумерные графики: y=x, y=abs(x), y=x2 , y=x3
а) изменить граничные значения;
б) построить графики в отдельном окне с возможностью масштабирования;
в) провести оси через начало координат.
г) применить различные параметры.
Количество различных функций в Maxima разработчики постарались свести к минимуму, а широту размаха каждой конкретной функции, соответственно, к максимуму. Соблюдается эта тенденция и в функциях построения графиков: основных таких функций всего две - plot2d и plot3d (двумерный и трехмерный график).
Рассмотрим создание степенных функций.
Выберете программу wxMaxima в списке программ, загрузите её и, желая нарисовать двумерный график, щёлкнули по кнопке График 2D, во вкладке меню Plot, как показано на рисунке 13.
Рисунок 13 - Расположение кнопки График 2D для рисования графиков
В появившемся окне Выражение(ния) запишем сразу 4 функции: x, abs(x), x , x , перечислив их через запятую как указано на рисунке 14 (в зависимости сколько графиков указано в задании).
Изменим граничные значения переменных х и у на относительно небольшие из: –1.5 к: 1.5 (чтобы график выглядел покрупнее), и щёлкнем на кнопку ОК или нажмем клавишу Enter.
Рисунок 14 - Окна–формы интерфейса wxMaxima для рисования графиков
В верхнем графическом окне wxMaxima появились графики (рисунок 15). Кроме того, в графической части окна wxMaxima появилась команда wxplot2d([x,abs(x),x^2,x^3], [x,–1.5,1.5], [y,–1.5,1.5])$. Что касается графика, то он "слишком правильный" и никак не масштабируется – таковы возможности "встроенного" формата.
Рисунок 15 - Графики y=x, y=abs(x), y=x2 , y=x3 во встроенном формате интерфейса wxMaxima
Попробуем изменить формат и опции графика.
Заметим, что если просто нажать на кнопку График 2D... снова вернутся значения переменных х и у, которые были приняты по умолчанию (переменная х из: –5 к: 5; Переменная у из: 0 к: 0). Но если скопировать в буфер обмена (даже не планируя дальнейшей вставки) названия функций (через контекстное меню или просто, нажав, например, Ctrl+C) или даже если только щелкнуть в графическом окне на текст исполненной команды, то после щелчка по кнопке График 2D... снова вернутся и названия функций и предыдущие, уже вводимые нами, настройки по х и у из: –1.5 к: 1.5.
Выберем Формат: gnuplot, частично выберем, а частично напишем сами с клавиатуры в окне Опции: set size ratio 1; set zeroaxis; set grid; (перечисляя их через точку с запятой, как указано на рисунке 16) и щёлкнем на кнопку ОК или нажмем клавишу Enter.
Рисунок 16 - Окно–форма График 2D для ввода опций двумерных графиков
В формате gnuplot график Максима нарисует в отдельном окне, и мы можем масштабировать его (изменять размеры за счет изменения размеров окна), в соответствии с рисунком 17. При движении мышки внизу слева отображаются координаты положения указателя мышки — сейчас он находится в точке пересечения всех графиков (1,1). Опция set zeroaxis; проводит оси через начало координат, опция set grid; прорисовывает сетку, опция set size ratio 1; выравнивает масштабы по осям координат, чтобы круг на мониторе выглядел круглым, а не в виде овала (это связано с тем, что разрешение монитора по горизонтали и по вертикали разное, пиксель не является "круглым").
Рисунок 17 - Графики y=x, y=abs(x), y=x2 , y=x3 в формате gnuplot интерфейса wxMaxima
Чтобы нарисовать график в формате openmath, команда для Максимы будет такой, как показано на рисунке 18.
Рисунок 18 - Команда для Maxima для рисования графиков в формате openmath
График будет нарисован в отдельном окне, в соответствии с рисунком 19.
Рисунок 19 - Графики y=x, y=abs(x), y=x2 , y=x3 в формате openmath интерфейса wxMaxima
И может видоизменяться в интерактивном режиме, в том числе: график можно масштабировать не только за счет изменения общих размеров окна, но и с помощью кнопки меню Масштабировать: после щелчка мышью на графике (размеры увеличатся), и после щелчка мышью при нажатой клавише Shift (размеры уменьшатся); график можно сохранить (кнопка Сохранить) в виде графического файла в формате *.ps, можно изменить толщину линий (кнопка Настройка), перерисовать (кнопка Перерисовать) график после изменения его параметров.
Вывод. Отметим, что аргументами функции plot2d служат не отдельные переменные–параметры, а списки [для записи которых используются квадратные скобки]. Это связано с тем, что plot2d может принимать еще и дополнительные аргументы — в таком случае они перечисляются следом за таким списком, что исключает всякую путаницу.
Задача 3. Решить систему уравнений: вывести рисунок и точки пересечения на экран.
Решим систему из двух уравнений: пусть требуется найти точки пересечения окружности x2+y2=2 и прямой x+y=1.
Для записи команды в Maxima можно использовать следующий вариант:
solve([уравнение1, уравнение2, …], [переменная1, переменная2, …]).
Совместим графики окружности и прямой, чтобы убедиться в том, что решение существует. Из графика, представленного на рисунке 20, видим, что решением исследуемой системы уравнений являются координаты 2 точек.
Рисунок 20 - Пересечение окружности и прямой
В нашем случае количество уравнений и количество неизвестных равны, поэтому список неизвестных можно не писать, а использовать обращение вида: solve([уравнение1, уравнение2, …])
Квадратные скобки используются для указания списка, иначе Maxima проинтерпретирует вызов за вариант с одним уравнением.
Получим в итоге.
Здесь в качестве решения возвратился список из двух списков, каждый из которых соответствует одному решению системы (координатам точек пересечения). В качестве подстановок можно использовать как списки целиком (например, в данном контексте, %o1[1]), так и отдельные их элементы (например, %o1[1][1]).
Задача 4. Вывести определенный интеграл в математическом контексте на экран и вычислить его:
При нахождении значения определенного интеграла помимо функции и переменной интегрирования указываются пределы интегрирования. В качестве пределов интегрирования могут фигурировать бесконечность (inf) и минус бесконечность (minf).
Синтаксис: integrate(функция, переменная, нижний предел, верхний предел);
Или во вкладке главного меню Анализ пункт Интегрировать. Выведется окно для ввода выражения и уточнения пределов, как показано на рисунке 21.
Рисунок 21 – Окно–форма для ввода интегралов
Подынтегральное выражение не зависит от знака параметра a, но значение интеграла — зависит, так как параметр а может быть записан или как верхний предел или как нижний предел.
На вопрос Maxima Is a positive, negative, or zero? мы ответили р (positive) и получили положительное значение. В случае отрицательного знака у параметра а значение интеграла (%о12) будет отрицательное, а численное значение интеграла по модулю будет тем же.