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
T1≔D_x,D_y,D_z
C1≔ComplementaryBasis⁡S1,T1
C1≔D_z
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
T2≔evalDG⁡D_x,D_y,D_x+D_z,D_x−D_y,D_z,D_u
T2≔D_x,D_y,D_x+D_z,D_x−D_y,D_z,D_u
C2≔ComplementaryBasis⁡S2,T2
C2≔D_x+D_z,D_u
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
C3≔ComplementaryBasis⁡S3,T3
C3≔D_u,D_v
Example 4.
The command ComplementaryBasis works with differential forms.
S4≔evalDG⁡dx&wdy,dx&wdz
S4≔dx⁢⋀⁢dy,dx⁢⋀⁢dz
T4≔evalDG⁡dx&wdy,dx&wdz,dx&wdu,dy&wdv
T4≔dx⁢⋀⁢dy,dx⁢⋀⁢dz,dx⁢⋀⁢du,dy⁢⋀⁢dv
C4≔ComplementaryBasis⁡S4,T4
C4≔dx⁢⋀⁢du,dy⁢⋀⁢dv
Example 5.
The command ComplementaryBasis works with tensors.
S5≔evalDG⁡dx&tD_y,dx&tD_z
S5≔dx⁢D_y,dx⁢D_z
T5≔evalDG⁡dx&tD_y,dx&tD_z,dx&tD_u,dy&tD_v
T5≔dx⁢D_y,dx⁢D_z,dx⁢D_u,dy⁢D_v
C5≔ComplementaryBasis⁡S5,T5
C5≔dx⁢D_u,dy⁢D_v
See Also
Tools
CanonicalBasis
DGbasis
DualBasis
Download Help Document