flexiblesusy is hosted by Hepforge, IPPP Durham
FlexibleSUSY
flexiblesusy::Problems Class Reference

stores problem flags for the spectrum generator More...

#include <problems.hpp>

Collaboration diagram for flexiblesusy::Problems:
Collaboration graph

Classes

struct  NonPerturbativeValue
 

Public Member Functions

void add (const Problems &)
 add problems from other class More...
 
void clear ()
 clear all problems More...
 
void flag_bad_mass (int particle, bool flag=true)
 
void flag_no_ewsb ()
 
void flag_no_ewsb_tree_level ()
 
void flag_no_GFermi_convergence ()
 
void flag_no_minimum (const std::string &msg, int status)
 
void flag_no_perturbative ()
 
void flag_no_pole_mass_convergence (int particle)
 
void flag_no_root (const std::string &msg, int status)
 
void flag_no_sinThetaW_convergence ()
 
void flag_non_perturbative_parameter (int parameter, double value, double scale, double threshold=0.)
 
void flag_pole_tachyon (int particle, bool flag=true)
 
void flag_running_tachyon (int particle, bool flag=true)
 
void flag_thrown (const std::string &msg="unknown")
 
std::vector< int > get_bad_masses () const
 
std::vector< int > get_failed_pole_mass_convergence () const
 
const std::string & get_model_name () const
 
std::string get_parameter_name (int) const
 returns parameter name More...
 
std::string get_particle_name (int) const
 returns particle name More...
 
std::vector< int > get_pole_tachyons () const
 
std::string get_problem_string (const std::string &sep="\n") const
 
std::vector< std::string > get_problem_strings () const
 
std::vector< int > get_running_tachyons () const
 
std::string get_warning_string (const std::string &sep="\n") const
 
std::vector< std::string > get_warning_strings () const
 
bool have_bad_mass () const
 
bool have_failed_pole_mass_convergence () const
 
bool have_non_perturbative_parameter () const
 
bool have_pole_tachyon () const
 
bool have_problem () const
 problems which yield invalid spectrum More...
 
bool have_running_tachyon () const
 
bool have_tachyon () const
 
bool have_thrown () const
 
bool have_warning () const
 warnings More...
 
bool is_bad_mass (int particle) const
 
bool is_pole_tachyon (int particle) const
 
bool is_running_tachyon (int particle) const
 
bool no_ewsb () const
 
bool no_ewsb_tree_level () const
 
bool no_GFermi_convergence () const
 
bool no_minimum () const
 
bool no_perturbative () const
 
bool no_root () const
 
bool no_sinThetaW_convergence () const
 
unsigned number_of_problems () const
 returns number of problems More...
 
unsigned number_of_warnings () const
 returns number of warnings More...
 
void print_problems () const
 
void print_problems (std::ostream &) const
 
void print_warnings () const
 
void print_warnings (std::ostream &) const
 
 Problems (const std::string &model_name_, const Names *particle_names_, const Names *parameter_names_)
 
void unflag_all_bad_masses ()
 
void unflag_all_non_perturbative_parameters ()
 
void unflag_all_tachyons ()
 
void unflag_bad_mass (int particle)
 
void unflag_no_ewsb ()
 
void unflag_no_ewsb_tree_level ()
 
void unflag_no_GFermi_convergence ()
 
void unflag_no_minimum (const std::string &msg)
 
void unflag_no_perturbative ()
 
void unflag_no_pole_mass_convergence (int particle)
 
void unflag_no_root (const std::string &msg)
 
void unflag_no_sinThetaW_convergence ()
 
void unflag_non_perturbative_parameter (int parameter)
 
void unflag_pole_tachyon (int particle)
 
void unflag_running_tachyon (int particle)
 
void unflag_thrown ()
 

Private Attributes

std::vector< int > bad_masses
 imprecise mass eigenvalues More...
 
std::string exception_msg
 exception message More...
 
bool failed_ewsb {false}
 no EWSB More...
 
bool failed_ewsb_tree_level {false}
 no tree-level EWSB More...
 
bool failed_GFermi_convergence {false}
 G_Fermi not converged. More...
 
std::map< std::string, int > failed_minimum
 no minimum found (message, status code) More...
 
std::vector< int > failed_pole_mass_convergence
 no convergence during pole mass calculation More...
 
