class Gambit::DecayTable::Entry

DecayTable entry class. Holds the info on all decays of a given particle.

#include <decay_table.hpp>

Public Functions

Name
voidset_BF(double BF, double error, const std::vector< std::pair< int, int > > & daughters)
Set branching fraction for decay to a given final state. 1. PDG-context integer pairs (vector)
voidset_BF(double BF, double error, const std::vector< str > & daughters)
Set branching fraction for decay to a given final state. 2. full particle names (vector)
template <typename… Args>
void
set_BF(double BF, double error, std::pair< int, int > p1, Args… args)
template <typename… Args>
void
set_BF(double BF, double error, str p1, Args… args)
boolhas_channel(const std::vector< std::pair< int, int > > & daughters) const
Check if a given final state exists in this DecayTable::Entry. 1. PDG-context integer pairs (vector)
boolhas_channel(const std::vector< str > & daughters) const
Check if a given final state exists in this DecayTable::Entry. 2. full particle names (vector)
template <typename… Args>
bool
has_channel(std::pair< int, int > p1, Args… args) const
template <typename… Args>
bool
has_channel(str p1, Args… args) const
doubleBF(const std::vector< std::pair< int, int > > & daughters) const
Retrieve branching fraction for decay to a given final state. 1. PDG-context integer pairs (vector)
doubleBF(const std::vector< str > & daughters) const
Retrieve branching fraction for decay to a given final state. 2. full particle names (vector)
template <typename… Args>
double
BF(std::pair< int, int > p1, Args… args) const
template <typename… Args>
double
BF(str p1, Args… args) const
template <typename… Args>
double
BF_error(std::pair< int, int > p1, Args… args) const
template <typename… Args>
double
BF_error(str p1, Args… args) const
template <typename… Args>
std::pair< double, double >
BF_with_error(std::pair< int, int > p1, Args… args) const
template <typename… Args>
std::pair< double, double >
BF_with_error(str p1, Args… args) const
SLHAea::BlockgetSLHAea_block(int v, str p, bool include_zero_bfs =false, const mass_es_pseudonyms & psn =mass_es_pseudonyms()) const
SLHAea::BlockgetSLHAea_block(int v, str p, int i, bool include_zero_bfs =false, const mass_es_pseudonyms & psn =mass_es_pseudonyms()) const
SLHAea::BlockgetSLHAea_block(int v, std::pair< int, int > p, bool include_zero_bfs =false, const mass_es_pseudonyms & psn =mass_es_pseudonyms()) const
Entry()
Default constructor.
Entry(double width)
Constructor taking total width.
Entry(const SLHAea::Block & block, int context =0, bool force_SM_fermion_gauge_eigenstates =false, str calculator ="", str calculator_version ="")
Constructor creating a DecayTableEntry from an SLHAea DECAY block; full version.
Entry(const SLHAea::Block & block, SLHAea::Block::const_iterator block_def, int context =0, bool force_SM_fermion_gauge_eigenstates =false, str calculator ="", str calculator_version ="")
Constructor creating a DecayTableEntry from an SLHAea DECAY block; full version; version assuming block def is already known.
doublesum_BF() const
Sum up the partial widths and return the result.

Public Attributes

Name
doublewidth_in_GeV
Total particle width (in GeV)
doublepositive_error
Positive error on width.
doublenegative_error
Negative error on width.
strcalculator
Name of the code (backend or otherwise) used for calculating this entry.
strcalculator_version
Version of the code used for calculating this entry.
strwarnings
Warnings from the calculator.
strerrors
Errors from the calculator.
std::map< std::multiset< std::pair< int, int > >, std::pair< double, double > >channels

Public Functions Documentation

function set_BF

void set_BF(
    double BF,
    double error,
    const std::vector< std::pair< int, int > > & daughters
)

Set branching fraction for decay to a given final state. 1. PDG-context integer pairs (vector)

Set branching fraction for decay to a given final state. Supports arbitrarily many final state particles. Five ways to specify final states:

  1. PDG-context integer pairs (vector)
  2. full particle names (vector)
  3. PDG-context integer pairs (arguments)
  4. full particle names (arguments)
  5. short particle names + index integers (arguments)

function set_BF

void set_BF(
    double BF,
    double error,
    const std::vector< str > & daughters
)

Set branching fraction for decay to a given final state. 2. full particle names (vector)

function set_BF

template <typename... Args>
inline void set_BF(
    double BF,
    double error,
    std::pair< int, int > p1,
    Args... args
)

function set_BF

template <typename... Args>
inline void set_BF(
    double BF,
    double error,
    str p1,
    Args... args
)

function has_channel

bool has_channel(
    const std::vector< std::pair< int, int > > & daughters
) const

Check if a given final state exists in this DecayTable::Entry. 1. PDG-context integer pairs (vector)

