Documentation of MARTY
A Modern ARtificial Theoretical phYsicist
Data Structures | Namespaces | Functions
mrtInterface.h File Reference

Contains interface functions for the user. More...

#include "model.h"
#include "insertion.h"

Go to the source code of this file.

Data Structures

struct  mty::enable_model< Type >
 
struct  mty::disable_model< Type >
 

Namespaces

 mty
 Namespace of MARTY.
 

Functions

csl::Tensor mty::MinkowskiVector (std::string const &name)
 Returns a csl::Tensor, vector in csl::Minkowski space. More...
 
csl::Index mty::MinkowskiIndex (std::string const &name="")
 Returns a csl::Index in csl::Minkowki space. More...
 
std::vector< csl::Indexmty::DiracIndices (size_t n, std::string const &name="")
 Returns indices in the 4-dimensional Dirac space mty::dirac4. More...
 
std::vector< csl::Indexmty::MinkowskiIndices (size_t n, std::string const &name="")
 Returns indices in csl::Minkowki space. More...
 
csl::Index mty::DiracIndex (std::string const &name="")
 Returns a csl::Index in the 4-dimensional Dirac space mty::dirac4. More...
 
template<class GroupType , class FieldType >
csl::Index mty::GaugeIndex (std::string const &nameIndex, mty::Model const &model, GroupType &&group, FieldType &&part)
 Returns a csl::Index living in the representation of a certain field in a certain group. More...
 
template<class GroupType >
csl::Index mty::FlavorIndex (mty::Model const &model, GroupType &&group)
 Returns a csl::Index for a given flavor group. More...
 
template<class GroupType >
std::vector< csl::Indexmty::FlavorIndices (size_t nIndices, mty::Model const &model, GroupType &&group)
 Returns indices for a given flavor group. More...
 
template<class GroupType , class FieldType >
csl::Index mty::GaugeIndex (mty::Model const &model, GroupType &&group, FieldType &&part)
 Returns a csl::Index living in the representation of a certain field in a certain group. More...
 
template<class GroupType , class FieldType >
std::vector< csl::Indexmty::GaugeIndices (size_t nIndices, mty::Model const &model, GroupType &&group, FieldType &&part)
 Returns indices living in the representation of a certain field in a certain group. More...
 
const csl::Spacemty::VectorSpace (mty::Model const &model, std::string const &nameGroup, Particle const &part)
 Returns the vector space corresponding to the representation of a given particle in a given group. More...
 
csl::Index mty::GenerateIndex (csl::Space const *space, std::string const &name="")
 Generates an index in a given space. More...
 
csl::Tensor mty::Delta (const csl::Space *space)
 Returns the Kronecker delta of a given vector space. More...
 
csl::Tensor mty::Metric (const csl::Space *space)
 Returns the metric of a given vector space. More...
 
csl::Tensor mty::Epsilon (const csl::Space *space)
 Returns the epsilon symbol of a given vector space. More...
 
csl::Tensor mty::DiracGamma ()
 
csl::Tensor mty::DiracGamma5 ()
 
csl::Tensor mty::DiracSigma ()
 
csl::Tensor mty::DiracPL ()
 
csl::Tensor mty::DiracPR ()
 
csl::Tensor mty::DiracProjector (Chirality chir)
 Returns a projector in Dirac 4-dim space depending on a chirality. More...
 
csl::Tensor mty::DiracCMatrix ()
 
template<class GroupType , class FieldType >
mty::Generator mty::GetGenerator (mty::Model &model, GroupType &&group, FieldType &&field)
 Returns the generator coresponding to the representation of a field in a given group. More...
 
template<class GroupType , class FieldType >
csl::Space const * mty::GetVectorSpace (mty::Model &model, GroupType &&group, FieldType &&field)
 Returns the vector space corresponding the the representation of a given field in a given group. More...
 
Amplitude mty::SelfEnergy (mty::Order order, mty::Particle &particle, mty::Model &model)
 
Amplitude mty::SelfEnergy (mty::Particle &particle, mty::Model &model)
 
csl::Expr mty::ComputeSquaredAmplitude (mty::Model &model, Amplitude const &ampl)
 
