Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

МЕТОДИЧКА ПО MAPLE и MATHCAD

.pdf
Скачиваний:
342
Добавлен:
10.05.2015
Размер:
8.75 Mб
Скачать

31

Функции Бесселя

>BesselI(v, x):

>BesselJ(v, x):

>BesselK(v, x):

>BesselY(v, x):

>HankelH1(v, x):

>HankelH2(v, x):

>

>

>

>

>

>

>

Функции усечения и округления чисел Усечение число до ближайшего целого в направлении 0

.>

>

32

>

>

>

Округление числа до ближайшего целого числа.

>

>

>

>

>

Дробная часть числа.

>

>

>

>

>

Наибольшее целое, меньшее или равное числу.

>

>

33

>

>

>

Наименьшее целое, большее или равное числу.

>

>

>

Пакет Maple содержит очень большое количество специальных функций. Описание этих функций можно найти, обратившись к Help это можно сделать следующим образом, наберите имя функции, выделите его и нажмите клавишу F1.

В открывшемся окне можно выбрать интересующий вас раздел и в нем интересующую Вас функцию. В окне приведено не только описание функций, но так, же даны примеры их применения.

Выражения в Maple

Выражение представляет собой комбинацию имен переменных, чисел и других объектов Maple, объединенных знаками допустимых операций. Единственным назначением выражения является его вы-

34

числение

>a:=0.45;

>f:=exp(-a*t^2);

>Int(f,t=-100..100):=int(f,t=-100..100);

Если в выражении используется переменная, которой не присвоено никакого числового и строкового значения, то такая переменная рассматривается Maple как некая неизвестная величина, а выражение, содержащие неизвестные, называется символьным выражением. Именно для работы с символьными выражениями и создавался

Maple.

Упрощение выражений функция simplify()

Функция simplify() используется упрощения для выражения.

Вызов функции simplify(упрощаемое выражение, fun1,fun2,....), где fun1, fun2,.... имена функций упрощения. Если задан только один аргумент, то функция будет искать упрощенное выражение с использованием функций, квадратного корня, радикалов. Затем он будет вызывать соответствующие процедуры упрощения, которые включают в

себя:

 

 

 

 

BesselI, BesselJ, BesselK,

BesselY, D,

Ei,

GAMMA,

RootOf,

LambertW, dilog,

exp,

ln,

sqrt,

polylog, pochhammer,

trig

(тригонометрические функции),

hypergeom(гипергеометрическая функция), radical (радикалы),

power (степенные функции),

>simplify(4^(1/2)+3);

>simplify((x^a)^b+4^(1/2), power);

>simplify(exp(a+ln(b*exp(c))));

>simplify(sin(x)^2+cos(x)^2, trig);

35

>e := cos(x)^5 + sin(x)^4 + 2*cos(x)^2 - 2*sin(x)^2 - cos(2*x): simplify(e);

>f := -1/3*x^5*y + x^4*y^2 + 1/3*x*y^3 + 1:

simplify(f, {x^3 = x*y, y^2 = x+1});

>g:=sqrt(x^2);

>simplify(g);

>simplify(g,assume=positive);

Раскрытие скобок в выражении функция expand()

Вызов функции expand(выражение в котором необходимо раскрыть скобки, выр1,выр2,....), выр1, выр2,.... выражения вхо-

дящие в 'выражение в котором необходимо раскрыть скобки' и в которых скобки раскрывать не надо.

>expand((x+1)*(x+2));

>expand((x+1)/(x+2));

>expand(1/(x+1)/x);

>expand(sin(x+y));

>expand(cos(2*x));

>expand((x+1)*(y+z));

Скобки в выражении (x+1) скобки раскрывать не надо

> expand((x+1)*(y+z),(x+1));

Разложение полинома на множители функция factor()

Относительно этой команды следует помнить, что она раскла-

36

дывает полином на множители над числовым полем, которому принадлежат коэффициенты полинома.

>factor(6*x^2+18*x-24);

>factor((x^3-y^3)/(x^4-y^4));

>factor(x^3+5);

>factor(x^3+5.);

>factor(x^3+5,complex);

>factor(x^3+y^3);

Сокращение алгебраической дроби функция normal()

Вызов команды normal(f), normal(f, expanded), где f дробь которую нужно сократить, expanded параметр, говорящий о том, что скобки в числителе и знаменателе следует раскрыть.

>restart;

>normal( (x^2-y^2)/(x-y)^3 );

>normal( (x^2-y^2)/(x-y)^3, expanded );

>normal( (f(x)^2-1)/(f(x)-1) );

