|
MARLEY (Model of Argon Reaction Low Energy Yields) v2.0.0
A Monte Carlo event generator for tens-of-MeV neutrino interactions
|
Abstract base class for ExitChannel objects that represent emission of a nuclear fragment. More...
#include <ExitChannel.hh>
Public Member Functions | |
| FragmentExitChannel (const marley::Fragment &fragment) | |
| 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. | |
Public Member Functions inherited from marley::ExitChannel | |
| 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 std::shared_ptr< HepMC3::GenParticle > &compound_nucleus, std::shared_ptr< HepMC3::GenParticle > &emitted_particle, std::shared_ptr< HepMC3::GenParticle > &residual_nucleus, int &qIon, marley::Generator &gen) const =0 |
| Simulates a nuclear decay into this channel. | |
| 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 | max_Exf () const |
| Helper function that returns that maximum possible excitation energy for the daughter nucleus after emission of the fragment. | |
Protected Member Functions inherited from marley::ExitChannel | |
| virtual void | compute_total_width ()=0 |
| virtual void | prepare_products (const std::shared_ptr< HepMC3::GenParticle > &compound_nucleus, std::shared_ptr< HepMC3::GenParticle > &emitted_particle, std::shared_ptr< HepMC3::GenParticle > &residual_nucleus, double Exf, int &qf, marley::Generator &gen) const |
| Helper function that prepares Particle objects representing the products of the two-body decay. | |
Protected Attributes | |
| int | fragment_pdg_ |
| PDG code identifying the emitted fragment. | |
Protected Attributes inherited from marley::ExitChannel | |
| 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) | |
Additional Inherited Members | |
Static Public Member Functions inherited from marley::ExitChannel | |
| 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. | |
Abstract base class for ExitChannel objects that represent emission of a nuclear fragment.
Definition at line 195 of file ExitChannel.hh.
|
inline |
| fragment | Fragment emitted in this exit channel |
Definition at line 199 of file ExitChannel.hh.
References fragment_pdg_.
Referenced by marley::FragmentContinuumExitChannel::FragmentContinuumExitChannel(), and marley::FragmentDiscreteExitChannel::FragmentDiscreteExitChannel().
|
inlinefinaloverridevirtual |
Returns true if this channel involves fragment emission or false if it involves gamma-ray emission.
Implements marley::ExitChannel.
Definition at line 205 of file ExitChannel.hh.
|
inlinefinaloverridevirtual |
Returns the PDG code for the particle (gamma-ray or nuclear fragment) emitted by decays into this ExitChannel.
Implements marley::ExitChannel.
Definition at line 202 of file ExitChannel.hh.
References fragment_pdg_.
|
finaloverridevirtual |
Returns the PDG code for the final nucleus.
Implements marley::ExitChannel.
Definition at line 64 of file ExitChannel.cc.
References fragment_pdg_, and marley::ExitChannel::pdgi_.
Referenced by marley::FragmentDiscreteExitChannel::compute_total_width().
|
protected |
Helper function that returns that maximum possible excitation energy for the daughter nucleus after emission of the fragment.
Definition at line 78 of file ExitChannel.cc.
References marley::ExitChannel::Exi_, fragment_pdg_, marley::MassTable::Instance(), and marley::ExitChannel::pdgi_.
Referenced by marley::FragmentDiscreteExitChannel::compute_total_width(), and marley::FragmentContinuumExitChannel::E_c_max().
|
protected |
PDG code identifying the emitted fragment.
Definition at line 217 of file ExitChannel.hh.
Referenced by FragmentExitChannel(), marley::FragmentDiscreteExitChannel::compute_total_width(), emitted_particle_pdg(), final_nucleus_pdg(), and max_Exf().