1 /* formQ0: Evaluate trace-free decomposition of a symmetric tensor.
5 * parameters: Q: itensor expression
7 * Given the tensor Q that is fully symmetric in all indices, this
8 * function returns the corresponding STF tensor.
14 * (%i1) load("formQ0.mac")$
15 * (%i2) load(itensor)$
17 * (%i4) decsym(g,0,2,[],[sym(all)])$
19 * (%i6) flipflag:true$
20 * (%i7) defcon(Q,Q,Q)$
21 * (%i8) decsym(Q,0,3,[],[sym(all)])$
22 * (%i9) ishow(canform('kdels([a,b,c],[j,k,l])*Q0(Q([],[a,b,c]))))$
25 * %1 %2 %3 j k l %1 %2 %3
26 * (%t9) Q kdels - --------------------------
29 * (c) 2021 Viktor T. Toth (https://www.vttoth.com/)
31 * This program is free software; you can redistribute it and/or
32 * modify it under the terms of the GNU General Public License as
33 * published by the Free Software Foundation; either version 2 of
34 * the License, or (at your option) any later version.
36 * This program is distributed in the hope that it will be
37 * useful, but WITHOUT ANY WARRANTY; without even the implied
38 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
39 * PURPOSE. See the GNU General Public License for more details.
47 _Q+canform(contract(sum(
48 (-1/2)^_p*(dim+2*_k-2*(_p+2))!!/_p!/(_k-2*_p)!/(dim+2*_k-4)!!
49 *canform(contract(expand(
50 kdels(makelist(concat('_i,_j),_j,1,_k),_a)
51 *prod(_g([],[concat('_i,2*_i-1),
52 concat('_i,2*_i)])*_g([concat('_j,2*_i-1),concat('_j,2*_i)]),_i,1,_p)
53 *sublis(makelist(_a[_l]=(flatten([makelist(concat('_j,_i),_i,1,2*_p),
54 makelist(concat('_i,_i),_i,2*_p+1,_k)]))[_l],_l,1,_k),_Q)))),