std::map< std::string, int > failed_root
 no root found (message, status code) More...
 
bool failed_sinThetaW_convergence {false}
 sinThetaW-parameter not converged More...
 
std::string model_name
 model name More...
 
std::map< int, NonPerturbativeValuenon_pert_pars
 non-perturbative parmeters More...
 
bool non_perturbative {false}
 non-perturbative running More...
 
const Namesparameter_names
 access to parameter names More...
 
const Namesparticle_names
 access to particle names More...
 
std::vector< int > pole_tachyons
 tachyonic particles (pole mass) More...
 
std::vector< int > running_tachyons
 tachyonic particles (running mass) More...
 

Detailed Description

stores problem flags for the spectrum generator

Definition at line 35 of file problems.hpp.

Constructor & Destructor Documentation

◆ Problems()

flexiblesusy::Problems::Problems ( const std::string &  model_name_,
const Names particle_names_,
const Names parameter_names_ 
)

Definition at line 53 of file problems.cpp.

Member Function Documentation

◆ add()

◆ clear()

◆ flag_bad_mass()

void flexiblesusy::Problems::flag_bad_mass ( int  particle,
bool  flag = true 
)

Definition at line 264 of file problems.cpp.

References bad_masses.

◆ flag_no_ewsb()

void flexiblesusy::Problems::flag_no_ewsb ( )

Definition at line 292 of file problems.cpp.

References failed_ewsb.

◆ flag_no_ewsb_tree_level()

void flexiblesusy::Problems::flag_no_ewsb_tree_level ( )

Definition at line 297 of file problems.cpp.

References failed_ewsb_tree_level.

◆ flag_no_GFermi_convergence()

void flexiblesusy::Problems::flag_no_GFermi_convergence ( )

Definition at line 302 of file problems.cpp.

References failed_GFermi_convergence.

◆ flag_no_minimum()

void flexiblesusy::Problems::flag_no_minimum ( const std::string &  msg,
int  status 
)

Definition at line 338 of file problems.cpp.

References failed_minimum.

◆ flag_no_perturbative()

void flexiblesusy::Problems::flag_no_perturbative ( )

Definition at line 307 of file problems.cpp.

References non_perturbative.

◆ flag_no_pole_mass_convergence()

void flexiblesusy::Problems::flag_no_pole_mass_convergence ( int  particle)

Definition at line 312 of file problems.cpp.

References failed_pole_mass_convergence.

◆ flag_no_root()

void flexiblesusy::Problems::flag_no_root ( const std::string &  msg,
int  status 
)

Definition at line 343 of file problems.cpp.

References failed_root.

◆ flag_no_sinThetaW_convergence()

void flexiblesusy::Problems::flag_no_sinThetaW_convergence ( )

Definition at line 333 of file problems.cpp.

References failed_sinThetaW_convergence.

◆ flag_non_perturbative_parameter()

void flexiblesusy::Problems::flag_non_perturbative_parameter ( int  parameter,
double  value,
double  scale,
double  threshold = 0. 
)

◆ flag_pole_tachyon()

void flexiblesusy::Problems::flag_pole_tachyon ( int  particle,
bool  flag = true 
)

Definition at line 278 of file problems.cpp.

References flexiblesusy::Names::get(), particle_names, pole_tachyons, and WARNING.

◆ flag_running_tachyon()

void flexiblesusy::Problems::flag_running_tachyon ( int  particle,
bool  flag = true 
)

Definition at line 269 of file problems.cpp.

References flexiblesusy::Names::get(), particle_names, running_tachyons, and WARNING.

◆ flag_thrown()

void flexiblesusy::Problems::flag_thrown ( const std::string &  msg = "unknown")

Definition at line 287 of file problems.cpp.

References exception_msg.

◆ get_bad_masses()

std::vector< int > flexiblesusy::Problems::get_bad_masses ( ) const

Definition at line 519 of file problems.cpp.

References bad_masses.

Referenced by flexiblesusy::mathlink_format_warnings().

◆ get_failed_pole_mass_convergence()

std::vector< int > flexiblesusy::Problems::get_failed_pole_mass_convergence ( ) const

Definition at line 534 of file problems.cpp.

References failed_pole_mass_convergence.

