|
|
template<class ... Args> |
| | Model (Args &&...args) |
| |
|
| Model (Model &&other)=delete |
| |
|
Model & | operator= (Model &&other)=delete |
| |
|
| Model (Model const &other)=delete |
| |
|
Model & | operator= (Model const &other)=delete |
| |
|
size_t | getFeynmanRulesNumber () const |
| |
|
std::vector< mty::FeynmanRule > const & | getFeynmanRules () |
| |
|
mty::FeynmanRule & | getFeynmanRule (size_t pos) |
| |
|
mty::FeynmanRule const & | getFeynmanRule (size_t pos) const |
| |
|
void | filterFeynmanRules () |
| |
|
void | computeFeynmanRules () |
| |
|
mty::Amplitude | computeAmplitude (int order, std::vector< mty::Insertion > insertions, FeynOptions &options) |
| |
|
mty::Amplitude | computeAmplitude (int order, std::vector< mty::Insertion > insertions, Kinematics const &kinematics, FeynOptions &options) |
| |
|
mty::Amplitude | computeAmplitude (int order, std::vector< mty::Insertion > insertions) |
| |
|
mty::Amplitude | computeAmplitude (int order, std::vector< mty::Insertion > insertions, Kinematics const &kinematics) |
| |
|
mty::Amplitude | computePartialAmplitude (int order, std::vector< mty::Insertion > insertions, FeynOptions options={}) |
| |
|
mty::Amplitude | computePartialAmplitude (int order, std::vector< mty::Insertion > insertions, Kinematics const &kinematics, FeynOptions options={}) |
| |
| mty::Amplitude | computeAmplitude (std::vector< Lagrangian::TermType > &lagrangian, std::vector< Insertion > insertions, Kinematics const &kinematics, FeynOptions options, std::vector< FeynmanRule const *> rules={}) |
| | Main method for the calculation of amplitude. More...
|
| |
|
mty::Amplitude | computeAmplitude (std::vector< FeynmanRule const *> &feynRules, std::vector< Insertion > const &insertions, Kinematics const &kinematics, FeynOptions const &options) |
| |
|
csl::Expr | computeSquaredAmplitude (Amplitude const &l, bool applyDegreesOfFreedomFactor=true) |
| |
|
csl::Expr | computeSquaredAmplitude (WilsonSet const &l, bool applyDegreesOfFreedomFactor=true) |
| |
|
csl::Expr | computeSquaredAmplitude (Amplitude const &lL, Amplitude const &lR, bool applyDegreesOfFreedomFactor=true) |
| |
|
csl::Expr | computeSquaredAmplitude (WilsonSet const &lL, WilsonSet const &lR, bool applyDegreesOfFreedomFactor=true) |
| |
|
WilsonSet | getWilsonCoefficients (Amplitude const &l, FeynOptions const &feynOptions, DecompositionMode mode=DecompositionMode::Matching) |
| |
|
WilsonSet | getWilsonCoefficients (Amplitude const &l, DecompositionMode mode=DecompositionMode::Matching) |
| |
|
WilsonSet | computeWilsonCoefficients (int order, std::vector< Insertion > const &insertions, FeynOptions feynOptions={}, bool disableFermionOrdering=false) |
| |
|
WilsonSet | computeWilsonCoefficients_default (int order, std::vector< Insertion > const &insertions, FeynOptions const &feynOptions={}) |
| |
|
WilsonSet | computeWilsonCoefficients_2Fermions_1Vector (std::vector< Insertion > const &insertions, FeynOptions const &feynOptions={}) |
| |
|
WilsonSet | computeWilsonBoxes_4Fermions (Kinematics const &kinematics, FeynOptions feynOptions={}) |
| |
|
WilsonSet | computeSingleWilsonPenguin_4Fermions (Kinematics const &kinematics, std::pair< size_t, size_t > const &treeCoupling, std::pair< size_t, size_t > const &loopCoupling, Insertion const &mediator, FeynOptions feynOptions={}) |
| |
|
WilsonSet | computeWilsonPenguins_4Fermions (Kinematics const &kinematics, FeynOptions feynOptions={}) |
| |
|
WilsonSet | computeWilsonCoefficients_4Fermions (std::vector< Insertion > insertions, FeynOptions feynOptions={}) |
| |
|
Amplitude | connectAmplitudes (Amplitude const &M1, Amplitude const &M2, FeynOptions const &options={}) |
| |
| template<class ... Args> |
| | ModelBuilder (Args &&...args) |
| | Constructor. More...
|
| |
|
| ~ModelBuilder () override |
| | Default destructor.
|
| |
| | ModelBuilder (ModelBuilder &&other)=default |
| | Default move constructor. More...
|
| |
| ModelBuilder & | operator= (ModelBuilder &&other)=default |
| | Default move assignement operator. More...
|
| |
| | ModelBuilder (ModelBuilder const &other)=delete |
| | Defauly copy constructor. More...
|
| |
| ModelBuilder & | operator= (ModelBuilder const &other)=delete |
| | Default copy assignement operator. More...
|
| |
| std::vector< csl::Expr > const & | getAbbreviatedMassExpressions () const |
| |
|
void | replace (csl::Expr const &oldExpression, csl::Expr const &newExpression) |
| |
|
void | replace (csl::Tensor &oldExpression, csl::Expr const &newExpression) |
| |
|
void | replace (csl::Tensor &oldExpression, csl::Tensor &newExpression, std::function< bool(csl::Expr const &)> condition=[](csl::Expr const &) { return true;}) |
| |
|
void | replace (mty::Particle const &particle, csl::Expr newExpression, std::function< bool(csl::Expr const &)> condition=[](csl::Expr const &) { return true;}) |
| |
|
void | rotateFields (mty::Particle &fields, csl::Tensor &unitaryMatrix, std::function< bool(csl::Expr const &)> condition=[](csl::Expr const &) { return true;}) |
| |
|
void | rotateFields (std::string const &fields, csl::Tensor &unitaryMatrix, std::function< bool(csl::Expr const &)> condition=[](csl::Expr const &) { return true;}) |
| |
|
void | rotateFields (std::vector< mty::Particle > const &fields, std::vector< mty::Particle > const &newFields, std::vector< std::vector< csl::Expr >> const &rotation, bool diagonalizeMasses=false, int nMassLessFields=0) |
| |
|
void | rotateFields (std::vector< mty::Particle > const &fields1, std::vector< mty::Particle > const &newFields1, std::vector< std::vector< csl::Expr >> const &rotation1, std::vector< mty::Particle > const &fields2, std::vector< mty::Particle > const &newFields2, std::vector< std::vector< csl::Expr >> const &rotation2, int nMassLessFields=0) |
| |
|
void | rotateFields (std::vector< mty::Particle > const &fields, bool diagonalizeMasses=false, int nMassLessFields=0) |
| |
|
void | birotateFields (std::vector< mty::Particle > const &fields1, std::vector< mty::Particle > const &fields2, int nMassLessFields=0) |
| |
|
void | rotateFields (std::vector< std::string > const &fields, std::vector< std::string > const &newFields, std::vector< std::vector< csl::Expr >> const &rotation, bool diagonalizeMasses=false, int nMassLessFields=0) |
| |
|
void | rotateFields (std::vector< std::string > const &fields1, std::vector< std::string > const &newFields1, std::vector< std::vector< csl::Expr >> const &rotation1, std::vector< std::string > const &fields2, std::vector< std::string > const &newFields2, std::vector< std::vector< csl::Expr >> const &rotation2, int nMassLessFields=0) |
| |
|
void | rotateFields (std::initializer_list< std::string > const &fields, std::initializer_list< std::string > const &newFields, std::vector< std::vector< csl::Expr >> const &rotation, bool diagonalizeMasses=false, int nMassLessFields=0) |
| |
|
void | rotateFields (std::initializer_list< std::string > const &fields1, std::initializer_list< std::string > const &newFields1, std::vector< std::vector< csl::Expr >> const &rotation1, std::initializer_list< std::string > const &fields2, std::initializer_list< std::string > const &newFields2, std::vector< std::vector< csl::Expr >> const &rotation2, int nMassLessFields=0) |
| |
|
void | rotateFields (std::vector< std::string > const &fields, bool diagonalizeMasses=false, int nMassLessFields=0) |
| |
|
void | birotateFields (std::vector< std::string > const &fields1, std::vector< std::string > const &fields2, int nMassLessFields=0) |
| |
|
void | rotateFields (std::initializer_list< std::string > const &fields, bool diagonalizeMasses=false, int nMassLessFields=0) |
| |
|
void | birotateFields (std::initializer_list< std::string > const &fields1, std::initializer_list< std::string > const &fields2, int nMassLessFields=0) |
| |
|
void | applyUnitaryCondition (std::vector< std::vector< csl::Expr >> const &unitary) |
| |
|
void | saveModel (std::ostream &out, int indent=4) override |
| |
|
template<class GroupType > |
| void | setGaugeChoice (GroupType &&group, gauge::Type choice) |
| |
|
template<class FieldType1 , class FieldType2 > |
| void | promoteToGoldstone (FieldType1 &&goldstone, FieldType2 &&gaugeBoson) |
| |
|
template<class FieldType1 , class FieldType2 > |
| void | promoteToGhost (FieldType1 &&ghost, FieldType2 &&gaugeBoson) |
| |
|
template<class FieldType , class ... Args> |
| void | promoteToMajorana (FieldType &&weylFermion, Args &&...args) |
| |
|
void | integrateOutParticle (mty::Particle const &particle, std::vector< csl::Expr > newInteractions) |
| |
|
void | diracFermionEmbedding (std::string const &leftName, std::string const &rightName) |
| |
|
void | diracFermionEmbedding (std::shared_ptr< mty::WeylFermion > leftWeyl, std::shared_ptr< mty::WeylFermion > rightWeyl) |
| |
|
void | applyDiracFermionEmbedding (std::shared_ptr< mty::DiracFermion > const &diracFermion, std::shared_ptr< mty::WeylFermion > leftWeyl, std::shared_ptr< mty::WeylFermion > rightWeyl, std::vector< mty::Lagrangian::TermType > &interaction) |
| |
|
void | gatherMass (mty::Particle const &part) |
| |
|
void | gatherMass (std::string const &name) |
| |
|
void | gatherMasses () |
| |
|
void | refresh () |
| |
|
void | breakU1GaugeSymmetry (std::string const &groupName) |
| |
|
void | breakGaugeSymmetry (std::string const &brokenGroup) |
| |
|
void | breakGaugeSymmetry (std::string const &brokenGroup, std::vector< mty::Particle > const &brokenFields, std::vector< std::vector< std::string >> const &newNames) |
| |
|
void | breakGaugeSymmetry (std::string const &brokenGroup, std::vector< std::string > const &brokenFields, std::vector< std::vector< std::string >> const &newNames) |
| |
|
void | breakGaugeSymmetry (std::string const &brokenGroup, std::vector< std::string > const &brokenFields) |
| |
|
void | breakGaugeSymmetry (std::string const &brokenGroup, std::vector< mty::Particle > const &brokenFields) |
| |
|
void | breakGaugeSymmetry (Group *brokenGroup, std::vector< mty::Particle > const &brokenFields, std::vector< std::vector< std::string >> const &newNames) |
| |
|
void | breakFlavorSymmetry (std::string const &nameGroup) |
| |
|
void | breakFlavorSymmetry (std::string const &flavorName, std::vector< size_t > const &subGroups, std::vector< std::string > newFlavorNames=std::vector< std::string >()) |
| |
|
void | breakFlavorSymmetry (std::string const &flavorName, std::vector< mty::Particle > const &brokenFields, std::vector< std::vector< std::string >> const &newNames) |
| |
|
void | breakFlavorSymmetry (std::string const &flavorName, std::vector< size_t > const &subGroups, std::vector< mty::Particle > const &brokenFields, std::vector< std::vector< std::string >> const &newNames, std::vector< std::string > const &newFlavorNames) |
| |
|
void | diagonalizeMassMatrices () |
| |
|
template<class FieldType > |
| bool | diagonalizeSymbolically (FieldType &&field, bool forceDetZero=false) |
| |
|
void | diagonalizeYukawa (std::string const &nameYukawa, std::vector< std::string > const &nameMass, csl::Expr const &globalFactor=CSL_1) |
| |
|
void | diagonalizeYukawa (std::string const &nameYukawa, std::vector< std::string > const &nameMass, csl::Expr const &globalFactor, csl::Tensor &mixing, std::vector< mty::Particle > mixed) |
| |
|
void | diagonalizeYukawa (std::string const &nameYukawa, std::vector< csl::Expr > const &diagonal, csl::Tensor mixing, std::vector< mty::Particle > mixed) |
| |
|
void | addSpectrum (std::vector< mty::Particle > const &particles, std::vector< std::vector< csl::Expr >> const &mass, std::vector< std::vector< csl::Expr >> const &mix, std::vector< std::vector< csl::Expr >> const &mix2=std::vector< std::vector< csl::Expr >>()) |
| |
|
void | updateDiagonalizationData () |
| |
|
void | applyDiagonalizationData (csl::Expr &expr) const |
| |
|
void | applyDiagonalizationData (std::vector< csl::Expr > &expr) const |
| |
|
void | applyDiagonalizationData (csl::LibraryGenerator &lib) const |
| |
|
void | applyDiagonalizationData (csl::LibraryGenerator &lib, mty::Amplitude const &litudes) const |
| |
|
void | applyDiagonalizationData (csl::LibraryGenerator &lib, std::function< bool(mty::Spectrum const &)> const &condition) const |
| |
|
void | addMassAbbreviations (csl::LibraryGenerator &lib) |
| |
|
void | abbreviateBigTerms (size_t maxLeafs=30) |
| |
|
void | checksRotation (std::vector< mty::Particle > const &fields, std::vector< mty::Particle > const &newFields, std::vector< std::vector< csl::Expr >> const &rotation) |
| |
|
std::vector< csl::Expr > | getRotationTerms (std::vector< mty::Particle > const &newFields, std::vector< std::vector< csl::Expr >> const &rotation) const |
| |
|
std::vector< csl::Expr > | getFullMassMatrix (std::vector< mty::Particle > const &fields) const |
| |
|
void | fillDependenciesForRotation (std::vector< csl::Expr > &kinetic, std::vector< csl::Expr > &interaction, mty::Particle const &field) |
| |
|
void | fillDependenciesForRotation (std::vector< csl::Expr > &kinetic, std::vector< csl::Expr > &interaction, std::vector< mty::Particle > const &fields) |
| |
|
void | applyRotation (mty::Particle const &field, mty::Particle const &newField, csl::Expr const &rotation) |
| |
|
void | applyRotation (std::vector< mty::Particle > const &fields, std::vector< mty::Particle > const &newFields, std::vector< csl::Expr > const &rotations) |
| |
|
void | diagonalizeWithSpectrum (std::vector< mty::Particle > const &fields, std::vector< mty::Particle > const &newFields, std::vector< std::vector< csl::Expr >> const &mixing, std::vector< csl::Expr > const &massMatrix) |
| |
|
void | bidiagonalizeWithSpectrum (std::vector< mty::Particle > const &fields1, std::vector< mty::Particle > const &newFields1, std::vector< std::vector< csl::Expr >> const &mixing1, std::vector< mty::Particle > const &fields2, std::vector< mty::Particle > const &newFields2, std::vector< std::vector< csl::Expr >> const &mixing2, std::vector< csl::Expr > const &massMatrix) |
| |
|
std::vector< std::vector< mty::Particle > > const & | getParticleFamilies () const |
| |
|
void | addParticleFamily (std::vector< mty::Particle > const &families) |
| |
|
void | removeParticleFamily (mty::Particle const &particle) |
| |
|
void | addParticleFamily (std::vector< std::string > const &familyNames) |
| |
|
void | removeParticleFamily (std::string const &particleName) |
| |
|
template<class FieldType > |
| void | setGaugeChoice (FieldType &&field, gauge::Type choice) |
| |
| | ModelData () |
| | Default constructor. More...
|
| |
| | ModelData (std::unique_ptr< Gauge > &&t_gauge) |
| | Constructor with one parameter. More...
|
| |
| | ModelData (std::unique_ptr< Gauge > &&t_gauge, std::unique_ptr< Flavor > &&t_flavor) |
| | Constructor with 2 parameters. More...
|
| |
| | ModelData (std::unique_ptr< Gauge > &&t_gauge, std::unique_ptr< Flavor > &&t_flavor, std::vector< Particle > &t_particles) |
| | Constructor with 3 parameters. More...
|
| |
| | ModelData (std::string const &nameFile) |
| | Creates a model from a model file (.json). More...
|
| |
|
virtual | ~ModelData () |
| | Destructor.
|
| |
|
| ModelData (ModelData &&other)=default |
| | Defaulted move constructor.
|
| |
|
ModelData & | operator= (ModelData &&other)=default |
| | Defaulted move assignement operator.
|
| |
|
| ModelData (ModelData const &other)=delete |
| | Defaulted copy constructor.
|
| |
|
ModelData & | operator= (ModelData const &other)=delete |
| | Defaulted copy assignement operator.
|
| |
| void | init (bool initGaugeTerms=true) |
| | Initializes the gauge once and for all. This function must be called after finishing the gauge, and before adding matter particles. Calling the constructors that take an already built gauge, this function is called automatically. Otherwise you have to call it. More...
|
| |
| void | checkHermiticity () |
| | Checks the hermiticity of the Lagrangian, i.e. checks if \( \mathcal{L}^\dagger = \mathcal{L} \). More...
|
| |
|
void | saveModelFunction (std::string_view name, std::ostream &out, int indent=0) |
| |
|
void | saveModelFunctionWithRef (std::string_view name, std::ostream &out, int indent=0) |
| |
|
void | saveModelFile (std::string_view name, std::string const &fileName) |
| |
| Lagrangian const & | getLagrangian () const |
| | Returns a const reference to the Lagrangian. More...
|
| |
| bool | isEnableChecks () const |
| |
| void | setEnableChecks (bool t_enable) |
| | Sets enableChecks. More...
|
| |
| csl::Space const * | getSpaceTime () const |
| | Returns a pointer to the space time of the mode (csl::Space). More...
|
| |
| mty::Gauge * | getGauge () const |
| | Returns a pointer to the model's gauge. More...
|
| |
| mty::Flavor * | getFlavor () const |
| | Returns a pointer to the model's flavor. More...
|
| |
| std::vector< mty::Particle > const & | getParticles () const |
| | Returns a const reference to the model's particles. More...
|
| |
| std::vector< mty::Particle > | getPhysicalParticles (std::function< bool(mty::Particle)> const &predicate=[](mty::Particle) { return true;}) const |
| | Returns a list of the physical particles in a model. More...
|
| |
| std::vector< mty::QuantumNumber > const & | getQuantumNumbers () const |
| | Returns the list of quantum numbers. More...
|
| |
| std::vector< mty::QuantumNumber > & | getQuantumNumbers () |
| | Returns the list of quantum numbers. More...
|
| |
| std::vector< csl::Expr > const & | getScalarCouplings () const |
| | Returns the scalar couplings (gauge coupling typically) of the model. More...
|
| |
| std::vector< csl::Tensor > const & | getTensorCouplings () const |
| | Returns the tensor couplings (Yukawa coupling typically) of the model. More...
|
| |
| void | setSpaceTime (csl::Space const *t_spaceTime) |
| | Sets the space time of the model. More...
|
| |
| void | setGauge (std::unique_ptr< mty::Gauge > &&t_gauge) |
| | Sets the gauge of the model. More...
|
| |
| void | addGaugedGroup (group::Type type, std::string_view name, int dim, csl::Expr const &coupling=nullptr) |
| | Adds a gauge group to the model. More...
|
| |
| void | addGaugedGroup (group::Type type, std::string_view name, csl::Expr const &coupling=nullptr) |
| | Adds a gauge group to the model. More...
|
| |
| void | addFlavorGroup (std::string_view name, int nFlavor, bool complexFields=true) |
| | Adds a flavor group to the model. More...
|
| |
| void | setFlavor (std::unique_ptr< mty::Flavor > &&t_flavor) |
| | Sets the flavor of the model. More...
|
| |
| void | addParticle (mty::Particle const &part, bool initializeTerms=true) |
| | Adds a particle to the model. More...
|
| |
| void | addParticles (std::vector< mty::Particle > const &parts, bool initializeTerms=true) |
| | Adds a list of particles to the model. More...
|
| |
|
void | addParticlesIn (csl::Expr const &expr) |
| |
| void | removeParticle (mty::Particle const &part) |
| | Removes a particle from the model. More...
|
| |
| void | removeParticles (std::vector< mty::Particle > const &parts) |
| | Removes particles from the model. More...
|
| |
| void | removeParticle (std::string const &part) |
| | Removes a particle from the model. More...
|
| |
| void | removeParticles (std::vector< std::string > const &parts) |
| | Removes particles from the model. More...
|
| |
| void | addScalarCoupling (std::string_view t_name) |
| | Adds a scalar coupling constant in the model. More...
|
| |
| void | addScalarCoupling (csl::Expr const &coupling) |
| | Adds a scalar coupling constant in the model. More...
|
| |
| void | addTensorCoupling (csl::Parent const &tensorCoupling) |
| | Adds a tensor coupling constant in the model. More...
|
| |
| void | addQuantumNumber (std::string_view name, std::vector< mty::Particle > const &fields, std::vector< int > const &values, bool conserved=true) |
| | Adds a new quantum number to a model, giving eigenvalues for particles also. More...
|
| |
| template<class FieldType > |
| void | addQuantumNumber (std::string_view name, std::vector< FieldType > const &fields, std::vector< int > const &values, bool conserved=true) |
| | Adds a new quantum number to a model, giving eigenvalues for particles also. More...
|
| |
| template<class FieldType > |
| void | addQuantumNumber (std::string_view name, std::initializer_list< FieldType > fields, std::vector< int > const &values, bool conserved=true) |
| | Adds a new quantum number to a model, giving eigenvalues for particles also. More...
|
| |
| void | setQuantumNumbers (std::vector< mty::QuantumNumber > const &numbers) |
| | Sets the quantum numbers of the model. More...
|
| |
| bool | findParticle (std::string_view t_name) const |
| | Searches a particle in the model. More...
|
| |
| bool | findParticle (mty::Particle const &part) const |
| | Searches a particle in the model. More...
|
| |
| bool | findParticle (mty::QuantumFieldParent const *part) const |
| | Searches a particle in the model. More...
|
| |
| bool | findScalarCoupling (std::string_view t_name) const |
| | Searches a scalar coupling in the model. More...
|
| |
| bool | findScalarCoupling (csl::Expr const &coupling) const |
| | Searches a scalar coupling in the model. More...
|
| |
| bool | findTensorCoupling (std::string_view t_name) const |
| | Searches a tensor coupling in the model. More...
|
| |
| bool | findTensorCoupling (csl::Parent const &coupling) const |
| | Searches a tensor coupling in the model. More...
|
| |
| bool | findTensorCoupling (csl::AbstractParent const *coupling) const |
| | Searches a tensor coupling in the model. More...
|
| |
| mty::Group const * | getGroup (std::string_view t_name) const |
| | Returns a Group (pointer to const) given its name. More...
|
| |
| mty::Group * | getGroup (std::string_view t_name) |
| | Returns a Group (pointer) given its name. More...
|
| |
| mty::Group const * | getGroup (mty::FlavorGroup const *flavGroup) const |
| | Returns a Group (pointer to const) given its flavor group. More...
|
| |
| mty::Group * | getGroup (mty::FlavorGroup const *flavGroup) |
| | Returns a Group (pointer to const) given its flavor group. More...
|
| |
| mty::GaugedGroup const * | getGaugedGroup (std::string_view t_name) const |
| | Returns a GaugedGroup (pointer to const) given its name. More...
|
| |
| mty::GaugedGroup * | getGaugedGroup (std::string_view t_name) |
| | Returns a GaugedGroup (pointer) given its name. More...
|
| |
| mty::FlavorGroup const * | getFlavorGroup (std::string_view t_name) const |
| | Returns a FlavorGroup (pointer) given its name. More...
|
| |
| mty::FlavorGroup * | getFlavorGroup (std::string_view t_name) |
| | Returns a FlavorGroup (pointer) given its name. More...
|
| |
|
std::vector< mty::Particle > | getParticles (std::initializer_list< std::string_view > names) const |
| |
| mty::Particle | getParticle (std::string_view t_name) const |
| | Returns a particle in the model given a name. More...
|
| |
| mty::Particle | getParticle (mty::QuantumFieldParent const *field) const |
| | Returns a particle in the model given a pointer to QuantumFieldParent. More...
|
| |
| mty::Particle | getParticle (mty::QuantumFieldParent const &field) const |
| | Returns a particle in the model given a QuantumFieldParent. More...
|
| |
| mty::Particle | getParticle (mty::QuantumField const &field) const |
| | Returns a particle in the model given a QuantumField. More...
|
| |
| mty::Particle | getParticle (csl::Expr const &field) const |
| | Returns a particle in the model given an expression. More...
|
| |
| csl::Expr | getScalarCoupling (std::string_view t_name) const |
| | Returns a scalar coupling given its name. More...
|
| |
| csl::Tensor | getTensorCoupling (std::string_view t_name) const |
| | Returns a tensor coupling given its name. More...
|
| |
| csl::Tensor | getTensorCoupling (csl::Parent const &t_coupling) const |
| | Returns a tensor coupling. More...
|
| |
| template<class FieldType > |
| mty::GaugeIrrep | getGaugeIrrep (FieldType &&field) const |
| | Returns the gauge representation of a field. More...
|
| |
| template<class GroupType , class FieldType > |
| mty::Irrep | getGroupIrrep (FieldType &&field, GroupType &&group) const |
| | Returns the group representation of a field. More...
|
| |
| template<class GroupType , class FieldType > |
| csl::Expr | getCharge (FieldType &&field, GroupType &&group) const |
| | Returns the charge representation of a field in a U(1) group. More...
|
| |
| template<class FieldType > |
| mty::FlavorIrrep | getFlavorIrrep (FieldType &&field) const |
| | Returns the flavor representation of a field. More...
|
| |
| template<class FlavorType , class FieldType > |
| mty::Irrep | getFlavorIrrep (FieldType &&field, FlavorType &&flavor) const |
| | Returns the flavor group representation of a field. More...
|
| |
| template<class GroupType , class FieldType > |
| csl::Space const * | getVectorSpace (GroupType &&group, FieldType &&field) const |
| | Returns the vector space coresponding to the representation of a field in a given group. More...
|
| |
| template<class GroupType , class FieldType > |
| csl::Index | generateIndex (GroupType &&group, FieldType &&field) const |
| | Returns an index coresponding to the representation of a field in a given group. More...
|
| |
| template<class GroupType > |
| csl::Index | generateIndex (GroupType &&group) const |
| | Returns an index coresponding to the fundamental representation in a given group. More...
|
| |
| template<class GroupType , class FieldType > |
| std::vector< csl::Index > | generateIndices (size_t nIndices, GroupType &&group, FieldType &&field) const |
| | Returns indices coresponding to the representation of a field in a given group. More...
|
| |
| template<class GroupType > |
| std::vector< csl::Index > | generateIndices (size_t nIndices, GroupType &&group) const |
| | Returns indices coresponding to the fundamental representation in a given group. More...
|
| |
| template<class GroupType , class FieldType > |
| csl::Index | generateIndex (std::string_view nameIndex, GroupType &&group, FieldType &&field) const |
| | Returns an index coresponding to the representation of a field in a given group. More...
|
| |
| template<class GroupType , class FieldType > |
| mty::Generator | getGenerator (GroupType &&group, FieldType &&field) const |
| | Returns the generator coresponding to the representation of a field in a given group. More...
|
| |
| mty::QuantumNumber const & | getQuantumNumber (std::string_view name) const |
| | Returns a quantum number (const reference) given its name. More...
|
| |
| mty::QuantumNumber & | getQuantumNumber (std::string_view name) |
| | Returns a quantum number (reference) given its name. More...
|
| |
| void | checkValidity (mty::Particle const &part) const |
| | Checks the validity of a particle when adding it to the model. More...
|
| |
| void | checkValidity (mty::Lagrangian::TermType const &term) const |
| | Checks the validity of a term when adding it to the Lagrangian. More...
|
| |
| void | addLagrangianTerm (csl::Expr const &term, bool addHermitic=false) |
| | Adds a lagrangian term to the model. More...
|
| |
| void | addLagrangianTerm (mty::Lagrangian::TermType const &term, bool addHermitic=false) |
| | Adds a lagrangian term to the model. More...
|
| |
| template<class FieldType > |
| void | addBosonicMass (FieldType &&field, std::string_view mass) |
| | Adds a bosonic mass term to the model. More...
|
| |
| template<class FieldType > |
| void | addBosonicMass (FieldType &&field, csl::Expr const &mass) |
| | Adds a bosonic mass term to the model. More...
|
| |
| template<class FieldType1 , class FieldType2 > |
| void | addFermionicMass (FieldType1 &&left, FieldType2 &&right, std::string_view mass) |
| | Adds a fermionic mass to the model. More...
|
| |
| template<class FieldType1 , class FieldType2 > |
| void | addFermionicMass (FieldType1 &&left, FieldType2 &&right, csl::Expr const &mass) |
| | Adds a fermionic mass to the model. More...
|
| |
| template<class FieldType > |
| void | addFermionicMass (FieldType &&diracFermion, std::string_view mass) |
| | Adds a fermionic mass to the model. More...
|
| |
| template<class FieldType > |
| void | addFermionicMass (FieldType &&diracFermion, csl::Expr const &mass) |
| | Adds a fermionic mass to the model. More...
|
| |
| template<class FieldType > |
| void | renameParticle (FieldType &&field, std::string_view newName) |
| | Renames a particle of the model. More...
|
| |
| void | renameCoupling (std::string_view name, std::string_view newName) |
| | Renames a (scalar or tensor) coupling of the model. More...
|
| |
| void | printSubPart (std::vector< std::string > const &particles, std::ostream &out=std::cout) const |
| | Prints a sub part of the Lagrangian including some particles. More...
|
| |
| void | printSubPart (std::initializer_list< std::string > particles, std::ostream &out=std::cout) const |
| | Prints a sub part of the Lagrangian including some particles. More...
|
| |
| void | printSubPart (std::string const &particle, std::ostream &out=std::cout) const |
| | Prints a sub part of the Lagrangian including some particles. More...
|
| |
|
static void | projectOnBasis (csl::Expr &expr, OperatorBasis basis) |
| |
|
static void | findAbreviation (csl::Expr &expr) |
| |
|
static Model * | current = nullptr |
| |
|
static size_t | nMomentums = 10 |
| | Number of momenta instantiated for the model (10). With 5 maximum external legs, this is fairly safe.
|
| |
|
static csl::Space const * | defaultSpaceTime = &csl::Minkowski |
| | Default space-time for the model's particles. There is actually no support for another space that csl::Minkowski yet.
|
| |
| static int | defaultQuantumNumber = 1 |
| | Default quantum number for particles when not given. More...
|
| |
|
std::vector< mty::QuantumField > | recoverQuantumInsertions (std::vector< csl::Expr > const &insertions) |
| |
|
KinematicLink | connectKinematics (Amplitude &M1, Amplitude &M2) const |
| |
|
std::pair< csl::Expr, csl::Expr > | getMomentumReplacement (Amplitude const &M, size_t replacedMomentum) const |
| |
|
void | replaceMomentumForLink (Amplitude &M, std::pair< csl::Expr, csl::Expr > const &pReplacement) const |
| |
|
bool | mediatorToPropagator (csl::Expr &prod, KinematicLink const &link) const |
| |
|
csl::Expr | connectMediator (csl::Expr const &M1, csl::Expr const &M2, KinematicLink const &link) const |
| |
|
void | replaceTermInLagrangian (std::vector< Lagrangian::TermType > &lagrangian, size_t &i, csl::vector_expr &newTerms) |
| |
|
void | fillDependencies (std::vector< csl::Expr > &kinetic, std::vector< csl::Expr > &mass, std::vector< csl::Expr > &interaction, std::function< bool(Lagrangian::TermType const &)> dependencyFunc) |
| |
|
std::vector< csl::Expr > | clearDependencies (std::function< bool(Lagrangian::TermType const &)> dependencyFunc) |
| |
|
std::vector< csl::Expr > | clearDependencies (std::vector< Lagrangian::TermType > &terms, std::function< bool(Lagrangian::TermType const &)> dependencyFunc) |
| |
|
void | doSetGaugeChoice (mty::Particle vectorBoson, gauge::Type choice) |
| |
|
void | doPromoteToGoldstone (mty::Particle &goldstone, mty::Particle &gaugeBoson) |
| |
|
void | doPromoteToGhost (mty::Particle &ghost, mty::Particle &gaugeBoson) |
| |
|
void | clearProjectorsInMass () |
| |
|
void | doPromoteToMajorana (mty::Particle &weylFermion, std::string const &newParticleName="") |
| |
|
bool | doDiagonalizeSymbolically (mty::Particle const &field, bool forceDetZero=false) |
| |
|
void | breakLagrangian (mty::Particle const &init, csl::Space const *brokenSpace) |
| |
|
void | breakLagrangian (mty::Particle const &init, csl::Space const *brokenSpace, std::vector< csl::Space const *> const &newSpace) |
| |
|
std::vector< MassBlock > | getMassBlocks () const |
| |
|
bool | diagonalizeExplicitely (MassBlock const &block, std::vector< mty::Particle > &newFields, bool forceDetZero=false) |
| |
|
void | writeMatrix (Spectrum::matrix< csl::Expr > const &m, std::ostream &out, std::string const &indent) const |
| |
|
void | writeSpectrum (std::ostream &out, int indentSize) const |
| |
| void | initGaugedGroups (bool initGaugeTerms=true) |
| | Initializes gauge terms (gauge bosons, ghosts) and fixes the gauge. More...
|
| |
|
void | writeHeader (std::ostream &out, int indentSize, std::vector< csl::Parent > &defined) |
| |
|
void | writeGauge (std::ostream &out, int indentSize, std::vector< csl::Parent > &defined) |
| |
|
void | writeFlavor (std::ostream &out, int indentSize, std::vector< csl::Parent > &defined) |
| |
|
void | writeMassAndWidth (std::ostream &out, int indentSize, std::vector< csl::Parent > &defined) |
| |
|
void | writeParticles (std::ostream &out, int indentSize, std::vector< csl::Parent > &defined) |
| |
|
void | writeDependencies (std::ostream &out, int indentSize, std::vector< csl::Parent > &defined, std::vector< csl::Expr > &kinetic, std::vector< csl::Expr > &mass, std::vector< csl::Expr > &interac) |
| |
|
void | writeLagrangian (std::ostream &out, int indentSize, std::vector< csl::Expr > const &kinetic, std::vector< csl::Expr > const &mass, std::vector< csl::Expr > const &interac) |
| |
| mty::GaugeIrrep | doGetGaugeIrrep (mty::Particle const &part) const |
| | Actually returns the gauge representation of a particle. More...
|
| |
| mty::Irrep | doGetGroupIrrep (mty::Particle const &part, mty::Group const *group) const |
| | Actually returns the group representation of a particle. More...
|
| |
| csl::Expr | doGetCharge (mty::Particle const &particle, mty::Group const *group) const |
| | Actually returns the charge representation of a particle for a U(1) group. More...
|
| |
| mty::FlavorIrrep | doGetFlavorIrrep (mty::Particle const &part) const |
| | Actually returns the flavor representation of a particle. More...
|
| |
| mty::Irrep | doGetFlavorIrrep (mty::Particle const &part, mty::Group const *flavor) const |
| | Actually returns the flavor group representation of a particle. More...
|
| |
| csl::Space const * | doGetVectorSpace (mty::Group const *group, mty::Particle const &irrep) const |
| | Actually returns the vector space corresponding to a particle's representation. More...
|
| |
| csl::Space const * | doGetVectorSpace (mty::FlavorGroup const *group, mty::Particle const &irrep) const |
| | Actually returns the vector space corresponding to a particle's representation. More...
|
| |
| csl::Index | doGenerateIndex (mty::Group const *group, mty::Particle const &fieldRep) const |
| | Actually returns a csl::Index corresponding to a particle's representation. More...
|
| |
| csl::Index | doGenerateIndex (mty::Group const *group) const |
| | Actually returns a csl::Index corresponding to the fundamental representation of a given group. More...
|
| |
| csl::Index | doGenerateIndex (std::string_view nameIndex, mty::Group const *group, mty::Particle const &fieldRep) const |
| | Actually returns a csl::Index corresponding to a particle's representation. More...
|
| |
| mty::Generator | doGetGenerator (mty::Group const *group, mty::Particle const &fieldRep) const |
| | Actually returns a generator corresponding to a particle's representation. More...
|
| |
|
void | doAddBosonicMass (mty::Particle const &particle, std::string_view mass) |
| |
|
void | doAddBosonicMass (mty::Particle const &particle, csl::Expr const &mass) |
| |
|
void | doAddFermionicMass (mty::Particle const &left, mty::Particle const &right, std::string_view mass) |
| |
|
void | doAddFermionicMass (mty::Particle const &left, mty::Particle const &right, csl::Expr const &mass) |
| |
|
void | doAddFermionicMass (mty::Particle const &diracFermion, std::string_view mass) |
| |
|
void | doAddFermionicMass (mty::Particle const &diracFermion, csl::Expr const &mass) |
| |
| void | doRenameParticle (mty::Particle const &part, std::string_view newName) |
| | Actually renames a particle. More...
|
| |
|
static bool | isValidMassTerm (mty::InteractionTerm const &term) |
| |
|
static std::vector< mty::Particle > | uniqueContent (mty::InteractionTerm const &term) |
| |
|
static std::vector< mty::Particle >::const_iterator | findInContent (std::vector< mty::Particle > const &content, mty::Particle const &field) |
| |
|
static bool | fieldInContent (std::vector< mty::Particle > const &content, mty::Particle const &field) |
| |
|
static csl::Expr | getMassMatrixOf (MassBlock const &block) |
| |
|
std::vector< mty::FeynmanRule > | feynmanRules |
| |
|
std::vector< Spectrum > | spectra |
| | Vector of Spectrum objects, remembering symbolic diagonalizations to, later on, diagonalize numerically mass matrices and update mixing terms.
|
| |
|
std::vector< csl::Expr > | abbreviatedMassExpressions |
| | Vector of abbreviated masses in the model, determined by the ModelBuilder::gatherMasses() function and written to libraries by the mty::Library::generateSpectrum() function.
|
| |
|
std::vector< std::vector< mty::Particle > > | particleFamilies |
| |
| mty::Lagrangian | L |
| | Lagrangian of the model. More...
|
| |
| csl::Space const * | spaceTime |
| | Space time for the model. More...
|
| |
|
std::unique_ptr< mty::Gauge > | gauge |
| | Gauge of the model.
|
| |
|
std::unique_ptr< mty::Flavor > | flavor |
| | Flavor of the model.
|
| |
| std::vector< mty::Particle > | particles |
| | Particle content (including gauge bosons, ghosts etc) of the model. More...
|
| |
| std::vector< mty::QuantumNumber > | quantumNumbers |
| | List of quantum numbers in the model. More...
|
| |
| std::vector< csl::Expr > | scalarCouplings |
| | Lists of scalar couplings of the model. More...
|
| |
| std::vector< csl::Tensor > | tensorCouplings |
| | List of tensor couplings of the model. More...
|
| |
| bool | gaugeLocked = false |
| | Boolean that tells if the gauge model is initilialized. More...
|
| |
| bool | enableChecks = true |
| | Boolean telling if checks must be done with lagrangian terms added to the model (gauge representation, dispatching ...) More...
|
| |