X-Git-Url: https://ginac.de/ginac.git//ginac.git?a=blobdiff_plain;f=ginac%2Fsymmetry.h;h=90699e139832aa04ff3189f0e19dd62e4b30ed8d;hb=695f6ae955ec530cded8f21efd5569df39447f76;hp=a002885e82b6360fccb53ded09682e2d97f864e9;hpb=6d225ee55693c0617d254e6fa283c00c71bd2919;p=ginac.git diff --git a/ginac/symmetry.h b/ginac/symmetry.h index a002885e..90699e13 100644 --- a/ginac/symmetry.h +++ b/ginac/symmetry.h @@ -3,7 +3,7 @@ * Interface to GiNaC's symmetry definitions. */ /* - * GiNaC Copyright (C) 1999-2004 Johannes Gutenberg University Mainz, Germany + * GiNaC Copyright (C) 1999-2005 Johannes Gutenberg University Mainz, Germany * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -120,6 +120,16 @@ inline symmetry sy_cycl(const symmetry &c1, const symmetry &c2) { return symmetr inline symmetry sy_cycl(const symmetry &c1, const symmetry &c2, const symmetry &c3) { return symmetry(symmetry::cyclic, c1, c2).add(c3); } inline symmetry sy_cycl(const symmetry &c1, const symmetry &c2, const symmetry &c3, const symmetry &c4) { return symmetry(symmetry::cyclic, c1, c2).add(c3).add(c4); } +// These return references to preallocated common symmetries (similar to +// the numeric flyweights). +const symmetry & not_symmetric(); +const symmetry & symmetric2(); +const symmetry & symmetric3(); +const symmetry & symmetric4(); +const symmetry & antisymmetric2(); +const symmetry & antisymmetric3(); +const symmetry & antisymmetric4(); + /** Canonicalize the order of elements of an expression vector, according to * the symmetry properties defined in a symmetry tree. *