flexiblesusy is hosted by Hepforge, IPPP Durham
FlexibleSUSY
slha_format.hpp File Reference
#include <string>
Include dependency graph for slha_format.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  flexiblesusy
 
namespace  flexiblesusy::anonymous_namespace{slha_format.hpp}
 

Macros

#define FORMAT_EFFECTIVECOUPLINGS(pdg1, pdg2, pdg3, width, comment)
 
#define FORMAT_ELEMENT(pdg, value, name)
 
#define FORMAT_MASS(pdg, mass, name)
 
#define FORMAT_MIXING_MATRIX(i, k, entry, name)
 
#define FORMAT_NUMBER(n, str)
 
#define FORMAT_OBSINFO(i, j, str)
 
#define FORMAT_RANK_THREE_TENSOR(i, j, k, entry, name)
 
#define FORMAT_SCALE(n)
 
#define FORMAT_SPINFO(n, str)
 
#define FORMAT_TOTAL_WIDTH(pdg, width, name)
 
#define FORMAT_VECTOR(i, entry, name)
 
#define FORMAT_WILSON_COEFFICIENTS(f, m, x, y, ph, entry, name)
 

Functions

template<typename Container >
std::string flexiblesusy::format_decay (double br, const Container &pids, const std::string &name)
 

Variables

constexpr unsigned flexiblesusy::anonymous_namespace{slha_format.hpp}::SLHA_MAX_LINE_LENGTH = 200
 maximum line length in SLHA output More...
 

Macro Definition Documentation

◆ FORMAT_EFFECTIVECOUPLINGS

#define FORMAT_EFFECTIVECOUPLINGS (   pdg1,
  pdg2,
  pdg3,
  width,
  comment 
)
Value:
[&] { \
char buf[SLHA_MAX_LINE_LENGTH]; \
const int pdg1_ = (pdg1); \
const int pdg2_ = (pdg2); \
const int pdg3_ = (pdg3); \
const double width_ = (width); \
const std::string comment_ = (comment); \
pdg1_, pdg2_, pdg3_, width_, comment_.c_str()); \
return std::string(buf); \
}()
constexpr unsigned SLHA_MAX_LINE_LENGTH
maximum line length in SLHA output
Definition: slha_format.hpp:53
const char *const format_effectivecouplings
SLHA line formatter for the EFFECTIVECOUPLINGS block.
Definition: slha_format.cpp:46

Definition at line 196 of file slha_format.hpp.

◆ FORMAT_ELEMENT

#define FORMAT_ELEMENT (   pdg,
  value,
  name 
)
Value:
[&] { \
char buf[SLHA_MAX_LINE_LENGTH]; \
const int pdg_ = (pdg); \
const double value_ = (value); \
const std::string name_ = (name); \
std::snprintf(buf, SLHA_MAX_LINE_LENGTH, single_element_formatter, pdg_, \
value_, name_.c_str()); \
return std::string(buf); \
}()
const char *const single_element_formatter
SLHA line formatter for the one-element entries = HMIX, GAUGE, MSOFT, ...
Definition: slha_format.cpp:36

Definition at line 107 of file slha_format.hpp.

◆ FORMAT_MASS

#define FORMAT_MASS (   pdg,
  mass,
  name 
)
Value:
[&] { \
char buf[SLHA_MAX_LINE_LENGTH]; \
const int pdg_ = (pdg); \
const double mass_ = (mass); \
const std::string name_ = (name); \
std::snprintf(buf, SLHA_MAX_LINE_LENGTH, mass_formatter, pdg_, mass_, \
name_.c_str()); \
return std::string(buf); \
}()
const char *const mass_formatter
SLHA line formatter for the MASS block entries.
Definition: slha_format.cpp:24

Definition at line 73 of file slha_format.hpp.

◆ FORMAT_MIXING_MATRIX

#define FORMAT_MIXING_MATRIX (   i,
  k,
  entry,
  name 
)
Value:
[&] { \
char buf[SLHA_MAX_LINE_LENGTH]; \
const int i_ = (i); \
const int k_ = (k); \
const double entry_ = (entry); \
const std::string name_ = (name); \
std::snprintf(buf, SLHA_MAX_LINE_LENGTH, mixing_matrix_formatter, i_, \
k_, entry_, name_.c_str()); \
return std::string(buf); \
}()
const char *const mixing_matrix_formatter
SLHA line formatter for the mixing matrix entries = NMIX, UMIX, VMIX, ...
Definition: slha_format.cpp:26

Definition at line 84 of file slha_format.hpp.

◆ FORMAT_NUMBER

#define FORMAT_NUMBER (   n,
  str 
)
Value:
[&] { \
char buf[SLHA_MAX_LINE_LENGTH]; \
const double n_ = (n); \
const std::string str_ = (str); \
std::snprintf(buf, SLHA_MAX_LINE_LENGTH, number_formatter, n_, \
str_.c_str()); \
return std::string(buf); \
}()
const char *const number_formatter
SLHA number formatter.
Definition: slha_format.cpp:30

