Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
maple5_help.doc
Скачиваний:
1
Добавлен:
01.04.2025
Размер:
741.89 Кб
Скачать

Графика в maple

Графика на плоскости.

1) График функции y = f(x) на отрезке [a, b]

>plot(f(x), x=a..b); или >plot(f(x), x=a..b, options);

В качестве опций (справка по команде >?plot[options]) могут быть

А) ЦВЕТ ЛИНИИ color=black, red, blue, green,… см. также >?plot[color]

Б) ТОЛЩИНА ЛИНИИ thickness=0, 1, 2, 3 (больше номер – больше толщина)

В) НАДПИСЬ НА ГРАФИКЕ title=`Parabole`

Г) КОЛИЧЕСТВО МАРКИРОВАННЫХ ТОЧЕК на оси Х xtickmarks=5

на оси Y ytickmarks=7

Д) КОЛИЧЕСТВО РАСЧЕТНЫХ ТОЧЕК ГРАФИКА numpoints=80 (по умолчанию=49).

Е) ОБРЕЗАНИЕ ГРАФИКА (при бесконечных разрывах)

по Y : y=y1..y2 или view= y1..y2 ; по осям X, Y : view=[x1..x2 , y1..y2] .

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

2) График функции y = f(x) на отрезке [–10, 10] >plot(f(x));

3) График функции y = f(x) на всей числовой оси (–, +)

>plot(f(x),x= –infinity..infinity);

>plot(exp(x),x= –infinity..infinity);

Вся числовая ось умещается на отрезке [–1, 1] за счет изменения масштаба (он уменьшается по мере удаления от начала координат). Поэтому на кривой могут возникать точки перегиба, которых нет в реальности.

4) Параметрически заданная кривая >plot([x(t),y(t),t=a..b],options);

Пример. Фигура Лиссажу >plot([cos(5*t),sin(3*t),t=0..2*Pi]);

5) Кривая в полярных координатах >plot([(t),(t), t=a..b],coords=polar);

Примеры. Спираль Архимеда >plot([t/Pi, t, t=0..2*Pi],coords=polar);

Кардиоида >plot([1+cos(t), t, t=0..2*Pi],coords=polar);

6) Несколько однотипных кривых на одном графике.

>plot({x^2, 1–x, sqrt(x)},x= –2..2); три явно заданных кривых.

>plot({[cos(t),sin(t),t=0..Pi],[t^2,t,t=-1..1]}); две параметрически заданных кривых.

>plot({[t/Pi, t, t=0..7], [1+cos(t), t, t=0..2*Pi]},coords=polar); две кривых в полярных коорд.

>plot({[sin(t),t,t=0..Pi/2],[–sin(t),t,t=Pi..3*Pi/2],[1,t,t=0..2*Pi]},coords=polar); «ИньЯн»

Можно совмещать также параметрическую и явно заданную кривые. Переменную следует обозначать одной и той же буквой!

>plot({t^2,[cos(t),sin(t),t=0..2*Pi],1–t},t= –1..1);

7) Семейство кривых y=f(x,n), nN >plot({seq(f(x,n), n=2..7)}, x = a,,b);

Пример. >plot({seq(x^n, n=2..7)}, x=0..1, color=black);

8) Неявно заданная кривая >with(plots):

Кривая f(x,y)=0 >implicitplot(f(x,y), x = a..b, y = m..n);

Кривая f(x,y)=g(x,y) >implicitplot(f(x,y)=g(x,y), x = a..b, y = m..n);

Несколько кривых f(x,y)=0, g(x,y)=0 >implicitplot({f(x,y), g(x,y)}, x = a..b, y = m..n);

>implicitplot(x^2–2*x*y+y^2–x–y, x= –1..1, y= –1..1);

9) Несколько разнотипных кривых на одном чертеже >with(plots):

>F:=plot([t/Pi, t, t=0..2*Pi],coords=polar): спираль Архимеда в полярных координатах.

>G:=plot(x^2,x=-3..3,color=red): явно заданная парабола.

>H:=implicitplot(x^2+2*x*y+3*y^2-6,x=-3..3,y=–3..3): неявно заданный эллипс.

>display({F,G,H},view=[–3..3, –2..2]);

10) Анимация >with(plots): или >with(plots,animate):

Показывается деформация во времени кривой y = f(x, p) , x [a, b], если параметр р изменяется от c до d, принимая N промежуточных значений. Аналогично для других типов кривых

>animate(f(x,p), x=a..b, p=c..d, frames=N);

>animate(x^p–x^(2*p), x=0..1, p=1..20, frames=100);

Несколько деформирующихся кривых

>animate({x^(1/p), x^p},x=0..1, p=1..20, frames=50);

Параметрически заданная кривая (фигуры Лиссажу)

>animate([cos(p*t), sin(3*t), t=0..2*Pi], p=1..2, frames=60);

Кривая в полярных координатах, кривая  = sin(p)

>animate([sin(p*t),t,t=–4..4],p=1..4,coords=polar,numpoints=100,frames=100);

