File containing all the simplification routines for MARTY. More...
#include <csl.h>Go to the source code of this file.
Data Structures | |
| struct | mty::simpli::FermionEOMData |
| Helper structure for the application of Dirac equation (equations of motions for spin 1/2) More... | |
Namespaces | |
| mty | |
| Namespace of MARTY. | |
| mty::simpli | |
| Namespace containing the main simplification method for MARTY and all its dependencies. | |
Enumerations | |
| enum | mty::simpli::Mode { FeynmanRule, Amplitude, SquaredAmplitude, WilsonCoefficient } |
| Mode for the main simplification routine specifying what calculation is done to adapt the simplification procedure. | |
Functions | |
| void | mty::simpli::simplify (csl::Expr &expr, std::vector< mty::QuantumField > const &insertions, std::vector< csl::Tensor > const &momenta, mty::FeynOptions const &options, Mode mode) |
| Main simplification routine of MARTY, used for amplitudes, squared amplitude and Wilson coefficients. More... | |
| color::ColorSpace const * | mty::simpli::inColorSpace (csl::Index const &index) |
| Returns the colorspace associated to an index (nullptr if the index does not live in any ColorSpace). More... | |
| color::ColorSpace const * | mty::simpli::isColorStructure (csl::IndexStructure const &structure) |
| Returns the adjoint colorspace for a generator, nullptr for another structure.o. More... | |
| color::ColorSpace const * | mty::simpli::isColorStructure (csl::Expr const &expr) |
| Returns a colorspace if the expression is a color structure. More... | |
| csl::IndexStructure | mty::simpli::colorStructure (csl::Expr const &node, color::ColorSpace const *color) |
| Returns all color indices found in an expression lying in a particular color space. More... | |
| bool | mty::simpli::factorIndicial (csl::Expr &res) |
| Factors indicial expressions in a bigger expression. More... | |
| csl::Expr | mty::simpli::colorAbbreviation (std::vector< csl::Expr > const &exprs, std::vector< color::ColorSpace const *> const &spaces) |
| Abbreviates color structure in expressions under the generic name "Color". More... | |
| bool | mty::simpli::expandInProd (csl::Expr &prod, std::function< csl::IndexStructure(csl::Expr const &)> const &structureGetter) |
| Expands indicial expressions in a way avoiding unnecessary terms, in particular not expanding expressions that have no common index. More... | |
| bool | mty::simpli::expandColorIndices (csl::Expr &res) |
| Expands expressions containing color indices to allow all algebra simplifications. More... | |
| bool | mty::simpli::simplifyColorWeights (csl::Expr &expr) |
| Calculates color traces in an expression. More... | |
| bool | mty::simpli::findColorAbbreviation (csl::Expr &expr) |
| Abbreviates color structures in an expression under the generic name "Color". More... | |
| bool | mty::simpli::expandMinkoStructures (csl::Expr &expr) |
| Expands Minkowski structures to contract all possible indices. More... | |
| bool | mty::simpli::expandMinkoMetric (csl::Expr &expr) |
| Expands Minkowski metrics to contract all possible indices. More... | |
| bool | mty::simpli::expandMinkoEpsilon (csl::Expr &expr) |
| Expands Minkowski epsilon symbols to contract all possible indices. More... | |
| bool | mty::simpli::simplifyEpsilonInProd (csl::Expr &prod, csl::IndexStructure &indices) |
| Simplifies the contraction of an epsilon tensor with a symmetric structure index. More... | |
| bool | mty::simpli::simplifyEpsilon (csl::Expr &expr) |
| Simplifies epsilon contractions with symmetric indices in an expression. More... | |
| bool | mty::simpli::expandGammaMatrices (csl::Expr &expr) |
| Expands gamma matrices in an expression to be able to simplify fermion chains (and traces). More... | |
| bool | mty::simpli::simplifyFermionChains (csl::Expr &expr) |
| Simplifies fermion chains using the mty::FermionChain utility. More... | |
| void | mty::simpli::expandForFermionOrdering (csl::Expr &expr) |
| Forces the ordering of external fermions by making sure that all Dirac structures are expanded. More... | |
| void | mty::simpli::expandMomentaExperimental (csl::Expr &res, std::vector< csl::Tensor > const &momenta) |
| Expands expressions containing momenta to contract all indices, typically replacing \( p_i^\mu\cdot p_{j\mu} \mapsto s_{ij} \). More... | |
| void | mty::simpli::reduceTensorIntegrals (csl::Expr &expr) |
| Replaces the one-loop momentum integrals by their reduced form depending on scalar integrals. More... | |
| std::pair< csl::Expr, csl::Expr > | mty::simpli::getMomentumReplacement (std::vector< mty::QuantumField > const &insertions, std::vector< csl::Tensor > const &momenta, size_t posReplaced) |
| Creates the relevant replacement (using momentum conservation) to replace one particular momentum. More... | |
| void | mty::simpli::replaceMomentum (csl::Expr &init, std::vector< mty::QuantumField > const &insertions, std::vector< csl::Tensor > const &momenta, size_t posReplaced) |
| Applies the momentum conservation by replacing one of the external momenta by the combination of the others. More... | |
| void | mty::simpli::simplifyImpulsions (csl::Expr &init, std::vector< mty::QuantumField > const &insertions, std::vector< csl::Tensor > const &momenta) |
| Applies the momentum conservation by replacing one of the external momenta by the combination of the others. More... | |
| void | mty::simpli::applyEOM (csl::Expr &l, std::vector< FermionEOMData > &onShellFermions) |
| Applies the equations of motions in an expression. More... | |
| void | mty::simpli::applyEOM (csl::Expr &l, std::vector< mty::QuantumField > const &insertions, std::vector< csl::Tensor > const &momenta) |
| Applies the equations of motion in an expression. More... | |
| void | mty::simpli::addLocalTerms (csl::Expr &res) |
| Adds the local terms in an expression. More... | |
| bool | mty::simpli::maybeSimplified (csl::Expr const &expr) |
| Helper function that tells if an expression may be simplified in amplitudes. More... | |
| void | mty::simpli::findExternalAbbreviation (csl::Expr &expr) |
| Abbreviates external legs in the expression using the generic name "EXT". More... | |
| void | mty::simpli::abbreviateIntegral (csl::Expr &res) |
| Abbreviate scalar integrals (or combinations of them) into abbreviations with the generic name "INT". More... | |
| void | mty::simpli::abbreviateAll (csl::Expr &res) |
| Abbreviates all the sub-expressions that are relevant. More... | |
| bool | mty::simpli::findAbbreviations (csl::Expr &res) |
| Abbreviates all the sub-expressions that are relevant considering constant factors only. More... | |
| void | mty::simpli::applyDerivativesInStructure (csl::Expr &expr) |
| Searches in the expression derived fields and applies the derivatives in the fields themselves. More... | |
| void | mty::simpli::suppressDiracDelta (csl::Expr &expr, csl::Expr const &PSum) |
| Removes a dirac delta sub-expression. More... | |
File containing all the simplification routines for MARTY.
When a calculation is done (amplitude, squared amplitude or Wilson coefficient) it is simplified by the mty::simpli::simplify() method that uses directly or indirectly all the other routines in this file. The other rountines can for the most part be called separatly, but for a full successful simplification the order is extremely important and the mty::simpli::simplify() method is a reference.
1.8.13