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
marley::GammaStrengthFunctionModel Class Referenceabstract

Abstract base class for models of gamma-ray strength functions. More...

#include <GammaStrengthFunctionModel.hh>

Inheritance diagram for marley::GammaStrengthFunctionModel:

## Public Types

enum  TransitionType { electric, magnetic, unphysical }
Electromagnetic transitions in nuclei may be classified by their multipolarity (electric vs. magnetic multipole radiation)

## Public Member Functions

GammaStrengthFunctionModel (int Z, int A)

virtual double strength_function (TransitionType type, int l, double e_gamma)=0
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)=0
Returns the gamma-ray transmission coefficient (dimensionless) for the requested gamma energy and multipolarity. More...

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

## Static Public Member Functions

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

static void check_multipolarity (int l)
Check that l > 0 and throw a marley::Error if it is not. More...

int A_
Mass number.

int Z_
Atomic number.

## Detailed Description

Abstract base class for models of gamma-ray strength functions.

Classes derived from GammaStrengthFunctionModel may be used to simulate gamma-ray emission in situations where nuclear level data are unavailable. In particular, the HauserFeshbachDecay class uses instances of GammaStrengthFunctionModel to model the competition between gamma-ray emission and particle evaporation for highly-excited nuclear states.

## Constructor & Destructor Documentation

 marley::GammaStrengthFunctionModel::GammaStrengthFunctionModel ( int Z, int A )
Parameters
 Z Atomic number of the desired nuclide A Mass number of the desired nuclide

## Member Function Documentation

 void marley::GammaStrengthFunctionModel::check_multipolarity ( int l )
staticprotected

Check that l > 0 and throw a marley::Error if it is not.

Todo:
Improve error message
 TrType marley::GammaStrengthFunctionModel::determine_transition_type ( int twoJi, marley::Parity Pi, int twoJf, marley::Parity Pf, int & l )
static

Determines whether a given electromagnetic transition between two nuclear states corresponds to electric or magnetic multipole radiation.

Parameters
 twoJi Two times the initial nuclear spin Pi Initial parity twoJf Two times the final nuclear spin Pf Final parity [out] l Multipolarity of the transition ( $$\ell$$ = 1 dipole, $$\ell$$ = 2 quadrupole, )
Note
This function returns TransitionType::unphysical if the requested transition is impossible (e.g., nuclear spin changes by half, initial and final spins are both zero)
 TrType marley::GammaStrengthFunctionModel::determine_transition_type ( int twoJi, marley::Parity Pi, marley::Level & level_f, int & l )
static

Determines whether a given electromagnetic transition between two nuclear states corresponds to electric or magnetic multipole radiation.

Parameters
 twoJi Two times the initial nuclear spin Pi Initial parity [in] level_f Reference to the final nuclear Level [out] l Multipolarity of the transition ( $$\ell$$ = 1 dipole, $$\ell$$ = 2 quadrupole, )
Note
This function returns TransitionType::unphysical if the requested transition is impossible (e.g., nuclear spin changes by half, initial and final spins are both zero)
 TrType marley::GammaStrengthFunctionModel::determine_transition_type ( marley::Level & level_i, marley::Level & level_f, int & l )
static

Determines whether a given electromagnetic transition between two nuclear states corresponds to electric or magnetic multipole radiation.

Parameters
 [in] level_i Reference to the initial nuclear Level [in] level_f Reference to the final nuclear Level [out] l Multipolarity of the transition ( $$\ell$$ = 1 dipole, $$\ell$$ = 2 quadrupole, )
Note
This function returns TransitionType::unphysical if the requested transition is impossible (e.g., nuclear spin changes by half, initial and final spins are both zero)
 virtual double marley::GammaStrengthFunctionModel::strength_function ( TransitionType type, int l, double e_gamma )
pure virtual

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

Parameters
 type Electric or magnetic transition l Multipolarity of the transition e_gamma Gamma-ray energy (MeV)

Implemented in marley::StandardLorentzianModel, and marley::WeisskopfSingleParticleModel.

 virtual double marley::GammaStrengthFunctionModel::transmission_coefficient ( TransitionType type, int l, double e_gamma )
pure virtual

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
 type Electric or magnetic transition l Multipolarity of the transition e_gamma Gamma-ray energy (MeV)

Implemented in marley::StandardLorentzianModel, and marley::WeisskopfSingleParticleModel.

 double marley::GammaStrengthFunctionModel::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.

Parameters
 Exi Initial nuclear excitation energy twoJ Two times the initial nuclear spin Pi Initial nuclear parity [in] level_f Reference to the final nuclear Level

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