Artifact a016be7c56f0cad7255ff7046e3e3b755e03fa39f4aa9699efdaca8f09269d97:
- File
r34/xlog/avector.log
— part of check-in
[f2fda60abd]
at
2011-09-02 18:13:33
on branch master
— Some historical releases purely for archival purposes
git-svn-id: https://svn.code.sf.net/p/reduce-algebra/code/trunk/historical@1375 2bfe0521-f11c-4a00-b80e-6202646ff360 (user: arthurcnorman@users.sourceforge.net, size: 33134) [annotate] [blame] [check-ins using] [more...]
Sat Jun 29 14:16:00 PDT 1991 REDUCE 3.4, 15-Jul-91 ... 1: 1: 2: 2: *** ^ redefined 3: 3: % Vector test routine % Author: David Harper (algebra@liverpool.ac.uk) % Computer Algebra Support Officer % University of Liverpool Computer Laboratory. % Please compare carefully the output from running this test file with the % log file provided to make sure your implementation is correct. linelength 72; 80 off allfac; on div; vec a,b,c; matrix q; a := avec(ax,ay,az); VEC(X) := AX VEC(Y) := AY VEC(Z) := AZ b := avec(bx,by,bz); VEC(X) := BX VEC(Y) := BY VEC(Z) := BZ q := mat((q11,q12,q13),(q21,q22,q23),(q31,q32,q33)); [Q11 Q12 Q13] [ ] Q := [Q21 Q22 Q23] [ ] [Q31 Q32 Q33] c := a+b; VEC(X) := AX + BX VEC(Y) := AY + BY VEC(Z) := AZ + BZ c := a-b; VEC(X) := AX - BX VEC(Y) := AY - BY VEC(Z) := AZ - BZ c := a cross b; VEC(X) := AY*BZ - AZ*BY VEC(Y) := - AX*BZ + AZ*BX VEC(Z) := AX*BY - AY*BX d := a dot b; D := AX*BX + AY*BY + AZ*BZ a dot c; 0 b dot c; 0 q*a; VEC(X) := AX*Q11 + AY*Q12 + AZ*Q13 VEC(Y) := AX*Q21 + AY*Q22 + AZ*Q23 VEC(Z) := AX*Q31 + AY*Q32 + AZ*Q33 c:=2*f*a - b/7; 1 VEC(X) := 2*F*AX - ---*BX 7 1 VEC(Y) := 2*F*AY - ---*BY 7 1 VEC(Z) := 2*F*AZ - ---*BZ 7 c(0); 1 2*F*AX - ---*BX 7 c(1); 1 2*F*AY - ---*BY 7 c(2); 1 2*F*AZ - ---*BZ 7 1/vmod(a); 2 2 2 - 1/2 (AX + AY + AZ ) b/vmod(a); 2 2 2 - 1/2 VEC(X) := (AX + AY + AZ ) *BX 2 2 2 - 1/2 VEC(Y) := (AX + AY + AZ ) *BY 2 2 2 - 1/2 VEC(Z) := (AX + AY + AZ ) *BZ (a cross b)/(a dot b); AY*BZ - AZ*BY VEC(X) := ----------------------- AX*BX + AY*BY + AZ*BZ - AX*BZ + AZ*BX VEC(Y) := ----------------------- AX*BX + AY*BY + AZ*BZ AX*BY - AY*BX VEC(Z) := ----------------------- AX*BX + AY*BY + AZ*BZ 2/3*vmod(a)*a*(a dot c)/(vmod(a cross c)); 28 2 2 2 2 VEC(X) := ----*(AX *BY + AX *BZ - 2*AX*AY*BX*BY 3 2 2 2 2 - 2*AX*AZ*BX*BZ + AY *BX + AY *BZ 2 2 2 2 - 1 - 2*AY*AZ*BY*BZ + AZ *BX + AZ *BY )**------ 2 2 2 2 3 28 2 2 *SQRT(AX + AY + AZ )*F*AX + ----*(AX *BY 3 2 2 + AX *BZ - 2*AX*AY*BX*BY - 2*AX*AZ*BX*BZ 2 2 2 2 2 2 + AY *BX + AY *BZ - 2*AY*AZ*BY*BZ + AZ *BX 2 2 - 1 2 2 2 + AZ *BY )**------*SQRT(AX + AY + AZ )*F*AX 2 2 28 2 2 2 2 *AY + ----*(AX *BY + AX *BZ - 2*AX*AY*BX*BY 3 2 2 2 2 - 2*AX*AZ*BX*BZ + AY *BX + AY *BZ 2 2 2 2 - 1 - 2*AY*AZ*BY*BZ + AZ *BX + AZ *BY )**------ 2 2 2 2 2 2 2 2 *SQRT(AX + AY + AZ )*F*AX*AZ - ---*(AX *BY 3 2 2 + AX *BZ - 2*AX*AY*BX*BY - 2*AX*AZ*BX*BZ 2 2 2 2 2 2 + AY *BX + AY *BZ - 2*AY*AZ*BY*BZ + AZ *BX 2 2 - 1 2 2 2 2 + AZ *BY )**------*SQRT(AX + AY + AZ )*AX *BX 2 2 2 2 2 2 - ---*(AX *BY + AX *BZ - 2*AX*AY*BX*BY 3 2 2 2 2 - 2*AX*AZ*BX*BZ + AY *BX + AY *BZ 2 2 2 2 - 1 - 2*AY*AZ*BY*BZ + AZ *BX + AZ *BY )**------ 2 2 2 2 2 2 2 *SQRT(AX + AY + AZ )*AX*AY*BY - ---*(AX *BY 3 2 2 + AX *BZ - 2*AX*AY*BX*BY - 2*AX*AZ*BX*BZ 2 2 2 2 2 2 + AY *BX + AY *BZ - 2*AY*AZ*BY*BZ + AZ *BX 2 2 - 1 2 2 2 + AZ *BY )**------*SQRT(AX + AY + AZ )*AX*AZ 2 *BZ 28 2 2 2 2 VEC(Y) := ----*(AX *BY + AX *BZ - 2*AX*AY*BX*BY 3 2 2 2 2 - 2*AX*AZ*BX*BZ + AY *BX + AY *BZ 2 2 2 2 - 1 - 2*AY*AZ*BY*BZ + AZ *BX + AZ *BY )**------ 2 2 2 2 2 28 2 2 *SQRT(AX + AY + AZ )*F*AX *AY + ----*(AX *BY 3 2 2 + AX *BZ - 2*AX*AY*BX*BY - 2*AX*AZ*BX*BZ 2 2 2 2 2 2 + AY *BX + AY *BZ - 2*AY*AZ*BY*BZ + AZ *BX 2 2 - 1 2 2 2 3 + AZ *BY )**------*SQRT(AX + AY + AZ )*F*AY 2 28 2 2 2 2 + ----*(AX *BY + AX *BZ - 2*AX*AY*BX*BY 3 2 2 2 2 - 2*AX*AZ*BX*BZ + AY *BX + AY *BZ 2 2 2 2 - 1 - 2*AY*AZ*BY*BZ + AZ *BX + AZ *BY )**------ 2 2 2 2 2 2 2 2 *SQRT(AX + AY + AZ )*F*AY*AZ - ---*(AX *BY 3 2 2 + AX *BZ - 2*AX*AY*BX*BY - 2*AX*AZ*BX*BZ 2 2 2 2 2 2 + AY *BX + AY *BZ - 2*AY*AZ*BY*BZ + AZ *BX 2 2 - 1 2 2 2 + AZ *BY )**------*SQRT(AX + AY + AZ )*AX*AY 2 2 2 2 2 2 *BX - ---*(AX *BY + AX *BZ - 2*AX*AY*BX*BY 3 2 2 2 2 - 2*AX*AZ*BX*BZ + AY *BX + AY *BZ 2 2 2 2 - 1 - 2*AY*AZ*BY*BZ + AZ *BX + AZ *BY )**------ 2 2 2 2 2 2 2 2 *SQRT(AX + AY + AZ )*AY *BY - ---*(AX *BY 3 2 2 + AX *BZ - 2*AX*AY*BX*BY - 2*AX*AZ*BX*BZ 2 2 2 2 2 2 + AY *BX + AY *BZ - 2*AY*AZ*BY*BZ + AZ *BX 2 2 - 1 2 2 2 + AZ *BY )**------*SQRT(AX + AY + AZ )*AY*AZ 2 *BZ 28 2 2 2 2 VEC(Z) := ----*(AX *BY + AX *BZ - 2*AX*AY*BX*BY 3 2 2 2 2 - 2*AX*AZ*BX*BZ + AY *BX + AY *BZ 2 2 2 2 - 1 - 2*AY*AZ*BY*BZ + AZ *BX + AZ *BY )**------ 2 2 2 2 2 28 2 2 *SQRT(AX + AY + AZ )*F*AX *AZ + ----*(AX *BY 3 2 2 + AX *BZ - 2*AX*AY*BX*BY - 2*AX*AZ*BX*BZ 2 2 2 2 2 2 + AY *BX + AY *BZ - 2*AY*AZ*BY*BZ + AZ *BX 2 2 - 1 2 2 2 2 + AZ *BY )**------*SQRT(AX + AY + AZ )*F*AY 2 28 2 2 2 2 *AZ + ----*(AX *BY + AX *BZ - 2*AX*AY*BX*BY 3 2 2 2 2 - 2*AX*AZ*BX*BZ + AY *BX + AY *BZ 2 2 2 2 - 1 - 2*AY*AZ*BY*BZ + AZ *BX + AZ *BY )**------ 2 2 2 2 3 2 2 2 *SQRT(AX + AY + AZ )*F*AZ - ---*(AX *BY 3 2 2 + AX *BZ - 2*AX*AY*BX*BY - 2*AX*AZ*BX*BZ 2 2 2 2 2 2 + AY *BX + AY *BZ - 2*AY*AZ*BY*BZ + AZ *BX 2 2 - 1 2 2 2 + AZ *BY )**------*SQRT(AX + AY + AZ )*AX*AZ 2 2 2 2 2 2 *BX - ---*(AX *BY + AX *BZ - 2*AX*AY*BX*BY 3 2 2 2 2 - 2*AX*AZ*BX*BZ + AY *BX + AY *BZ 2 2 2 2 - 1 - 2*AY*AZ*BY*BZ + AZ *BX + AZ *BY )**------ 2 2 2 2 2 2 2 *SQRT(AX + AY + AZ )*AY*AZ*BY - ---*(AX *BY 3 2 2 + AX *BZ - 2*AX*AY*BX*BY - 2*AX*AZ*BX*BZ 2 2 2 2 2 2 + AY *BX + AY *BZ - 2*AY*AZ*BY*BZ + AZ *BX 2 2 - 1 2 2 2 2 + AZ *BY )**------*SQRT(AX + AY + AZ )*AZ *BZ 2 a := avec(x**2*y**3,log(z+x),13*z-y); 2 3 VEC(X) := X *Y VEC(Y) := LOG(X + Z) VEC(Z) := - Y + 13*Z df(a,x); 3 VEC(X) := 2*X*Y 1 VEC(Y) := ------- X + Z VEC(Z) := 0 df(a,x,y); 2 VEC(X) := 6*X*Y VEC(Y) := 0 VEC(Z) := 0 int(a,x); 1 3 3 VEC(X) := ---*X *Y 3 VEC(Y) := LOG(X + Z)*X + LOG(X + Z)*Z - X VEC(Z) := - X*Y + 13*X*Z exp(a); 2 3 X *Y VEC(X) := E VEC(Y) := X + Z - Y + 13*Z VEC(Z) := E log sin b; VEC(X) := LOG(SIN(BX)) VEC(Y) := LOG(SIN(BY)) VEC(Z) := LOG(SIN(BZ)) a := avec(ax,ay,az); VEC(X) := AX VEC(Y) := AY VEC(Z) := AZ depend ax,x,y,z; depend ay,x,y,z; depend az,x,y,z; depend p,x,y,z; c := grad p; VEC(X) := DF(P,X) VEC(Y) := DF(P,Y) VEC(Z) := DF(P,Z) div c; DF(P,X,2) + DF(P,Y,2) + DF(P,Z,2) delsq p; DF(P,X,2) + DF(P,Y,2) + DF(P,Z,2) div a; DF(AX,X) + DF(AY,Y) + DF(AZ,Z) curl a; VEC(X) := - DF(AY,Z) + DF(AZ,Y) VEC(Y) := DF(AX,Z) - DF(AZ,X) VEC(Z) := - DF(AX,Y) + DF(AY,X) delsq a; VEC(X) := DF(AX,X,2) + DF(AX,Y,2) + DF(AX,Z,2) VEC(Y) := DF(AY,X,2) + DF(AY,Y,2) + DF(AY,Z,2) VEC(Z) := DF(AZ,X,2) + DF(AZ,Y,2) + DF(AZ,Z,2) depend h1,x,y,z; depend h2,x,y,z; depend h3,x,y,z; scalefactors(h1,h2,h3); grad p; -1 VEC(X) := DF(P,X)*H1 -1 VEC(Y) := DF(P,Y)*H2 -1 VEC(Z) := DF(P,Z)*H3 div a; -1 -1 -1 DF(AX,X)*H1 + DF(AY,Y)*H2 + DF(AZ,Z)*H3 -1 -1 -1 -1 + DF(H1,Y)*AY*H1 *H2 + DF(H1,Z)*AZ*H1 *H3 -1 -1 -1 -1 + DF(H2,X)*AX*H1 *H2 + DF(H2,Z)*AZ*H2 *H3 -1 -1 -1 -1 + DF(H3,X)*AX*H1 *H3 + DF(H3,Y)*AY*H2 *H3 curl a; -1 -1 VEC(X) := - DF(AY,Z)*H3 + DF(AZ,Y)*H2 -1 -1 -1 -1 - DF(H2,Z)*AY*H2 *H3 + DF(H3,Y)*AZ*H2 *H3 -1 -1 VEC(Y) := DF(AX,Z)*H3 - DF(AZ,X)*H1 -1 -1 -1 -1 + DF(H1,Z)*AX*H1 *H3 - DF(H3,X)*AZ*H1 *H3 -1 -1 VEC(Z) := - DF(AX,Y)*H2 + DF(AY,X)*H1 -1 -1 -1 -1 - DF(H1,Y)*AX*H1 *H2 + DF(H2,X)*AY*H1 *H2 dp1 := delsq p; -2 -3 DP1 := DF(P,X,2)*H1 - DF(P,X)*DF(H1,X)*H1 -2 -1 + DF(P,X)*DF(H2,X)*H1 *H2 -2 -1 -2 + DF(P,X)*DF(H3,X)*H1 *H3 + DF(P,Y,2)*H2 -1 -2 -3 + DF(P,Y)*DF(H1,Y)*H1 *H2 - DF(P,Y)*DF(H2,Y)*H2 -2 -1 -2 + DF(P,Y)*DF(H3,Y)*H2 *H3 + DF(P,Z,2)*H3 -1 -2 + DF(P,Z)*DF(H1,Z)*H1 *H3 -1 -2 -3 + DF(P,Z)*DF(H2,Z)*H2 *H3 - DF(P,Z)*DF(H3,Z)*H3 dp2 := div grad p; -2 -3 DP2 := DF(P,X,2)*H1 - DF(P,X)*DF(H1,X)*H1 -2 -1 + DF(P,X)*DF(H2,X)*H1 *H2 -2 -1 -2 + DF(P,X)*DF(H3,X)*H1 *H3 + DF(P,Y,2)*H2 -1 -2 -3 + DF(P,Y)*DF(H1,Y)*H1 *H2 - DF(P,Y)*DF(H2,Y)*H2 -2 -1 -2 + DF(P,Y)*DF(H3,Y)*H2 *H3 + DF(P,Z,2)*H3 -1 -2 + DF(P,Z)*DF(H1,Z)*H1 *H3 -1 -2 -3 + DF(P,Z)*DF(H2,Z)*H2 *H3 - DF(P,Z)*DF(H3,Z)*H3 dp1-dp2; 0 delsq a; -2 -3 VEC(X) := DF(AX,X,2)*H1 - DF(AX,X)*DF(H1,X)*H1 -2 -1 + DF(AX,X)*DF(H2,X)*H1 *H2 -2 -1 -2 + DF(AX,X)*DF(H3,X)*H1 *H3 + DF(AX,Y,2)*H2 -1 -2 + DF(AX,Y)*DF(H1,Y)*H1 *H2 -3 - DF(AX,Y)*DF(H2,Y)*H2 -2 -1 -2 + DF(AX,Y)*DF(H3,Y)*H2 *H3 + DF(AX,Z,2)*H3 -1 -2 + DF(AX,Z)*DF(H1,Z)*H1 *H3 -1 -2 + DF(AX,Z)*DF(H2,Z)*H2 *H3 -3 - DF(AX,Z)*DF(H3,Z)*H3 -2 -1 + 2*DF(AY,X)*DF(H1,Y)*H1 *H2 -1 -2 - 2*DF(AY,Y)*DF(H2,X)*H1 *H2 -2 -1 + 2*DF(AZ,X)*DF(H1,Z)*H1 *H3 -1 -2 - 2*DF(AZ,Z)*DF(H3,X)*H1 *H3 -2 -1 + DF(H1,X,Y)*AY*H1 *H2 -2 -1 + DF(H1,X,Z)*AZ*H1 *H3 -3 -1 - DF(H1,X)*DF(H1,Y)*AY*H1 *H2 -3 -1 - DF(H1,X)*DF(H1,Z)*AZ*H1 *H3 -3 -1 - DF(H1,X)*DF(H2,X)*AX*H1 *H2 -3 -1 - DF(H1,X)*DF(H3,X)*AX*H1 *H3 -1 -2 2 -2 -2 + DF(H1,Y,2)*AX*H1 *H2 - DF(H1,Y) *AX*H1 *H2 -1 -3 - DF(H1,Y)*DF(H2,Y)*AX*H1 *H2 -1 -2 -1 + DF(H1,Y)*DF(H3,Y)*AX*H1 *H2 *H3 -1 -2 2 -2 -2 + DF(H1,Z,2)*AX*H1 *H3 - DF(H1,Z) *AX*H1 *H3 -1 -1 -2 + DF(H1,Z)*DF(H2,Z)*AX*H1 *H2 *H3 -1 -3 - DF(H1,Z)*DF(H3,Z)*AX*H1 *H3 -1 -2 - DF(H2,X,Y)*AY*H1 *H2 -1 -1 -1 + DF(H2,X,Z)*AZ*H1 *H2 *H3 -2 -1 2 -2 -2 + DF(H2,X,2)*AX*H1 *H2 - DF(H2,X) *AX*H1 *H2 -1 -3 + DF(H2,X)*DF(H2,Y)*AY*H1 *H2 -1 -2 -1 - DF(H2,X)*DF(H2,Z)*AZ*H1 *H2 *H3 -1 -2 -1 - 2*DF(H2,X)*DF(H3,Y)*AY*H1 *H2 *H3 -1 -1 -2 - 2*DF(H2,Z)*DF(H3,X)*AZ*H1 *H2 *H3 -1 -1 -1 + DF(H3,X,Y)*AY*H1 *H2 *H3 -1 -2 - DF(H3,X,Z)*AZ*H1 *H3 -2 -1 2 -2 -2 + DF(H3,X,2)*AX*H1 *H3 - DF(H3,X) *AX*H1 *H3 -1 -1 -2 - DF(H3,X)*DF(H3,Y)*AY*H1 *H2 *H3 -1 -3 + DF(H3,X)*DF(H3,Z)*AZ*H1 *H3 -2 -1 VEC(Y) := - 2*DF(AX,X)*DF(H1,Y)*H1 *H2 -1 -2 -2 + 2*DF(AX,Y)*DF(H2,X)*H1 *H2 + DF(AY,X,2)*H1 -3 - DF(AY,X)*DF(H1,X)*H1 -2 -1 + DF(AY,X)*DF(H2,X)*H1 *H2 -2 -1 -2 + DF(AY,X)*DF(H3,X)*H1 *H3 + DF(AY,Y,2)*H2 -1 -2 + DF(AY,Y)*DF(H1,Y)*H1 *H2 -3 - DF(AY,Y)*DF(H2,Y)*H2 -2 -1 -2 + DF(AY,Y)*DF(H3,Y)*H2 *H3 + DF(AY,Z,2)*H3 -1 -2 + DF(AY,Z)*DF(H1,Z)*H1 *H3 -1 -2 + DF(AY,Z)*DF(H2,Z)*H2 *H3 -3 - DF(AY,Z)*DF(H3,Z)*H3 -2 -1 + 2*DF(AZ,Y)*DF(H2,Z)*H2 *H3 -1 -2 - 2*DF(AZ,Z)*DF(H3,Y)*H2 *H3 -2 -1 - DF(H1,X,Y)*AX*H1 *H2 -3 -1 + DF(H1,X)*DF(H1,Y)*AX*H1 *H2 -3 -1 - DF(H1,X)*DF(H2,X)*AY*H1 *H2 -1 -1 -1 + DF(H1,Y,Z)*AZ*H1 *H2 *H3 -1 -2 2 -2 -2 + DF(H1,Y,2)*AY*H1 *H2 - DF(H1,Y) *AY*H1 *H2 -2 -1 -1 - DF(H1,Y)*DF(H1,Z)*AZ*H1 *H2 *H3 -1 -3 - DF(H1,Y)*DF(H2,Y)*AY*H1 *H2 -2 -1 -1 - 2*DF(H1,Y)*DF(H3,X)*AX*H1 *H2 *H3 -1 -1 -2 + DF(H1,Z)*DF(H2,Z)*AY*H1 *H2 *H3 -1 -1 -2 - 2*DF(H1,Z)*DF(H3,Y)*AZ*H1 *H2 *H3 -1 -2 + DF(H2,X,Y)*AX*H1 *H2 -2 -1 2 -2 -2 + DF(H2,X,2)*AY*H1 *H2 - DF(H2,X) *AY*H1 *H2 -1 -3 - DF(H2,X)*DF(H2,Y)*AX*H1 *H2 -2 -1 -1 + DF(H2,X)*DF(H3,X)*AY*H1 *H2 *H3 -2 -1 + DF(H2,Y,Z)*AZ*H2 *H3 -3 -1 - DF(H2,Y)*DF(H2,Z)*AZ*H2 *H3 -3 -1 - DF(H2,Y)*DF(H3,Y)*AY*H2 *H3 -1 -2 2 -2 -2 + DF(H2,Z,2)*AY*H2 *H3 - DF(H2,Z) *AY*H2 *H3 -1 -3 - DF(H2,Z)*DF(H3,Z)*AY*H2 *H3 -1 -1 -1 + DF(H3,X,Y)*AX*H1 *H2 *H3 -1 -1 -2 - DF(H3,X)*DF(H3,Y)*AX*H1 *H2 *H3 -1 -2 - DF(H3,Y,Z)*AZ*H2 *H3 -2 -1 2 -2 -2 + DF(H3,Y,2)*AY*H2 *H3 - DF(H3,Y) *AY*H2 *H3 -1 -3 + DF(H3,Y)*DF(H3,Z)*AZ*H2 *H3 -2 -1 VEC(Z) := - 2*DF(AX,X)*DF(H1,Z)*H1 *H3 -1 -2 + 2*DF(AX,Z)*DF(H3,X)*H1 *H3 -2 -1 - 2*DF(AY,Y)*DF(H2,Z)*H2 *H3 -1 -2 -2 + 2*DF(AY,Z)*DF(H3,Y)*H2 *H3 + DF(AZ,X,2)*H1 -3 - DF(AZ,X)*DF(H1,X)*H1 -2 -1 + DF(AZ,X)*DF(H2,X)*H1 *H2 -2 -1 -2 + DF(AZ,X)*DF(H3,X)*H1 *H3 + DF(AZ,Y,2)*H2 -1 -2 + DF(AZ,Y)*DF(H1,Y)*H1 *H2 -3 - DF(AZ,Y)*DF(H2,Y)*H2 -2 -1 -2 + DF(AZ,Y)*DF(H3,Y)*H2 *H3 + DF(AZ,Z,2)*H3 -1 -2 + DF(AZ,Z)*DF(H1,Z)*H1 *H3 -1 -2 + DF(AZ,Z)*DF(H2,Z)*H2 *H3 -3 -2 -1 - DF(AZ,Z)*DF(H3,Z)*H3 - DF(H1,X,Z)*AX*H1 *H3 -3 -1 + DF(H1,X)*DF(H1,Z)*AX*H1 *H3 -3 -1 - DF(H1,X)*DF(H3,X)*AZ*H1 *H3 -1 -1 -1 + DF(H1,Y,Z)*AY*H1 *H2 *H3 -2 -1 -1 - DF(H1,Y)*DF(H1,Z)*AY*H1 *H2 *H3 -1 -2 -1 - 2*DF(H1,Y)*DF(H2,Z)*AY*H1 *H2 *H3 -1 -2 -1 + DF(H1,Y)*DF(H3,Y)*AZ*H1 *H2 *H3 -1 -2 2 -2 -2 + DF(H1,Z,2)*AZ*H1 *H3 - DF(H1,Z) *AZ*H1 *H3 -2 -1 -1 - 2*DF(H1,Z)*DF(H2,X)*AX*H1 *H2 *H3 -1 -3 - DF(H1,Z)*DF(H3,Z)*AZ*H1 *H3 -1 -1 -1 + DF(H2,X,Z)*AX*H1 *H2 *H3 -1 -2 -1 - DF(H2,X)*DF(H2,Z)*AX*H1 *H2 *H3 -2 -1 -1 + DF(H2,X)*DF(H3,X)*AZ*H1 *H2 *H3 -2 -1 - DF(H2,Y,Z)*AY*H2 *H3 -3 -1 + DF(H2,Y)*DF(H2,Z)*AY*H2 *H3 -3 -1 - DF(H2,Y)*DF(H3,Y)*AZ*H2 *H3 -1 -2 2 -2 -2 + DF(H2,Z,2)*AZ*H2 *H3 - DF(H2,Z) *AZ*H2 *H3 -1 -3 - DF(H2,Z)*DF(H3,Z)*AZ*H2 *H3 -1 -2 + DF(H3,X,Z)*AX*H1 *H3 -2 -1 2 -2 -2 + DF(H3,X,2)*AZ*H1 *H3 - DF(H3,X) *AZ*H1 *H3 -1 -3 - DF(H3,X)*DF(H3,Z)*AX*H1 *H3 -1 -2 + DF(H3,Y,Z)*AY*H2 *H3 -2 -1 2 -2 -2 + DF(H3,Y,2)*AZ*H2 *H3 - DF(H3,Y) *AZ*H2 *H3 -1 -3 - DF(H3,Y)*DF(H3,Z)*AY*H2 *H3 curl grad p; VEC(X) := 0 VEC(Y) := 0 VEC(Z) := 0 grad div a; -2 -3 VEC(X) := DF(AX,X,2)*H1 - DF(AX,X)*DF(H1,X)*H1 -2 -1 + DF(AX,X)*DF(H2,X)*H1 *H2 -2 -1 + DF(AX,X)*DF(H3,X)*H1 *H3 -1 -1 + DF(AY,X,Y)*H1 *H2 -2 -1 + DF(AY,X)*DF(H1,Y)*H1 *H2 -1 -1 -1 + DF(AY,X)*DF(H3,Y)*H1 *H2 *H3 -1 -2 - DF(AY,Y)*DF(H2,X)*H1 *H2 -1 -1 + DF(AZ,X,Z)*H1 *H3 -2 -1 + DF(AZ,X)*DF(H1,Z)*H1 *H3 -1 -1 -1 + DF(AZ,X)*DF(H2,Z)*H1 *H2 *H3 -1 -2 - DF(AZ,Z)*DF(H3,X)*H1 *H3 -2 -1 + DF(H1,X,Y)*AY*H1 *H2 -2 -1 + DF(H1,X,Z)*AZ*H1 *H3 -3 -1 - DF(H1,X)*DF(H1,Y)*AY*H1 *H2 -3 -1 - DF(H1,X)*DF(H1,Z)*AZ*H1 *H3 -3 -1 - DF(H1,X)*DF(H2,X)*AX*H1 *H2 -3 -1 - DF(H1,X)*DF(H3,X)*AX*H1 *H3 -2 -2 - DF(H1,Y)*DF(H2,X)*AY*H1 *H2 -2 -2 - DF(H1,Z)*DF(H3,X)*AZ*H1 *H3 -1 -1 -1 + DF(H2,X,Z)*AZ*H1 *H2 *H3 -2 -1 2 -2 -2 + DF(H2,X,2)*AX*H1 *H2 - DF(H2,X) *AX*H1 *H2 -1 -2 -1 - DF(H2,X)*DF(H2,Z)*AZ*H1 *H2 *H3 -1 -2 -1 - DF(H2,X)*DF(H3,Y)*AY*H1 *H2 *H3 -1 -1 -2 - DF(H2,Z)*DF(H3,X)*AZ*H1 *H2 *H3 -1 -1 -1 + DF(H3,X,Y)*AY*H1 *H2 *H3 -2 -1 2 -2 -2 + DF(H3,X,2)*AX*H1 *H3 - DF(H3,X) *AX*H1 *H3 -1 -1 -2 - DF(H3,X)*DF(H3,Y)*AY*H1 *H2 *H3 -1 -1 -2 -1 VEC(Y) := DF(AX,X,Y)*H1 *H2 - DF(AX,X)*DF(H1,Y)*H1 *H2 -1 -2 + DF(AX,Y)*DF(H2,X)*H1 *H2 -1 -1 -1 + DF(AX,Y)*DF(H3,X)*H1 *H2 *H3 -2 -1 -2 + DF(AY,Y,2)*H2 + DF(AY,Y)*DF(H1,Y)*H1 *H2 -3 - DF(AY,Y)*DF(H2,Y)*H2 -2 -1 + DF(AY,Y)*DF(H3,Y)*H2 *H3 -1 -1 + DF(AZ,Y,Z)*H2 *H3 -1 -1 -1 + DF(AZ,Y)*DF(H1,Z)*H1 *H2 *H3 -2 -1 + DF(AZ,Y)*DF(H2,Z)*H2 *H3 -1 -2 - DF(AZ,Z)*DF(H3,Y)*H2 *H3 -1 -1 -1 + DF(H1,Y,Z)*AZ*H1 *H2 *H3 -1 -2 2 -2 -2 + DF(H1,Y,2)*AY*H1 *H2 - DF(H1,Y) *AY*H1 *H2 -2 -1 -1 - DF(H1,Y)*DF(H1,Z)*AZ*H1 *H2 *H3 -2 -2 - DF(H1,Y)*DF(H2,X)*AX*H1 *H2 -1 -3 - DF(H1,Y)*DF(H2,Y)*AY*H1 *H2 -2 -1 -1 - DF(H1,Y)*DF(H3,X)*AX*H1 *H2 *H3 -1 -1 -2 - DF(H1,Z)*DF(H3,Y)*AZ*H1 *H2 *H3 -1 -2 + DF(H2,X,Y)*AX*H1 *H2 -1 -3 - DF(H2,X)*DF(H2,Y)*AX*H1 *H2 -2 -1 + DF(H2,Y,Z)*AZ*H2 *H3 -3 -1 - DF(H2,Y)*DF(H2,Z)*AZ*H2 *H3 -3 -1 - DF(H2,Y)*DF(H3,Y)*AY*H2 *H3 -2 -2 - DF(H2,Z)*DF(H3,Y)*AZ*H2 *H3 -1 -1 -1 + DF(H3,X,Y)*AX*H1 *H2 *H3 -1 -1 -2 - DF(H3,X)*DF(H3,Y)*AX*H1 *H2 *H3 -2 -1 2 -2 -2 + DF(H3,Y,2)*AY*H2 *H3 - DF(H3,Y) *AY*H2 *H3 -1 -1 -2 -1 VEC(Z) := DF(AX,X,Z)*H1 *H3 - DF(AX,X)*DF(H1,Z)*H1 *H3 -1 -1 -1 + DF(AX,Z)*DF(H2,X)*H1 *H2 *H3 -1 -2 + DF(AX,Z)*DF(H3,X)*H1 *H3 -1 -1 + DF(AY,Y,Z)*H2 *H3 -2 -1 - DF(AY,Y)*DF(H2,Z)*H2 *H3 -1 -1 -1 + DF(AY,Z)*DF(H1,Y)*H1 *H2 *H3 -1 -2 -2 + DF(AY,Z)*DF(H3,Y)*H2 *H3 + DF(AZ,Z,2)*H3 -1 -2 + DF(AZ,Z)*DF(H1,Z)*H1 *H3 -1 -2 + DF(AZ,Z)*DF(H2,Z)*H2 *H3 -3 - DF(AZ,Z)*DF(H3,Z)*H3 -1 -1 -1 + DF(H1,Y,Z)*AY*H1 *H2 *H3 -2 -1 -1 - DF(H1,Y)*DF(H1,Z)*AY*H1 *H2 *H3 -1 -2 -1 - DF(H1,Y)*DF(H2,Z)*AY*H1 *H2 *H3 -1 -2 2 -2 -2 + DF(H1,Z,2)*AZ*H1 *H3 - DF(H1,Z) *AZ*H1 *H3 -2 -1 -1 - DF(H1,Z)*DF(H2,X)*AX*H1 *H2 *H3 -2 -2 - DF(H1,Z)*DF(H3,X)*AX*H1 *H3 -1 -3 - DF(H1,Z)*DF(H3,Z)*AZ*H1 *H3 -1 -1 -1 + DF(H2,X,Z)*AX*H1 *H2 *H3 -1 -2 -1 - DF(H2,X)*DF(H2,Z)*AX*H1 *H2 *H3 -1 -2 2 -2 -2 + DF(H2,Z,2)*AZ*H2 *H3 - DF(H2,Z) *AZ*H2 *H3 -2 -2 - DF(H2,Z)*DF(H3,Y)*AY*H2 *H3 -1 -3 - DF(H2,Z)*DF(H3,Z)*AZ*H2 *H3 -1 -2 + DF(H3,X,Z)*AX*H1 *H3 -1 -3 - DF(H3,X)*DF(H3,Z)*AX*H1 *H3 -1 -2 + DF(H3,Y,Z)*AY*H2 *H3 -1 -3 - DF(H3,Y)*DF(H3,Z)*AY*H2 *H3 div curl a; 0 % Examples of integration : (1) Volume integrals getcsystem 'spherical; (R THETA PHI) % Example 1 : integration of r**n over a sphere origin := avec(0,0,0); VEC(R) := 0 VEC(THETA) := 0 VEC(PHI) := 0 upperbound := avec(rr,pi,2*pi); VEC(R) := RR VEC(THETA) := PI VEC(PHI) := 2*PI volintegral(r**n,origin,upperbound); N 3 4*RR *PI*RR -------------- N + 3 % Substitute n=0 to get the volume of a sphere sub(n=0,ws); 4 3 ---*PI*RR 3 % Example 2 : volume of a right-circular cone getcsystem 'cylindrical; (R Z PHI) upperbound := avec(pp*z,h,2*pi); VEC(R) := Z*PP VEC(Z) := H VEC(PHI) := 2*PI volintorder := avec(2,0,1); VEC(R) := 2 VEC(Z) := 0 VEC(PHI) := 1 % Integrate in the order : phi, r, z cone := volintegral(1,origin,upperbound); 1 3 2 CONE := ---*H *PP *PI 3 % Now we replace P*Z by RR to get the result in the familiar form let pp*h=rr; cone := cone; 1 2 CONE := ---*H*PI*RR 3 % This is the familiar form clear pp*h; % Example 3 : line integral to obtain the length of a line of latitude % on a sphere getcsystem 'spherical; (R THETA PHI) a := avec(0,0,1); VEC(R) := 0 VEC(THETA) := 0 VEC(PHI) := 1 % Function vector is the tangent to the % line of latitude curve := avec(rr,latitude,phi); VEC(R) := RR VEC(THETA) := LATITUDE VEC(PHI) := PHI % Path is round a line of latitude deflineint(a,curve,phi,0,2*pi); 2*SIN(LATITUDE)*PI*RR end; 4: 4: Quitting Sat Jun 29 14:16:18 PDT 1991