MARLEY (Model of Argon Reaction Low Energy Yields)  v1.1.0
A Monte Carlo event generator for tens-of-MeV neutrino-nucleus interactions in liquid argon
 All Classes Functions Variables Enumerations Pages
Public Member Functions | List of all members
marley::WeisskopfSingleParticleModel Class Reference

Implements the Weisskopf single-particle estimates of the gamma-ray strength functions. More...

#include <WeisskopfSingleParticleModel.hh>

Inheritance diagram for marley::WeisskopfSingleParticleModel:
marley::GammaStrengthFunctionModel

Public Member Functions

 WeisskopfSingleParticleModel (int Z, int A, double D0=1.)
 
virtual double strength_function (TransitionType type, int l, double e_gamma) override
 Returns the gamma-ray strength function (MeV –2 \(\ell\)–1) for the requested gamma energy and multipolarity. More...
 
virtual double transmission_coefficient (TransitionType type, int l, double e_gamma) override
 Returns the gamma-ray transmission coefficient (dimensionless) for the requested gamma energy and multipolarity. More...
 
- Public Member Functions inherited from marley::GammaStrengthFunctionModel
 GammaStrengthFunctionModel (int Z, int A)
 
double transmission_coefficient (double Exi, int twoJ, marley::Parity Pi, marley::Level &level_f)
 Returns the gamma-ray transmission coefficient (dimensionless) for a transition from a given initial state to a final discrete Level. More...
 

Additional Inherited Members

- Public Types inherited from marley::GammaStrengthFunctionModel
enum  TransitionType { electric, magnetic, unphysical }
 Electromagnetic transitions in nuclei may be classified by their multipolarity (electric vs. magnetic multipole radiation)
 
- Static Public Member Functions inherited from marley::GammaStrengthFunctionModel
static TransitionType determine_transition_type (int twoJi, marley::Parity Pi, int twoJf, marley::Parity Pf, int &l)
 Determines whether a given electromagnetic transition between two nuclear states corresponds to electric or magnetic multipole radiation. More...
 
static TransitionType determine_transition_type (int twoJi, marley::Parity Pi, marley::Level &level_f, int &l)
 Determines whether a given electromagnetic transition between two nuclear states corresponds to electric or magnetic multipole radiation. More...
 
static TransitionType determine_transition_type (marley::Level &level_i, marley::Level &level_f, int &l)
 Determines whether a given electromagnetic transition between two nuclear states corresponds to electric or magnetic multipole radiation. More...
 
- Static Protected Member Functions inherited from marley::GammaStrengthFunctionModel
static void check_multipolarity (int l)
 Check that l > 0 and throw a marley::Error if it is not. More...
 
- Protected Attributes inherited from marley::GammaStrengthFunctionModel
int A_
 Mass number.
 
int Z_
 Atomic number.
 

Detailed Description

Implements the Weisskopf single-particle estimates of the gamma-ray strength functions.

Under this model, the electric ( \(f_{\text{E}\ell}\)) and magnetic ( \(f_{\text{M}\ell}\)) gamma-ray strength functions are independent of the gamma energy and are given by

\[ f_{\text{E}\ell} = \frac{2\alpha\Lambda}{\text{D}_0} \left(\frac{R}{\hbar c}\right)^{\!2\ell} \]

and

\[ f_{\text{M}\ell} = 10\left(\frac{\hbar c} {R\,m_\text{p}}\right)^{\!2} f_{\text{E}\ell}, \]

where \(\alpha\) is the fine-structure constant, \(\text{D}_0\) is the level spacing parameter (MeV), \(R = (1.2\text{ fm})A^{1/3}\) is the approximate nuclear radius, \(m_\text{p}\) is the proton mass (MeV), and \(\Lambda\) is a function of the multipolarity \(\ell\) given by

\[ \Lambda \equiv \left(\frac{3}{\ell + 3}\right)^{\!2} \left(\frac{\ell + 1}{\ell\left[(2\ell + 1)!!\right]^2} \right).\]

These estimates are typically only good to an order of magnitude, so using a more sophisticated model, e.g., the StandardLorentzianModel, is strongly recommended.

Constructor & Destructor Documentation

marley::WeisskopfSingleParticleModel::WeisskopfSingleParticleModel ( int  Z,
int  A,
double  D0 = 1. 
)
Parameters
ZAtomic number of the desired nuclide
AMass number of the desired nuclide
D0Level spacing parameter (MeV)

Member Function Documentation

double marley::WeisskopfSingleParticleModel::strength_function ( TransitionType  type,
int  l,
double  e_gamma 
)
overridevirtual

Returns the gamma-ray strength function (MeV –2 \(\ell\)–1) for the requested gamma energy and multipolarity.

Parameters
typeElectric or magnetic transition
lMultipolarity of the transition
e_gammaGamma-ray energy (MeV)
Note
As described above, the Weisskopf estimates of the gamma-ray strength functions are independent of the gamma energy, and so the parameter e_gamma is ignored by this function.

Implements marley::GammaStrengthFunctionModel.

double marley::WeisskopfSingleParticleModel::transmission_coefficient ( TransitionType  type,
int  l,
double  e_gamma 
)
overridevirtual

Returns the gamma-ray transmission coefficient (dimensionless) for the requested gamma energy and multipolarity.

The gamma-ray transmission coefficient and strength function are related via \(\text{T}_{\text{X}\ell}(\text{E}_\gamma) = 2\pi f_{\text{X}\ell}(\text{E}_\gamma)\text{E}_\gamma^{(2\ell + 1)},\) where X is the type of transition (electric or magnetic), \(\ell\) is the multipolarity, \(\text{T}_{\text{X}\ell}\) is the transmission coefficient, \(f_{\text{X}\ell}\) is the strength function, and \(\text{E}_\gamma\) is the gamma-ray energy.

Parameters
typeElectric or magnetic transition
lMultipolarity of the transition
e_gammaGamma-ray energy (MeV)

Implements marley::GammaStrengthFunctionModel.


The documentation for this class was generated from the following files: