Tensor[NullTetradTransformation] - apply a Lorentz transformation to a null tetrad
Calling Sequences
NullTetradTransformation(NullTetrad, TransType, theta, axis)
Parameters
NullTetrad - a list of 4 vectors defining a null tetrad
TransType - a string, "null rotation", "spatial rotation", or "boost", describing the transformation type
theta - the transformation parameter
axis - (optional) a string, specifies the axis of rotation as "l"(or "L") or "m"(or"M") in the case whereTransType = "null rotation"
|
Description
|
|
•
|
Let g be a metric on a 4-dimensional manifold with signature [1, -1, -1, -1]. A list of 4 vectors [L, N, M, barM] defines a (complex) null tetrad if barM is the complex conjugate of M,
|
g(L, N) = 1 and g(M, barM) = -1,
and all other inner products vanish. In particular, the vectors [L, N, M, barM] are all null vectors.
•
|
A Lorentz transformation is a (linear) change of frame which transforms a null tetrad [L, N, M, barM] into another null tetrad [L', N', M', barM']. Every Lorentz transformation can be expressed as the composition of the following 4 basic Lorentz transformations.
|
–
|
1. A null rotation about the L axis (theta complex):
|
L' = L, N' = N + theta*M + conj(theta)*barM + theta*conj(theta)*L, M' = M + conj(theta)*L, barM' = barM + theta*L.
–
|
2. A null rotation about the N axis (theta complex)
|
L' = L + theta*M + conj(theta)*barM + theta*conj(theta)*N, N' = N, M' = M + conj(theta)*M, barM' = barM + theta*N.
–
|
3. A spatial rotation in the [M, barM] plane (theta real):
|
L' = L, N' = N, M' = (cos(theta) + I*sin(theta))*M, barM' = (cos(theta) - I*sin(theta))*barM.
–
|
4. A boost (theta real and non-zero):
|
L' = theta*L, N' = 1/theta*N, M' = M, barM' = barM.
•
|
The command NullTetradTransformation(NullTetrad, TransType, theta, axis) returns the new null tetrad [L', N', M', barM'] obtained from NullTetrad = [L, N, M, barM] through the application of one of the above Lorentz transformations.
|
•
|
This command is part of the DifferentialGeometry:-Tensor package, and so can be used in the form NullTetradTransformation(...) only after executing the commands with(DifferentialGeometry); with(Tensor); in that order. It can always be used in the long form DifferentialGeometry:-Tensor:-NullTetradTransformation.
|
|
|
Examples
|
|
>
|

