Documentation of MARTY
A Modern ARtificial Theoretical phYsicist
Functions
mty::filter Namespace Reference

Namespace containing built-in filters in MARTY. More...

Functions

template<class ParticleIterator >
auto disableParticles (ParticleIterator first, ParticleIterator last)
 Filter disabling a range of particles provided begin and end iterators for the given range. More...
 
auto disableParticles (std::vector< mty::Particle > const &particles)
 Filter disabling a range of particles in a std::vector. More...
 
auto disableParticles (std::initializer_list< mty::Particle > particles)
 Filter disabling a range of particles in an initializer_list. More...
 
auto disableParticles (std::initializer_list< std::string_view > names, mty::Model const &model= *Model::current)
 Filter disabling a range of particles from their names in an initializer_list. More...
 
auto disableParticle (mty::Particle const &particle)
 Filter disabling one particle. More...
 
auto disableParticle (std::string_view name, mty::Model const &model= *Model::current)
 Filter disabling one particle given its name. More...
 
template<class ParticleIterator >
auto disableParticleCombination (ParticleIterator first, ParticleIterator last)
 Filter disabling a particular combination of particles. More...
 
auto disableParticleCombination (std::vector< mty::Particle > const &particles)
 Filter disabling a particular combination of particles from a std::vector. More...
 
auto disableParticleCombination (std::initializer_list< mty::Particle > particles)
 Filter disabling a particular combination of particles from a std::initializer_list. More...
 
auto disableParticleCombination (std::initializer_list< std::string_view > names, mty::Model const &model= *Model::current)
 Filter disabling a particular combination of particle from their names. More...
 
template<class ParticleIterator >
auto forceParticleCombination (ParticleIterator first, ParticleIterator last)
 Filter forcing a particular combination of particles. More...
 
auto forceParticleCombination (std::vector< mty::Particle > const &particles)
 Filter forcing a particular combination of particles given in a std::vector. More...
 
auto forceParticleCombination (std::initializer_list< mty::Particle > particles)
 Filter forcing a particular combination of particles given in a std::initializer_list. More...
 
auto forceParticleCombination (std::initializer_list< std::string_view > names, mty::Model const &model= *Model::current)
 Filter forcing a particular combination of particles given their names. More...
 
auto forceParticle (mty::Particle const &particle)
 Filter forcing one particle in diagrams. More...
 
auto forceParticle (std::string_view name, mty::Model const &model= *Model::current)
 Filter forcing one particle in diagrams given its name. More...
 
template<class ParticleIterator >
auto forceParticles (ParticleIterator first, ParticleIterator last)
 Filter forcing particles in diagrams. More...
 
auto forceParticles (std::vector< mty::Particle > const &particles)
 Filter forcing particles in diagrams given in a std::vector. More...
 
auto forceParticles (std::initializer_list< mty::Particle > particles)
 Filter forcing particles in diagrams given in a std::initializer_list. More...
 
auto forceParticles (std::initializer_list< std::string_view > names, mty::Model const &model= *Model::current)
 Filter forcing particles in diagrams given their names. More...
 

Detailed Description

Namespace containing built-in filters in MARTY.

Function Documentation

◆ disableParticle() [1/2]

auto mty::filter::disableParticle ( mty::Particle const &  particle)
inline

Filter disabling one particle.

Parameters
particleParticle to disable.
Returns
A mty::FeynOptions::LagrangianFilter filter filtering out the particle particle.

◆ disableParticle() [2/2]

auto mty::filter::disableParticle ( std::string_view  name,
mty::Model const &  model = *Model::current 
)
inline

Filter disabling one particle given its name.

Parameters
nameName of the particle to disable.
modelModel in which the particle is taken, default is the current mty::Model.
Returns
A mty::FeynOptions::LagrangianFilter filter filtering out the particle named particle in the model model.

◆ disableParticleCombination() [1/4]

template<class ParticleIterator >
auto mty::filter::disableParticleCombination ( ParticleIterator  first,
ParticleIterator  last 
)

