tensor[dual]  perform the dual operation on the indices of a tensor

Calling Sequence


dual(LC, T, index_list)


Parameters


LC



LeviCivita pseudotensor

T



tensor to dual

index_list



list of indices of T to dual





Description


Important: The tensor package has been deprecated. Use the superseding packages DifferentialGeometry and Physics instead.
•

The function dual(LC, T, [i1, i2, ... ]) computes the dual of the tensor T on indices i1, i2, ... of T using the components of the LeviCivita pseudotensor LC. This is done by forming the inner product of LC with T, contracting over the appropriate indices of T and dividing by the appropriate normalizing factor.

•

The index_list must contain indices of T which are all of the same covariant / contravariant character and in which T is skewsymmetric. The number of indices to dual cannot exceed the dimension of the space (which equals the rank of LC) and must be greater than zero. At this time, the routine does not check if T is really antisymmetric in the given indices  it is a precondition.

•

All of the indices of the LC tensor must have character opposite to that of the indices of T of which the dual is to be taken. No mixedtype LC tensors are permitted. Thus, the dual of indices of T of opposite character must be computed separately by calling the function twice. The LC tensor can be obtained by using tensor[Levi_Civita].

•

The result is a tensor type of rank equal to:

•

The normalizing factor is equal to factorial(size(index_list)).

•

If the number of indices being dualed equals the rank of the input tensor, then the components of the result will be completely skewsymmetric (since their indices are the free indices of the LeviCivita tensor). In this case, the result uses the antisymmetric indexing function for its component array.

•

Simplification: This routine uses the `tensor/prod/simp` routine for simplification purposes. The simplification routine is applied to each component of result after it is computed. By default, `tensor/prod/simp` is initialized to the `tensor/simp` routine. It is recommended that the `tensor/prod/simp` routine be customized to suit the needs of the particular problem.



Examples


Important: The tensor package has been deprecated. Use the superseding packages DifferentialGeometry and Physics instead.
>


Define the coordinates and metric of Minkowski spacetime:
>


 (1) 
>


 (2) 
>


Use the Levi_Civita routine to generate the LeviCivita pseudotensor:
>


Define the contravariant components of the Electromagnetic Field tensor:
>


 (3) 
Compute the dual of F:
>


 (4) 
Compute the dual of the dual of F:
>


 (5) 
>


 (6) 


Download Help Document
Was this information helpful?