- •Пакет прикладных программ mathematica Инструкция пользователя
- •1. Общие сведения. Ядро и интерфейс пакета Математика
- •2. Точные и приближенные вычисления. Численные и аналитические операции
- •3. Рабочий документ и ячейки. Основные команды
- •4. Сеанс работы в системе Математика. Глобальный характер данных.
- •5. Правила написания. Основные встроенные функции.
- •Примеры выражений
- •Формы обращений к функциям
- •Нескольких аргументов
- •7. Циклические операции
- •Логические операторы
- •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[GraphicsArray[{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
- •Вопросы
Show[GraphicsArray[{g1, g2,…}], options]
Функция Show позволяет также выводить в единых координатах разные графические объекты, например, графики разных типов или разные графические примитивы. Формат функции в этом случае: Show[graphics, options], где graphics – список выводимых графических объектов.
Опции функции Show – это графические опции. Если опции функции Show указаны явно, то их значения заменяют собой значения опций, указанных для отдельных графиков.
Пакет Математика включает ряд готовых двухмерных и трехмерных фигур – примитивов. Остановимся только на некоторых из них:
Point[{x, y}], Point[{x, y, z}]; – точка на плоскости или в трехмерном пространстве;
Line[{{x1, y1},…}] – ломаная линия на плоскости или в пространстве;
Polygon[{{x1, y1},…}] – заполненный многоугольник на плоскости или в пространстве;
Rectangle[{xmin, ymin}, {xmax, ymax}] – заполненный прямоугольник;
Circle[{x, y}, r] – окружность радиуса r с центром в точке (x, y);
Disk[{x, y}, r] – заполненный круг r с центром в точке (x, y);
Text[ expr, {x, y}] – текст expr, центр которого находится в точке (x, y).
Пример 11.3.
Построим массив графиков, включающий окружность, прямоугольник и круг (рис.11.4).
In[ ] := a=Graphics[Circle[{0, 0}], BaseStyle->Hue[1]];
b=Graphics[Rectangle[{-1, -1}, {1, 1}],
AspectRatio->1/GoldenRatio];
c=Graphics[Disk[{0, 0}], BaseStyle->Hue[0.5]];
Show[GraphicsArray[{a,b,c}]]
С помощью опции AspectRatio->1/GoldenRatio превращаем квадрат в прямоугольник “черный квадрат”. Опцию BaseStyle –>Hue[..] используем для окраски фигур. С помощью функции Show выводим на экран массив графиков. Точку с запятой используем для запрета вывода графиков по-отдельности.
Пример 11.4.
Построим в единых координатах два графика разных типов: график окружности в полярных координатах и обычный график функции Sin[1.5 x].
In[ ] := pc=PolarPlot[1, {fi, 0, 2Pi},
PlotRange->{{-1.6, 1.6}, {-1.1, 1.1}}];
ps=Plot[Sin[1.5 x], {x, -1.6, 1.6}, PlotStyle->Red];
Show[{pc,ps}]
Для вывода графиков разных типов используем функцию Show. Совместный график показан на рис. 11.5.
11.3. Изображения трехмерных объектов
Типы графиков.
Plot3D[f, {x, xmin, xmax}, {y, ymin, ymax}] – график поверхности f(x, y). Функция Plot3D позволяет строить график только одной поверхности. По умолчанию по каждой координате берется 25 отсчетов.
ParametricPlot3D[{{x1(t, u), y1(t, u), z1(t, u)}, {x2(t, u), y2(t, u), z2(t, u)}, …},
{t, tmin, tmax}, {u, umin, umax}]
– график одной или нескольких поверхностей, заданных параметрически.
ParametricPlot3D[{{x1(t, ), y1(t, ), z1(t, )}, {x2(t, ), y2(t, ), z2(t, )}, …}, {t, tmin, tmax}]
– график одной или нескольких пространственных кривых, заданных параметрически.
ContourPlot[f, {x, xmin, xmax}, {y, ymin, ymax}] – поверхность представляется с помощью линий уровня, подобно тому, как изображается рельеф на географических картах.
Для трехмерных графиков опция ViewPoint -> {x, y, z} определяет координаты точки, из которой наблюдается трехмерный объект. Установка по умолчанию: ViewPoint -> {1.3, -2.4, 2}.
Варианты выбора точки наблюдения: {0, -2, 0} – прямо спереди;
{0, -2, -2} – спереди и сверху;
{-2, -2, 0} – из левого угла и т.д.
Используются также следующие обозначения: Above (положительные значения z), Below (отрицательные значения z), Back (положительные значения y), Left (отрицательные значения x), {Left, Top} и т.д.
Пример 11.5
На рис. 11.6. приведены два изображения поверхности z[x, y] = x2 – x y2. Программа построения графиков:
In[ ] := z[x_,y_]=x^2-y^2 x;
a=Plot3D[z[x,y], {x, -2.5, 4}, {y, -2, 2}, ColorFunction -> (Hue[1-#]&),
AxesLabel -> {x, y, z}, BoxRatios -> {1, 1, 0.5}, Boxed -> False];
b=ContourPlot[z[x,y], {x, -2.5, 4}, {y, -2, 2}, ColorFunction -> (Hue[1-#]&),
Axes ->True, AxesLabel -> {x, y}];
Show[GraphicsArray[{a, b}]]
Опция ColorFunction -> (Hue[ 1- # ] &) делает графики цветными.
Пример 11.6
Следующий рисунок (рис. 11.7.) представляет собой параметрический график конуса и секущей плоскости:
In[ ] := ParametricPlot3D[ {
{Cos[fi Pi](1-z/2), Sin [fi Pi](1-z/2), z}, (* – Конус *)
{-1+fi, -1+z, 0.5+z/2}}, (* – Секущая плоскость *)
{fi, 0, 2}, {z, 0, 2}, AxesLabel -> {x, y, z}]
Пример 11.7 Нарисуем свертывающуюся спираль (рис. 11.8). Для построения пространственной кривой используем параметрический график, в котором координаты зависят только от одного параметра t. По оси x отложим функцию , а по оси z – производную x(t). Добавим прямую линию – ось спирали.
In[ ] := a=0.05; x[t_]=E^-(a t) Cos[t]; z[t_]=x'[t];
ParametricPlot3D[ { {x[ t], t, z[t]}, (* Спираль *)
{0, t, 0}}, (* Ось спирали *)
{t, 0, 8Pi}, Boxed ->False , BoxRatios ->{1, 6.2, 1},
ViewPoint -> {0.7, -3, 0.6} ,
AxesLabel -> {"x[t]", "t", "z[t]" }]
Пакет Математика включает ряд трехмерных примитивов. Информация о них содержится в разделе Graphics3D.
Пример 11.8. Построим график конуса и сферы (рис. 11.9):
In[ ]:= Graphics3D[ {Cone[], Magenta, Sphere[{3, 0, 0}]} ]