11) Векторное поле , >with(plots): или >with(plots,fieldplot):

>fieldplot([P(x,y), Q(x,y)], x=a..b, y=c..d);

>fieldplot([sin(x+y), sin(x–y)], x=0..2*Pi, y=0..2*Pi);

12) Конформное отображение >with(plots): или >with(plots,conformal):

>conformal(f(z));

Образ единичного квадрата с диагональю z=0 ..z=1+i при отображении w=f(z).

Число вертикальных (m) и горизонтальных (n) линий, разбивающих исходный квадрат на прямоугольники, задается опцией grid=[m, n]. По умолчанию m = n = 11.

Количество точек, вычисляемое на горизонтальных (m) и вертикальных (n) отрезках определяется опцией numxy=[m, n]. По умолчанию m = n = 15.

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

Образ прямоугольника с диагональю z1..z2 при отображении f(z) .

Если точки z1..z2 лежат на одной горизонтали (вертикали), то получаем образ горизонтального (вертикального) отрезка.

>conformal(f(z), z=z1..z2 , w1..w2);

Образ прямоугольника с диагональю z1..z2 , обрезанный прямоугольником с диагональю w1..w2.

Графика в пространстве.

1) Поверхность z = f(x,y) над прямоугольником [a,b]x[c,d].

>plot3d(f(x,y), x=a..b, y=c..d, options);

>plot3d(sqrt(1–(x^2+y^2)/2–(x^2–y^2)*signum(x^2–y^2)), x=–1..1, y=–1..1);

О пции: grid=[m,n] – число разбиений по осям Х и Y (сетка в прямоугольнике [a,b]x[c,d]). По умолчанию m=n=25.

numpoints=n – число вычисляемых точек (по умолчанию n=625).

title=`hyperboloid` – название поверхности (надпись на графике).

label=[x,y,z] – наименование осей координат.

view=[x1..x2, y1..y2, z1..z2] – обрезание поверхности по осям координат.

view = z1..z2 – обрезание только по оси Z.

orientation=[,] – сферические координаты в градусах.

Справки: >?plot3d , >?plot3d[options]

Область определения функции может быть задана в виде правильной области

>plot3d(f(x,y), x=a..b, y=y1(x)..y2(x));

Поворот поверхности.

а) Щелкнуть по графику поверхности (появится параллелепипед) .

б) Правой мышью его можно вращать и деформировать.

в) Затем щелкнуть мышью по кнопке R .

2) Несколько поверхностей на одном графике.

>plot3d({f1(x,y), f2(x,y), f3(x,y)}, x=a..b, y=c..d);

>plot3d({x^2, 1–y^2},x=–1..1, y=–1..1);

3) Семейство поверхностей z = F(x,y,n), nN.

>plot3d({F(x,y,n)$n=2..5},x=a..b,y=c..d);

>plot3d({y^2/n$n=1..3},x=–1..1,y=–1..1);

4) Неявно заданная поверхность. >with(plots):

>implicitplot3d(F(x,y,z), x=a1..a2,y=b1..b2,z=c1..c2); поверхность F(x,y,z)=0.

>implicitplot3d(F(x,y,z)=G(x,y,z), x=a1..a2,y=b1..b2,z=c1..c2); поверхность F(x,y,z)=G(x,y,z).

>implicitplot3d(x^2–y^2–z^2=1, x=–3..3,y=–3..3,z=–3..3);

5) Несколько неявно заданных поверхностей F(x,y,z)=0, G(x,y,z)=0. >with(plots):

>implicitplot3d({F(x,y,z),G(x,y,z)}, x=a1..a2,y=b1..b2,z=c1..c2);

>implicitplot3d({y^2+z^2=1,x^2–y^2–z^2=1}, x=–3..3,y=–3..3,z=–3..3);

6) Параметрически заданная поверхность

>plot3d([x(u,v), y(u,v), z(u,v)], u=a..b, v=c..d);

Примеры.

а) Поверхность вращения вокруг оси Z (кривая z = f(y), y[a..b]).

>plot3d([u*cos(v), u*sin(v), f(u)], u=a..b, v=0..2*Pi);

> plot3d([u*cos(v), u*sin(v), 1/u], u=0.2..1, v=0..2*Pi);

б) Вертикальна цилиндрическая поверхность.

>plot3d([x(u), y(u), v], u=a..b, v=0..H);

>plot3d([u, cos(u), v], u=–Pi..Pi, v=0..1);

в) Сфера.

>plot3d([R*cos(u)*cos(v), R*sin(u)*cos(v), R*sin(v)], u=0..2*Pi, v=–Pi/2..Pi/2);

v – широта, от южного полюса до северного (от –/2 до /2),

u – долгота от оси Х к оси Y.

г) Геликоид радиуса R с шагом h.

>plot3d([u*cos(v), u*sin(v), h*v/2/Pi], u=0..R, v=0..2*Pi);

д) Тор; a – средний радиус тора, b – радиус «колбасы».