Filter disabling a particular combination of particles.

This function does not accept ranges of other objects than mty::Particle. To get filters directly from particle names, see the other overloads. This function is the only one actually doing the job, the other overloads are delegating to it.

Template Parameters
ParticleIteratorIterator type, must point to mty::Particle objects.
Parameters
firstBegin iterator.
lastEnd iterator.
Returns
A mty::FeynOptions::DiagramFilter filtering out diagrams containing all particles contained in the range.

◆ disableParticleCombination() [2/4]

auto mty::filter::disableParticleCombination ( std::vector< mty::Particle > const &  particles)
inline

Filter disabling a particular combination of particles from a std::vector.

Parameters
particlesRange of particles, combination to disable in diagrams.
Returns
A mty::FeynOptions::DiagramFilter filtering out diagrams containing all particles contained in the range.

◆ disableParticleCombination() [3/4]

auto mty::filter::disableParticleCombination ( std::initializer_list< mty::Particle particles)
inline

Filter disabling a particular combination of particles from a std::initializer_list.

Parameters
particlesRange of particles, combination to disable in diagrams.
Returns
A mty::FeynOptions::DiagramFilter filtering out diagrams containing all particles contained in the range.

◆ disableParticleCombination() [4/4]

auto mty::filter::disableParticleCombination ( std::initializer_list< std::string_view >  names,
mty::Model const &  model = *Model::current 
)
inline

Filter disabling a particular combination of particle from their names.

Parameters
namesRange of particle names, combination to disable in diagrams.
modelModel in which the particles are taken, default is the current mty::Model.
Returns
A mty::FeynOptions::DiagramFilter filtering out diagrams containing all particles contained in the range.

◆ disableParticles() [1/4]

template<class ParticleIterator >
auto mty::filter::disableParticles ( ParticleIterator  first,
ParticleIterator  last 
)

Filter disabling a range of particles provided begin and end iterators for the given range.

This function does not accept ranges of other objects than mty::Particle. To get filters directly from particle names, see the other overloads. This function is the only one actually doing the job, the other overloads are delegating to it.

Template Parameters
ParticleIteratorIterator type, must point to mty::Particle objects.
Parameters
firstBegin iterator.
lastEnd iterator
Returns
A mty::FeynOptions::LagrangianFilter filter filtering out all particles contained between first and last.

◆ disableParticles() [2/4]

auto mty::filter::disableParticles ( std::vector< mty::Particle > const &  particles)
inline

Filter disabling a range of particles in a std::vector.

Parameters
particlesRange of particles to disable.
Returns
A mty::FeynOptions::LagrangianFilter filter filtering out all particles contained in the particles range.

◆ disableParticles() [3/4]

auto mty::filter::disableParticles ( std::initializer_list< mty::Particle particles)
inline

Filter disabling a range of particles in an initializer_list.

Parameters
particlesRange of particles to disable.
Returns
A mty::FeynOptions::LagrangianFilter filter filtering out all particles contained in the particles range.

◆ disableParticles() [4/4]

auto mty::filter::disableParticles ( std::initializer_list< std::string_view >  names,
mty::Model const &  model = *Model::current 
)
inline

Filter disabling a range of particles from their names in an initializer_list.

Parameters
namesRange of particle names to disable.
modelModel in which particles are taken, default is the current mty::Model.
Returns
A mty::FeynOptions::LagrangianFilter filter filtering out all particles contained in the particles range.

◆ forceParticle() [1/2]

auto mty::filter::forceParticle ( mty::Particle const &  particle)
inline

Filter forcing one particle in diagrams.

Parameters
particleParticle to force in diagrams.
Returns
A mty::FeynOptions::DiagramFilter filtering out all diagrams that do not contain the given particle.

◆ forceParticle() [2/2]

auto mty::filter::forceParticle ( std::string_view  name,
mty::Model const &  model = *Model::current 
)
inline

