DifferentialGeometry
ComplementaryBasis
extend a basis for a subspace to a basis for a larger subspace
Calling Sequence
Parameters
Description
Examples
ComplementaryBasis(S, T)
S, T
-
lists of vectors, differential p-forms, or tensors (of the same type)
The procedure ComplementaryBasis(S, T) returns a list C of vectors, differential p-forms or tensors such that the span of [S, C] equals the span of the vectors, differential p-forms or tensors defined by T.
This command is part of the DifferentialGeometry package, and so can be used in the form ComplementaryBasis(...) only after executing the command with(DifferentialGeometry). It can always be used in the long form DifferentialGeometry:-ComplementaryBasis.
with⁡DifferentialGeometry:
Initialize a 5-dimensional manifold M with coordinates [x, y, z, u, v].
DGsetup⁡x,y,z,u,v,M:
Example 1.
S1 ≔ D_x,D_y
_DG⁡vector,M,,1,1,_DG⁡vector,M,,2,1
T1 ≔ D_x,D_y,D_z
_DG⁡vector,M,,1,1,_DG⁡vector,M,,2,1,_DG⁡vector,M,,3,1
C1 ≔ ComplementaryBasis⁡S1,T1
_DG⁡vector,M,,3,1
Example 2.
Note that a basis for S2 is [D_x, D_y] and a basis for T2 is [D_x, D_y, D_x + D_z, D_u].
S2 ≔ D_x,D_y,D_x+D_y
_DG⁡vector,M,,1,1,_DG⁡vector,M,,2,1,_DG⁡vector,M,,1,1+_DG⁡vector,M,,2,1
T2 ≔ evalDG⁡D_x,D_y,D_x+D_z,D_x−D_y,D_z,D_u
_DG⁡vector,M,,1,1,_DG⁡vector,M,,2,1,_DG⁡vector,M,,1,1,3,1,_DG⁡vector,M,,1,1,2,−1,_DG⁡vector,M,,3,1,_DG⁡vector,M,,4,1
C2 ≔ ComplementaryBasis⁡S2,T2
_DG⁡vector,M,,1,1,3,1,_DG⁡vector,M,,4,1
Example 3.
In most applications the subspace spanned by the first argument S will be a subspace of the span of the second argument T. However, the procedure works in the more general context described above.
S3 ≔ D_x,D_y
T3 ≔ D_x,D_u,D_v
_DG⁡vector,M,,1,1,_DG⁡vector,M,,4,1,_DG⁡vector,M,,5,1
C3 ≔ ComplementaryBasis⁡S3,T3
_DG⁡vector,M,,4,1,_DG⁡vector,M,,5,1
Example 4.
The command ComplementaryBasis works with differential forms.
S4 ≔ evalDG⁡dx &w dy,dx &w dz
_DG⁡form,M,2,1,2,1,_DG⁡form,M,2,1,3,1
T4 ≔ evalDG⁡dx &w dy,dx &w dz,dx &w du,dy &w dv
_DG⁡form,M,2,1,2,1,_DG⁡form,M,2,1,3,1,_DG⁡form,M,2,1,4,1,_DG⁡form,M,2,2,5,1
C4 ≔ ComplementaryBasis⁡S4,T4
_DG⁡form,M,2,1,4,1,_DG⁡form,M,2,2,5,1
Example 5.
The command ComplementaryBasis works with tensors.
S5 ≔ evalDG⁡dx &t D_y,dx &t D_z
_DG⁡tensor,M,cov_bas,con_bas,,1,2,1,_DG⁡tensor,M,cov_bas,con_bas,,1,3,1
T5 ≔ evalDG⁡dx &t D_y,dx &t D_z,dx &t D_u,dy &t D_v
_DG⁡tensor,M,cov_bas,con_bas,,1,2,1,_DG⁡tensor,M,cov_bas,con_bas,,1,3,1,_DG⁡tensor,M,cov_bas,con_bas,,1,4,1,_DG⁡tensor,M,cov_bas,con_bas,,2,5,1
C5 ≔ ComplementaryBasis⁡S5,T5
_DG⁡tensor,M,cov_bas,con_bas,,1,4,1,_DG⁡tensor,M,cov_bas,con_bas,,2,5,1
See Also
Tools
CanonicalBasis
DGbasis
DualBasis
Download Help Document