Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Введение в пакет Maxima2

.pdf
Скачиваний:
38
Добавлен:
13.02.2015
Размер:
551.66 Кб
Скачать

функций используется вызов plot3d ([expr1, expr2, expr3], u_range, v_range, <до-

полнительные параметры>).

Function

1

0.5

0 -0.5 -1

-4

 

4

-3

 

3

-2

1

2

-1

 

0

0

 

1

2 3 4 -4 -3 -2 -1

 

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

Function

8

6

4

2

0 -2 -4 -6 -8

 

 

 

 

 

0.8 1

-2

 

 

 

 

0.6

-1.5 -1 -0.5

 

 

 

0.4

 

0

 

 

-0.200.2

 

 

0.5

 

-0.4

 

 

 

1 1.5

-0.6

 

 

 

 

2-1-0.8

30

Кроме декартовых координат возможна работа с координатами сферическими

ицилиндрическими. В первом случае необходимо использовать ключ

[gnuplot_preamble, "set mapping spherical"]

Function

0.2

0.15

0.1

0.05

0 -0.05 -0.1 -0.15 -0.2

 

 

 

 

 

-0.15

 

 

 

 

 

-0.1

 

 

 

 

0

-0.05

0.2 0.15

0.1 0.05

 

 

0.05

0

-0.05 -0.1

0.1

 

 

 

-0.15 -0.20.15

 

а во втором ключ [gnuplot_preamble, "set mapping cylindrical"]

2*sin(ph)^3*(z-1)

3.5

3

2.5

2

1.5

1

0.5

0

-1.5 -1

-0.50 0.51 0 1 2 3 4

1.5 -2 -1

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

Для хранения списка системных умолчаний Maxima использует переменную plot_options, соответственно, ознакомиться с умолчаниями, действующими не

31

данный момент можно просто обратившись к этой переменной. Рассмотрим наи- более существенные ее ключи.

Некоторые ключи переменной plot_options

 

Ключ

Значение

 

 

 

 

Описание

 

 

 

 

по умолчанию

 

 

 

 

 

 

 

 

 

Ключи, распознаваемые функциями plot2d и plot3d

 

 

 

 

Для Windows

 

Определяет,

какое графическое приложение бу-

 

 

 

дет использоваться функциями plot2d и plot3d. При

 

 

 

 

 

 

gnuplot

 

значениях gnuplot и gnuplot_pipes используется про-

 

 

 

грамма Gnuplot, значение mgnuplot позволяет ис-

 

 

 

 

 

plot_format

Для других

 

пользовать для вывода графическое расширение к

 

 

платформ

 

пакету Gnuplot, называемое Mgnuplot и, наконец,

 

 

gnuplot_pipes

 

значение

openmath

передает вывод

программе

 

 

 

Openmath, устанавливаемой вместе с оболочкой

 

 

 

 

 

 

 

 

xMaxima.

 

 

 

 

 

 

 

 

Если указано имя файла, то графический вывод

 

gnuplot_out_file

false

 

сохраняется в файл (например [gnuplot_out_file,

 

 

 

 

“myplot.ps”])

 

 

 

 

 

 

 

 

Если задано значение true, то может строиться

 

plot_realpart

false

 

график вещественной части комплексного выраже-

 

 

ния. При значении false комплекснозначные функ-

 

 

 

 

 

 

 

 

ции игнорируются.

 

 

 

 

 

 

 

При

построении

графиков

параметрических

 

nticks

10

 

функций задает количество точек разбиения интер-

 

 

 

 

вала изменения параметра.

 

 

 

grid

30, 30

 

Задает количество точек сетки,

при построении

 

 

трехмерных графиков, по осям х и у, соответственно

 

 

 

 

 

 

 

 

Задает замену координат при построении трех-

 

transform_xy

false

 

мерных графиков. Для проведения замены должно

 

 

быть задано значение вида

 

 

 

 

 

 

 

 

 

 

 

 

make_transform([x,y,z], f1(x,y,z), f2(x,y,z), f3(x,y,z))

 

 

Специальные ключи программы Gnuplot

 

 

 

 

 

 

Контролирует

использование

программой

 

gnuplot_pm3d