>plot3d([(a+b*cos(v))*cos(u), (a+b*cos(v))*sin(u), b*sin(v)], u=0..2*Pi, v=0..2*Pi);

е) Лента Мёбиуса; R – радиус средней линии, 2а – ширина ленты.

>plot3d([(R+v*cos(u/2))*cos(u), (R+v*cos(u/2))*sin(u), v*sin(u/2)], u=0..2*Pi, v=–a..a);

7) Несколько параметрически заданных поверхностей.

Пересечение 2-х параболических цилиндров.

>plot3d({[u*cos(v),u*sin(v),u^2*cos(v)^2],[u*cos(v),u*sin(v),a^2-u^2*sin(v)^2]},u=0..a,v=0..2*Pi);

Пересечение двух круговых цилиндров

>plot3d({[u,cos(v),sin(v)],[cos(v),u,sin(v)]},u=-1..1,v=0..2*Pi); или

>plot3d({[sin(v),u*sin(v),cos(v)],[u*cos(v),cos(v),sin(v)]},u=-1..1,v=0..2*Pi);

8) Кривые в пространстве >with(plots):

>spacecurve([x(t), y(t), z(t)], t=a..b); одна кривая

>spacecurve({[x1(t), y1(t), z1(t)], [x2(t), y2(t), z2(t)]} t=a..b); две кривых

>spacecurve([R*cos(t), R*sin(t), k*t], t=0..2*Pi); – винтовая линия.

>spacecurve([a*(1+cos(2*t)), a*sin(2*t), 2*a*sin(t)], t=0..2*Pi); кривая Вивиани – пересечение

цилиндра x2+y2=2ax и сферы x2+y2+z2=4a2 .

>spacecurve([a*cos(t), a*sin(t),a^2*cos(t)^2], t=0..2*Pi); – линия пересечения двух параболичес-

ких цилиндров.

9) Функция DISPLAY (совмещение на одном чертеже разных объектов) >with(plots):

а) Сечения куба двумя параллельными плоскостями и диагональ этого куба

>A:=plot3d(1–x–y, x=0..1, y=0..1–x):

>B:= plot3d(2–x–y, x=0..1, y=1–x..1):

>C:=spacecurve([t,t,t], t=0..1,thickness=3):

>display({A,B,C});

б) Два пересекающихся параболических цилиндра и пространственная линия их пересечения:

>F:=plot3d({x^2, 1–y^2}, x=–1..1, y=–1..1):

>G:=spacecurve([cos(t),sin(t),cos(t)^2],t=0..2*Pi, thickness=3):

>display({F,G});

в) Сфера, пересекающий её цилиндр и кривая Вивиани:

>A:=plot3d([2*cos(u)*cos(v),2*sin(u)*cos(v),2*sin(v)],u=0..2*Pi,v=–Pi/2..Pi/2):

>B:=plot3d([1+cos(u),sin(u),2*v*sin(u/2)],u=0..2*Pi,v=–1..1):

>C:=spacecurve([1+cos(2*t),sin(2*t),2*sin(t)],t=0..2*Pi,thickness=3):

>display({A,B,C});

10) Линии уровня. >with(plots):

>contourplot(f(x,y), x=a..b, y=c..d); одна поверхность z = f(x,y)

>contourplot({f(x,y),g(x,y)}, x=a..b, y=c..d); несколько поверхностей.

>contourplot({x*y, x^2–y^2}, x=–1..1, y=–1..1);

>contourplot([u*cos(v),u,u*sin(v)],u=–1..1,v=0..2*Pi); параметрическое задание поверхности.

11) Вид на поверхность сверху. Более высокие участки – более светлые. >with(plots):

>densityplot(f(x,y), x=a..b, y=c..d);

12) Поверхность r = f(p,z) в цилиндрических координатах (r, p, z). >with(plots):

>cylinderplot(f(p,z), p= z=a..b);

>cylinderplot(p*sin(z), p=02*Pi z=0..Pi/2);

Параметрическое задание поверхности в цилиндрических координатах

>cylinderplot([r(u,v), p(u,v), z(u,v)], u=a..b, v=c..d);

13) Поверхность в сферических координатах (r, t, p), где t – долгота, отсчитываемая от оси Х к оси Y, p – широта, отсчитываемая от северного полюса к южному. >with(plots):

>sphereplot(F(t,p), t=a..b, p=c..d); поверхность r = F(t,f).

>sphereplot(1.2^t*sin(p),t=-3..6,p=0..Pi);

Параметрическое задание поверхности в сферических координатах

>sphereplot([r(u,v), t(u,v), p(u,v)], u=a..b, v=c..d);

14) Анимация в пространстве. >with(plots):

>animate3d(f(x,y,p), x=a..b, y=c..d, p=A..B); динамика изменения поверхности z = f(x,y,p) с изменением параметра р от А до В.

>animate3d((x^2–y^2)*sin(p), x=–1..1, y=–1..1, p=0..2*Pi);

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]