40#include "tkn_config.h"
48#include "tkdb_table.h"
49#include "tkproperty_list.h"
68 int fdecay_level_from_id;
69 int fdecay_level_to_id;
76 bool fhas_comment=
false;
78 shared_ptr<tklevel> flevelfrom =
nullptr;
79 shared_ptr<tklevel> flevelto =
nullptr;
111 int get_id()
const {
return fdecay_id;}
113 int get_level_from_id() {
return fdecay_level_from_id;}
115 int get_level_to_id() {
return fdecay_level_to_id;}
118 void set_levels(shared_ptr<tklevel> _lvlfrom, shared_ptr<tklevel> _lvlto) {flevelfrom=_lvlfrom; flevelto=_lvlto;}
121 void set_comment(
const tkstring &_comment) {fcomment = _comment; fhas_comment=
true;}
123 void set_uncertain_decay(
const tkstring &_uncertain) {funcertain_decay = _uncertain;}
Stores information on a specific dataset.
Stores information on a nuclear decay.
shared_ptr< tklevel > get_level_from()
get the parent level
bool is_uncertain() const
check if the decay is uncertain
shared_ptr< tklevel > get_level_to()
get the daughter level
const tkstring & get_comment() const
get the level comment string
void print(const tkstring &_option="") const
print the decay properties
static array< tkstring, 6 > decay_type_str
bool has_comment() const
check if a comment exists
virtual ~tkdecay()=default
double get_energy(const tkunit_manager::units_keys _unit=tkunit_manager::units_keys::keV)
returns the energy in keV by default
shared_ptr< tkmeasure > get_energy_meas() const
returns the energy tkmeasure object
decay_type get_decay_type()
get the decay type
tkdecay(int _id, int _from_id, int _to_id, const tkdb_table::measure_data_struct &_struc, decay_type _type)
Stores information on a gamma-ray decay.
void set_relative_intensity(tkdb_table::measure_data_struct &_struc)
set the relative intensity info
tkstring get_multipolarity()
get the transition multipolarity
tkgammadecay(int _id, int _from_id, int _to_id, const tkdb_table::measure_data_struct &_struc)
shared_ptr< tkmeasure > get_conv_coeff_measure()
returns the gamma conversion coefficient tkmeasure object
double get_trans_prob(bool _elec, int _L, bool _WU)
returns the gamma gamma transition probability value (ex: BE2 in Weiksopf units, get_trans_prob(1,...
virtual ~tkgammadecay()=default
void set_mixing_ratio(tkdb_table::measure_data_struct &_struc)
set the mixing ratio info
double get_conv_coeff()
returns the gamma conversion coefficient value
double get_mixing_ratio()
returns the gamma mixing ratio value
double get_relative_intensity()
returns the gamma relative intensity (100% correspond the the more intence gamma-ray)
void set_multipolarity(const tkstring &_mul)
set the relative intensity info
void set_transition_probability(tkdb_table::measure_data_struct &_struc)
set the transition probability
shared_ptr< tkmeasure > get_relative_intensity_measure()
returns the gamma relative intensity tkmeasure object (100% correspond the the more intence gamma-ray...
shared_ptr< tkmeasure > get_mixing_ratio_measure()
returns the gamma mixing ratio tkmeasure object
shared_ptr< tkmeasure > get_trans_prob_measure(bool _elec, int _L, bool _WU)
returns the gamma transition probability tkmeasure object (ex: BE2 in Weiksopf units,...
void set_conv_coeff(tkdb_table::measure_data_struct &_struc)
set the conversion coeff
Collection of levels and decay.
Contains list of properties.
shared_ptr< tkmeasure > get(const tkstring &_property) const
get the property as tkmeasure
tkstring get_property(const tkstring &_property) const
get the property value as a string
std::string with usefull tricks from TString (ROOT) and KVString (KaliVeda) and more....
units_keys
units identifiers
data structure used to fill a tkmeasure object from the sqlite database