|  | 
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.