ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 01.04.2021
Просмотров: 1351
Скачиваний: 16
3.2
Трехмерная графика
Для построения трехмерных графиков служит процедура
plot3d
.
При построении графика поверхности, заданной явно, процедура
plot3d
записывается следующим образом:
plot3d(z(x, y), x=x1..x2, y=y1..y2, options);
Построим график поверхности
z
= sin(
x
2
+
y
2
)
:
> plot3d(sin(x^2+y^2), x=-Pi/2..Pi/2, y=-Pi/2..Pi/2,
color=white, numpoints=1000);
В параметрах функций
plot
и
plot3d
можно указать систему
координат:
> plot3d(1, s=Pi/3..2*Pi, t=0..Pi, coords=spherical,
color=white);
36
3.3
Расширенные средства графики
Частоудобноиспользовать функции из графическогопакета
plots
.
Некоторые функции из пакета
plots
Функция
Функция 3d
Описание
polarplot
–
Построение графика функции
в полярной системе координат
–
cylinderplot
Построение графика функции
в цилиндрической системе
координат
–
sphereplot
Построение графика функции в
сферической системе координат
complexplot
complexplot3d
Построение графика функции
в комплекной плоскости
(комплексном пространстве)
implicitplot
implicitplot3d
Построение графика
неявной функции
inequal
–
Построение графика решения
системы линейных неравенств
odeplot
odeplot
Построение графика решения
дифференциального уравнения
listplot
listplot3d
Построение графика
сеточной функции
pointplot
pointplot3d
Построение точечного графика
–
spacecurve
Построение пространственной
кривой
pointplot
pointplot3d
Построение многоугольника
–
polyhedraplot
Построение многогранника
textplot
textplot3d
Выво д текста на график
contourplot
contourplot3d
Построение графика
с линиями уровня
fieldplot
fieldplot3d
Построение векторного поля
gradplot
gradplot3d
Построение векторного поля
градиента
display
display3d
Построение графика для
списка графических объектов
animate
animate3d
Создание анимации
графика функции
37
Подробную информацию о пакете
plots
можно получить, испол-
нив команду
?plots
.
> with(plots):
R := t -> 100/(100+(t-Pi/2)^8)
*(2-sin(7*t)-cos(30*t)/2):
polarplot(R(t), t=-Pi/2..3/2*Pi, axes=NONE);
> ineq := {b>=-3, -a+2*b<6, 3*a+2*b>0, a-b<=8, a+b<5}:
inequal(ineq, a=-5..10, b=-5..7,
optionsfeasible=(color=gray),
optionsexcluded=(color=white));
–4
–2
0
2
4
6
–4
–2
2
4
6
8
10
38
> A := [seq([seq(sin(n*m/(20*Pi)),
n=-10..10)], m=-15..15)]:
listplot3d(A, color=white, axes=BOXED);
5
10
15
20
25
30
5
10
15
20
–1
–0.5
0
0.5
1
> f := (x, y) ->
x/sqrt(x^2+y^2+1):
g := (x, y) -> -y/sqrt(x^2+y^2+1):
fieldplot([f, g], -1..1, -1..1, arrows=SLIM);
–1
–0.5
0
0.5
1
–1
–0.5
0.5
1
39
4
Высшая математика
4.1
Линейная алгебра
В ядроMaple введены минимальнонеобходимые средства для ра-
боты с векторами и матрицами. Основной упор сделан на пакеты расши-
рения, одним из которых является пакет
linalg
. Некоторые функции из
этогопакета представлены в таблицах. Подробную информацию опаке-
те
linalg
можно получить, исполнив команду
?linalg
.
> with(linalg):
M := matrix(2, 2, [[1, 2], [2, 5]]);
M
:=
1 2
2 5
> eigenvalues(M);
3 + 2
√
2
,
3
−
2
√
2
> v := vector([0, 1]):
if det(M) <> 0 then
inverse(M);
x := linsolve(M, v);
end if;
5
−
2
−
2 1
x
:= [
−
2
,
1]
> evalm(M &* x - v);
[0
,
0]
> LUdecomp(M, L=’L’, U=’U’):
L=evalm(L);
U=evalm(U);
L
=
1 0
2 1
U
=
1 2
0 1
40