hi CY
you write 10/09
>I want to find the Laplacian in polar coordinates.
My answer is that
(C1) eq[1]:sin(p)*cos(q)*r=x $
(C2) eq[2]:sin(p)*sin(q)*r=y $
(C3) eq[3]:cos(p)*r=z $
(C4) depends([r,p,q],[x,y,z])$
(C5)solve([diff(eq[1],x),diff(eq[2],x),diff(eq[3],x)],[diff(r,x),diff(p,x),diff(q,x)]);
there is a bug in trigsmp.lisp. so we shoud use share/trgsmp.mc
(C6) load(trgsmp);
(C7) trigsimp(D5);
(C8) sq1:D7[1]$
(C9) trigsimp(solve([diff(eq[1],y),diff(eq[2],y),diff(eq[3],y)],[diff(r,y),diff(p,y),diff(q,y)]))$
(C10) sq2:D9[1]$
(C11) trigsimp(solve([diff(eq[1],z),diff(eq[2],z),diff(eq[3],z)],[diff(r,z),diff(p,z),diff(q,z)]))$
(C12) sq[3]:D11[1]$
(C13) depends(u,[r,p,q]);
(C14) duxx:expand(subst(sq1,diff(subst(sq1,diff(u,x)),x)))$
(C15) duyy:expand(subst(sq2,diff(subst(sq2,diff(u,y)),y)))$
(C16) duzz:expand(subst(sq3,diff(subst(sq3,diff(u,z)),z)))$
(C17) expand(duxx+duyy+duzz)$
(C18) trigreduce(%);
(C19) expand(%);
2 2
2 d u d u
du CSC (p) --- --- du
2 2 -- 2 2 COT(p) --
d u dr dq dp dp
(D19) --- + ---- + ----------- + --- + ---------
2 r 2 2 2
dr r r r
Of cource directly calc subst(sq1,diff(u,x,2)),but on that occasion
we must recalc diff(r,x,2)....,so on.
Gosei Furuya (go_furuya@infoseek.jp)