Differences

This shows you the differences between two versions of the page.

Link to this comparison view

documentation:ref:eliminateduesymmetries [2015/11/21 12:33]
documentation:ref:eliminateduesymmetries [2015/11/21 12:33] (current)
Line 1: Line 1:
 +====== EliminateDueSymmetries ======
 +----
 +
 +====Description====
 +  * ''​EliminateDueSymmetries''​ removes parts of expression, which are zero because of the symmetries.
 +
 +  * ''​EliminateDueSymmetries''​ does not perform any structural simplifications (expand, eliminate metrics etc.), it is just using symmetries of expression. ​
 +
 +====Examples====
 +
 +Simplify expression where symmetric tensor is contracted with antisymmetric:​
 +<sxh groovy; gutter: false>
 +setAntiSymmetric '​f_mn'​
 +//g_mn is symmetric metric tensor
 +println EliminateDueSymmetries >> 'f_mn * g^mn'​.t
 +</​sxh>​
 +<sxh plain; gutter: false>
 +   > 0
 +</​sxh>​
 +----
 +''​EliminateDueSymmetries''​ also checks symmetries that follows from the structure of expressions:​
 +<sxh groovy; gutter: false>
 +println EliminateDueSymmetries >> '​(t_amn - t_anm) * g^mn'​.t
 +</​sxh>​
 +<sxh plain; gutter: false>
 +   > 0
 +</​sxh>​
 +----
 +''​EliminateDueSymmetries''​ works with expressions with arbitrary complexity:
 +<sxh groovy; gutter: false>
 +addSymmetry '​R_abc',​ -[1, 0, 2].p
 +addSymmetry '​A_ab',​ [1, 0].p
 +def t = '​((R_abc*A_de + R_bde*A_ac)*A^ce + R_adb)*(A_mf*R^mad - A_fm*R^dma)'​.t
 +println EliminateDueSymmetries >> t
 +</​sxh>​
 +<sxh plain; gutter: false>
 +   > 0
 +</​sxh>​
 +----
 +''​EliminateDueSymmetries''​ applies to each part of expression:
 +<sxh groovy; gutter: false>
 +def t = 'F_mn + g_mn*(A^mn - A^nm)'​.t
 +println EliminateDueSymmetries >> t
 +</​sxh>​
 +<sxh plain; gutter: false>
 +   > F_mn
 +</​sxh>​
 +----
 +====See also====
 +  * Related guides: [[documentation:​guide:​applying_and_manipulating_transformations]],​ [[documentation:​guide:​symmetries_of_tensors]],​ [[documentation:​guide:​list_of_transformations]]
 +  * JavaDocs: [[http://​api.redberry.cc/​redberry/​1.1.9/​java-api//​cc/​redberry/​core/​transformations/​EliminateDueSymmetriesTransformation.html|EliminateDueSymmetriesTransformation]]
 +  * Source code: [[https://​bitbucket.org/​redberry/​redberry/​src/​tip/​core/​src/​main/​java/​cc/​redberry/​core/​transformations/​EliminateDueSymmetriesTransformation.java|EliminateDueSymmetriesTransformation.java]]