Maple Professional
Maple Academic
Maple Student Edition
Maple Personal Edition
Maple Player
Maple Player for iPad
MapleSim Professional
MapleSim Academic
Maple T.A. - Testing & Assessment
Maple T.A. MAA Placement Test Suite
Möbius - Online Courseware
Machine Design / Industrial Automation
Aerospace
Vehicle Engineering
Robotics
Power Industries
System Simulation and Analysis
Model development for HIL
Plant Modeling for Control Design
Robotics/Motion Control/Mechatronics
Other Application Areas
Mathematics Education
Engineering Education
High Schools & Two-Year Colleges
Testing & Assessment
Students
Financial Modeling
Operations Research
High Performance Computing
Physics
Live Webinars
Recorded Webinars
Upcoming Events
MaplePrimes
Maplesoft Blog
Maplesoft Membership
Maple Ambassador Program
MapleCloud
Technical Whitepapers
E-Mail Newsletters
Maple Books
Math Matters
Application Center
MapleSim Model Gallery
User Case Studies
Exploring Engineering Fundamentals
Teaching Concepts with Maple
Maplesoft Welcome Center
Teacher Resource Center
Student Help Center
tensor[permute_indices] - Permutation of the indices of a tensor_type
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
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 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
Find the transpose of a rank 2 tensor.
Perform a cyclic permutation on a rank 3 tensor.
See Also
tensor, tensor/cov_diff, tensor[contract], tensor[prod]
Download Help Document