Example 1.
First define a 4 dimensional manifold with coordinates .
Define a metric on .
Define a list of vectors S1.
We use the command TensorInnerProduct. to check this result.
We repeat the same computation with method = "un-normalized". The result is free of square roots but now the vectors are not unit vectors.
Example 2.
We continue with the metric from Example 1 but now apply the Gram-Schmidt procedure to a list of 2-forms.
Example 3.
Consider now an indefinite metric.
A direct application of the GramSchmidt process yields complex-valued forms.
We can adjust the normalization of the last two 1-forms to have length -1 to obtain a real basis:
Example 4.
Consider another indefinite metric.
A direct application of the GramSchmidt process fails since the first two vectors are null vectors. We can work around this problem by changing the initial basis.
Alternatively, we can adjust the signature option.