MARLEY (Model of Argon Reaction Low Energy Yields)
v1.2.0
A Monte Carlo event generator for tens-of-MeV neutrino interactions
|
Abstract base class for ExitChannel objects that represent emission of a gamma-ray. More...
#include <ExitChannel.hh>
Public Member Functions | |
virtual bool | emits_fragment () const final override |
Returns true if this channel involves fragment emission or false if it involves gamma-ray emission. | |
virtual int | emitted_particle_pdg () const final override |
Returns the PDG code for the particle (gamma-ray or nuclear fragment) emitted by decays into this ExitChannel. | |
virtual int | final_nucleus_pdg () const final override |
Returns the PDG code for the final nucleus. | |
![]() | |
ExitChannel ()=default | |
ExitChannel (int pdgi, int qi, double Exi, int twoJi, marley::Parity Pi, double rho_i, marley::StructureDatabase &sdb) | |
virtual void | do_decay (double &Exf, int &two_Jf, marley::Parity &Pf, const marley::Particle &compound_nucleus, marley::Particle &emitted_particle, marley::Particle &residual_nucleus, marley::Generator &gen) const =0 |
Simulates a nuclear decay into this channel. More... | |
virtual bool | is_continuum () const =0 |
Returns true if this channel accesses the particle-unbound continuum of nuclear levels or false otherwise. | |
double | width () const |
Get the total decay width into this channel (MeV) | |
Protected Member Functions | |
double | gamma_energy (double Exf) const |
marley::GammaStrengthFunctionModel::TransitionType | get_transition_type (int mpol, marley::Parity Pf) const |
![]() | |
virtual void | compute_total_width ()=0 |
virtual void | prepare_products (const marley::Particle &compound_nucleus, marley::Particle &emitted_particle, marley::Particle &residual_nucleus, double Exf, marley::Generator &gen) const |
Helper function that prepares Particle objects representing the products of the two-body decay. More... | |
Additional Inherited Members | |
![]() | |
template<typename It > | |
static marley::IteratorToPointerMember< It, double > | make_width_iterator (It it) |
Convert an iterator that points to an ExitChannel object into an iterator to the ExitChannel's width_ member variable. More... | |
![]() | |
double | Exi_ |
Initial nuclear excitation energy \( E_x \) (MeV) | |
double | one_over_two_pi_rho_i_ |
int | pdgi_ |
PDG code for the initial nucleus. | |
marley::Parity | Pi_ |
Initial nuclear parity \( \Pi \). | |
int | qi_ |
marley::StructureDatabase * | sdb_ |
StructureDatabase to use in calculations. | |
int | twoJi_ |
Two times the initial nuclear spin \( J \). | |
double | width_ |
Total decay width into this channel (MeV) | |
Abstract base class for ExitChannel objects that represent emission of a gamma-ray.