Documentation of MARTY
A Modern ARtificial Theoretical phYsicist
Enumerations | Functions | Variables
mty::Topology Namespace Reference

Namespace containing topology utilities for Feynman diagram calculations. More...

Enumerations

enum  Type {
  Tadpole = (1 << 0),
  Mass = (1 << 1),
  Triangle = (1 << 2),
  Box = (1 << 3),
  Pentagon = (1 << 4),
  Any = Tadpole | Mass | Triangle | Box | Pentagon
}
 Enumeration of the different possible topologies. More...
 

Functions

Type legsToTopology (int nLegs)
 Converts an integer corresponding to a number of legs to a topology. More...
 
std::ostream & operator<< (std::ostream &out, Type t)
 Overload of output stream operator for a topology. More...
 

Variables

constexpr auto topologyList
 List of the different possible topologies. More...
 
constexpr auto names
 Names for topologies. More...
 

Detailed Description

Namespace containing topology utilities for Feynman diagram calculations.

Enumeration Type Documentation

◆ Type

Enumeration of the different possible topologies.

Enumeration values are aligned on powers of 2 to be able to compose topologies using the pipe | as the logical 'or'. For example, Triangle | Box corresponds to a topology "triangle or box". The topology Any refers to all the topologies and is equivalent to

The topology does not count the number of propagators in the loop but the number of particles connected to it. For only 3-vertices those two situations are equivalent but when higher order vertices are connected to the loop they are not. For example, a 4-vertex looping with a 3-vertex by 2 propagators is a Triangle because the loop is connected to three external particles (2 from the 4-vertex + 1 form the 3-vertex).

Enumerator
Tadpole 

Tadpole 1-point function.

Mass 

Mass correction 2-point function.

Triangle 

Triangle 3-point function.

Box 

Box 4-point function.

Pentagon 

Pentagon 5-point function.

Any 

Any topologies i.e. combination of all 5 possible topologies.

Function Documentation

◆ legsToTopology()

Type mty::Topology::legsToTopology ( int  nLegs)
inline

Converts an integer corresponding to a number of legs to a topology.

Parameters
nLegsnumber of legs outside the loop.
Returns
The topology corresponding to a loop with nLegs legs.

◆ operator<<()

std::ostream& mty::Topology::operator<< ( std::ostream &  out,
Type  t 
)
inline

Overload of output stream operator for a topology.

Parameters
outOutput stream.
tType of the topology to display.
Returns
The modified output stream.

Variable Documentation

◆ names

constexpr auto mty::Topology::names
inline
Initial value:
= {
"Tadpole", "Mass", "Triangle", "Box", "Pentagon"
}

Names for topologies.

◆ topologyList

constexpr auto mty::Topology::topologyList
inline
Initial value:
= {
}
Definition: topology.h:53
Definition: topology.h:52
Definition: topology.h:55
Definition: topology.h:51
Definition: topology.h:54

List of the different possible topologies.