Referenced by flexiblesusy::mathlink_format_problems().

◆ get_model_name()

const std::string & flexiblesusy::Problems::get_model_name ( ) const

Definition at line 259 of file problems.cpp.

References model_name.

Referenced by add().

◆ get_parameter_name()

std::string flexiblesusy::Problems::get_parameter_name ( int  idx) const

returns parameter name

Definition at line 138 of file problems.cpp.

References flexiblesusy::Names::get(), and parameter_names.

Referenced by flag_non_perturbative_parameter(), and get_problem_strings().

◆ get_particle_name()

std::string flexiblesusy::Problems::get_particle_name ( int  idx) const

returns particle name

Definition at line 146 of file problems.cpp.

References flexiblesusy::Names::get(), and particle_names.

Referenced by flexiblesusy::mathlink_format_problems(), and flexiblesusy::mathlink_format_warnings().

◆ get_pole_tachyons()

std::vector< int > flexiblesusy::Problems::get_pole_tachyons ( ) const

Definition at line 529 of file problems.cpp.

References pole_tachyons.

Referenced by flexiblesusy::mathlink_format_problems().

◆ get_problem_string()

std::string flexiblesusy::Problems::get_problem_string ( const std::string &  sep = "\n") const

Definition at line 223 of file problems.cpp.

References flexiblesusy::concat(), and get_problem_strings().

Referenced by print_problems().

◆ get_problem_strings()

◆ get_running_tachyons()

std::vector< int > flexiblesusy::Problems::get_running_tachyons ( ) const

Definition at line 524 of file problems.cpp.

References running_tachyons.

Referenced by flexiblesusy::mathlink_format_problems().

◆ get_warning_string()

std::string flexiblesusy::Problems::get_warning_string ( const std::string &  sep = "\n") const

Definition at line 228 of file problems.cpp.

References flexiblesusy::concat(), and get_warning_strings().

Referenced by print_warnings().

◆ get_warning_strings()

std::vector< std::string > flexiblesusy::Problems::get_warning_strings ( ) const

◆ have_bad_mass()

bool flexiblesusy::Problems::have_bad_mass ( ) const

Definition at line 444 of file problems.cpp.

References bad_masses.

Referenced by flexiblesusy::mathlink_format_warnings(), and number_of_warnings().

◆ have_failed_pole_mass_convergence()

bool flexiblesusy::Problems::have_failed_pole_mass_convergence ( ) const

◆ have_non_perturbative_parameter()

bool flexiblesusy::Problems::have_non_perturbative_parameter ( ) const

Definition at line 472 of file problems.cpp.

References non_pert_pars.

Referenced by flexiblesusy::mathlink_format_problems(), and number_of_problems().

◆ have_pole_tachyon()

bool flexiblesusy::Problems::have_pole_tachyon ( ) const

Definition at line 456 of file problems.cpp.

References pole_tachyons.

Referenced by have_tachyon().

◆ have_problem()

bool flexiblesusy::Problems::have_problem ( ) const

problems which yield invalid spectrum

Definition at line 105 of file problems.cpp.

References number_of_problems().

Referenced by print_problems().

◆ have_running_tachyon()

bool flexiblesusy::Problems::have_running_tachyon ( ) const

Definition at line 450 of file problems.cpp.

References running_tachyons.

Referenced by have_tachyon().

◆ have_tachyon()

bool flexiblesusy::Problems::have_tachyon ( ) const

◆ have_thrown()

bool flexiblesusy::Problems::have_thrown ( ) const

◆ have_warning()

bool flexiblesusy::Problems::have_warning ( ) const

warnings

Definition at line 126 of file problems.cpp.

References number_of_warnings().

Referenced by print_warnings().

◆ is_bad_mass()

bool flexiblesusy::Problems::is_bad_mass ( int  particle) const

Definition at line 429 of file problems.cpp.

References bad_masses.

◆ is_pole_tachyon()

bool flexiblesusy::Problems::is_pole_tachyon ( int  particle) const

Definition at line 439 of file problems.cpp.

References pole_tachyons.

◆ is_running_tachyon()

bool flexiblesusy::Problems::is_running_tachyon ( int  particle) const

Definition at line 434 of file problems.cpp.

References running_tachyons.

◆ no_ewsb()

