
- •Математические пакеты
- •Греческие буквы (выводятся при выдаче результата)
- •Машинные константы:
- •Уравнения
- •Неравенства
- •Конечные суммы
- •Бесконечные суммы
- •Произведения
- •Пределы
- •Графика в maple
- •Дифференциальные уравнения
- •Линейная алгебра
- •Задание вектора
- •Основные задачи линейной алгебры
- •Аналитическая геометрия на плоскости
- •§1. Точки разрыва функции и их характер.
- •§2. Графики функций. Элементарные свойства функций.
- •§3. Вычисление пределов.
- •§4. Дифференцирование.
- •§5. Формула Тейлора-Пеано
- •§6. Интегалы.
- •§6. Функции многих переменных.
- •§7. Функциональная последовательность. Предельная функция.
- •§8. Дифференциальные уравнения.
- •§9. Элементы теории поля.
- •§9. Комплексные числа и функции комплексного переменного.
- •§10. Операционное исчисление.
Конечные суммы
>sum(p^2,
p=1..n);
>simplify(“); n3/3+n2/2+n/6
>sum(x^p,
p=0..n);
Бесконечные суммы
>sum(n*x^n,
n=1..infinity);
>sum(1/n^2,
n=1..infinity);
>sum(1/n^10,
n=1..infinity);
Произведения
Отложенная команда (пишется с большой буквы) не выполняется. В качестве ответа появляется общепринятая запись произведения
>Product(f(p),
p=m..n);
Команда >value(“); производит вычисление этого произведения в точном виде
>Product(n/(n+1),
n=1..100);
>value(“); 1/101
Бесконечные произведения
>Product(1+1/n/(n+2),
n=1..infinity);
>evalf(“); 2
Пределы
Отложенная команда (пишется с большой буквы) не выполняется. В качестве ответа появляется общепринятая запись предела
>Limit(f(x),
x = a);
Команда >value(“); производит вычисление этого предела в точном виде. Исполняемая команда пишется с маленькой буквы.
>Limit((x–sin(x))*(1–cos(x))/ln(1+x^2)/(sqrt(1+2*x^3)–1),
x = 0);
>value(“); 1/12
>Limit((1+1/x)^x,
x = infinity);
>value(“); e
>Limit(sqrt(x^2+1)/(x+2),
x = – infinity);
>value(“); – 1
>Limit(sqrt(2*ln(x)^2+3)/(3*ln(x)+1),
x=0);
>value(“);
–
>Limit((2*exp(1/x)+3)/(exp(1/x)+1),
x = 0, left);
>value(“); 3
>Limit((2*exp(1/x)+3)/(exp(1/x)+1),
x = 0, right);
>value(“); 2
Асимптотика функции на +
>asympt(f(x), x, n); (если n не указано, то оно считается равным значению константы, задаваемой командой >Order: = n; по умолчанию эта константа равна 6).
>asympt(sqrt(x^2+6*x+1),x,3);
>asympt((2*x+3)*exp(1/x),x);
Линейная часть асимптотики даёт асимптоту кривой на + .
Асимптотика функции y = f(x) на – вычисляется двумя командами
>asympt(f(– x), x, n);
>subs(x = – x, “);
Можно эти две команды объединить в одну >subs(x = –x, asympt(f(– x), x, n));
Формула Тейлора-Пеано
По команде >series(f(x), x=a, n); или по команде >taylor(f(x), x=a, n); получаем
Формулу Маклорена можно получить командой >f(x):=taylor(f(x),x,n);
f(x):=
Командой >coeff(“, (x–a)^k); можно затем определить коэффициент при (х–а)к .
Если n не указано, то по умолчанию оно считается равным 6 либо равным значению константы, задаваемой предварительно командой >Order: = n; .
>taylor(exp(x),x,3); 1+x+x2/2+o(x3)
>y:= convert(“,polynom); y = 1+x+x2/2 (можно строить график!)
>plot({exp(x), y}, x = – 2..2); графическое сравнение полинома Тейлора и экспоненты.
Команда >taylor(f(x), x=infinity, n); вычисляет асимптотику на + :
>taylor(sqrt(x^2+2*x+3), x=infinity, 3); x + 1 + 2/x – 2/x2 + o(1/x3)
Работу со степенными рядами обеспечивает пакет >with(powseries);
Дифференцирование
Отложенная команда
>Diff(f(x,y),x,y,y);
Исполняемая команда >diff(f(x,y),x,y,y);
Производные высокого порядка вычисляются командой
>diff(f(x,y),
x$5, y$7);
Дифференциал
>y:=
sqrt(5–x^2);
>dy:=diff(y,x)*dx;
Численное значение дифференциала >subs(x=2,dx=0.03, dy); – 0.06
>z:= x^2*y^3; z : = x2 y3
>dz:= diff(z,x)*dx+diff(z,y)*dy; dz : = 2 x y3 dx + 3 x2 y2 dy
Численное значение дифференциала >subs(x=1,y=1,dx=0.01, dy=0.01, dz); 0.05
Проверить, что функция z = ln(x2+y2) является гармонической
>z:= ln(x^2+y^2):
>diff(z,x,x)+diff(z,y,y);
>simplify(“); 0
Интегрирование
1) Неопределенный интеграл.
Отложенная команда
>Int(exp(sqrt(x)),x);
>value(“);
Исполняемая команда >int(exp(x/2), x); 2 ex/2
Можно писать в виде
>Int(x*exp(x),x)=
int(x*exp(x),x);
.
Примечание. В некоторых случаях программа выдаёт ответ через непривычные обратные гиперболические функции arcsinh(x), arccosh(x), arctanh(x). В этом случае для получения результата в привычном виде можно применить команду >convert(“,ln);
2) Определенный интеграл
Отложенная команда
>Int(exp(sqrt(x)),
x=0..4);
>value(“); 2 e2 + 2
>evalf(“) 16.77811220
Исполняемая команда
>int(sqrt(x),
x=1..2);
>evalf(“); 1.218951415
Можно писать
>Int(sqrt(x),x=1..2)= int(sqrt(x),x=1..2);
3) Двойной интеграл
Отложенная
команда >Int(Int(2*x*y,
y = –x..x^2),
x=0..1);
>value(“);
>evalf(“); – .08333333333
Исполняемая команда >int(int(2*x*y, y = –x..x^2), x=0..1);
Много команд, связанных с интегрированием, находятся в пакете student, который подгружается командой >with(student): . Эти команды носят иллюстративный учебный характер.
4) Замена переменной в неопределенном интеграле. >with(student):
>changevar(x=x(t),Int(f(x),x),t);
Замена переменных может производится также в виде x(t)=x , t=t(x) , t(x)=t
5) Замена переменной в определенном интеграле. >with(student):
>changevar(x=x(t),Int(f(x),x=a..b),t);
>Int(sqrt(x),x=2..5)=
changevar(sqrt(x)=t,Int(sqrt(x),x=2..5),t);
6) Интегрирование по частям. >with(student):
>intparts(Int(f(x),x),u(x)); задается интеграл и и(х).
>intparts(Int(x*exp(x),x),x);
>
Int(x*exp(x),x)=intparts(Int(x*exp(x),x),exp(x));
7) Идея метода прямоугольников (результат выполнения команды – рисунок). >with(student): >leftbox(f(x), x=a..b, n , color=black); >rightbox(f(x), x=a..b, n , color=red);
>middlebox(f(x), x=a..b, n , color=green);
Соответствующие этим картинкам ступенчатые площади вычисляются командами
>leftsum(f(x),x=a..b,n); >rightsum(f(x),x=a..b,n); >middlesum(f(x),x=a..b,n);
Ответ дается в точном виде. Долее можно применить команду >evalf(“);
8) Формула трапеций >with(student): >trapezoid(f(x), x=a..b, n);
Ответ дается точный. Далее применяем команду >evalf(“);
9) Формула Симпсона >with(student): >simpson(f(x), x=a..b, 2n);
Ответ дается точный. Далее применяем команду >evalf(“);
10) Двойные интегралы >with(student):
>Doubleint(f(x,y),
y = m(x)..n(x), x = a..b);
>value(“);
11) Замена переменных в двойном интеграле >with(student):
>changevar({x=x(u,v), y=y(u,v)}, Doubleint(f(x,y), x,y), [u,v]);
>changevar({x=u*cos(v),
y=u*sin(v)}, Doubleint(x*y, x,y), [u,v]);
13) Тройные интегралы >with(student):
>Tripleint(f(x,y,z), z=z1(x,y)..z2(x,y), y=y1(x)..y2(x), x=a..b);
>value(“);
Замена переменных в тройном интеграле – аналогично двойному интегралу.
14) Криволинейные
интегралы 1-го рода
>with(student):
>Lineint(f(x,y,z), x=x(t), y=y(t), z=z(t), t = ..);
>value(“);
Пример.
Вычислить интеграл
>Lineint((3*x+sqrt(y))/sqrt(4+9*x), x=t^2, y=t^3, t =0..2);
>value(“); 15.23248814
15) Криволинейные интегралы 2-го рода (вычисляются без подгрузки “student”).
Интеграл
по дуге АВ: x=x(t),
y=y(t),
t
[a, b]
вычисляется так:
>w: = P(x,y)*dx+Q(x,y)*dy; задание подынтегрального выражения
>x: = x(t); y: = y(t); dx:=diff(x,t); dy:=diff(y,t); задание дуги АВ и дифференциалов
>int(w, t=a..b); вычисление криволинейного интеграла.
16) Кривая и касательная к ней (рисунок) >with(student):
>showtangent(f(x), x=a);
Изображается кривая на отрезке [–10, 10] (если она там умещается) и касательная к ней в точке с координатой х = а.
ЭКСТРЕМУМЫ ФУНКЦИЙ
Подгрузка >readlib(extrema):
Условный экстремум функции z=f(x,y) при условии g(x,y)=0
>extrema(f(x,y),{g(x,y)},{x,y},’s’); s;
В ответе получаем наибольшее и наименьшее значения функции и точки, в которых эти значения достигаются.
>extrema(x+y,{x^2+y^2=2},{x,y},’s’); s; {–2, 2} {{x= –1,y= –1},{x=1,y=1}}.
Здесь Zmin= –2 , Zmax= 2 , критические точки (–1, –1) и (1, 1)
Безусловный экстремум функции z=f(x,y) разыскивается командой
>extrema(f(x,y),{},{x,y},’s’); s;
Вычисляются наибольшее и наименьшее значения функции и все критические точки.
>extrema(x^3+y^3–3*(x+y), {}, {x,y},’s’); s;
{–4, 4} {{x=1,y=1},{x= –1,y=1},{x=1,y= –1},{x= –1,y= –1}}
Аналогичные вычисления для функции одной переменной производятся по команде
>extrema(f(x),{},x,’s’); s;
Вычисляются все критические точки и наибольшее и наименьшее значения функции в них.
ТФКП
Мнимая единица обозначается через I , комплексное число – через a+b*I
Арифметика
>(2+3*I) (5 – 7*I); >(2+3*I)*(1+I); >(1–I)/(5+6*I);
>z:=solve((1+2*I)/z=(3+4*I)/(5+6*I),
z); z:=
Действительная часть >Re(a+b*I); a
Мнимая часть >Im(a+b*I); b
Сопряженное число >conjugate(a+b*I); a–b*I
Модуль >abs(3+4*I); 5
Аргумент >argument(–3 – 5*I); arctg(5/3) –
Примечание. Последняя команда не всегда дает величину .
Одновременное вычисление модуля и аргумента производится командой >polar( ); , которая подгружается командой >readlib(polar):
>polar(a+b*I); polar( mod(a+b*I) , arg(a+b*I))
>polar(exp(1+4*I)); polar(e , 4) (неверно!)
>polar(ln(I)); polar(/2 , /2)
Вычисление значений функций
>exp(2+3*I); e2+3I
>evalc(“); e2cos3 + I e2sin3
>evalf(“); – 7.315110095 + 1.042743657I
Аналогично вычисляются все прочие функции. При вычислении корней, логарифмов и степеней с комплексными показателями вычисляется главное значение.
Конформные отображения смотри в разделе «Графики на плоскости».
Ряды Лорана в полюсе. Загрузить >with(numapprox, laurent);
>laurent(f(z), z = a, n); – ряд Лорана функции f(z) в полюсе(!) z = a , разложение до n-го порядка. Если порядок не указан, то считается, что он равен константе >Order: = n . По умолчанию эта константа равна 6.
>laurent(f(z), z, n); производится разложение в ряд Лорана в точке z = 0.
>laurent(1/sin(z)/(exp(z)–1),z);
>coeff(“, z^(–1)); –1/2
Ряд Лорана в существенно особой точке. Загрузить >with(numapprox, laurent);
Если правильная часть ряда Лорана конечна(!), то разложение функции f(z) в существенно осо-бой точке z0 = a производится двумя командами
>F: = f(z); z0: = a;
>subs(t = 1/(z–z0), laurent(subs(z = z0+1/t, F), t, n));
Пример. Разложить
функцию
в точке z0 =
1.
>F:= z^2*exp(z/(z–1)); z0:= 1;
>subs(t = 1/(z–z0), laurent(subs(z = z0+1/t, F), t, 5));
Вычеты в полюсе. Загрузить >readlib(residue);
>resdue(f(z), z = a); Команда вычисляет вычет функции f(z) в полюсе z = a . Применима к рациональным функциям.
>resdue(z/(z^4+1)^2, z=I); 1/8
>resdue(1/(z^4+4)^2, z=1+I); –3/256 – I*3/256
>residue(1/(exp(z)–1), z=0); 1
>residue(1/(1–cos(z)), z=0); не вычисляется
>residue(1/(exp(z)-1-z), z=0); не вычисляется
В этом случае (да и в прочих также) можно вычислять вычет функции f(z) в полюсе z=a командами (предварительно подгрузив, конечно, >with(numapprox, laurent);)
>F:= f(z); z0:= a; n:=7;
>res(F, z=z0):= coeff(laurent(F, z=z0, n), (z–z0)^(–1));
Вычеты в существенно особой точке (при конечной правильной части ряда Лорана)
>F:= f(z); z0:= a; n:=6;
>res(F, z=z0):= coeff(laurent(subs(z=z0+1/t, F), t, n), t);
Операционное исчисление
Преобразование Лапласа >laplace(f(t), t, s); F(s)
Обратное преобразование Лапласа >invlaplace(F(s), s, t); f(t)
>laplace(exp(t)*sin(t),
t, s);
>invlaplace(2*s/(s–1)^2/(s^2+1), s, t); t et – sin t
В качестве оригиналов можно брать Dirac(t), Heaviside(t–а), exp(at+b), sin(at+b), cos(at+b),
sinh(at+b), cosh(at+b), свёртку, производную, линейную комбинацию всех этих функций, а также их произведение.
>F:=Int(exp(t–z)*cos(z),
z=0..t);
>laplace(F,
t, s);
Решение задачи Коши для линейных дифференциальных уравнений.
Подгрузить >readlib(isolate);
Пример. y”+y’– 2y=et , y(0)=2, y’(0)=3 .
>diff(y(t),t,t)+diff(y(t),t)–2*y(t)=exp(t):
>laplace(“,t,s):
>subs(y(0)=2, D(y)(0)=3, “):
>isolate(“,laplace(y(t),t,s)):
>invlaplace(“,s,t);
Примечание. Вместо подгрузки команды >isolate можно использовать команду >solve( ) .
Решение интегральных уравнений.
Пример.
.
>Int(cos(t–z)*y(z),z=0..t)=t^2*exp(t):
>laplace(“,t,s):
>solve(“,laplace(y(t),t,s)):
>invlaplace(“,s,t); y(t)=2t2et + 2et – 2
Пример.
>y(t)=sin(t)+t*cos(t)+Int(sin(t–z)*y(z),z=0..t):
>laplace(“,t,s):
>solve(“,laplace(y(t),t,s)):
>invlaplace(“,s,t); y(t)=2sin(t)
Интерполяционный полином
>interp([x1, x2, x3, … xn],[y1, y2, y3, … yn],x); Pn-1(x)
>interp([1,2,3],[3,7,13],t); t2 + t + 1
ОПЕРАЦИЯ “МАР”
Эта операция позволяет применить данное действие к каждому элементу вектора или множества. Результат – вектор или множество (элементы множества упорядочиваются).
Примеры.
>f:=x–>x^2; >map(f,{3,1,4}); ответ: {1,9,16} – результат упорядочен
>map(diff,[sin(x), exp(2*x)],x); ответ: [cos(x), 2e2x]
>map(int, [2*x, 3*x^2],x); ответ: [x2, x3]
>map(limit,{2*x+7, 5*x}, x=1); ответ: {5, 9} – результат упорядочен
>map(laplace, [t, exp(t)],t,s); ответ: [1/s2, 1/(s–1)]
>map(invlaplace,[1/s2, 1/(s–1)],s,t); ответ: [t, exp(t)]
>map(dsolve, [D(y)(x)=2*x,D(y)(x)=3*x^2], y(x)); ответ: [y(x)=x2+_C1, y(x)=x3+_C1] .