Professional Documents
Culture Documents
Analiza matematyczna
13.1 Cakowanie
13.1.1
Caka nieoznaczona
Funkcja integrate(<expr>,<x>)
liczy symbolicznie (a raczej usiuje policzy
c) cak
e nieoznaczona z wyraz
enia <expr> wzgl
edem zmiennej <x>. Je
zeli prby nie dadza rezultatu
ciowo wyliczona).
wy
swietlana jest niewyliczona posta
c caki (lub cz
es
Zacznijmy od prostego przykadu
(%i1)
integrate(a*x^n,x);
Isn + 1zeroornonzero? n;
(%o1)
a xn+1
n+1
Je
zeli Maxima ma zbyt mao informacji zadaje dodatkowe pytanie - wpisujemy odpowied
z (tu "nonzero") i wciskamy (standardowo) Shift-Enter
(%i2)
integrate(a*x^n,x);
Isn + 1zeroornonzero? n;
(%o2)
a xn+1
n+1
171
172
assume(n+1>0);
(%o3)
[n > 1]
(%i4)
integrate(a*x^n,x);
(%o4)
a xn+1
n+1
Oczywi
scie poczynione zao
zenia program wykorzystuje rwnie
z w innych obliczeniach:
(%i5)
integrate((a+b)*x^(n+1),x);
(%o5)
(b + a) xn+2
n+2
forget(n+1>0);
(%o6)
[n > 1]
Prosz
e sprawdzi
c dziaanie wykonujac
ponownie poprzednie przykady.
Mo
zemy jednocze
snie robi
c wi
ecej zao
ze
n:
(%i7)
assume(n+1>0, m+1>0);
(%o7)
[n > 1, m > 1]
(%i8)
integrate(a*x^n+b*x^m,x);
(%o8)
a xn+1 b xm+1
+
n+1
m+1
(%i9)
forget(n+1>0, m+1>0);
(%o9)
[n > 1, m > 1]
173
(%i10) assume(b>0)$
(integrate(a*exp(x*b),x) )= integrate(a*exp(x*b),x);
(%o11)
a eb x dx =
a eb x
b
(%i12) assume(c>0)$
(integrate(a*b^(x*c),x) )= integrate(a*b^(x*c),x);
(%o13)
a bc x dx =
a bc x
log (b) c
(%i14) assume(m>0)$
integrate(x^m*(a+b*x)^5,x) = integrate(x^m*(a+b*x)^5,x);
(%o15)
xm (b x + a)5 dx =
5 a4 b xm+2 a5 xm+1
+
m+2
m+1
x
(b2 (n 1) x2 + a b n x + a2 ) en log(b x+a)
n dx =
(b x + a)
b2 (n2 3 n + 2)
(%o17)
35 log (x + c) 35 log (x c)
1
dx
=
+
+
5
256 c9
256 c9
(x2 c2 )
105 x7 385 c2 x5 + 511 c4 x3 279 c6 x
384 c8 x8 1536 c10 x6 + 2304 c12 x4 1536 c14 x2 + 384 c16
Isapositiveornegative? p;
174
(%o18)
1
dx =
(b x2 + a)4
5 atan
16 a
13.1.2
b x
a
7
2
15 b2 x5 + 40 a b x3 + 33 a2 x
48 a3 b3 x6 + 144 a4 b2 x4 + 144 a5 b x2 + 48 a6
Caka oznaczona
20 a + 625
4
(%i20) integrate(sqrt(a+b*x)/(x^5),x,0,1) =
integrate(sqrt(a+b*x)/(x^5),x);
Isapositiveornegative? p;
5 b4 log 22 bb x+a2
bx + a
x+a+2 a
dx =
(%o20)
7
x5
0
128 a 2
5
3
7
15 b4 (b x + a) 2 55 a b4 (b x + a) 2 + 73 a2 b4 (b x + a) 2 + 15 a3 b4 b x + a
192 a3 (b x + a)4 768 a4 (b x + a)3 + 1152 a5 (b x + a)2 768 a6 (b x + a) + 192 a7
13.1.3
Zmiana zmiennych
Funkcja changevar(exp,f(x,y),y,x)
dokonuje zmiany zmiennych w cace zgodnie z rwnaniem f(x,y)= 0,
gdzie x jest stara zmienna,
a y nowa zmienna.
Zilustrujmy to na przykadzie
175
(%i21) integrate(exp(sqrt(5*x)),x,0,4)+
integrate(exp(sqrt(5*x+1)),x,0,5)+
integrate(exp(sqrt(z*x)),z,0,4);
(%o21)
xz
dz +
5 x+1
dx +
dx
(%i22) changevar(%,x-y^2/5,y,x);
(%o22)
xz
13.1.4
dz
s0
|y|
2
5 y e dy
y 2 +1
dy
5 y e
5
s0
Caki wielokrotne
Caki wielokrotne mo
zemy liczy
c iterujac
odpowiednia liczb
e razy komend
e integrate:
(%i23) integrate(integrate(1/(x+y+1), y, 0,x),x,0,1) =
integrate(integrate(1/(x+y+1), y, 0,x),x,0,1);
1 x
0
1
3 log (3) 4 log (2)
dydx =
y+x+1
2
13.2 R
zniczkowanie
13.2.1
Pochodne zwyczajne
2
d 1
x sin (x)2 = sin (x)2 + 2 x cos (x) sin (x)
dx
d x2 + 1
2x
2 x (x2 + 1)
=
d x x2 1
x2 1
(x2 1)2
176
Funkcja diff(expr,var,n)
oblicza pochodna n-tego rz
edu wyra
zenia expr wzgl
edem zmiennej var.
(%i26) diff(sin(x)*cos(x),x,2), trigreduce;
(%o26) 2 sin (2 x)
(%i27) diff(sin(x)*cos(x),x,3) = diff(sin(x)*cos(x),x,3);
d3
(cos (x) sin (x)) = 4 sin (x)2 4 cos (x)2
(%o27)
3
dx
To samo z uproszczeniami:
(%i28) diff(sin(x)*cos(x),x,3) =
diff(sin(x)*cos(x),x,3), trigreduce, ratsimp;
(%o28)
13.2.2
d3 sin (2 x)
= 4 cos (2 x)
d x3
2
Pochodne czastkowe
d3
2
2
2
2
ex y = 4 x2 y 4 ex y + 10 x y 2 ex y + 2 ex y
2
dxdy
Podobnie post
epujemy przy pochodnych czastkowych
wzgl
edem wi
ekszej liczby zmiennych.
13.2.3
Funkcja depends
Je
zeli nie znamy wzoru na funkcj
e, a jedynie wiemy, z
e zale
zy ona od danych argumentw, to informacj
e taka mo
zemy przekaza
c do programu
przy pomocy polecenia depends. Umo
zliwia to poprawne przeksztacanie pochodnych takich funkcji.
177
(%i30) depends([U],[r,theta],[r,theta],[x,y]);
(%o30) [U (r, ) , r (x, y) , (x, y)]
(%i31) diff(U,x)+diff(U,y);
(%o31)
dy
B A
B A
d
d
U +
d
dx
B A
B A
d
d
U +
r
d
dy
B A
B A
d
d
U +
r
dr
dx
B A
Jak wida
c mamy tu wzr na pochodna funkcji zo
zonej.
13.3 Granice
Funkcja
limit(expr, x, val, dir)
lub
limit(expr, x, val)
oblicza granic
e wyra
zenia expr przy x zmierzajacym
do warto
sci val.
plus jest to granica prawostronna, je
Je
zeli symbol dir ma warto
sc
zeli
minus - granica lewostronna.
warto
sc
Je
zeli argument dir jest pomini
ety, funkcja liczy granic
e obustronna.
) lub minf
Symbol val mo
ze by
c symbolem inf (plus niesko
nczono
sc
).
(minus niesko
nczono
sc
W wyniku moga wystapi
c symbole und (granica nieokre
slona), ind (nieokre
slona ale wyra
zenie jest ograniczone) oraz infinity (niesko
nczo zespolona).
no
sc
zespolona) oznacza, z
Symbol infinity (niesko
nczono
sc
e granica mo, ale granica wyra
duu wyra
zenia jest plus niesko
nczono
sc
zenia nie jest
.
ani plus ani minus niesko
nczono
sc
(%i32) limit(x*log(x),x,0,plus);
(%o32) 0
(%i33) limit((x+1)^(1/x),x,0);
(%o33) e
d
U
dr
178
(%i34) limit(%e^x/x,x,inf);
(%o34)
(%i35) limit(sin(1/x),x,0);
(%o35) ind
(%i36) limit((-2)^n,n,inf);
(%o36) inf inity
(%o37)/T/
1+
x x2 x 3 5 x4 7 x5
+
+ ...
2
8
16 128
256
Funkcja powerseries(expr,x,a)
daje (stara si
e da
c) oglna posta
c szeregu pot
egowego wyra
zenia expr,
wzgl
edem zmiennej x, w otoczeniu a.
(%i38) powerseries(exp(x), x, 0);
(%o38)
xi1
i1=0 i1!
Cz
esto bardziej czytelna form
e szeregu daje u
zycie funkcji pomocniczej
niceindices:
179
xi
i=0
i!
(%o40)/T/
1+x+
x2 x3 x4
x5
x6
x7
x8
+
+
+
+
+
+
+ ...
2
6
24 120 720 5040 40320
xi3
(%o41)
i3=0 i3!
(%i42) niceindices(powerseries(%, x, 0));
(%o42)
xi
i=0
i!
si
e od <i 0> do <i 1>. Suma mo
ze mie
c sko
nczona lub niesko
nczona liczb
e skadnikw.
(%i43) sum(l,l,1,10);
(%o43) 55
(%i44) sum(x^l,l,1,10);
(%o44) x10 + x9 + x8 + x7 + x6 + x5 + x4 + x3 + x2 + x
(%i45) sum(1/k^2, k, 1, inf), simpsum;
(%o45)
2
6
180
si
e
od <i_0> do <i_1>.
(%i46)
(%o46) (x + 1) (x + 3) (x + 6) (x + 10)
(%i47) product (i^2, i, 1, 7);
(%o47) 25401600