>normal( sin(x*(x+1)-x) );

>normal( 1/x+x/(x+1));

Приведение нескольких членов выражения к одному функция combine()

Функция combine() "знает" практически все правила преобра-

37

зования элементарных математических функций. Если вторым ее параметром является одно из следующих имен: sin, cos, tan, sinh, cosh, tanh, det, erf, exp, factorial, GAMMA, ln, max, min, Psi, binomial, sum, product, int, limit, bernoulli, euler, abs, signum, pochhammer, polylog, BesselJ, BesselY, BesselI, BesselK, AngerJ, Beta, Hankel, Kelvin, Struve, WeberE, то при преобразовании выражений бут применяться только правила преобразования соответствующих функций.

>g:=sin(a+b)^2;

>s:=expand(g);

>combine(s);

>combine(exp(sin(a)*cos(b))*exp(cos(a)*sin(b)),[trig,exp]);

>combine((x^a)^2,power);

>combine([2*sin(x)*cos(x),2*cos(x)^2-1],trig);

Приведение подобных членов функция collect()

Функция collect() работает с полиномами нескольких переменных полиномами, в которых в качестве неизвестных могут выступать функции с аргументами, являющимися неизвестными величина-

ми Maple.

Порядок вызова функции: collect(выражение, x) collect(выражение, x, form, func) collect(выражение, x, func)

Параметр х имя неизвестной величины, список неизвестных в случае полинома нескольких переменных

>f := a*ln(x)-ln(x)*x-x;

>collect(f,ln(x));

>g := int(x^2*(exp(x)+exp(-x)),x);

38

>collect(g,exp(x));

>p := x*y+a*x*y+y*x^2-a*y*x^2+x+a*x:

>collect( p, {x,y}, recursive );

>collect( p, {y,x}, recursive );

>collect( p, [x,y], recursive );

>collect( p, [y,x], recursive );

Рационализация дробей функция rationalize()

Под рационализацией дробей понимается избавление от иррациональности в знаменателе

>g:=2/(2-sqrt(2));

>rationalize(g);

>g:=(1+2^(1/3))/(1-2^(1/3));

>rationalize(g);

>f:=[ x/(x+sqrt(3)), x/(x+sqrt(1+sqrt(3))),(x+y)/(x*y+sqrt(3)+sqrt(7))];

>rationalize(f);

39

Ограничения на неизвестные: assume()

Команда assume() накладывает ограничения на неизвестные величины Maple.

Синтаксис команды:

assume(x, свойство); х любая неопределенная переменная Maple или выражение с такими переменными, а параметр свойство может принимать определенные значения для задания разнообразных ограничений на переменную или выражение.

Некоторые значения параметра свойство:

negative отрицательные вещественные числа (-infinite,0); nonnegative неотрицательные вещественные числа [0, infinite); positive положительные вещественные числа (0, infinite); natural натуральные числа (целые, большие или равные 0); posint целые строго большие нуля;

odd нечетные числа; even четные числа;

complex комплексные числа; real вещественные числа;

rational рациональные числа (простые дроби и целые); irrational иррациональные числа;

integer целые числа; fraction дробные числа; prime простые числа.

Математический анализ в MAPLE

Вычисление предела limit()

>Limit(sin(x)/x, x=0)=limit(sin(x)/x, x=0);

>Limit(exp(x), x=infinity)=limit(exp(x), x=infinity);

> Limit(ln(n*x+sqrt(1-n^2*x^2))/ln(x+sqrt(1- x^2)),x=0)=limit(ln(n*x+sqrt(1-n^2*x^2))/ln(x+sqrt(1-x^2)),x=0);

> Limit(1/(1+exp(1/x)),x=0,left)=limit(1/(1+exp(1/x)),x=0,left);

40

> Limit(1/(1+exp(1/x)),x=0,right)=limit(1/(1+exp(1/x)),x=0,right);

Вычисление суммы sum()

>Sum(n*(n+2)*x^n,n=1..infinity)=sum(n*(n+2)*x^n,n=1..infinity);

>Sum('k^2', 'k'=0..n)=sum('k^2', 'k'=0..n);

>sum('a[k]*x^k','k'=0..n);

>Sum('k/(k+1)','k'=0..n) = sum('k/(k+1)', 'k'=0..n);

Обратите внимание, что

>sum(k,k=1..5);

>sum(k,k=5..1);

Последний результат неверен и это ошибка Maple!

Вычисление произведений product()

> Product( k^2, k=1..4 )=product( k^2, k=1..4 );

> Product( k^2, k=1..n )=product( k^2, k=1..n );