tensor(deprecated)/permute_indices - Maple Help
For the best experience, we recommend viewing online help using Google Chrome or Microsoft Edge.
Our website is currently undergoing maintenance, which may result in occasional errors while browsing. We apologize for any inconvenience this may cause and are working swiftly to restore full functionality. Thank you for your patience.

Online Help

All Products    Maple    MapleSim


Home : Support : Online Help : tensor(deprecated)/permute_indices

tensor

  

permute_indices

  

Permutation of the indices of a tensor_type

 

Calling Sequence

Parameters

Description

Examples

Calling Sequence

permute_indices(T, permutation)

Parameters

T

-

tensor_type on which to perform permutation

permutation

-

permutation according to which the re-indexing of the indices is to be done

Description

Important: The tensor package has been deprecated. Use the superseding command DifferentialGeometry[Tensor][RearrangeIndices].

• 

This procedure allows you to change the way a given tensor_type is indexed.  Given any permutation of the indices of a tensor_type and a tensor, the routine will re-index the tensor according to the given permutation.

• 

T must be of rank 2 or more.

• 

permutation is a list of indices (integers ranging from 1 to rank(T)) with no duplications and size equal to the rank of T.  It is used to specify the re-indexing of the tensor in the following way: The `nth' index of the original tensor is moved to the position of `n' in the permutation.  For example, a permutation list of 3,1,2 specifies that the third index of the original tensor will be the first index of the re-indexed tensor, the first index of the original tensor will be the second index of the re-indexed tensor, and the second index of the original tensor will be the third index of the re-indexed tensor (that is,  i,j,k --> k,i,j).

• 

This function is occasionally useful because of the rigidity in default indexing of the other utility routines, like prod, contract, and cov_diff, of the tensor package.  Since you can have a preferred indexing different from the default, and switching back and forth between the two conventions could be confusing during a substantial computation, it is advised that you perform a re-ordering of indices of any computed tensor_type to comply with your indexing convention, whenever the default indexing is different from the one with which you are comfortable.

• 

Note that any symmetrical properties of the indices of the input are not preserved in the re-indexed indices of the result.

• 

This function is part of the tensor package, and so can be used in the form permute_indices(..) only after performing the command with(tensor) or with(tensor, permute_indices).  The function can always be accessed in the long form tensor[permute_indices](..).

Examples

Important: The tensor package has been deprecated. Use the superseding command DifferentialGeometry[Tensor][RearrangeIndices].

withtensor:

Find the transpose of a rank 2 tensor.

A_comptsarray1..3,1..3:

forito3doforjto3doA_comptsi,jcata,i,jenddoenddo:Acreate1,1,opA_compts

Atableindex_char=1,−1,compts=a11a12a13a21a22a23a31a32a33

(1)

A_transposepermute_indicesA,2,1

A_transposetableindex_char=−1,1,compts=a11a21a31a12a22a32a13a23a33

(2)

Perform a cyclic permutation on a rank 3 tensor.

B_comptsarray1..3,1..3,1..3:

forito3doforjto3doforkto3doB_comptsi,j,kcatb,i,j,kenddoenddoenddo:Bcreate1,1,1,opB_compts

Btableindex_char=1,−1,1,compts=array1..3,1..3,1..3,1,1,1=b111,1,1,2=b112,1,1,3=b113,1,2,1=b121,1,2,2=b122,1,2,3=b123,1,3,1=b131,1,3,2=b132,1,3,3=b133,2,1,1=b211,2,1,2=b212,2,1,3=b213,2,2,1=b221,2,2,2=b222,2,2,3=b223,2,3,1=b231,2,3,2=b232,2,3,3=b233,3,1,1=b311,3,1,2=b312,3,1,3=b313,3,2,1=b321,3,2,2=b322,3,2,3=b323,3,3,1=b331,3,3,2=b332,3,3,3=b333

(3)

Cpermute_indicesB,3,1,2

Ctableindex_char=1,1,−1,compts=array1..3,1..3,1..3,1,1,1=b111,1,1,2=b121,1,1,3=b131,1,2,1=b211,1,2,2=b221,1,2,3=b231,1,3,1=b311,1,3,2=b321,1,3,3=b331,2,1,1=b112,2,1,2=b122,2,1,3=b132,2,2,1=b212,2,2,2=b222,2,2,3=b232,2,3,1=b312,2,3,2=b322,2,3,3=b332,3,1,1=b113,3,1,2=b123,3,1,3=b133,3,2,1=b213,3,2,2=b223,3,2,3=b233,3,3,1=b313,3,3,2=b323,3,3,3=b333

(4)

See Also

DifferentialGeometry[Tensor][RearrangeIndices]

tensor(deprecated)

tensor(deprecated)/cov_diff

tensor(deprecated)[contract]

tensor(deprecated)[prod]