
- •Пакет прикладных программ mathematica
- •2. Точные и приближенные вычисления. Численные и аналитические операции
- •3. Рабочий документ и ячейки. Основные команды
- •4. Сеанс работы в системе Математика. Глобальный характер данных
- •5. Правила написания. Основные встроенные функции
- •Примеры выражений
- •Формы обращений к функциям
- •Нескольких аргументов
- •6. Функции комплексного аргумента
- •Логические операторы
- •7. Циклические операции
- •7.1. Цикл For
- •7.2. Цикл While
- •7.3. Цикл Do
- •7.4. Функция If
- •7.5. Логические выражения
- •8. Функции пользователя. Составление программ
- •8.1. Функции пользователя. Описания типов аргументов
- •8.2. Немедленное и задержанное присваивание
- •8.3. Альтернативные определения функций
- •8.4. Составление программ. Глобальные и локальные переменные
- •8.5. Прерывание вычислений
- •9. Списки
- •9.1. Создание списков. Обращение к элементам списков
- •9.2. Преобразование списков
- •9.3. Матричные функции
- •10. Массивы
- •11. Основные типы графиков
- •11.1. Двумерные графики
- •Show[GraphicsRow[{g1, g2,…}], options]
- •11.3. Изображения трехмерных объектов
- •11.4. Анимация
- •12. Функция Manipulate
- •13. Аналитические операции. Интерполяция. Решение уравнений
- •13.1. Аналитические операции
- •13.2. Интерполяция
- •13.3. Решение алгебраических уравнений
- •13.4. Решение дифференциальных уравнений
- •14. Преобразование выражений
- •14.1. Стандартная форма выражений
- •Примеры выражений
- •14.2. Обращение к элементам выражений
- •14.3. Представление выражения в виде дерева
- •14.4. Операции преобразования выражений
- •14.5. Повторное выполнение операций
- •14.6. Анонимные функции
- •14.7. Функциональные операторы Outer и Inner
- •Вопросы для повторения
- •Упражнения
11.4. Анимация
Пакет
Математика позволяет “оживлять”
построенные графики; для этого нужно
выделить их и выбрать команду менюGraphics
– Rendering
– Animate
Selected
Graphics
(Ctrl+Y).
Графики будут поочередно сменять друг
друга на экране монитора. При анимации
может оказаться полезной команда
выравнивания графиков: Graphics
– Rendering
– Align
Selected
Graphics.
Другой способ построения анимированных объектов – использование функции Animate.
Функция Animate[expr, {u, umin, umax}] создает анимацию выражения expr, в котором параметр u меняется от umin до umax. Может быть указан шаг изменения параметра: {u, umin, umax, du}. При этом выражение expr может быть любым, не обязательно рисунком.
Пример 11.8. Команда
In[ ]:= Animate[{n, Prime[n]}, {n, 1, 50, 1}]
выводит на экран поочередно простые числа вместе с порядковым номером числа.
Пример 11.9. Написанная ниже программа выводит на экран анимированный график – катящееся колесо. Точка обода колеса вычерчивает циклоиду. Один из кадров графика показан на рис. 11.10.
In[ ]:= tp=0.2; Animate[ ParametricPlot[
{ {Cos[Pi/2-t*4Pi]+4Pi*tp, Sin[Pi/2-t*4Pi]+1}, (*Колесо *)
{Cos[Pi/2-t*4Pi*tp]+4Pi*t*tp, Sin[Pi/2-t*4Pi*tp]+1}, (*Циклоида*)
{4Pi*tp+Cos[Pi/2-4Pi*tp]*t, 1+Sin[Pi/2-4Pi*tp]*t}, (*Радиус*)
{-1+t*(4Pi+2), 0} , (*Рельс*)
{0, t*2.5} (*Начало координат*)
}, {t, 0, 1},
AspectRatio -> Automatic, PlotRange -> All ],
{tp,
0, 1, 0.01}, AnimationRunning -> False]
Опция AnimationRunning -> False означает, что анимация выводится на экран в состоянии паузы.
12. Функция Manipulate
ФункцияManipulate[expr,
{u,
umin,
umax}]
позволяет ввести в выражение expr
элемент управления, дающий возможность
изменять это выражение в диалоговом
режиме. Выражение может быть произвольным.
Оно может включать вычислительные или
аналитические операции, может также
описывать графики.
Пример 12.1. Построим график колебаний с линейной частотной модуляцией, с возможностью изменения коэффициента модуляции. Для этого напишем команду:
In[ ]:= Manipulate[Plot[Sin[x (1 + a x)], {x, 0, 2Pi}],
{a, 0, 1.}]
Выполнив
команду, увидим график синусоиды и над
ним полосу прокрутки с движком в начальном
левом положении. С помощью полосы
прокрутки можно изменять значение
параметраа.
Щелкнув на знаке “+” в конце полосы
прокрутки, откроем дополнительные
диалоговые элементы: окно с текущим
значением параметра а
и кнопки управления. Окончательный вид
графика показан на рис. 12.1. Щелкнув
мышкой на черном треугольнике, включим
анимацию: значение папраметра будет
автоматически меняться от 0 до1.
Команда Manipulate[expr, {u, umin, umax, du}] вводит в выражение expr элемент управления, который можно изменять в пределах от umin до umax с шагом du.
Пример 12.2. Напишем команду, позволяющую вывести на экран формулы бинома Ньютона степени от 0 до 10:
In[ ] := Manipulate[Expand[(x+y)^n], {n, 0, 10, 1}]
Результат работы команды показан на рис. 12.2. В окне видим степень бинома. Кнопки “+” и “–” позволяют увеличивать и уменьшать степень. Щелкнув на черном треугольнике, запустим анимацию – автоматическое изменение степени. Остальные три кнопки позволяют менять скорость и направление автоматического изменения степени.
КомандаManipulate[expr,
{u,
{u1,
u2,
…}}] вводит элемент управления, который
принимает заданные значения u1,
u2,
….
Команда Manipulate[expr, {u, …}, {v, …}, …] вводит несколько элементов управления.
Пример 12.3. Напишем команду для построения фигур Лиссажу:
In[ ] := Manipulate[ParametricPlot[{Cos[m x], Sin[n x]},
{x, 0, 2Pi}], {m,{1, 3, 5}}, {n, {1, 2, 3, 4, 5}}]
Результат выполнения команды показан на рис.12.3. Выбрать нужное значение параметра можно, щелкнув на соответствующей кнопке. Можно также включить автоматический просмотр всех фигур, щелкнув на знаке “+” и запустив команду autorun.