std::vector< FeynmanRule > mty::ComputeFeynmanRules (mty::Model &model)
 
void mty::ContractIndices (csl::Expr &init)
 
void mty::ContractIndices (std::vector< csl::Expr > &init)
 
void mty::Display (std::vector< FeynmanRule > const &rules, std::ostream &out=std::cout)
 
void mty::Display (std::vector< csl::Expr > const &amplitudes, std::ostream &out=std::cout, bool simplify=false)
 
void mty::Display (mty::Amplitude const &amplitudes, std::ostream &out=std::cout, bool simplify=false)
 
void mty::Display (WilsonSet const &wilsons, std::ostream &out=std::cout)
 
void mty::Show (std::vector< FeynmanRule > const &rules)
 
void mty::Show (std::vector< std::shared_ptr< wick::Graph >> const &diagrams)
 
void mty::Show (mty::Amplitude const &diagrams)
 
void mty::Show (WilsonSet const &wilsons)
 
void mty::Show (std::vector< FeynmanRule > const &rules, size_t first, size_t last)
 
void mty::Show (std::vector< std::shared_ptr< wick::Graph >> const &diagrams, size_t first, size_t last)
 
void mty::Show (mty::Amplitude const &diagrams, size_t first, size_t last)
 
void mty::Show (WilsonSet const &wilsons, size_t first, size_t last)
 
template<class T >
void mty::Display (T const &printable, std::ostream &out=std::cout)
 
void mty::DisplayAbbreviations (std::ostream &out=std::cout)
 
void mty::DisplayAbbreviations (std::string const &name, std::ostream &out=std::cout)
 
void mty::ExportPDF (std::string const &nameFiles, std::vector< std::shared_ptr< wick::Graph >> const &graphs)
 
void mty::ExportPDF (std::string const &nameFiles, std::vector< FeynmanRule > const &rules)
 
void mty::ExportPNG (std::string const &nameFiles, std::vector< std::shared_ptr< wick::Graph >> const &graphs)
 
void mty::ExportPNG (std::string const &nameFiles, std::vector< FeynmanRule > const &rules)
 
template<class ... Args>
void mty::AddGaugedGroup (mty::Model &model, Args &&...args)
 
template<class ... Args>
void mty::AddFlavorGroup (mty::Model &model, Args &&...args)
 
void mty::AddParticle (mty::Model &model, mty::Particle &particle, bool initTerms=true)
 
void mty::AddTerm (mty::Model &model, csl::Expr const &term, bool addCC=false)
 
void mty::AddTerm (mty::Model &model, std::vector< csl::Expr > const &terms, bool addCC=false)
 
mty::Particle mty::GetParticle (mty::Model const &model, std::string const &name)
 
csl::Expr mty::GetMass (mty::Particle const &particle)
 
mty::Particle mty::GenerateSimilarParticle (std::string const &name, mty::Particle const &particle)
 
mty::Particle mty::GetFieldStrength (Particle const &particle)
 
void mty::PromoteGoldstone (mty::Model &model, mty::Particle &goldstone, mty::Particle &gaugeBoson)
 
void mty::PromoteGoldstone (mty::Model &model, char const *goldstone, char const *gaugeBoson)
 
csl::Expr mty::GetCoupling (mty::Model const &model, std::string const &nameCoupling)
 
csl::Tensor mty::GetYukawa (mty::Model const &model, std::string const &nameCoupling)
 
void mty::Rename (mty::Model &model, std::string const &oldName, std::string const &newName)
 
template<class ... Args>
void mty::SetMass (Particle &part, Args &&...args)
 
template<class ... Args>
void mty::SetWidth (Particle &part, Args &&...args)
 
void mty::SetSelfConjugate (Particle &part, bool selfConjugate)
 
void mty::SetGroupRep (mty::Particle &part, std::string const &nameGroup, std::vector< int > const &highestWeight)
 
void mty::SetGroupRep (mty::Particle &part, std::string const &nameGroup, int charge)
 
void mty::SetFlavorRep (mty::Particle &part, std::string const &nameGroup)
 
void mty::Init (mty::Model &model)
 