Definition at line 126 of file slha_format.hpp.

◆ FORMAT_OBSINFO

#define FORMAT_OBSINFO (   i,
  j,
  str 
)
Value:
[&] { \
char buf[SLHA_MAX_LINE_LENGTH]; \
const int i_ = (i); \
const int j_ = (j); \
const std::string str_ = (str); \
std::snprintf(buf, SLHA_MAX_LINE_LENGTH, obsinfo_formatter, i_, j_, \
str_.c_str()); \
return std::string(buf); \
}()
const char *const obsinfo_formatter
SLHA line formatter for the OBSINFO block entries.
Definition: slha_format.cpp:40

Definition at line 146 of file slha_format.hpp.

◆ FORMAT_RANK_THREE_TENSOR

#define FORMAT_RANK_THREE_TENSOR (   i,
  j,
  k,
  entry,
  name 
)
Value:
[&] { \
char buf[SLHA_MAX_LINE_LENGTH]; \
const int i_ = (i); \
const int j_ = (j); \
const int k_ = (k); \
const double entry_ = (entry); \
const std::string name_ = (name); \
std::snprintf(buf, SLHA_MAX_LINE_LENGTH, tensor_formatter, i_, j_, k_, \
entry_, name_.c_str()); \
return std::string(buf); \
}()
const char *const tensor_formatter
SLHA line formatter for entries with three indices.
Definition: slha_format.cpp:32

Definition at line 157 of file slha_format.hpp.

◆ FORMAT_SCALE

#define FORMAT_SCALE (   n)
Value:
[&] { \
char buf[SLHA_MAX_LINE_LENGTH]; \
const double n_ = (n); \
std::snprintf(buf, SLHA_MAX_LINE_LENGTH, scale_formatter, n_); \
return std::string(buf); \
}()
const char *const scale_formatter
SLHA scale formatter.
Definition: slha_format.cpp:34

Definition at line 118 of file slha_format.hpp.

◆ FORMAT_SPINFO

#define FORMAT_SPINFO (   n,
  str 
)
Value:
[&] { \
char buf[SLHA_MAX_LINE_LENGTH]; \
const int n_ = (n); \
const std::string str_ = (str); \
std::snprintf(buf, SLHA_MAX_LINE_LENGTH, spinfo_formatter, n_, \
str_.c_str()); \
return std::string(buf); \
}()
const char *const spinfo_formatter
SLHA line formatter for the SPINFO block entries.
Definition: slha_format.cpp:38

Definition at line 136 of file slha_format.hpp.

◆ FORMAT_TOTAL_WIDTH

#define FORMAT_TOTAL_WIDTH (   pdg,
  width,
  name 
)
Value:
[&] { \
char buf[SLHA_MAX_LINE_LENGTH]; \
const int pdg_ = (pdg); \
const double width_ = (width); \
const std::string name_ = (name); \
pdg_, width_, name_.c_str()); \
return std::string(buf); \
}()
const char *const format_total_width
SLHA line formatter for the DECAY block.
Definition: slha_format.cpp:44

Definition at line 185 of file slha_format.hpp.

◆ FORMAT_VECTOR

#define FORMAT_VECTOR (   i,
  entry,
  name 
)
Value:
[&] { \
char buf[SLHA_MAX_LINE_LENGTH]; \
const int i_ = (i); \
const double entry_ = (entry); \
const std::string name_ = (name); \
std::snprintf(buf, SLHA_MAX_LINE_LENGTH, vector_formatter, i_, entry_, \
name_.c_str()); \
return std::string(buf); \
}()
const char *const vector_formatter
SLHA line formatter for vector entries.
Definition: slha_format.cpp:28

Definition at line 96 of file slha_format.hpp.

◆ FORMAT_WILSON_COEFFICIENTS

#define FORMAT_WILSON_COEFFICIENTS (   f,
  m,
  x,
  y,
  ph,
  entry,
  name 
)
Value:
[&] { \
char buf[SLHA_MAX_LINE_LENGTH]; \
const std::string f_ = (f); \
const std::string m_ = (m); \
const int x_ = (x); \
const int y_ = (y); \
const int ph_ = (ph); \
const double entry_ = (entry); \
const std::string name_ = (name); \
std::snprintf(buf, SLHA_MAX_LINE_LENGTH, wilson_formatter, f_.c_str(), \
m_.c_str(), x_, y_, ph_, entry_, name_.c_str()); \
return std::string(buf); \
}()
std::complex< double > f(double tau) noexcept
const char *const wilson_formatter
FLHA line formatter for FWCOEF, IMFCOEF block entries.
Definition: slha_format.cpp:42

Definition at line 170 of file slha_format.hpp.