Численное интегрирование и дифференцирование функций

Неопределенные интегралы в Maple вычисляются с помощью функций.
Int (<функция>, <переменная>) или int (<функция>, <переменная>) Int выводит сам интеграл, a int - первообразную интегрирования.
Для вычисления определенных интегралов используют команды
Int (<функция>, <переменная>=а..b) или int(<функция>, <переменная>=а..b), где a..b - пределы интегрирования.

Пример:

x:=3:
Int((1-x^2)^(1/2),х=-1..-1/2);
Int((-8)^(1/2),`х` = -1 .. -1/2)
int((1-x^2)^(1/2),х=-1..-1/2);
1/2*(-8)^(1/2)
evalf(%);
1.414213562*I

Вычисление несобственных интегралов также не вызывает затруднений. Примеры сходящегося и расходящегося интегралов приведены ниже. Здесь стоит напомнить, что запись infinity обозначает бесконечность.
restart;
Int(1/(1+x^2),х=0..infinity)=int(1/(1+х^2),х=0..infinity);
Int(1/(1+x^2),`х` = 0 .. infinity) = 1/2*Pi
Int(ln(x)/x,х=2..infinity)=int(ln(x)/x,х=2..infinity);
Int(ln(x)/x,`х` = 2 .. infinity) = signum(ln(x)/x)*infinity

Данный пример содержит текст функции, созданной средствами программирования Maple, для вычисления значения определенного интеграла методом трапеций.
#Метод трапеций
in4:=proc(a,b,n)
local j,h;global S;
h:=(b-a)/n;
S:=0;
for j from 1 to n-1 do
S:=S+f(a+h*j);
od;
S:=h*((f(a)+f(b))/2+S);
evalf(S);
end:

Вычисление интеграла методом Симпсона.
restart;
#Мeтод Симпсона
in5:=proc(a,b,n)
local j,h,p;
global S;
h:=(b-a)/n;
S:=0;
p:=4;
for j from 1 to n-1 do
S:=S=f(a+h*j)*p;
p:=6-p;
od;
S:=h/3*(f(a)+f(b)+S);
evalf(S);
end:

Для вычисления производной в Maple имеются следующие функции:
Diff (<выражение>, <переменная1 >, [ <переменная2 >,..., <переменнаяЫ> ])
или
diff (<выражение>,<переменная1 >, [<переменная2>,...,<переменнаяЫ>])
Здесь <выражение> - дифференцируемое алгебраическое выражение или функция ряда переменных, <переменная1>... - список переменных, по которым проводится дифференцирование. Различие между функциями Di f f и di f f - первая представляет выражение в естественной математической форме, а вторая непосредственно вычисляет производную.

Вычислить значение производной в точке можно, применив функцию подстановки
subs (< выражение1 >=< выражение2 >, < выражениеЗ >) которая в математическом выражении < выражениеЗ > заменяет < выражение 1> на <выражение2>. В частности, <выражение2> может быть числом.


#Вычисление значения производной в точке
pr:=diff((3*x^2+7)/(2*x+1),x):
subs(x=2,pr);
22/25
evalf(%);
.8800000000


#Производные высших порядков
diff(ln(cos(x)),x$2);
-1-sin(x)^2/cos(x)^2
diff(tan(x),x$4);
16*(1+tan(x)^2)^2*tan(x)+8*tan(x)^3*(1+tan(x)^2)