Методичка Maple, Стребуляев
.pdf> Limit(tan(x),x=Pi/2,right)=limit(tan(x),x=Pi/2,right);
lim tan(x)
x +
2
> Limit(tan(x),x=Pi/2,left)=limit(tan(x),x=Pi/2,left); lim tan(x)
x -
2
plot(tan(x),x=-5..5, y=-10..10,color=black,thickness=3);
1.4. Вычисление производных
Вычисление производных функций — одна из самых распространенных задач математического анализа. Для ее реализации существует следующая функция:
diff(a,x1,x2,..., xn) ,
где a — дифференцируемоле алгебраическое выражение или функция,
x1, x2,..., xn — ряд переменных, по которым производится дифференцирование.
Ниже приведены примеры применения функции diff. Вычисление производных явно заданных функций:
>restart:
>with(linalg): with(plots):
31
Warning, the protected names norm and trace have been redefined and unprotected
Warning, the name changecoords has been redefined > diff(sin(x),x);
cos(x)
> Diff(sin(x),x)=diff(sin(x),x); ddx sin(x) cos(x)
Для создания функций с производными может также использоваться дифференциальный оператор D. Он позволяет создавать более компактные выражения, чем diff.
> D(sin);
cos
> D(sin)(x);
cos(x)
> y:=(x)->(x*sin(alpha)+cos(alpha))*(x*cos(alpha)- sin(alpha));
y:= x (x sin( ) cos( )) (x cos( ) sin( ))
>Diff(y(x),x)=diff(y(x),x) ;
x ((x sin( ) cos( )) (x cos( ) sin( )))
sin( ) (x cos( ) sin( )) (x sin( ) cos( )) cos( )
> D(y);
x sin( ) (x cos( ) sin( )) (x sin( ) cos( )) cos( )
>
> restart: y:=x+x^x+x^(x^x);
y := x xx x(xx) |
|
|
|
> diff(y,x); |
|
xx |
|
( xx) |
|||
1 xx (ln(x) 1) x |
xx (ln(x) 1) ln(x) |
|
|
|
|
|
|
|
|
x |
> diff(x^(1/x),x);
32
|
|
1 |
|
|
ln(x) |
|
1 |
||||
|
|
x |
|
|
|
||||||
x |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2 |
2 |
||||||
|
|
|
|
|
|
x |
|
x |
|
||
|
|
|
|
|
|
|
|
|
|
> collect(%,1/x);
1
x x ( ln(x) 1)
x2
restart; y:=x->floor(x)*sin(Pi*x)^2;
# floor(x)-целая часть (Антье) числа;
y := x floor(x) sin( x)2
> diff(y(x),x);
floor(1, x) sin( x)2 2 floor(x) sin( x) cos( x)
> combine(%);
1 |
1 |
|
||
|
floor(1, x) |
|
|
floor(1, x) cos(2 x) floor(x) sin(2 x) |
2 |
|
|||
2 |
|
plot(%,x=-5..5,title="ГРАФИК ПРОИЗВОДНОЙ", titlefont=[HELVETICA,BOLD,8],thickness=3);
Вычисление производной от кусочно-линейной функции производится следующим образом:
>restart:
>y:=x->piecewise(x<1,1-x,x<=2,(1-x)*(2-x),
33
-(2-x));"y(x)"=y(x);
y := x piecewise(x 1, 1 x, x 2, (1 x) (2 x), 2 x)
|
1 x |
|
|
|
|
"y(x)" (1 x) (2 x) |
|
|
|
|
2 x |
|
x 1 x 2 otherwise
> f:=x->diff(y(x),x);
f := x diff(y(x), x)
> "y'(x)"=f(x);
|
-1 |
|
|
|
|
"y'(x)" 3 2 x |
|
|
|
|
1 |
|
x 1 x 2 2 x
plot([y(x),f(x)],x=-2..4,title="ФУНКЦИЯ И ЕЕ ПРОИЗВОДНАЯ",titlefont=[HELVETICA,8],color=[RED,BLUE] ,style=[POINT,LINE],symbol=BOX,legend=["y(x)","y'(x)" ],thickness=3);
Вычисление производных функций, заданных параметрически:
>restart;
>x:=t->exp(2*t)*cos(t)^2;
x := t e(2 t) cos(t )2
>y:=t->exp(2*t)*sin(t)^2;
y := t e( 2 t ) sin(t )2
34
> diff(y(t),t)/diff(x(t),t);
2 e(2 t ) sin(t )2 2 e(2 t) sin(t) cos(t )
2 e(2 t) cos(t)2 2 e(2 t) sin(t ) cos(t )
Производная от неявно заданной функции и ее графический образ:
>
> restart: with(plots): > F:=x^2+2*x*y-y^2-2*x;
F:= x2 2 x y y2 2 x
implicitplot(F,x=-5..5,y=- 5..5,thickness=3,title="НЕЯВНО ЗАДАННАЯ ФУНКЦИЯ",titlefont=[COURIER,BOLD,8]);
> F[1]:=implicitdiff(F,y,x);
F:= x y 1
1 x y
plot3d(F[1],x=-5..5,y=- 5..5,thickness=3,title="ПРОИЗВОДНАЯ ОТ ФУНКЦИИ",titlefont=[COURIER,BOLD,4],axes=boxed);
35
>
Производные высших порядков:
>restart:
>y:=x->x*sinh(x);
y := x x sinh(x)
> diff(y(x),x$100);
100 cosh(x) x sinh(x)
> y1:=2*cos(5*t)+3*sin(9*t);
y1 := 2 cos(5 t ) 3 sin(9 t )
> diff(y1,t$4);
1250 cos(5 t ) 19683 sin(9 t )
Частные производные:
>restart;
>u:=(x,y)->x^4+y^4-4*x^2*y^2;
u:= (x, y) x4 y4 4 x2 y2
>Diff(u(x,y),x)=diff(u(x,y),x);
x (x4 y4 4 x2 y2 ) 4 x3 8 x y2
> Diff(u(x,y),y)=diff(u(x,y),y);
y (x4 y4 4 x2 y2 ) 4 y3 8 x2 y
> Diff(u(x,y),x,y)=diff(u(x,y),x,y);
36
2 (x4 y4 4 x2 y2 ) 16 x yy x
> Diff(u(x,y),x$2)=diff(u(x,y),x$2);
x22 (x4 y4 4 x2 y2 ) 12 x2 8 y2
>Diff(u(x,y),y,y)=diff(u(x,y),y,y);
1.5.Вычисление интегралов
Вычисление неопределенного и определенного интегралов — одна из самых распространенных операций математического анализа. Для вычисления этих интегралов предоставляются следующие функции:
int(f,x), int(f,x = a..b), int(f,x = a..b,c),
где f — подынтегральная функция, x — переменная интегрирования, a, b — нижний и верхний пределы интегрирования, c — необязательное дополнительное условие. Ниже приведены примеры использования этих функций для вычисления различных интегралов.
Вычисление неопределенных интегралов:
>restart:
>Int(exp(alpha*x)*cos(b*x),x)=int(exp(alpha*x)*cos(b*x),x);
|
e |
( x) |
|
|
|
|
|
|
|
|
|
e( x) cos(b x) |
b e( x) sin(b x) |
cos(b x) dx |
|
2 b2 |
2 b2 |
> collect(%,exp); # Выносим за скобку exp(x);
|
e |
( x) |
|
|
|
|
|
|
|
|
|
|
cos(b x) |
b sin(b x) |
e |
( x) |
|||
cos(b x) dx |
|
|
|
|
|
||
|
|
2 2 |
|
2 2 |
|
|
|
|
|
|
|
|
|
||
|
|
b |
|
b |
|
|
|
> Seq:=f(x),x; # переменной Seq в качестве значения при-
своим последовательности из двух элементов -- результата действия оператора f() на переменную x и самой переменной x;
Seq := f(x), x
> Int(Seq)=int(Seq);
f(x) dx f(x) dx
Нахождение интегралов разрывных функций: > restart: with(plots):
Warning, the name changecoords has been redefined
37
> f:=(x)->piecewise(x<0,1,x<=1,x+1,2*x);
f := x piecewise(x 0, 1, x 1, x 1, 2 x)
> f(x);
|
|
1 |
|
|
x 0 |
|
|
|
|
|
|
|
|
|
x 1 |
x 1 |
||||
|
||||||
|
|
2 x |
|
otherwise |
||
|
|
|
||||
> F:=x->int(f(x),x); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
F := x f(x) dx |
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
> F(x); |
|
|
|
x |
x 0 |
|
|
|
|
|
|||
|
|
1 |
|
|
|
|
|
|
|
2 |
|
||
|
|
|
x |
x |
x 1 |
|
|
|
2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2 |
1 |
|
|
|
x |
1 x |
|||
|
|
|
||||
|
|
|
|
|
2 |
|
|
|
|
|
|
|
plot([f(x),F(x)],x=- 1..2,color=[RED,NAVY],linestyle=[DOT,SOLID],thick- ness=2,title="КУСОЧНО-ГЛАДКАЯ ФУНКЦИЯ \n И ИНТЕГРАЛ ОТ НЕЕ",titlefont=[TIMES,BOLD,9],legend=["ФУНКЦИЯ","ИНТЕГРАЛ"]);
Вычисление определенных интегралов: > restart:
> Int(x^2*cos(x),x=0..2*Pi)=int(x^2*cos(x),x=0..2*Pi);
38
x2 cos(x) dx 4
0
>Int(1/((x^3+x^2+2*x+2)^2),x=0..1)=int(1/ ((x^3+x^2+2*x+2)^2),x=0..1); evalf(%);
|
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
|
2 |
1 |
2 |
|
1 |
|
|
2 |
|
||
|
|
|
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
dx ln(2) |
ln(3) |
2 arctan |
2 |
|
|||||
|
3 2 |
2 |
9 |
36 |
27 |
216 |
|
|
||||||
|
|
(x x |
2 x 2) |
|
|
|
|
|
|
|
|
|
|
|
|
0 |
|
|
|
|
|
|
|
|
|
|
|
|
|
0.1044615176 0.1044615176
># Интеграл с параметром;
>s:=m->int(sin(x)^m,x=0..Pi/2);
|
|
|
|
|
|
|
2 |
|
m |
|
|
|
sin(x) |
dx |
|||
s := m |
|
|
|||
|
|
|
|
|
|
0 |
|
|
|
|
>assume(m::integer>0); # Полагаем m>0 -целое;
>s(m); # Г(x) - гамма-функция Эйлера;
|
1 |
m~ |
||
|
|
|
|
|
|
|
|||
1 |
|
2 |
2 |
|
|
|
2 |
|
m~ |
|
|
|
1 |
|
|
|
2 |
|
Вычисление несобственных интегралов:
>restart: with(plots):
>y:=(x)->(x*ln(x))/(1+x^2)^2;
y := x x ln(x)2
(1 x2 )
> Int(y(x),x=0..infinity)=int(y(x),x=0..infinity);
x ln(x)
dx 0
2
(1 x2 )
0
> evalf(%);
-0.6696976039 10-17 0.
plot(y(x),x=0..infinity,title="ГРАФИК ФУНКЦИИ y(x)",titlefont=[HELVETICA,BOLD,10],thickness=3);
39
> Int(1/(x^2+1)^2,x=-infinity..infinity)=int(1/
(x^2+1)^2,x=-infinity..infinity);
|
|
|
|
|
|
|
1 |
|
|
|
|
||
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
2 |
dx |
|
|
2 |
) |
|
2 |
||
|
|
(1 x |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Вычисление двойных интегралов:
>restart: with(student):
>Doubleint(x*y^2,y=x^2..x,x=0..1); # Внимание !! Порядок задания пределов интегрирования именно такой;
1x
|
|
|
x y |
2 |
dy dx |
|
|
|
|
||
0 |
|
x |
2 |
|
|
|
|
|
|
|
> value(%);
1
40
>
Int(Int(x*y*(x+y),y=0..x^3),x=0..2)=int(int(x*y*(x+y ),y=0..x^3),x=0..2);
3
x y (x y) dy dx 8960
99
0 0
>Int(Int(1/(x^2+y^2+5)^2,y=0..infinity),x=0..infinity);2 x
40