Купить Matlab  |  Mathematica  |  Mathcad  |  Maple  |  Statistica  |  Другие пакеты Поиск по сайту
Internet-класс  |  Примеры  |  Методики  |  Форум  |  Download
https://hub.exponenta.ru/


Графики и анимация в Maple



В начало книги
 

Предметный указатель

Трехмерные графики и трехмерная анимация. Построение трехмерных графиков с помощью команд пакета plots
К предыдущему разделуК следующему разделу

Пакет Plots содержит функцию coordplots предназначенную для построения координатных плоскостей различных систем координат в пространстве. Полное количество систем координат - тридцать, среди них имеются как часто используемые - прямоугольная, сферическая, цилиндрическая, тороидальная,- так и экзотические, - шестисферная (sixspherical), конфокальная параболическая ( сonfocalparab)
и другие. Перечислим английские наименования всех систем координат:
bipolarcylindrical, bispherical, cardiodal, cardiodcylindrical, casscylindrical, confocalellip, confocalparab, conical, cylindrical, ellcylindrical, ellipsoidal, hypercylindrical, invcasscylindrical, invellcylindrical, invoblspheroidal, invprospheroidal, logcoshcylindrical, logcylindrical, maxwellcylindrical, oblatespheroidal, paraboloidal, paraboloidal2, paracylindrical, prolatespheroidal, rosecylindrical, sixsphere, spherical, tangentcylindrical, tangentsphere, and toroidal. Приведем примеры (рис. 46-48):

> with(plots):
Digits := 10:
coordplot3d(spherical);

[Maple Plot]

Рис. 46

> infolevel[coordplot3d]:=2:
coordplot3d(rosecylindrical);

[Maple Plot]

Рис. 47

> coordplot3d(sixsphere);

[Maple Plot]

Рис. 48

Команда cylinderplot пакета позволяет строить графики в цилиндрических координатах (рис. 49)

 

 

> f := (5*cos(y)^2 -1)/3;
plots[cylinderplot](f, x=0..2*Pi,y=-Pi..Pi);

[Maple Math]

[Maple Plot]

Рис. 49

 

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

> complexplot3d( f(z) , z = z1 .. z2 );

где f - функция комплексного аргумента z, в этом случае координата z поверхности определяется абсолютной величиной функции, в то время как цвет поверхности определяется аргументом.
В записи

> complexplot3d( [f1(x,y), f2(x,y)], x = x1..x2, y = y1..y2);

координата z определяется функцией f1, а цвет функцией f2.
Приведем примеры (рис. 50, рис. 51).

> complexplot3d( sec(z) , z = -3 - 3*I .. 3 + 3*I );

[Maple Plot]

 

Рис. 50

график выражения из R2 в R2:

> with(plots):complexplot3d( [x^2 - y^2, 2*x*y], x = -2..2, y= -2..2);

[Maple Plot]

Рис. 51

При помощи команды fieldplot3d пакета возможно построение трехмерных векторных полей (рис. 52).

> fieldplot3d([2*z*y,2*x*z,2*x*y],x=-1..1,y=-1..1,z=0-1..1,grid=[5,5,5]);

[Maple Plot]

Команда gradplot3d предназначена для построения поля градиентов функции (рис. 53).

> gradplot3d( (x^2+y^2+z^2+1)^(1/2),x=-2..2,y=-2..2,z=-2..2);

[Maple Plot]

При помощи команды implicitplot3d строятся поверхности, заданные неявно (рис. 54).

> implicitplot3d( x^3 + y^3 + z^3 + 1 = (x + y + z + 1)^3,x=-2..2,y=-2..2,
z=-2..2,grid=[13,13,13]);

[Maple Plot]

Команда listplot3d предназначена для построения поверхности по точкам, заданным списком списков (матрицей) (рис. 55)..

> listplot3d([seq([seq(sin((i-15)*(j-10)/Pi/20),i=1..30)],j=1..20)]);

[Maple Plot]

Рис. 55

Команда пакета matrixplot строит поверхность, z-координата которой задается матрицей (рис. 56).

> with(linalg):
A:= hilbert(8): B:= toeplitz([1,2,3,4,-4,-3,-2,-1]):
matrixplot(A+B,heights=histogram,axes=frame,gap=0.25,style=patch);

Warning, new definition for norm

Warning, new definition for trace

[Maple Plot]

Рис. 56

Команда odeplot , входящая в пакет позволяет строить графики решения дифференциальных уравнений и систем. Рассмотрим систему.

> sys := diff(y(x),x)=z(x),diff(z(x),x)=y(x): fcns := {y(x), z(x)}:
p:= dsolve({sys,y(0)=0,z(0)=1},fcns,type=numeric):

Трехмерная кривая решения (рис. 57).

> odeplot(p, [x,y(x),z(x)],-4..4,numpoints=25, color=orange);

[Maple Plot]

Рис. 57

 

Команда polygonplot3d используется для создания трехмерного графика из многоугольников. Многоугольник задается списком точек, определяющих вершины многоугольника.

Приведем пример (рис. 58).

> list_polys := [seq([seq([T/10,S/20,sin(T*S/20)],T=0..20)],S=0..10)]:
polygonplot3d(list_polys);

[Maple Plot]

Рис. 58

Команда spacecurve предназначена для построения параметрически заданных кривых в пространстве (рис. 59)

> knot:= [-10*cos(t) - 2*cos(5*t) + 15*sin(2*t),-15*cos(2*t) + 10*sin(t) - 2*sin(5*t), 10*cos(3*t)];
spacecurve(knot,t= 0..2*Pi);

[Maple Math] [Maple Math]

[Maple Plot]

Рис. 59

При помощи команды surfdata строится поверхность по заданным точкам (рис. 60).

> with(plots):
data := [seq([ seq([i,j,evalf(cos((i+j)/5))], i=-5..5)], j=-5..5)]:
F := (x,y) -> x^2 + y^2:
surfdata( data, axes=frame, labels=[x,y,z],color=F );

 

[Maple Plot]

Рис. 60

Команда textplot3d позволяет делать надписи на трехмерном графике (рис. 61)

 

> textplot3d([[1,2,3,`The first point`],[2,2,3,`Second point`]],color=green);

Рис. 61

[Maple Plot]

И, наконец, командой tubeplot можно создавать трубчатые графические объекты (рис. 62)

> F := (x,y) ->sin(x):
tubeplot({[cos(t),sin(t),0],[0,sin(t)-1,cos(t)]},t=0..2*Pi,radius=t^(1/2)/8,style=patch);

[Maple Plot]

Рис. 62

В начало страницы К предыдущему разделуК следующему разделу

Предметный указатель

| На первую страницу | Поиск | Купить Matlab

Исправляем ошибки: Нашли опечатку? Выделите ее мышкой и нажмите Ctrl+Enter


Copyright © 1993-2024. Компания Softline. Все права защищены.

Дата последнего обновления информации на сайте: 04.03.17
Сайт начал работу 01.09.00