bool flexiblesusy::Problems::no_ewsb ( ) const

Definition at line 484 of file problems.cpp.

References failed_ewsb.

Referenced by flexiblesusy::mathlink_format_problems().

◆ no_ewsb_tree_level()

bool flexiblesusy::Problems::no_ewsb_tree_level ( ) const

Definition at line 489 of file problems.cpp.

References failed_ewsb_tree_level.

◆ no_GFermi_convergence()

bool flexiblesusy::Problems::no_GFermi_convergence ( ) const

Definition at line 494 of file problems.cpp.

References failed_GFermi_convergence.

◆ no_minimum()

bool flexiblesusy::Problems::no_minimum ( ) const

Definition at line 509 of file problems.cpp.

References failed_minimum.

Referenced by number_of_problems().

◆ no_perturbative()

bool flexiblesusy::Problems::no_perturbative ( ) const

Definition at line 499 of file problems.cpp.

References non_perturbative.

Referenced by flexiblesusy::mathlink_format_problems().

◆ no_root()

bool flexiblesusy::Problems::no_root ( ) const

Definition at line 514 of file problems.cpp.

References failed_root.

Referenced by number_of_problems().

◆ no_sinThetaW_convergence()

bool flexiblesusy::Problems::no_sinThetaW_convergence ( ) const

Definition at line 504 of file problems.cpp.

References failed_sinThetaW_convergence.

Referenced by flexiblesusy::mathlink_format_problems().

◆ number_of_problems()

◆ number_of_warnings()

unsigned flexiblesusy::Problems::number_of_warnings ( ) const

returns number of warnings

Definition at line 131 of file problems.cpp.

References have_bad_mass().

Referenced by have_warning(), and flexiblesusy::mathlink_format_warnings().

◆ print_problems() [1/2]

void flexiblesusy::Problems::print_problems ( ) const

Definition at line 233 of file problems.cpp.

References print_problems().

Referenced by flexiblesusy::operator<<(), and print_problems().

◆ print_problems() [2/2]

void flexiblesusy::Problems::print_problems ( std::ostream &  ostr) const

Definition at line 238 of file problems.cpp.

References get_problem_string(), and have_problem().

◆ print_warnings() [1/2]

void flexiblesusy::Problems::print_warnings ( ) const

Definition at line 246 of file problems.cpp.

References print_warnings().

Referenced by flexiblesusy::operator<<(), and print_warnings().

◆ print_warnings() [2/2]

void flexiblesusy::Problems::print_warnings ( std::ostream &  ostr) const

Definition at line 251 of file problems.cpp.

References get_warning_string(), and have_warning().

◆ unflag_all_bad_masses()

void flexiblesusy::Problems::unflag_all_bad_masses ( )

Definition at line 353 of file problems.cpp.

References bad_masses.

◆ unflag_all_non_perturbative_parameters()

void flexiblesusy::Problems::unflag_all_non_perturbative_parameters ( )

Definition at line 409 of file problems.cpp.

References non_pert_pars.

◆ unflag_all_tachyons()

void flexiblesusy::Problems::unflag_all_tachyons ( )

Definition at line 368 of file problems.cpp.

References pole_tachyons, and running_tachyons.

◆ unflag_bad_mass()

void flexiblesusy::Problems::unflag_bad_mass ( int  particle)

Definition at line 348 of file problems.cpp.

References bad_masses.

◆ unflag_no_ewsb()

void flexiblesusy::Problems::unflag_no_ewsb ( )

Definition at line 379 of file problems.cpp.

References failed_ewsb.

◆ unflag_no_ewsb_tree_level()

void flexiblesusy::Problems::unflag_no_ewsb_tree_level ( )

Definition at line 384 of file problems.cpp.

References failed_ewsb_tree_level.

◆ unflag_no_GFermi_convergence()

void flexiblesusy::Problems::unflag_no_GFermi_convergence ( )

Definition at line 389 of file problems.cpp.

References failed_GFermi_convergence.

◆ unflag_no_minimum()

void flexiblesusy::Problems::unflag_no_minimum ( const std::string &  msg)

Definition at line 419 of file problems.cpp.

References failed_minimum.

◆ unflag_no_perturbative()

void flexiblesusy::Problems::unflag_no_perturbative ( )

Definition at line 394 of file problems.cpp.

