![]() |
This module contains subroutines to add alpha decays. More...
Functions/Subroutines | |
subroutine, public | init_alpha_decay_rates () |
Initialize alpha decay rates. More... | |
subroutine, private | create_verbose_output_file (alpha_decay_rates, nalpha) |
Creates a file with the decays. More... | |
character(150) function, private | reaction_string (reac) |
Return a string to represent a given reaction. More... | |
subroutine, public | merge_alpha_decays (rrate_array, rrate_length) |
Merge alpha decays into the larger rate array. More... | |
subroutine, private | unify_rate_array (rrate_array, alpha_dec_rate_array, merged_array, nrrate, nalpha, ntot) |
Merge reaclib rates and alpha decays into one array. More... | |
subroutine, private | count_reactions (n) |
Count the amount of possible alpha decays. More... | |
subroutine, private | read_reactions (alpha_rate_array, n) |
Read the alpha decays. More... | |
Variables | |
type(reactionrate_type), dimension(:), allocatable, private | alpha_dec_rate |
Array storing the reaction rates. More... | |
integer, private | nalpha_dec |
Number of alpha decays. More... | |
logical, private | include_alpha_decays |
Flag whether alpha decays should be included or not. More... | |
character(len=4), dimension(:), allocatable, private | src_ignore |
integer, private | src_ignore_length |
character(15), parameter, private | fileformat ="(A5,3X,1pE11.5)" |
This module contains subroutines to add alpha decays.
The alpha decays given by an external file. The default file in WinNet uses a file that has been calculated using the Viola-Seaborg formula. Hereby, a parameterization of the alpha-decay half life of Dong & Ren 2005 was used. Via the Viola-Seaborg formula it is possible to calculate alpha-decay half lifes by knowing only the Qvalue of the alpha decay. Within this model, reaclib rates can get replaced or additional alpha-decay rates can be added.
|
private |
Count the amount of possible alpha decays.
Check which isotopes between alpha_decay_zmin and alpha_decay_zmax should have an alpha decay.
[out] | n | Number of possible alpha decays |
Definition at line 372 of file alpha_decay_rate_module.f90.
|
private |
Creates a file with the decays.
This file is created for verbose_levels greater than 2. An example could look like
Alpha decay rates that additionally have been added po181 => he4 + pb177 T_1/2: 1.49E-09 s; a0: 2.00E+01 Qa: 1.02E+01 po182 => he4 + pb178 T_1/2: 3.89E-09 s; a0: 1.90E+01 Qa: 9.56E+00 ..
[in] | alpha_decay_rates | Array storing the reaction rates |
[in] | nalpha | Number of alpha decays |
Definition at line 99 of file alpha_decay_rate_module.f90.
subroutine, public alpha_decay_rate_module::init_alpha_decay_rates |
Initialize alpha decay rates.
This subroutine counts and reads the rates into the array beta_decays.
Definition at line 53 of file alpha_decay_rate_module.f90.
subroutine, public alpha_decay_rate_module::merge_alpha_decays | ( | type(reactionrate_type), dimension(:), intent(inout), allocatable | rrate_array, |
integer, intent(inout) | rrate_length | ||
) |
Merge alpha decays into the larger rate array.
The return value of this routine will be a larger rate array and a new length
[in,out] | rrate_array | Large rate array, containing all reactions |
[in,out] | rrate_length | length of rrate_array |
Definition at line 203 of file alpha_decay_rate_module.f90.
|
private |
Return a string to represent a given reaction.
This routine is useful for error messages in case a rate is not working as intented and is used for verbose output only.
For rrate(i) being the alpha-decay of po181
will return a="po181 => he4 + pb177 T_1/2: 1.49E-09 s; a0: 2.00E+01 Qa: 1.02E+01".
Definition at line 137 of file alpha_decay_rate_module.f90.
|
private |
Read the alpha decays.
All isotopes between alpha_decay_zmin and alpha_decay_zmax should have an alpha decay. This subroutine reads the file alpha_decay_file and creates the alpha decay rate array. An example of the file could look like:
sb103 7.84058e+10 sb104 4.29655e+05 sb105 1.37511e+10 sb106 1.03780e+17 te103 8.30806e+02 ...
[in] | n | Length of the rates |
Definition at line 438 of file alpha_decay_rate_module.f90.
|
private |
Merge reaclib rates and alpha decays into one array.
Hereby the rates can be taken as addition or also replace the reaclib rates.
[in,out] | rrate_array | Reaclib rates |
[in,out] | alpha_dec_rate_array | Alpha decay rates |
[out] | merged_array | Combined, merged array |
[in] | nrrate | Length of rrate_array |
[in] | nalpha | Length of alpha_dec_rate_array |
[out] | ntot | Length of merged_array |
Definition at line 272 of file alpha_decay_rate_module.f90.
|
private |
Array storing the reaction rates.
Definition at line 23 of file alpha_decay_rate_module.f90.
|
private |
Definition at line 31 of file alpha_decay_rate_module.f90.
|
private |
Flag whether alpha decays should be included or not.
Definition at line 25 of file alpha_decay_rate_module.f90.
|
private |
Number of alpha decays.
Definition at line 24 of file alpha_decay_rate_module.f90.
|
private |
Definition at line 28 of file alpha_decay_rate_module.f90.
|
private |
Definition at line 29 of file alpha_decay_rate_module.f90.