MARLEY (Model of Argon Reaction Low Energy Yields)
v1.2.0
A Monte Carlo event generator for tens-of-MeV neutrino interactions
|
Nuclear optical model for fragment emission calculations. More...
#include <KoningDelarocheOpticalModel.hh>
Public Member Functions | |
KoningDelarocheOpticalModel (int Z, int A, double step_size=DEFAULT_NUMEROV_STEP_SIZE_) | |
virtual std::complex< double > | optical_model_potential (double r, double fragment_KE_lab, int fragment_pdg, int two_j, int l, int two_s, int target_charge=0) override |
Calculate the optical model potential (including the Coulomb potential) More... | |
virtual double | total_cross_section (double fragment_KE_lab, int fragment_pdg, int two_s, size_t l_max, int target_charge=0) override |
Compute the energy-averaged total cross section (MeV -2) for a nuclear fragment projectile. More... | |
virtual double | transmission_coefficient (double total_KE_CM, int fragment_pdg, int two_j, int l, int two_s, int target_charge=0) override |
Calculate the transmission coefficient for a nuclear fragment. More... | |
![]() | |
OpticalModel (int Z, int A) | |
int | A () const |
Get the mass number. | |
int | Z () const |
Get the atomic number. | |
Additional Inherited Members | |
![]() | |
int | A_ |
int | Z_ |
Nuclear optical model for fragment emission calculations.
This class implements the global optical model potential of A. J. Koning and J. P. Delaroche, Nucl. Phys. A 713 (2003) 231-310. Numerov's method is used to integrate the Schrödinger equation during transmission coefficient and cross section calculations.
marley::KoningDelarocheOpticalModel::KoningDelarocheOpticalModel | ( | int | Z, |
int | A, | ||
double | step_size = DEFAULT_NUMEROV_STEP_SIZE_ |
||
) |
Z | Atomic number of the desired nuclide |
A | Mass number of the desired nuclide |
step_size | Step size (fm) to use for numerical integration of the Schrödinger equation |
|
overridevirtual |
Calculate the optical model potential (including the Coulomb potential)
r | Distance from nuclear center (fm) |
fragment_KE_lab | Fragment kinetic energy (MeV) in the lab frame |
fragment_pdg | PDG code for the nuclear fragment |
two_j | Two times the total angular momentum of the fragment |
l | Orbital angular momentum of the fragment |
two_s | Two times the spin of the fragment |
target_charge | Net charge of the target atom |
Implements marley::OpticalModel.
|
overridevirtual |
Compute the energy-averaged total cross section (MeV -2) for a nuclear fragment projectile.
The total cross section given here by the optical model may be directly compared to experiment. Expressions exist for the optical model elastic and reaction (absorption) cross sections, but these are hard to directly compare to the data because the absorption cross section includes the compound elastic channel.
For more details, see appendix A (especially equation A.12) of S. Gardiner, "Nuclear Effects in Neutrino Detection," PhD thesis, University of California, Davis, 2018. Note that we assume in this function that the target nucleus has zero spin (spherical optical model).
fragment_KE_lab | Lab-frame kinetic energy of the incident projectile (MeV) |
fragment_pdg | Projectile's PDG code |
two_s | Two times the spin of the projectile |
l_max | The maximum value of the orbital angular momentum quantum number \(\ell\) to include in the sum over S-matrix elements |
target_charge | Net charge of the target atom (used to adjust the atomic mass by the appropriate number of electron masses if the target is ionized) |
Implements marley::OpticalModel.
|
overridevirtual |
Calculate the transmission coefficient for a nuclear fragment.
total_KE_CM | Total CM frame kinetic energy (MeV) |
fragment_pdg | PDG code of the fragment |
two_j | Two times the total angular momentum of the fragment |
l | Orbital angular momentum of the fragment |
two_s | Two times the spin of the fragment |
target_charge | Net charge of the target atom |
Implements marley::OpticalModel.