- •Математические пакеты
- •Греческие буквы (выводятся при выдаче результата)
- •Машинные константы:
- •!!!Присвоение сохраняется до тех пор, пока оно не будет снято или же не будет заменено другим присвоением!!!
- •Уравнения
- •Неравенства
- •Конечные суммы
- •Бесконечные суммы
- •Графика в maple
- •Дифференциальные уравнения
- •Линейная алгебра
- •Задание вектора
- •Основные задачи линейной алгебры
- •Программирование
Машинные константы:
Pi (= = 3,14159…) , ехр(1) (= e = 2,7182818…) , I (= ) , infinity (= +) , – infinity (= –) .
Встроенные функции (почти все пишутся с маленькой буквы).
exp(x),ln(x),log10(x),log[n](x),sqrt(x),surd(x,n),abs(x),n! ,signum(x),
sin(x),cos(x),tan(x),cot(x),arcsin(x),arccos(x),arctan(x),arccot(x),
sinh(x), cosh(x), tanh(x), arcsinh(x), arccosh(x), arctanh(x),
Heaviside(x),Dirac(x),floor(x) – целая часть отх , frac(x) – дробная часть отх .
Примечание. arctan(x,y) вычисляется какarctan(x/y) .
Список всех встроенных функций можно получить по команде >?inifcns
По каждой функции можно получить справку командой >?функция
Множества (порядок элементов не имеет значения) задаются фигурными скобками
>A: = {1,2,3,4,5}; B: = {3,4,5,6,7};
Операции над множествами: объединение АВ, пересечение АВ, разность А\В
>E: = A union B; E: = {1,2,3,4,5,6,7} .
>C: = A intersect B; C = {3,4,5} ,
>D: =AminusB;D: = {1,2} ,
При выдаче на экран элементы множества М упорядочиваются по возрастанию (если они действительные). По команде >М[n]; можно узнать значениеn - го элемента множества М.
Индексные величины (векторы) задаются квадратными скобками: А: = [1,9,3,5] .
Такие величины называются списками(list). В них важен порядок элементов. По команде >A[n]; можно узнать значениеn - й координаты списка А.
Присвоение (assignment).
Команда «Обозначим через А уравнение ln(2x2+3)=5» имеет вид
>A: =ln(2*x^2+3)=5;
Несколько присвоений можно писать в строчку через ; или через :
>x: =t+2;y: = 5:z: =a;
В первом случае присвоение выводится на экран, во втором случае – нет.
Одной из форм присвоения является команда >alias(w=F(x)); «в дальнейшем черезwбудем обозначать функциюF(x)».
!!!Присвоение сохраняется до тех пор, пока оно не будет снято или же не будет заменено другим присвоением!!!
Прежде чем использовать переменную в новой задаче, не забудьте снять с неё присвоение!
Снятие присвоения (unassignment). Используют прямые кавычки.
Если есть присвоение >x: = 2; , то нельзя решать уравнение командой >solve(2*x+5=0,x); , так как величинахуже определена (она равна 2). Нужно
ЛИБО снять присвоение командой >x:=; и уже затем решать уравнение.
ЛИБО снять присвоение командой > unassign(); и уже затем решать уравнение.
Примечание. Эта команда удобна для снятия нескольких присвоений: >unassign();
ЛИБО решать данное уравнение, переписав его в виде >solve(2*+5=0,); .
Аналогично команде >unassign(…); действует команда >restart; («начать новую жизнь»). Она очищает внутреннюю памятьMAPLEи снимает ВСЕ присвоения. Однако эта команда неудобна тем, что она удаляет загрузку всех пакетов. В версии 9.5 кнопкаrestartвыведена в меню!
Задание функции.
Функции f(x)=x2 +3x , g(x,y)=x2–y3 задаются командами
>f:=x–>x^2–3*x;
>g:=(x,y)–>x^2–y^3;
Затем можно эти функции дифференцировать, интегрировать, строить графики и вычислять их значения в данной точке: f(2) ,g(3,4). Если же имеется присвоение >F:=x*y; , то это не является заданием функции. Это просто обозначение произведения. Нельзя, например, вычислить значениеF(3,–5), Для превращения этого присвоения в функцию Н(х,у) нужно выполнить команду
>H:= unapply(F,x,y);
Кусочно-заданная функция определяется командой
>f:=x–> piecewise(x<1, x^2, 3–x);
Кусочно-заданная функция определяется командой
>f:=x–> piecewise(x<=1, x^2, x<3 , 3–x, 4/x);
От таких функций можно находить производную, брать определенный интеграл, строить их графики командами >diff(f(x),x); >int(f(t),t=a..b); >plot(f(z),z=a..b);
При наличии в последней команде опции discont=trueграфики строятся без вертикальной черты в точках разрыва и даже с указанием значения, которое функция принимает в точке разрыва.
Задание последовательности.
Числовая последовательность an=ln(2n+3) задается командой
>a[n]: =ln(2*n+3);
Множество значений этой последовательности можно затем получить командой
>a[n]$n=1..7;
График этой последовательности (ломаная линия) строится командами
>with(plots): подгрузка графического пакета
>listplot([a[n]$n=1..7]); построение графика последовательности дляn=1, 2, …, 7.
Предел заданной последовательности находится командой
>limit(a[n],n=infinity);
Операции оценивания >evalf( ) , evalc( ) , value( )
>evalf( )– вычисляет в виде десятичных дробей величины, заданные точно.
>evalf(sqrt(2)); 1,414213562 (десять знаков по умолчанию).
Количество знаков можно изменить, если до вычисления выполнить команду >Digits:=n; либо добавить в командуevalfопцию числа знаков
>evalf(sqrt(2),15); 1,41421356237310 (15 знаков).
Если же аргументы функций заданы в десятичной форме, то оценка происходит автоматически:
>sqrt(2.0); 1.414213562
>sin(1.0); .8414709848
>evalc( )– вычисляет в точном виде значения комплексных функций
>arcsin(2); arcsin(2)
>evalc(%); ½ –I ln(2+)
>sin(1+I); sin(1+I)
>evalc(%); sin1 ch1+I cos1 sh1
>evalf(%); 1.29… + .634…I
Тот же результат можно получить, задавая аргумент в десятичном виде
>sin(1.0 + I); 1.29… + .634… I
>value( )– вычисляет в точном виде результат ОТЛОЖЕННОЙ (inertformof…) команды.
>Int(sqrt(x),x=1..2); (отложенная команда)
>value(%); точное значение интеграла
>evalf(%); 1.218951415 десятичное значение интеграла
ЭЛЕМЕНТАРНЫЕ ПРЕОБРАЗОВАНИЯ
Подстановка.
>subs(x=a,f(x)); – подставить х=а в выражениеf(x).
>subs(x=a,y=b,f(x,y)); – подставить х=а,y=bв выражениеf(x,y).
>F:=x^2+y^2;G:=2*x+3*y; предварительное задание функций
>A:=subs(x=3,y=2,[F,G]);A=[13, 12] результат подстановки
Величина А – это список, т.е. векторная величина. Командами >A[1]; >A[2]; можно вывести на экран значения её элементов.
>B:=subs(x=3,y=2,{F,G}); B={12, 13}
В данном случае В – это множество (порядок не важен). Его элементы упорядочиваются по возрастанию (в комплексном случае элементы печатаются в порядке их вычисления в команде). Элементы множества В выводятся на экран командами >B[1]; >B[2]; .
Приведение подобных членов.
>collect(P,Q); – приведение подобных членов в выражении Р по переменной (выражению)Q.
>P: = 2*x^2+3*x*y+4*y^2+5*x+6*y;
>collect(P, x); 2x2 + (3y+5)x + 4y2+6y
>collect(P, y); 4y2 + (3x+6)y + 2x2+5x
Нахождение в явном виде переменной (функции) из данного уравнения.
>P:= 2*ln(x)*exp(x) –3*exp(y)+7=10*ln(x) – exp(y);
>ln(x)=solve(P, ln(x));
Если уравнение имеет вид Р = 0, то в этом случае ноль можно не писать
>y=solve(2*x*y+3*x+4*y+5, y);
Исключение неизвестной x из системы {f(x,y)=0 , g(x,y)=0}
>eliminate({f(x,y),g(x,y)},x); Ответ имеет вид: {x=x(y) , P(y)=0}
Выделение частей равенства, выделение числителя и знаменателя.
>lhs(a/b=m/n);a/bвыделение левой части равенства
>numer(%);aвыделение числителя
>rhs(a/b=m/n);m/nвыделение правой части равенства
>denom(%);nвыделение знаменателя
Команда >COMBINE( );
1) Объединение интегралов и пределов в отложенной форме (Int,Limit) в одно целое:
Пример.
>A: =Int(x^2,x=2..5);B: =Int(x^3,x=2..5);
>combine(7*A– 4*B);
Пример.
>A: =Limit(x^2,x=3):B: =Limit(x^5,x=3):C: =Limit(sin(x),x=3):
>combine(7*A*B– 10*C/B);
2) Опция trig. Преобразование многочленаP(sinx,cosx) в суммуsin(nx) ,cos(nx).
>combine(sin(x)^3+sin(x)*cos(x)^2+cos(x)^4, trig); sin x + (1/8)cos4x+(1/2)cos2x+3/8
Примечание.В версии 9.5 опциюtrigможно не писать.
3) Опция ln. Потенцирование (В версии 9.5 опциюlnможно не писать).
>combine(2*ln(3)+3*ln(2)–ln(12) , ln); ln(6)
>combine(2*ln(x)+3*ln(y)–5*ln(z), ln, symbolic);
4) Опция ехр. Умножение и деление экспонент. (В версии 9.5 опцию expможно не писать).
>combine(A,exp); e2x + 3y – 5z
Команда >EXPAND(…);
1) Раскрытие всех скобок
>expand((x–1)*(x–2)*(x–3)); x3 – 6x2 + 11x – 6
>expand((x–1)*(x–2)/(x–3));
Раскрытие всех скобок кроме одной, указанной в опции
>expand((x+y)*(a+b), x+y); (x+y)a + (x+y)b
>expand((x+y)*(a+b),a+b); (a+b)x+ (a+b)y
2) Экспонента от суммы – в произведение или частное
>expand(exp(a – n*b + ln(c)));
3) Сведение тригонометрических выражений к синусам и косинусам простых аргументов
>expand(tan(x – y)*sin(x + y));
>expand(sin(3*x)); 4 sin x cos2x – sin x
Команда разложения на множители >FACTOR( ).
1) Разложение на множители числителя и знаменателя
>factor((x^2 – 1)/(x^2+x– 6));
2) Разложение на множители с последующим сокращением
>factor((x^3–y^3)/(x^2–y^2));
3) Разложение многочлена на множители с рациональными коэффициентами
>factor(x^4 + 4); (x2–2x+2)(x2+2x+2)
4) Если коэффициенты многочлена содержат радикалы, то команда производит разложение на множители с аналогичными коэффициентами
>factor(x^3+x–3*sqrt(2));
5) Возможные радикалы, которые появятся в разложении, можно задать в виде опций
>factor(x^4+1, {sqrt(2)});
6) Опции можно задавать в виде корня wмногочленаP(x), используя функциюRootOf (P(x))
>alias(w=RootOf(x^2+4*x+1)); w
>factor(x^2+4*x+1, w); (x – w)(x + w + 4)
7) Если коэффициенты многочлена заданы десятичными дробями, то команда производит разложение на множители с приближенными коэффициентами.
8) При наличии опции complexпроизводится разложение с приближенными комплексными корнями.
Команда >NORMAL( );
1) Раскрытие скобок и приведение подобных членов
>normal(x^2+5*x+(2*x–3)*(1–7*x)); –13x2 + 28x+ 3
Однако в команде >normal((2*x–3)*(1–7*x)); скобки не раскрываются. Здесь нужно использовать команду >expand.
2) Сокращение дробей
>normal((x^2+x–2)/(x^2+2*x–3));
3)Приведение дробей к общему знаменателю
>normal(2*x+3+4/(x–1)+5/(x–2));
Если добавить опцию “expanded”, то будут раскрыты скобки в знаменателе
>normal(2*x+3+4/(x–1)+5/(x–2),expanded);
Команда “normal” работает и в том случае, если все приведенные выше выражения находятся под знаком какой-либо функции, интеграла или предела!
Команда упрощения >SIMPLIFY( );
1) Упрощение числовых и буквенных выражений
>A: =3*(1/4)^(1/2)+5*(1/81)^(1/4);
>simplify(A); 19/6
2) Использование функции предположения assume( );
>A: = sqrt(a^2)+sqrt(b^2);
>simplify(A,assume(a>0,b<0));a~ –b~ (здесьa~ иb~ считаются положительными)
3) Упростить выражение F=x2–y2при условияхx=a+b,y=a–b
>simplify(x^2–y^2, {x=a+b, y=a–b}); 4ab
4) Упрощение тригонометрических формул (в версии MAPLE-9,5 опциюtrigможно не писать)
>simplify(sin(x)^4–cos(x)^4+cos(2*x), trig); 0
Команда преобразования >CONVERT( );
1) Преобразование рациональной дроби в сумму многочлена и простейших дробей
>R: = (3*x^3+2*x^2+x)/(x^2–3*x+2);
>convert(R, parfrac, x);
2) Превращение равенства в неравенство и обратно
>convert(a=b, lessthan); a < b
>convert(a=b, lessequal); a b
>convert(a<b, equality); a = b (возможны варианты a>b, a<=b, a>=b)
3) Если результат интегрирования содержит непривычные функции arcsinh(x) , arctanh(x) , то для приведения результата к привычному виду можно применить команду >convert(%,ln);
Аналогично, гиперболические функции sinh(x), cosh(x), tanh(x) можно выразить через экспоненты командой >convert(%,exp);
4) Превращение периодической десятичной дроби в обыкновенную
>convert(%,rational);
5) Превращение множества (set) >M:={a,b,c}; в список (list) >M:=[a,b,c]; и обратно
>convert(M,list); >convert(M,set);
Полный список опций команды «convert» можно получить по команде >?convert. Затем справку по интересующей нас опции можно получить командой >?convert[опция].
Полиномы
Пусть задан полином >P: =a*x^2+b*x+c: Тогда возможны команды
1) Старший коэффициент >lcoeff(P); a
2) Младший коэффициент >tcoeff(P); c
3) Все коэффициенты >coeffs(P,x); c , b , a
4) Все коэффициенты и соответствующие иксы >coeffs(P,x,’s’);s;c,b,a
1 , x,x2
5) Коэффициент при n-ой степених >coeff(P,x,n); или >coeff(P,x^n);
6) Список слагаемых >convert(P,list); [ax2,bx,c]
7) Частное от деления Р на Q>quo(P,Q,x); (остаток не вычисляется)
8) Остаток от от деления Р на Q>rem(P,Q,x);