true

 

Gnuplot режима PM3D, расширяющего возможности

 

 

 

 

трехмерной графики (градиентные заливки и т.п.).

 

 

 

 

Позволяет

использовать команды

программы

 

 

 

 

Gnuplot. Команды задаются строкой, разделяемые

 

gnuplot_preamble

“”

 

точками с запятой. Некоторые команды приводи-

 

 

 

 

лись в примерах, полная информация может быть

 

 

 

 

найдена в документации к Gnuplot.

 

 

32

 

Ключ

Значение

 

Описание

 

 

по умолчанию

 

 

 

 

 

 

Определяет вид заголовков графиков функций.

 

 

 

 

При значении [default] в качестве заголовков ис-

 

gnuplot_curve_

 

 

пользуются уравнения изображаемых функций. Для

 

[default]

 

задания пользовательских значений ключу необхо-

 

titles

 

 

 

 

димо передать список строк имеющих структуру

 

 

 

 

 

 

 

 

“title ‘ заголовок’ ”. Для отключения отображения

 

 

 

 

заголовков используется строка “set nokey”

 

 

 

 

Стиль отображения линии графика. Некоторые

 

gnuplot_curve_

 

 

команды приводились в примерах, полная инфор-

 

styles

 

 

мация может быть найдена в документации к

 

 

 

 

Gnuplot.

Для изменения значения переменной plot_options служит функция set_plot_options(<новое значение ключа>), вызывая которую мы получаем новое значение переменной plot_options. Кроме того, значение каждого из ключей мо- жет задаваться локально, в качестве дополнительного параметра графических функций, как и делалось в продемонстрированных выше примерах. Дело в том, что явное локальное задание параметра имеет более высокий приоритет, чем гло- бальное, хранящееся в plot_options. Ну и напоследок небольшая ложка дегтя в этой замечательной бочке с медом: многие противники бесплатного программно- го обеспечения в качестве существенного его недостатка называют слабую доку- ментированность. Не обошла эта беда и пару Maxima + Gnuplot. Так, внеся неко- торые изменения в свежие версии своих программ, разработчики забыли отразить эти изменения в руководствах пользователя. Так, например, в руководстве к Maxima до сих пор утверждается, что Gnuplot не умеет вращать трехмерные графики, а умолчательное значение ключа gnuplot_pm3d равно false. Несколько менее без- обидными такие неточности становятся, когда функция в новой версии начинает принимать немного другой, по сравнению с версией предыдущей, набор парамет- ров, но об этом нигде не говорится. Для примера здесь можно привести график из руководства пользователя, объединяющий построение дискретного набора точек и непрерывной кривой. Некоторые изменения синтаксиса, сделанные для приве-

33

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

 

1.6

 

 

 

experiment

 

 

 

 

 

 

 

 

1.4

 

 

 

theory

 

 

 

 

 

 

 

 

1.2

 

 

 

 

 

(s)

1

 

 

 

 

 

 

 

 

 

 

 

period

0.8

 

 

 

 

 

0.6

 

 

 

 

 

 

 

 

 

 

 

 

0.4

 

 

 

 

 

 

0.2

 

 

 

 

 

 

0

 

 

 

 

 

 

0

10

20

30

40

50

pendulum's length (cm)

34

Литература

1.Тарнавский Т. Maxima – максимум свободы символьных вычислений // Linux Format 7 (81), 2006.

2.Тарнавский Т. Maxima – функции и операторы // Linux Format 8 (82), 2006.

3.Тарнавский Т. Maxima: укротитель выражений // Linux Format 9 (83), 2006.

4.Тарнавский Т. Maxima – максимум свободы символьных вычислений. Алгебра

иначала анализа // Linux Format 10 (84), 2006.

5.Тарнавский Т. Maxima – максимум свободы символьных вычислений. Графики

иуправляющие конструкции // Linux Format 11 (85), 2006.

6.Тарнавский Т. Maxima – максимум свободы символьных вычислений. Работа с файлами и фактами // Linux Format 12 (86), 2006.

7.Maple at 20. Though it all, it’s been about the math // The Newsletter from Waterloo Maple Inc. Fall 2001.

35