32 #ifndef GENBB_HELP_NUCLEAR_LEVEL_H 33 #define GENBB_HELP_NUCLEAR_LEVEL_H 1 41 #include <boost/scoped_ptr.hpp> 110 double _branching_ratio_;
233 std::string
to_string(
unsigned int = 0)
const;
236 virtual void tree_dump(std::ostream & out_ = std::clog,
237 const std::string & title_ =
"",
238 const std::string & indent_ =
"",
239 bool inherit_ =
false)
const;
288 #endif // GENBB_HELP_NUCLEAR_LEVEL_H virtual void tree_dump(std::ostream &out_=std::clog, const std::string &title_="", const std::string &indent_="", bool inherit_=false) const
Smart print.
int get_N() const
Return the number of neutrons.
void set_stable()
Make the level stable.
bool is_valid() const
Check validity.
size_t get_number_of_decay_channels() const
Return the number of decay channels.
decay_channel()
Default constructor.
double get_mean_life_time() const
Return the mean life time.
Positive parity.
Definition: nuclear_level.h:66
Unknown parity.
Definition: nuclear_level.h:67
datatools::properties & grab_decay_table_config()
Return decay table configuration properties.
void _compute_decay_weights()
Compute the weights associated to the decay.
static std::string label_from_spin(double)
Return a label associated to a spin value.
static parity_type parity_from_label(const std::string &)
Return the parity value associated to a label.
static double spin_from_label(const std::string &)
Return the spin value associated to a label.
A decay channel attached to the level.
Definition: nuclear_level.h:71
double get_energy() const
Return the excitation energy.
const decay_channel & get_decay_channel(int i_) const
Return the decay channel at a given index.
void set_parity(parity_type)
Set the parity.
std::vector< decay_channel > decay_channels_col_type
A collection of decay modes.
Definition: nuclear_level.h:116
void set_cumul_prob(double)
Set the cumulative probability.
nuclear_level()
Default constructor.
void set_energy(double)
Set the energy.
int get_Z() const
Return the number of protons.
void set_A(int)
Set the number of nucleons.
Negative parity.
Definition: nuclear_level.h:65
parity_type get_parity() const
Return the parity.
virtual ~nuclear_level()
Desstructor.
bool is_fundamental() const
Check if the level is fundamental.
void set_fundamental()
Set the fundamental energy.
void add_decay_channel(const nuclear_decay &decay_, double branching_ratio_)
Add a decay channel.
void reset_decay_table()
Reset decay table.
bool parity_is_known() const
Check if the parity is known.
const nuclear_decay & get_decay() const
Return the decay.
bool is_initialized() const
Check initialization flag.
bool is_valid() const
Check validity.
int get_A() const
Return the number of nucleons.
void set_Z(int)
Set the number of protons.
double get_branching_ratio() const
Return the branching ratio.
void initialize(const datatools::properties &config_)
Initialize from a list of parameters and a dictionary of nuclear decays.
const std::string & get_element_symbol() const
Return the element symbol.
void install_decay_table(const datatools::properties &config_, const std::map< std::string, datatools::handle< nuclear_decay > > &decays_)
Install the decay table.
parity_type
Parity values.
Definition: nuclear_level.h:63
Top-level namespace of the Bayeux/genbb_help module library.
Definition: alpha_decay.h:51
const datatools::properties & get_decay_table_config() const
Return decay table configuration properties.
void set_decay(const nuclear_decay &)
Set the nuclear decay.
Invalid value.
Definition: nuclear_level.h:64
double get_cumul_prob() const
Return the cumulative probability.
bool is_stable() const
Check if the level is stable.
void set_branching_ratio(double)
Set the branching ratio.
double get_width() const
Return the level width.
std::string to_string(unsigned int=0) const
Return a descriptive string.
datatools::properties & grab_auxiliaries()
Return auxiliary properties.
static std::string label_from_parity(parity_type)
Return a label associated to a parity value.
datatools::handle< nuclear_level > handle_type
Handle to a nuclear level.
Definition: nuclear_level.h:58
void initialize(const nuclear_decay &, double, double)
Initialization.
Description of a nuclear decay.
Definition: nuclear_decay.h:54
double get_half_life() const
Return the half_life.
bool has_decay_table() const
Check the decay table.
void _set_defaults()
Set defaults.
double get_spin() const
Return the spin.
const datatools::properties & get_auxiliaries() const
Return auxiliary properties.
const decay_channels_col_type & get_decay_channels() const
Return the decay channel table.
datatools::handle< nuclear_decay > decay_handle_type
Handle to a nuclear decay.
Definition: nuclear_level.h:60
Description of a nuclear level.
Definition: nuclear_level.h:53
bool spin_is_known() const
Check if the spin is known.
virtual ~decay_channel()
Destructor.
void set_half_life(double)
Set the half_life.
void set_width(double)
Set the width.
void initialize_simple()
Standalone initialization.
void set_spin(double)
Set the spin.