Multivector Linear Transformation
Mlt(f, Ga, args, fct=False)¶
A multilinear transformation (mlt) is a multilinear multivector function of a list of vectors (*kargs) F(v_1,…,v_r) where for any argument slot j we have (a is a scalar and u_j a vector)F(v_1,…,a*v_j,…,v_r) = a*F(v_1,…,v_j,…,v_r) F(v_1,…,v_j+u_j,…,v_r) = F(v_1,…,v_j,…,v_r) + F(v_1,…,u_j,…,v_r).
- If F and G are two mlt’s with the same number of argument slots then the sum is
- (F+G)F(v_1,…,v_r) = F(v_1,…,v_r) + G(v_1,…,v_r).
- If F and G two mlt’s with r and s argument slots then their product is
- (F*G)(v_1,…,v_r,…,v_(r+s)) = F(v_1,…,v_r)*G(v_(r+1),…,v_(r+s)),
where * is any of the multivector multiplicative operations. The derivative of a mlt with is defined as the directional derivative with respect with respect to the coordinate vector (we assume F is implicitely a function of the coordinates)F(v_1,…,v_r;v_(r+1)) = (v_(r+1)|grad)F(v_1,…,v_j,…,v_r).
The contraction of a mlt between slots j and k is defined as the geometric derivative of F with respect to slot k and the inner geometric derivative with respect to slot j (this gives the standard tensor definition of contraction for the case that F is a scalar function)
- Contract(i,j,F) = grad_i|(grad_j*F(v_1,…,v_i,…,v_j,…,v_r))
- = grad_j|(grad_i*F(v_1,…,v_i,…,v_j,…,v_r)).
This returns a mlt with slot i and j removed.
Set format for printing of Tensors -lcnt = Number of components per line
Usage for tensor T example is -T.fmt(‘2’,’T’)
output isprint ‘T = ‘+str(A)
with two components per line. Works for both standard printing and for latex.