Check if a given final state exists in this DecayTable::Entry. Supports arbitrarily many final state particles. Five ways to specify final states:

  1. PDG-context integer pairs (vector)
  2. full particle names (vector)
  3. PDG-context integer pairs (arguments)
  4. full particle names (arguments)
  5. short particle names + index integers (arguments)

function has_channel

bool has_channel(
    const std::vector< str > & daughters
) const

Check if a given final state exists in this DecayTable::Entry. 2. full particle names (vector)

function has_channel

template <typename... Args>
inline bool has_channel(
    std::pair< int, int > p1,
    Args... args
) const

function has_channel

template <typename... Args>
inline bool has_channel(
    str p1,
    Args... args
) const

function BF

double BF(
    const std::vector< std::pair< int, int > > & daughters
) const

Retrieve branching fraction for decay to a given final state. 1. PDG-context integer pairs (vector)

Retrieve branching fraction for decay to a given final state. Five ways to specify final states:

  1. PDG-context integer pairs (vector)
  2. full particle names (vector)
  3. PDG-context integer pairs (arguments)
  4. full particle names (arguments)
  5. short particle names + index integers (arguments) Supports arbitrarily many final state particles.

function BF

double BF(
    const std::vector< str > & daughters
) const

Retrieve branching fraction for decay to a given final state. 2. full particle names (vector)

function BF

template <typename... Args>
inline double BF(
    std::pair< int, int > p1,
    Args... args
) const

function BF

template <typename... Args>
inline double BF(
    str p1,
    Args... args
) const

function BF_error

template <typename... Args>
inline double BF_error(
    std::pair< int, int > p1,
    Args... args
) const

Retrieve branching fraction error for decay to a given final state. Three ways to specify final states: PDG-context integer pairs, full particle names, short particle names + index integers. Supports arbitrarily many final state particles.

function BF_error

template <typename... Args>
inline double BF_error(
    str p1,
    Args... args
) const

function BF_with_error

template <typename... Args>
inline std::pair< double, double > BF_with_error(
    std::pair< int, int > p1,
    Args... args
) const

Retrieve branching fraction and error for decay to a given final state. Three ways to specify final states: PDG-context integer pairs, full particle names, short particle names + index integers. Supports arbitrarily many final state particles.

function BF_with_error

template <typename... Args>
inline std::pair< double, double > BF_with_error(
    str p1,
    Args... args
) const

function getSLHAea_block

SLHAea::Block getSLHAea_block(
    int v,
    str p,
    bool include_zero_bfs =false,
    const mass_es_pseudonyms & psn =mass_es_pseudonyms()
) const

Output this entry as an SLHAea DECAY block, using input parameter to identify the mother particle.

Output a decay table entry as an SLHAea DECAY block

function getSLHAea_block

SLHAea::Block getSLHAea_block(
    int v,
    str p,
    int i,
    bool include_zero_bfs =false,
    const mass_es_pseudonyms & psn =mass_es_pseudonyms()
) const

function getSLHAea_block

SLHAea::Block getSLHAea_block(
    int v,
    std::pair< int, int > p,
    bool include_zero_bfs =false,
    const mass_es_pseudonyms & psn =mass_es_pseudonyms()
) const

function Entry

inline Entry()

Default constructor.

function Entry

inline Entry(
    double width
)

Constructor taking total width.

function Entry

Entry(
    const SLHAea::Block & block,
    int context =0,
    bool force_SM_fermion_gauge_eigenstates =false,
    str calculator ="",
    str calculator_version =""
)

Constructor creating a DecayTableEntry from an SLHAea DECAY block; full version.

function Entry

Entry(
    const SLHAea::Block & block,
    SLHAea::Block::const_iterator block_def,
    int context =0,
    bool force_SM_fermion_gauge_eigenstates =false,
    str calculator ="",
    str calculator_version =""
)

Constructor creating a DecayTableEntry from an SLHAea DECAY block; full version; version assuming block def is already known.

Constructor creating a DecayTableEntry from an SLHAea DECAY block; full version; version assuming block def is already known

function sum_BF

double sum_BF() const

Sum up the partial widths and return the result.

Sum up the branching fractions for a single particle’s entry and return the result.

Public Attributes Documentation

variable width_in_GeV

double width_in_GeV;

Total particle width (in GeV)

variable positive_error

double positive_error;

Positive error on width.

variable negative_error

double negative_error;

Negative error on width.

variable calculator

str calculator;

Name of the code (backend or otherwise) used for calculating this entry.

variable calculator_version

str calculator_version;

Version of the code used for calculating this entry.

variable warnings

str warnings;

Warnings from the calculator.

variable errors

str errors;

Errors from the calculator.

variable channels

std::map< std::multiset< std::pair< int, int > >, std::pair< double, double > > channels;

The actual underlying map of channels to their BFs. Just iterate over this directly if you need to iterate over all decays of this particle.


Updated on 2023-06-26 at 21:36:50 +0000