Multiplying 3-vectors

Mul3[A_, B_] :=  {A[[1]] B[[1]] + A[[2, 1]] B[[2, 1]] + A[[2, 2]] B[[2, 2]]  ...  1]] + A[[3, 2]] B[[2, 2]] + A[[3, 3]] B[[2, 3]] (* xyz trivector pseudoscalar term *)}

Mul3[a3, b3]//MatrixForm

( {{a0 b0 - ai bi - aix bix - aiy biy - aiz biz + ax bx + ay by + az bz}, {{ax b0 -  ... x by + ai bz}}, {ai b0 + a0 bi + ax bix + ay biy + az biz + aix bx + aiy by + aiz bz}} )

Mul3[a3v, b3v] (* multiplying two vectors to get scalar and bivector components *)//MatrixForm

( {{ax bx + ay by + az bz}, {{0, 0, 0}}, {{-az by + ay bz, az bx - ax bz, -ay bx + ax by}}, {0}} )

Mul3[a3v, b3bi]//MatrixForm (* vector times bivector gives vector and trivector components *)

( {{0}, {{az biy - ay biz, -az bix + ax biz, ay bix - ax biy}}, {{0, 0, 0}}, {ax bix + ay biy + az biz}} )

Mul3[a3bi, b3bi]//MatrixForm (* bivector times bivector gives "even subalgebra" (scalar & bivector) components *)

( {{-aix bix - aiy biy - aiz biz}, {{0, 0, 0}}, {{aiz biy - aiy biz, -aiz bix + aix biz, aiy bix - aix biy}}, {0}} )


Created by Mathematica  (April 17, 2005) Valid XHTML 1.1!