void mty::Replaced (mty::Model &model, csl::Expr const &init, csl::Expr const &target)
 Replaces an expression in all kinetic / mass / interactions terms of a model. More...
 
void mty::Replaced (mty::Model &model, csl::Tensor &init, csl::Expr const &target)
 Replaces an expression in all kinetic / mass / interactions terms of a model. More...
 
void mty::Replaced (mty::Model &model, csl::Tensor &init, csl::Tensor &target)
 Replaces an expression in all kinetic / mass / interactions terms of a model. More...
 
void mty::Replaced (mty::Model &model, Particle const &particle, csl::Expr const &newTerm)
 Replaces a particle in all kinetic / mass / interactions terms of a model. More...
 
void mty::Rotate (mty::Model &model, std::vector< mty::Particle > const &fields, std::vector< mty::Particle > const &newFields, std::vector< std::vector< csl::Expr >> const &rotation, bool diagonalizeMasses=false)
 Rotates a bunch of fields to another using a given matrix. More...
 
void mty::Rotate (mty::Model &model, std::vector< std::string > const &fields, std::vector< std::string > const &newFields, std::vector< std::vector< csl::Expr >> const &rotation, bool diagonalizeMasses=false)
 Rotates a bunch of fields to another using a given matrix. More...
 
void mty::DiagonalizeMassMatrices (mty::Model &model)
 
void mty::BreakGaugeSymmetry (mty::Model &model, std::string const &brokenGroup, std::vector< Particle > const &brokenFields, std::vector< std::vector< std::string >> const &newNames)
 
void mty::BreakGaugeSymmetry (mty::Model &model, std::string const &brokenGroup, std::initializer_list< std::string > const &brokenFields, std::vector< std::vector< std::string >> const &newNames)
 
void mty::BreakFlavorSymmetry (mty::Model &model, std::string const &brokenFlavor, std::initializer_list< std::string > const &brokenFields, std::vector< std::vector< std::string >> const &newNames)
 
void mty::BreakFlavorSymmetry (mty::Model &model, std::string const &brokenFlavor, std::vector< mty::Particle > const &brokenFields, std::vector< std::vector< std::string >> const &newNames)
 
template<class ... Args>
void mty::BreakGaugeSymmetry (mty::Model &model, Args &&...args)
 
template<class ... Args>
void mty::BreakFlavorSymmetry (mty::Model &model, Args &&...args)
 
void mty::Refreshed (mty::Model &model)
 
void mty::IntegrateOutParticle (mty::Particle &particle, bool value=true)
 
std::unique_ptr< mty::SemiSimpleAlgebramty::CreateAlgebra (algebra::Type type, int l=-1)
 Creates a specilization of SemiSimpleAlgebra of type type. More...
 
mty::Irrep mty::GetIrrep (mty::SemiSimpleAlgebra const *algebra, std::vector< int > const &labels)
 
mty::Irrep mty::GetIrrep (std::unique_ptr< mty::SemiSimpleAlgebra > const &algebra, std::vector< int > const &labels)
 
mty::Irrep mty::GetConjugateRep (mty::Irrep const &rep)
 
mty::SemiSimpleAlgebra const * mty::GetAlgebraOf (Irrep const &rep)
 
int mty::GetDimension (mty::Irrep const &irrep)
 
bool mty::ContainsIrrep (mty::SumIrrep const &decomposition, mty::Irrep const &irrep)
 
bool mty::ContainsTrivialrep (mty::SumIrrep const &decomposition)
 
void mty::SetGaugeChoice (mty::Model &model, std::string const &nameParticle, mty::gauge::Type choice)
 This function changes the gauge fixing parameter for the gauge boson of name nameGroup. Depending on this choice, the propagator of gauge bosons is modified. More...
 
void mty::SetGaugeChoice (mty::Particle particle, mty::gauge::Type choice)
 This function changes the gauge choice in model for the gauge boson particle. Depending on this choice, the propagator of gauge bosons is modified. More...
 
std::string mty::FindProcessName (std::string const &initName, std::vector< mty::Insertion > const &insertions)
 

Detailed Description

Contains interface functions for the user.

Author
Gregoire Uhlrich
Version
1.3