Filter forcing one particle in diagrams given its name.

Parameters
nameParticle name to force in diagrams.
modelModel in which the particle is taken, default is mty::Model::current.
Returns
A mty::FeynOptions::DiagramFilter filtering out all diagrams that do not contain the given particle.

◆ forceParticleCombination() [1/4]

template<class ParticleIterator >
auto mty::filter::forceParticleCombination ( ParticleIterator  first,
ParticleIterator  last 
)

Filter forcing a particular combination of particles.

This function does not accept ranges of other objects than mty::Particle. To get filters directly from particle names, see the other overloads. This function is the only one actually doing the job, the other overloads are delegating to it.

Template Parameters
ParticleIteratorIterator type, must point to mty::Particle objects.
Parameters
firstBegin iterator.
lastEnd iterator.
Returns
A mty::FeynOptions::DiagramFilter filtering out diagrams that do not contain all the particles given in the range.

◆ forceParticleCombination() [2/4]

auto mty::filter::forceParticleCombination ( std::vector< mty::Particle > const &  particles)
inline

Filter forcing a particular combination of particles given in a std::vector.

Parameters
particlesRange of particles, combination to force in diagrams.
Returns
A mty::FeynOptions::DiagramFilter filtering out diagrams that do not contain all the particles given in the range.

◆ forceParticleCombination() [3/4]

auto mty::filter::forceParticleCombination ( std::initializer_list< mty::Particle particles)
inline

Filter forcing a particular combination of particles given in a std::initializer_list.

Parameters
particlesRange of particles, combination to force in diagrams.
Returns
A mty::FeynOptions::DiagramFilter filtering out diagrams that do not contain all the particles given in the range.

◆ forceParticleCombination() [4/4]

auto mty::filter::forceParticleCombination ( std::initializer_list< std::string_view >  names,
mty::Model const &  model = *Model::current 
)
inline

Filter forcing a particular combination of particles given their names.

Parameters
namesRange of particle names, combination to force in diagrams.
modelModel in which particles are taken, default is mty::Model::current.
Returns
A mty::FeynOptions::DiagramFilter filtering out diagrams that do not contain all the particles given in the range.

◆ forceParticles() [1/4]

template<class ParticleIterator >
auto mty::filter::forceParticles ( ParticleIterator  first,
ParticleIterator  last 
)

Filter forcing particles in diagrams.

This function does not accept ranges of other objects than mty::Particle. To get filters directly from particle names, see the other overloads. This function is the only one actually doing the job, the other overloads are delegating to it.

Template Parameters
ParticleIteratorIterator type, must point to mty::Particle objects.
Parameters
firstBegin iterator.
lastEnd iterator.
Returns
A mty::FeynOptions::DiagramFilter filtering out diagrams that do not contain any of the particles given in the range.

◆ forceParticles() [2/4]

auto mty::filter::forceParticles ( std::vector< mty::Particle > const &  particles)
inline

Filter forcing particles in diagrams given in a std::vector.

Parameters
particlesParticle range to force in diagrams.
Returns
A mty::FeynOptions::DiagramFilter filtering out diagrams that do not contain any of the particles given in the range.

◆ forceParticles() [3/4]

auto mty::filter::forceParticles ( std::initializer_list< mty::Particle particles)
inline

Filter forcing particles in diagrams given in a std::initializer_list.

Parameters
particlesParticle range to force in diagrams.
Returns
A mty::FeynOptions::DiagramFilter filtering out diagrams that do not contain any of the particles given in the range.

◆ forceParticles() [4/4]

auto mty::filter::forceParticles ( std::initializer_list< std::string_view >  names,
mty::Model const &  model = *Model::current 
)
inline

Filter forcing particles in diagrams given their names.

Parameters
namesRange of particle names to force in diagrams.
modelModel in which particles are taken, default is mty::Model::current.
Returns
A mty::FeynOptions::DiagramFilter filtering out diagrams that do not contain any of the particles given in the range.