Bayeux
3.4.1
Core Foundation library for SuperNEMO
|
Description of a beta decay. More...
#include <bayeux/genbb_help/beta_decay.h>
Classes | |
struct | electron_shakeoff_entry |
Entry for a given daughter recoil ion's charge state. More... | |
Public Types | |
enum | decay_type { BETA_DECAY_INVALID = 0, BETA_DECAY_MINUS = 1, BETA_DECAY_PLUS = 2 } |
Type of the beta decay. More... | |
enum | coupling_type { COUPLING_INVALID = 0, COUPLING_AXIAL_VECTOR = 1, COUPLING_TENSOR = 2, COUPLING_SCALAR = 3, COUPLING_VECTOR = 4, COUPLING_USER = 5, COUPLING_UNKNOWN = 6 } |
Type of the coupling. More... | |
enum | electron_shakeoff_mode_type { ESO_NO_SHAKEOFF = 0, ESO_FIXED_CHARGE = 1, ESO_RANDOM_CHARGE = 2 } |
Daughter recoil ion's electron shakeoff mode. More... | |
typedef std::vector< electron_shakeoff_entry > | electron_shakeoff_data_type |
Public Types inherited from datatools::i_tree_dumpable | |
enum | ostream_type { OSTREAM_COUT = 1, OSTREAM_CERR = 2, OSTREAM_CLOG = 3 } |
Enumeration for standard output streams. More... | |
Public Member Functions | |
beta_decay () | |
Default constructor. More... | |
virtual | ~beta_decay () |
Destructor. More... | |
void | set_type (decay_type) |
Set the type of the beta decay. More... | |
decay_type | get_type () const |
Return the type of the beta decay. More... | |
bool | is_beta_minus () const |
Check if the decay is a beta minus. More... | |
bool | is_beta_plus () const |
Check if the decay is a beta plus. More... | |
bool | has_q_beta () const |
Check if Q beta is set. More... | |
void | set_q_beta (double) |
Set the Q beta of the decay. More... | |
double | get_q_beta () const |
Return the Q beta of the decay. More... | |
void | set_A (int) |
Set the A of the decaying nucleus. More... | |
int | get_A () const |
Return the A of the decaying nucleus. More... | |
void | set_Z_parent (int) |
Set the Z of the parent nucleus. More... | |
int | get_Z_parent () const |
Return the Z of the parent nucleus. More... | |
void | set_Z_daughter (int) |
Set the Z of the daughter nucleus. More... | |
int | get_Z_daughter () const |
Return the Z of the daughter nucleus. More... | |
void | set_mass_parent (double) |
Set the isotopic mass of the parent nucleus (not the atomic mass) More... | |
double | get_mass_parent () const |
Return the isotopic mass of the parent nucleus (not the atomic mass) More... | |
void | set_mass_daughter (double) |
Set the isotopic mass of the daughter nucleus (not the atomic mass) More... | |
double | get_mass_daughter () const |
Return the isotopic mass of the daughter nucleus (not the atomic mass) More... | |
void | set_energy_parent (double) |
Set the excitation energy of the parent nucleus. More... | |
double | get_energy_parent () const |
Return the excitation energy of the parent nucleus. More... | |
void | set_energy_daughter (double) |
Set the excitation energy of the daughter nucleus. More... | |
double | get_energy_daughter () const |
Return the isotopic mass of the daughter nucleus. More... | |
void | set_coupling (coupling_type coupling_) |
Set the coupling of the beta decay. More... | |
coupling_type | get_coupling () const |
Return the coupling of the beta decay. More... | |
bool | coupling_is_known () const |
Check if coupling is known. More... | |
void | set_a (double) |
Set the beta-neutrino angular correlation coefficient. More... | |
double | get_a () const |
Return the beta-neutrino angular correlation coefficient. More... | |
void | set_ke_cut (double) |
Set the cut on beta kinetic energy. More... | |
double | get_ke_cut () const |
Return the cut on beta kinetic energy. More... | |
bool | is_electron_shakeoff () const |
Check electron shakeoff mode. More... | |
void | set_electron_shakeoff (electron_shakeoff_mode_type eso_mode_) |
Set electron shakeoff mode. More... | |
bool | has_electron_shakeoff_fixed_charge () const |
Check the fixed electron shakeoff charge of the daughter recoil ion. More... | |
int | get_electron_shakeoff_fixed_charge () const |
Return the fixed electron shakeoff charge of the daughter recoil ion. More... | |
void | set_electron_shakeoff_fixed_charge (int charge_) |
Set fixed electron shakeoff charge of the daughter recoil ion. More... | |
void | add_electron_shakeoff_random (int charge_, double probability_) |
const electron_shakeoff_data_type & | get_electron_shakeoff_data_random () const |
Return the random for random electron shakeoff. More... | |
void | set_log_filename (const std::string &) |
Set the name of the file. More... | |
const std::string & | get_log_filename () const |
Return the name of the log file. More... | |
bool | is_beta_generated () const |
Check the beta generation flag. More... | |
void | set_beta_generated (bool) |
Set the beta generation flag. More... | |
bool | is_neutrino_generated () const |
Check the neutrino generation flag. More... | |
void | set_neutrino_generated (bool) |
Set the neutrino generation flag. More... | |
bool | is_daughter_generated () const |
Check the daughter nucleus/ion generation flag. More... | |
void | set_daughter_generated (bool) |
Set the daughter nucleus/ion generation flag. More... | |
double | get_pr_max () const |
Return the maximum value of the recoil ion momentum. More... | |
double | get_probability_max () const |
Return the maximum value of the probability density for Von Neumann method. More... | |
double | pdf_ke_pr (double ke_, double pr_) const |
Compute the probability density function for a given electron kinetic energy and a given recoil ion momentum. More... | |
virtual void | tree_dump (std::ostream &out_=std::clog, const std::string &title_="", const std::string &indent_="", bool inherit_=false) const |
Smart print. More... | |
void | display_pdf (const std::string &title_="") const |
Display PDF. More... | |
int | fire_event_kinematics (mygsl::rng &prng_, double &ke_, double &pr_, double &pnu_, double &cer_, double &cenu_) const |
virtual void | set_levels (const nuclear_level &level_start_, const nuclear_level &level_stop_) |
Set the transition parameter from the start and stop levels. More... | |
virtual void | initialize (const datatools::properties &config_) |
Initialization. More... | |
virtual void | reset () |
Reset. More... | |
virtual int | fill (mygsl::rng &prng_, genbb::primary_event &event_) |
Shoot the kinematics of the decay and fill a primary event. More... | |
Public Member Functions inherited from genbb::base_decay_driver | |
base_decay_driver () | |
Default constructor. More... | |
virtual | ~base_decay_driver () |
Destructor. More... | |
datatools::logger::priority | get_logging () const |
Return the logging priority threshold. More... | |
void | set_logging (datatools::logger::priority) |
Set the logging priority threshold. More... | |
bool | is_initialized () const |
Check initialization status. More... | |
void | initialize_simple () |
Initialization. More... | |
Public Member Functions inherited from datatools::i_tree_dumpable | |
i_tree_dumpable () | |
Constructor. More... | |
virtual | ~i_tree_dumpable () |
Destructor. More... | |
virtual void | print_tree (std::ostream &out_=std::clog, const boost::property_tree::ptree &options_=empty_options()) const |
Main new interface method for printing. More... | |
void | print_tree_json (std::ostream &out_=std::clog, const std::string &json_options_="") const |
Printing with jsonized options. More... | |
void | print_tree_json (std::ostream &out_=std::clog, const char *json_options_=nullptr) const |
Printing with jsonized options. More... | |
void | tree_dump_id (const int out_type_=OSTREAM_CLOG, const std::string &title_="", const std::string &indent_="", const bool inherit_=false) const |
void | tree_print_id (const int out_type_=OSTREAM_CLOG, const std::string &title_="") const |
void | smart_print_id (const int out_type_=OSTREAM_CLOG, const std::string &title_="", const std::string &indent_="") const |
Static Public Member Functions | |
static std::string | label_from_decay_type (decay_type) |
Return a label associated to a decay type. More... | |
static decay_type | decay_type_from_label (const std::string &) |
Return a coupling associated to a label. More... | |
static std::string | label_from_coupling (coupling_type) |
Return a label associated to a coupling. More... | |
static coupling_type | coupling_from_label (const std::string &) |
Return a coupling associated to a label. More... | |
static double | a_value (coupling_type) |
static void | compute_ke_limits (double q_beta_, double pr_, double &ke_min_, double &ke_max_) |
Compute the bounds for the electron kinetic energy. More... | |
Static Public Member Functions inherited from datatools::i_tree_dumpable | |
static const boost::property_tree::ptree & | empty_options () |
static boost::property_tree::ptree | make_base_print_options (const std::string &title_, const std::string &indent_="", const bool inherit_=false) |
static std::ostream & | last_skip_tag (std::ostream &out_) |
static std::ostream & | skip_tag (std::ostream &out_) |
static std::ostream & | last_tag (std::ostream &out_) |
static std::ostream & | tag (std::ostream &out_) |
Static Public Attributes | |
static const int | ESO_INVALID_FIXED_CHARGE = 0xFFFFFFFF |
Invalid electron shakeoff fixed charge. More... | |
Protected Member Functions | |
void | _compute_pr_max () |
Compute the maximum value of the recoil ion momentum. More... | |
void | _compute_limits () |
Compute some internal data. More... | |
void | _init () |
Compute some internal data. More... | |
void | _init_electron_shakeoff () |
Initialize electron shakeoff. More... | |
void | _set_default () |
Set default values (initialization) More... | |
Protected Member Functions inherited from genbb::base_decay_driver | |
void | _set_default () |
Set the default attributes. More... | |
void | _set_initialized (bool) |
Set the initialization flag. More... | |
void | _initialize (const datatools::properties &setup_) |
Initialization. More... | |
Description of a beta decay.
typedef std::vector<electron_shakeoff_entry> genbb::beta_decay::electron_shakeoff_data_type |
Type of the coupling.
genbb::beta_decay::beta_decay | ( | ) |
Default constructor.
|
virtual |
Destructor.
|
protected |
Compute some internal data.
|
protected |
Compute the maximum value of the recoil ion momentum.
|
protected |
Compute some internal data.
|
protected |
Initialize electron shakeoff.
|
protected |
Set default values (initialization)
|
static |
void genbb::beta_decay::add_electron_shakeoff_random | ( | int | charge_, |
double | probability_ | ||
) |
Add an charge entry for the random electron shakeoff
|
static |
Compute the bounds for the electron kinetic energy.
|
static |
Return a coupling associated to a label.
bool genbb::beta_decay::coupling_is_known | ( | ) | const |
Check if coupling is known.
|
static |
Return a coupling associated to a label.
void genbb::beta_decay::display_pdf | ( | const std::string & | title_ = "" | ) | const |
Display PDF.
|
virtual |
Shoot the kinematics of the decay and fill a primary event.
Implements genbb::base_decay_driver.
int genbb::beta_decay::fire_event_kinematics | ( | mygsl::rng & | prng_, |
double & | ke_, | ||
double & | pr_, | ||
double & | pnu_, | ||
double & | cer_, | ||
double & | cenu_ | ||
) | const |
Shoot the kinematics of the decay:
int genbb::beta_decay::get_A | ( | ) | const |
Return the A of the decaying nucleus.
double genbb::beta_decay::get_a | ( | ) | const |
Return the beta-neutrino angular correlation coefficient.
coupling_type genbb::beta_decay::get_coupling | ( | ) | const |
Return the coupling of the beta decay.
const electron_shakeoff_data_type& genbb::beta_decay::get_electron_shakeoff_data_random | ( | ) | const |
Return the random for random electron shakeoff.
int genbb::beta_decay::get_electron_shakeoff_fixed_charge | ( | ) | const |
Return the fixed electron shakeoff charge of the daughter recoil ion.
double genbb::beta_decay::get_energy_daughter | ( | ) | const |
Return the isotopic mass of the daughter nucleus.
double genbb::beta_decay::get_energy_parent | ( | ) | const |
Return the excitation energy of the parent nucleus.
double genbb::beta_decay::get_ke_cut | ( | ) | const |
Return the cut on beta kinetic energy.
const std::string& genbb::beta_decay::get_log_filename | ( | ) | const |
Return the name of the log file.
double genbb::beta_decay::get_mass_daughter | ( | ) | const |
Return the isotopic mass of the daughter nucleus (not the atomic mass)
double genbb::beta_decay::get_mass_parent | ( | ) | const |
Return the isotopic mass of the parent nucleus (not the atomic mass)
double genbb::beta_decay::get_pr_max | ( | ) | const |
Return the maximum value of the recoil ion momentum.
double genbb::beta_decay::get_probability_max | ( | ) | const |
Return the maximum value of the probability density for Von Neumann method.
double genbb::beta_decay::get_q_beta | ( | ) | const |
Return the Q beta of the decay.
decay_type genbb::beta_decay::get_type | ( | ) | const |
Return the type of the beta decay.
int genbb::beta_decay::get_Z_daughter | ( | ) | const |
Return the Z of the daughter nucleus.
int genbb::beta_decay::get_Z_parent | ( | ) | const |
Return the Z of the parent nucleus.
bool genbb::beta_decay::has_electron_shakeoff_fixed_charge | ( | ) | const |
Check the fixed electron shakeoff charge of the daughter recoil ion.
bool genbb::beta_decay::has_q_beta | ( | ) | const |
Check if Q beta is set.
|
virtual |
Initialization.
Implements genbb::base_decay_driver.
bool genbb::beta_decay::is_beta_generated | ( | ) | const |
Check the beta generation flag.
bool genbb::beta_decay::is_beta_minus | ( | ) | const |
Check if the decay is a beta minus.
bool genbb::beta_decay::is_beta_plus | ( | ) | const |
Check if the decay is a beta plus.
bool genbb::beta_decay::is_daughter_generated | ( | ) | const |
Check the daughter nucleus/ion generation flag.
bool genbb::beta_decay::is_electron_shakeoff | ( | ) | const |
Check electron shakeoff mode.
bool genbb::beta_decay::is_neutrino_generated | ( | ) | const |
Check the neutrino generation flag.
|
static |
Return a label associated to a coupling.
|
static |
Return a label associated to a decay type.
double genbb::beta_decay::pdf_ke_pr | ( | double | ke_, |
double | pr_ | ||
) | const |
Compute the probability density function for a given electron kinetic energy and a given recoil ion momentum.
|
virtual |
Reset.
Implements genbb::base_decay_driver.
void genbb::beta_decay::set_A | ( | int | ) |
Set the A of the decaying nucleus.
void genbb::beta_decay::set_a | ( | double | ) |
Set the beta-neutrino angular correlation coefficient.
void genbb::beta_decay::set_beta_generated | ( | bool | ) |
Set the beta generation flag.
void genbb::beta_decay::set_coupling | ( | coupling_type | coupling_ | ) |
Set the coupling of the beta decay.
void genbb::beta_decay::set_daughter_generated | ( | bool | ) |
Set the daughter nucleus/ion generation flag.
void genbb::beta_decay::set_electron_shakeoff | ( | electron_shakeoff_mode_type | eso_mode_ | ) |
Set electron shakeoff mode.
void genbb::beta_decay::set_electron_shakeoff_fixed_charge | ( | int | charge_ | ) |
Set fixed electron shakeoff charge of the daughter recoil ion.
void genbb::beta_decay::set_energy_daughter | ( | double | ) |
Set the excitation energy of the daughter nucleus.
void genbb::beta_decay::set_energy_parent | ( | double | ) |
Set the excitation energy of the parent nucleus.
void genbb::beta_decay::set_ke_cut | ( | double | ) |
Set the cut on beta kinetic energy.
|
virtual |
Set the transition parameter from the start and stop levels.
Reimplemented from genbb::base_decay_driver.
void genbb::beta_decay::set_log_filename | ( | const std::string & | ) |
Set the name of the file.
void genbb::beta_decay::set_mass_daughter | ( | double | ) |
Set the isotopic mass of the daughter nucleus (not the atomic mass)
void genbb::beta_decay::set_mass_parent | ( | double | ) |
Set the isotopic mass of the parent nucleus (not the atomic mass)
void genbb::beta_decay::set_neutrino_generated | ( | bool | ) |
Set the neutrino generation flag.
void genbb::beta_decay::set_q_beta | ( | double | ) |
Set the Q beta of the decay.
void genbb::beta_decay::set_type | ( | decay_type | ) |
Set the type of the beta decay.
void genbb::beta_decay::set_Z_daughter | ( | int | ) |
Set the Z of the daughter nucleus.
void genbb::beta_decay::set_Z_parent | ( | int | ) |
Set the Z of the parent nucleus.
|
virtual |
Smart print.
Reimplemented from genbb::base_decay_driver.
|
static |
Invalid electron shakeoff fixed charge.