Příklad 4

Následující příklad ukazuje výpočet plošného integrálu pomocí jeho parametrického vyjádření .

>    restart:with(student):with(plots):
with(VectorCalculus):with(linalg):

Warning, the name changecoords has been redefined

Warning, the assigned names <,> and <|> now have a global binding

Warning, these protected names have been redefined and unprotected: *, +, ., Vector, diff, int, limit, series

Warning, the previous binding of the name Wronskian has been removed and it now has an assigned value

Warning, the protected names norm and trace have been redefined and unprotected

Určete hmotnost kulové plochy, je-li plošná hustota v každém bodě dané plochy rovna vzdálenosti bodu od osy z .

Rovnice kulové plochy (není regulární)

>    kp:=x^2+y^2+z^2=r^2;

kp := x^2+y^2+z^2 = r^2

Plošná hustota

>    mu:=sqrt(x^2+y^2);

mu := (x^2+y^2)^(1/2)

Hmotnost plochy se spočítá pomocí [Maple OLE 2.0 Object]  , kde [Maple OLE 2.0 Object]  je plošná hustota.

Parametrické rovnice koule

>    X:=r*cos(u)*sin(v):

>    Y:=r*sin(u)*sin(v):

>    Z:=r*cos(v):

Pro kontrolu nakreslíme obrázek

>    plot3d([cos(u)*sin(v),sin(u)*sin(v),cos(v)],u=0..2*Pi,
v=0..Pi);

[Maple Plot]

Dále určíme normálu

>    n:=[A,B,C];

n := [A, B, C]

Jednotlivé složky určíme pomocí příkazů  z rozšiřující knihovny linalg . Nejprve určíme příslušné derivace.

>    N:=Matrix([diff([X,Y,Z],u),diff([X,Y,Z],v)]);

N := Matrix(%id = 11026252)

#  Matice derivací funkcí X , Y , Z .

>    submatrix(N,1..2,2..3);
A:=det(%);

matrix([[r*cos(u)*sin(v), 0], [r*sin(u)*cos(v), -r*sin(v)]])

A := -r^2*cos(u)*sin(v)^2

#  Výpočet determinantu submatice, která charakterizuje A .  

>    submatrix(N,[1,2],[1,3]);
B:=det(%);

matrix([[-r*sin(u)*sin(v), 0], [r*cos(u)*cos(v), -r*sin(v)]])

B := r^2*sin(u)*sin(v)^2

#  Druhá složka normály

>    submatrix(N,1..2,1..2);
C:=simplify(det(%));

matrix([[-r*sin(u)*sin(v), r*cos(u)*sin(v)], [r*cos(u)*cos(v), r*sin(u)*cos(v)]])

C := -r^2*sin(v)*cos(v)

#  Třetí složka normály

Nyní určíme velikost normály

>    H:=sqrt(A^2+B^2+C^2);

H := (r^4*cos(u)^2*sin(v)^4+r^4*sin(u)^2*sin(v)^4+r^4*sin(v)^2*cos(v)^2)^(1/2)

Zjednodušíme pomocí známého vzorce

>    simplify(H,{sin(u)^2+cos(u)^2=1,sin(v)^2+cos(v)^2=1});

(-r^4*cos(v)^2+r^4)^(1/2)

Využijeme tentýž vzorec

>    simplify(%,{1-cos(v)^2=sin(v)^2});

(r^4*sin(v)^2)^(1/2)

>    assume(r>0,sin(v)>0);

>    H:=simplify(%,{1-cos(v)^2=sin(v)^2});

H := r^2*sin(v)

#  Mohli jsme omezit sin  kvůli rozsahu v .

Dosazením do [Maple OLE 2.0 Object]   dostaneme dvojný integrál

>    Doubleint(subs(x=X,y=Y,sqrt(x^2+y^2))*H,u,v,M);

Int(Int((r^2*cos(u)^2*sin(v)^2+r^2*sin(u)^2*sin(v)^2)^(1/2)*r^2*sin(v),u = M .. ``),v = `` .. ``)

>    i:=Doubleint(integrand(%),u=0..2*Pi,v=0..Pi);

i := Int(Int((r^2*cos(u)^2*sin(v)^2+r^2*sin(u)^2*sin(v)^2)^(1/2)*r^2*sin(v),u = 0 .. 2*Pi),v = 0 .. Pi)

#  Získání integrandu a přidání integračních mezí.

>    simplify(i,{sin(u)^2+cos(u)^2=1,sin(v)^2+cos(v)^2=1});

r^2*Int(sin(v)*Int((r^2*sin(v)^2)^(1/2),u = 0 .. 2*Pi),v = 0 .. Pi)

#  Zjednodušení známými rovnicemi.

>    simplify(%,{1-cos(v)^2=sin(v)^2});

r^3*Int(1,u = 0 .. 2*Pi)*Int(sin(v)^2,v = 0 .. Pi)

Výsledná hodnota je

>    simplify(value(%));

r^3*Pi^2

Nyní se podívejme na postup výpočtu pomocí příkazů z knihovny VectorCalculus .

>    SurfaceInt(mu,[x,y,z]=Sphere(<0,0,0>,r));

r^3*Pi^2

#  Prvním parametrem je plošná hustota. Plochu určíme přímo pomocí konstrukce Sphere .

>   

TOPlist