|
For the first 4 examples we work with coordinates [u, v, x, y] and an off-diagonal form for the metric. This is the easiest setting to see the effects the 4 basic Lorentz transformations.
>
|
|
| (2.1) |
S >
|
|
| (2.2) |
S >
|
|
| (2.3) |
S >
|
|
| (2.4) |
S >
|
|
| (2.5) |
Example 1.
Apply a null rotation to the null tetrad T about the "l" axis. Check that the result is a null tetrad.
S >
|
|
| (2.6) |
S >
|
|
| (2.7) |
S >
|
|
| (2.8) |
S >
|
|
| (2.9) |
Example 2.
Apply a null rotation about the "n" axis to the null tetrad T. Check that the result is a null tetrad.
S >
|
|
| (2.10) |
S >
|
|
| (2.11) |
S >
|
|
| (2.12) |
S >
|
|
| (2.13) |
Example 3.
Apply a spatial rotation to the null tetrad T. Check that the result is a null tetrad.
S >
|
|
![T3 := [D_u, D_v, (cos(theta)+sin(theta)*I)*D_x+(cos(theta)*I-sin(theta))*D_y, (cos(theta)-I*sin(theta))*D_x+(-I*cos(theta)-sin(theta))*D_y]](/support/helpjp/helpview.aspx?si=5661/file05898/math268.png)
| (2.14) |
S >
|
|
| (2.15) |
Example 4.
Apply a boost to the null tetrad T. Check that the result is a null tetrad.
S >
|
|
![T4 := [D_u, D_v, (cos(theta)+sin(theta)*I)*D_x+(cos(theta)*I-sin(theta))*D_y, (cos(theta)-I*sin(theta))*D_x+(-I*cos(theta)-sin(theta))*D_y]](/support/helpjp/helpview.aspx?si=5661/file05898/math290.png)
| (2.16) |
S >
|
|
| (2.17) |
Example 5.
In this example we show how the use of a null tetrad transformation can be use to simplify the NP Weyl scalars. First we define our manifold.
S >
|
|
| (2.18) |
Define a null tetrad T1. (By decreeing this to be a null tetrad we implicitly define the spacetime metric.)
S >
|
![T1 := evalDG([(1/2)*2^(1/2)*D_t+(1/2)*2^(1/2)*D_z, (1/2)*2^(1/2)*D_t-(1/2)*2^(1/2)*D_z, (1/2)*2^(1/2)*z^2*D_x+I*2^(1/2)*x^2*D_y*(1/2), (1/2)*2^(1/2)*z^2*D_x-I*2^(1/2)*x^2*D_y*(1/2)])](/support/helpjp/helpview.aspx?si=5661/file05898/math324.png)
|
![T1 := [2^(1/2)*D_t/2+2^(1/2)*D_z/2, 2^(1/2)*D_t/2-2^(1/2)*D_z/2, 2^(1/2)*z^2*D_x/2+((1/2)*I)*2^(1/2)*x^2*D_y, 2^(1/2)*z^2*D_x/2-((1/2)*I)*2^(1/2)*x^2*D_y]](/support/helpjp/helpview.aspx?si=5661/file05898/math327.png)
| (2.19) |
Apply a null rotation to T1.
S >
|
|
![T2 := [2^(1/2)*D_t/2+2^(1/2)*D_z/2, (a^2*2^(1/2)/2+2^(1/2)/2)*D_t+a*2^(1/2)*z^2*D_x+(a^2*2^(1/2)/2-2^(1/2)/2)*D_z, a*2^(1/2)*D_t/2+2^(1/2)*z^2*D_x/2+((1/2)*I)*2^(1/2)*x^2*D_y+a*2^(1/2)*D_z/2, a*2^(1/2)*D_t/2+2^(1/2)*z^2*D_x/2-((1/2)*I)*2^(1/2)*x^2*D_y+a*2^(1/2)*D_z/2]](/support/helpjp/helpview.aspx?si=5661/file05898/math340.png)
| (2.20) |
Calculate the NP Weyl scalars for the null tetrad T2.
S >
|
|
![TABLE(["Psi4" = -(8*x*a^3*z^3-8*x*a*z^3+3*a^4*x^2+6*a^2*x^2-12*a^2*z^6+3*x^2)/(2*z^2*x^2), "Psi1" = -(2*z^3+3*a*x)/(2*z^2*x), "Psi3" = -(6*z^3*a^2*x-2*z^3*x-6*z^6*a+3*a^3*x^2+3*a*x^2)/(2*z^2*x^2), "Psi2" = -(-2*z^6+x^2+3*a^2*x^2+4*x*a*z^3)/(2*z^2*x^2), "Psi0" = -3/(2*z^2)])](/support/helpjp/helpview.aspx?si=5661/file05898/math353.png)
| (2.21) |
We can make Psi1 = 0 by choosing a = -2/3z^3/x.
S >
|
|
![T3 := [2^(1/2)*D_t/2+2^(1/2)*D_z/2, (2*z^6*2^(1/2)/(9*x^2)+2^(1/2)/2)*D_t-2*z^5*2^(1/2)*D_x/(3*x)+(2*z^6*2^(1/2)/(9*x^2)-2^(1/2)/2)*D_z, -z^3*2^(1/2)*D_t/(3*x)+2^(1/2)*z^2*D_x/2+((1/2)*I)*2^(1/2)*x^2*D_y-z^3*2^(1/2)*D_z/(3*x), -z^3*2^(1/2)*D_t/(3*x)+2^(1/2)*z^2*D_x/2-((1/2)*I)*2^(1/2)*x^2*D_y-z^3*2^(1/2)*D_z/(3*x)]](/support/helpjp/helpview.aspx?si=5661/file05898/math368.png)
| (2.22) |
Recalculate the NP Weyl scalars and note that Psi1 = 0.
S >
|
|
![TABLE(["Psi4" = -(-64*z^12+72*z^6*x^2+27*x^4)/(18*x^4*z^2), "Psi1" = 0, "Psi3" = 2*z*(-13*z^6+9*x^2)/(9*x^3), "Psi2" = -(-10*z^6+3*x^2)/(6*z^2*x^2), "Psi0" = -3/(2*z^2)])](/support/helpjp/helpview.aspx?si=5661/file05898/math381.png)
| (2.23) |
|
|