References non_perturbative.

◆ unflag_no_pole_mass_convergence()

void flexiblesusy::Problems::unflag_no_pole_mass_convergence ( int  particle)

Definition at line 399 of file problems.cpp.

References failed_pole_mass_convergence.

◆ unflag_no_root()

void flexiblesusy::Problems::unflag_no_root ( const std::string &  msg)

Definition at line 424 of file problems.cpp.

References failed_root.

◆ unflag_no_sinThetaW_convergence()

void flexiblesusy::Problems::unflag_no_sinThetaW_convergence ( )

Definition at line 414 of file problems.cpp.

References failed_sinThetaW_convergence.

◆ unflag_non_perturbative_parameter()

void flexiblesusy::Problems::unflag_non_perturbative_parameter ( int  parameter)

Definition at line 404 of file problems.cpp.

References non_pert_pars.

◆ unflag_pole_tachyon()

void flexiblesusy::Problems::unflag_pole_tachyon ( int  particle)

Definition at line 363 of file problems.cpp.

References pole_tachyons.

◆ unflag_running_tachyon()

void flexiblesusy::Problems::unflag_running_tachyon ( int  particle)

Definition at line 358 of file problems.cpp.

References running_tachyons.

◆ unflag_thrown()

void flexiblesusy::Problems::unflag_thrown ( )

Definition at line 374 of file problems.cpp.

References exception_msg.

Member Data Documentation

◆ bad_masses

std::vector<int> flexiblesusy::Problems::bad_masses
private

◆ exception_msg

std::string flexiblesusy::Problems::exception_msg
private

exception message

Definition at line 129 of file problems.hpp.

Referenced by add(), clear(), flag_thrown(), get_problem_strings(), have_thrown(), and unflag_thrown().

◆ failed_ewsb

bool flexiblesusy::Problems::failed_ewsb {false}
private

◆ failed_ewsb_tree_level

bool flexiblesusy::Problems::failed_ewsb_tree_level {false}
private

◆ failed_GFermi_convergence

bool flexiblesusy::Problems::failed_GFermi_convergence {false}
private

◆ failed_minimum

std::map<std::string, int> flexiblesusy::Problems::failed_minimum
private

no minimum found (message, status code)

Definition at line 127 of file problems.hpp.

Referenced by add(), clear(), flag_no_minimum(), get_problem_strings(), no_minimum(), and unflag_no_minimum().

◆ failed_pole_mass_convergence

std::vector<int> flexiblesusy::Problems::failed_pole_mass_convergence
private

◆ failed_root

std::map<std::string, int> flexiblesusy::Problems::failed_root
private

no root found (message, status code)

Definition at line 128 of file problems.hpp.

Referenced by add(), clear(), flag_no_root(), get_problem_strings(), no_root(), and unflag_no_root().

◆ failed_sinThetaW_convergence

bool flexiblesusy::Problems::failed_sinThetaW_convergence {false}
private

◆ model_name

std::string flexiblesusy::Problems::model_name
private

model name

Definition at line 119 of file problems.hpp.

Referenced by add(), and get_model_name().

◆ non_pert_pars

std::map<int, NonPerturbativeValue> flexiblesusy::Problems::non_pert_pars
private

◆ non_perturbative

bool flexiblesusy::Problems::non_perturbative {false}
private

non-perturbative running

Definition at line 133 of file problems.hpp.

Referenced by add(), clear(), flag_no_perturbative(), get_problem_strings(), no_perturbative(), number_of_problems(), and unflag_no_perturbative().

◆ parameter_names

const Names* flexiblesusy::Problems::parameter_names
private

access to parameter names

Definition at line 121 of file problems.hpp.

Referenced by flag_non_perturbative_parameter(), and get_parameter_name().

◆ particle_names

const Names* flexiblesusy::Problems::particle_names
private

access to particle names

Definition at line 120 of file problems.hpp.

Referenced by flag_pole_tachyon(), flag_running_tachyon(), get_particle_name(), get_problem_strings(), and get_warning_strings().

◆ pole_tachyons

std::vector<int> flexiblesusy::Problems::pole_tachyons
private

◆ running_tachyons

std::vector<int> flexiblesusy::Problems::running_tachyons
private

The documentation for this class was generated from the following files: