DifferentialGeometry
DGbasis
calculate the dual basis to a given basis of vectors or 1-forms
Calling Sequence
Parameters
Description
Examples
DGbasis(S, option)
S
-
a list of vectors, forms or tensors
option
the keyword argument method = "real"
Let S = [S_1, S_2, ..., S_k] be a list of vectors, matrices, differential forms, or tensors. Then DGbasis(S) returns a sublist B = [S_i_1, S_i_2, ..., S_i_r] of S such that the elements of B define a basis for the subspace spanned by the elements of S. Thus the elements of B are linearly independent and span(S) = span(B).
With the keyword argument method = "real", the set S is viewed as a vector space of vectors, forms or tensors over the real numbers and the basis is calculated using real number coefficients instead of general expression (function) coefficients.
This command is part of the DifferentialGeometry package, and so can be used in the form DGbasis(...) only after executing the command with(DifferentialGeometry). It can always be used in the long form DifferentialGeometry:-DGbasis.
with⁡DifferentialGeometry:
Initialize a 4-dimensional manifold M with coordinates [x, y, z, w].
DGsetup⁡x,y,z,w,M:
Example 1.
Find a basis B1 for the span of the vectors in S1.
S1≔evalDG⁡D_x,D_x+D_y,D_y,0&multD_x,D_y−D_z,D_z,D_x+D_y+D_w
S1≔D_x,D_x+D_y,D_y,0⁢D_x,D_y−D_z,D_z,D_x+D_y+D_w
B1≔DGbasis⁡S1
B1≔D_x,D_x+D_y,D_y−D_z,D_x+D_y+D_w
Use the GetComponents command to check that each vector in S is a unique linear combination of the vectors in B. (GetComponents returns the coefficients of the vectors in S as linear combination of the vectors in B. If one of the vectors in S is not a linear combination of the vectors in B, an empty list [] is returned).
GetComponents⁡S1,B1
1,0,0,0,0,1,0,0,−1,1,0,0,0,0,0,0,0,0,1,0,−1,1,−1,0,0,0,0,1
The basis B1 is not the simplest basis for S1. Another choice of basis for S1 can be found using the command CanonicalBasis.
Tools:-CanonicalBasis⁡B1,D_x,D_y,D_z,D_w
D_x,D_y,D_z,D_w
Example 2.
Find a basis for the span of the tensors in S2.
S2≔evalDG⁡dx&tdx,dy&tdx,dx&tdx+dy&tdx,dy&tdy
S2≔dx⁢dx,dy⁢dx,dx⁢dx+dy⁢dx,dy⁢dy
DGbasis⁡S2
dx⁢dx,dy⁢dx,dy⁢dy
Example 3.
DGbasis also accepts a list of Matrices or Vectors.
S3≔Matrix⁡0,1,0,0,Matrix⁡1,0,0,1,Matrix⁡1,1,0,1,Matrix⁡1,0,0,−1
S3≔0100,1001,1101,100−1
DGbasis⁡S3
0100,1001,100−1
Example 4.
S4≔evalDG⁡D_x,x⁢D_x,3⁢x−4⁢D_x
S4≔D_x,x⁢D_x,3⁢x−4⁢D_x
Here is the basis for S4 using function coefficients.
DGbasis⁡S4
D_x
Here is the basis for S4 using real number coefficients.
DGbasis⁡S4,method=real
D_x,x⁢D_x
See Also
CanonicalBasis
GetComponents
Download Help Document