Lie-Klammer bzw. Lie-Ableitung eines Vektorfeldes
(%i1) LieBracket ( [ l ] ) : = block ( [ f , g , x , k , Df , Dg , ad ] ,
   if ( length ( l ) < 3 ) or ( length ( l ) > 4 ) then
      error ( "Aufruf mit 3 oder 4 Argumenten." ) ,
   f : l [ 1 ] ,
   g : l [ 2 ] ,
   x : l [ 3 ] ,
   if length ( l ) = 3 then k : 1 else k : l [ 4 ] ,
   if not ( nonnegintegerp ( k ) ) then
      error ( "Ordnung k muss natürliche Zahl sein." ) ,
   if k = 0 then return ( g )
   else
       Df : jacobian ( f , x ) ,
       Dg : jacobian ( g , x ) ,
       ad : list_matrix_entries ( Dg . f Df . g ) ,
       return ( LieBracket ( f , ad , x , k 1 ) )
) $
Prüft Involutivität (L ... Liste von Vektorfeldern, x ... Variable für Lie-Ableitung)
(%i2) Involutivep ( L , x ) : = block ( [ F , G , i , j , r , n ] ,
   r : length ( L ) ,
   F : apply ( ' matrix , L ) ,
   F : transpose ( F ) ,
   G : copy ( F ) ,
   for i : 1 thru r do
       for j : i + 1 thru r do block ( [ f1 , f2 ] ,
           f1 : list_matrix_entries ( col ( F , i ) ) ,
           f2 : list_matrix_entries ( col ( F , j ) ) ,
           G : addcol ( G , LieBracket ( f1 , f2 , x ) )
   ) ,
   is ( rank ( F ) = rank ( G ) )
) $
Vektorfelder f1 und f2
(%i5) f1 : [ sin ( x3 ) , cos ( x3 ) , 0 ] ;
f2 : [ 0 , 0 , 1 ] ;
x : [ x1 , x2 , x3 ] ;

\[\operatorname{(f1) }\left[ \sin{\left( \ensuremath{\mathrm{x3}}\right) }\operatorname{,}\cos{\left( \ensuremath{\mathrm{x3}}\right) }\operatorname{,}0\right] \]

\[\operatorname{(f2) }\left[ 0\operatorname{,}0\operatorname{,}1\right] \]

\[\operatorname{(x) }\left[ \ensuremath{\mathrm{x1}}\operatorname{,}\ensuremath{\mathrm{x2}}\operatorname{,}\ensuremath{\mathrm{x3}}\right] \]

Distribution, die von f1 und f2 aufgespannt wird
(%i7) D : [ f1 , f2 ] ;
Involutivep ( D , x ) ;

\[\operatorname{(D) }\left[ \left[ \sin{\left( \ensuremath{\mathrm{x3}}\right) }\operatorname{,}\cos{\left( \ensuremath{\mathrm{x3}}\right) }\operatorname{,}0\right] \operatorname{,}\left[ 0\operatorname{,}0\operatorname{,}1\right] \right] \]

\[\operatorname{ }\mbox{%default false}\]

Distribution, die zusätzlich die Lie-Klammer [f1,f2] enthält
(%i9) I : endcons ( LieBracket ( f1 , f2 , x ) , D ) ;
Involutivep ( I , x ) ;

\[\operatorname{(I) }\left[ \left[ \sin{\left( \ensuremath{\mathrm{x3}}\right) }\operatorname{,}\cos{\left( \ensuremath{\mathrm{x3}}\right) }\operatorname{,}0\right] \operatorname{,}\left[ 0\operatorname{,}0\operatorname{,}1\right] \operatorname{,}\left[ -\cos{\left( \ensuremath{\mathrm{x3}}\right) }\operatorname{,}\sin{\left( \ensuremath{\mathrm{x3}}\right) }\operatorname{,}0\right] \right] \]

\[\operatorname{ }\mbox{%default true}\]


Created with wxMaxima.