Stores information on a nuclear decay.
As for the levels, from the level scheme, it is possible to access to all the known decays of a nucleus. In the current version, only gamma decays are implemented. Particle decays are planned to be added in next TkN version.Print the known decays as follows:
nuc.get_level_scheme()->print("decay")
A nucleus made of Z protons and N neutrons.
[ INFO ] dataset '8B : ADOPTED LEVELS, GAMMAS' contains 2 decays:
[ INFO ] gamma decay energy = 769.5 (2.4 ) keV, mult M1
[ INFO ] gamma decay energy = 2320 (30 ) keV, mult M1
It is also possible to print at the same time the levels and its associated decays:
nuc.get_level_scheme()->print("level,decay")
[ INFO ] dataset '8B : ADOPTED LEVELS, GAMMAS' contains 5 levels
[ INFO ] dataset '8B : ADOPTED LEVELS, GAMMAS' contains 2 decays
[ INFO ] Level energy = 0 keV [no uncertainty] ; Jpi: 2+ ; lifetime = 770 (3 ) ms
[ INFO ] Level energy = 769.5 (2.5 ) keV ; Jpi: 1+ ; lifetime = 35.6 (0.6 ) keV
-> gamma decay energy = 769.5 (2.4 ) keV, mult M1
[ INFO ] Level energy = 2320 (20 ) keV ; Jpi: 3+ ; lifetime = 350 (30 ) keV
-> gamma decay energy = 2320 (30 ) keV, mult M1
[ INFO ] Level energy = 3500 (500 ) keV ; Jpi: 2- ; lifetime = 8 (4 ) MeV
[ INFO ] Level energy = 10619 (9 ) keV ; Jpi: 0+ ; lifetime < 60 keV [limit value]
As for the levels, The decay list can be retrieved using:
auto levels = nuc.get_level_scheme()->get_decays();
Is is also possible to restrict the decay list to a type of decay:
auto levels = nuc.get_level_scheme()->get_decays<
tkgammadecay>();
Stores information on a gamma-ray decay.
As for the moment only tkn::tkgammadecay are included, it is advised to only use this second option to easily benefit from the tkgammadecay methods on the decay list.The same can be done using a lambda function to filter the decays (e.g. only decays coming from a level lower than 1 MeV):
auto decays = nuc.get_level_scheme()->get_decays<
tkgammadecay>( [](
auto dec) {
});
for(
auto &dec: decays) dec->
print()
void print(const tkstring &_option="") const
print the decay properties
[ INFO ] gamma decay energy = 769.5 (2.4 ) keV, mult M1
A decay can also been accessed directly by its name (e.g. the decay from the first 3⁺ to the first 2⁺ state):
[ INFO ] gamma decay energy = 2320 (30 ) keV, mult M1
, or using its energy (the closest level in energy will be returned):
[ INFO ] gamma decay energy = 769.5 (2.4 ) keV, mult M1
The get_decay(...) methods return a
tkn::tkdecay object, and the get_levels(...) methods return a vector of
tkn::tkdecay objects. As explained, if we want to play only with gamma decays, the template access get_decay<tkgammadecay>(...) methods return a
tkn::tkgammadecay object, and the get_levels<tkgammadecay>(...) methods return a vector of
tkn::tkgammadecay the
tkn::tkgammadecay class inherits from the
tkn::tkdecay, so all methods applicable for a tkdecay are also valid for a tkgammadecay.Here are the main method that can be applied on a
tkdecay:
Here are the main method that can be applied on a
tkgammadecay:
The above methods giving access to a measure (ex:
get_conv_coeff() ), are directly returning the value as a double. Dedicated methods allows to access the
tkn::tkmeasure to access to units, uncertainties... etc (see
Measures and units).For exemple, for the lifetime, the method
get_conv_coeff_measure() returns the tkmeasure object.
Definition at line 56 of file tkdecay.h.