In the attachment 3 files which give an example how to implement some of the operations of the exterior calculus with help of maxima's itensor. "ex_calc.mc" contains definitions for 1) infix operator of the exterior product. I denoted it via "&". So for 1-forms a([i]) and b([j]), evaluation of a([i]) & b([j]) gives a([i]) b([j])-a([j]) b([i]) 2)the infix operator "@ind" denotes the exterior derivative. Evaluation a([i])@j gives a([j],[],i)-a(i],[],j) 3)the interior product of the form with some vector v is denoted by "|_". 4)the Lie derivative of the form (1 order and higher) is denoted via @L[v,ind]. So a([i])@L[v,k] gives the k-component of the Lie derivative for a([i]) along vector v. Currently there is a restriction to use the literally sorted indices (like a([i1,i2])@L[v,i3]) in expressions with the Lie derivatives. Examples are in "ex_calc.demo" and "car_iden.mc". In the second one I verify the consequence of the Cartan formula for the high order forms, the Lie derivative has to commute with the exterior one. The test for the 5-form takes about 15 min (using ~ 2.5Gb memory!) with sbcl-compiled maxima. This was the best result. Cmucl get the job for about 30 min (using 5175590.281 KB!) . The definitions of the exterior product and the exterior derivative are essentially relied on the properties of kdelta. The Lie derivative is defined though the Cartan formula. best regards V
Attached file: ex_calc.mc
Attached file: ex_calc.demo
Attached file: car_iden.mc