22 #include "marley/Level.hh"
48 DecayScheme(
int Z,
int A);
56 DecayScheme(
int Z,
int A,
const std::string& filename,
61 inline const std::vector<std::unique_ptr<marley::Level> >&
95 void print(std::ostream& out = std::cout)
const;
109 void print_report(std::ostream& ostr = std::cout)
const;
120 std::vector< std::unique_ptr<marley::Level> >
levels_;
132 void parse(
const std::string& filename,
140 void parse_talys(
const std::string& filename);
144 void parse_native(
const std::string& filename);
152 inline const std::vector<std::unique_ptr<marley::Level> >&
162 inline std::ostream& operator<<(std::ostream& out,
Discrete level and γ-ray data for a specific nuclide.
Definition: DecayScheme.hh:30
void read_from_stream(std::istream &in)
Use a std::istream to initialize this DecayScheme object, replacing any previous data.
Definition: DecayScheme.cc:404
void do_cascade(marley::Level &initial_level, marley::Event &event, marley::Generator &gen, int qIon)
Simulates nuclear de-excitation via γ-ray emission(s)
Definition: DecayScheme.cc:71
int pdg() const
Returns the nuclear PDG code corresponding to Z and A.
Definition: DecayScheme.cc:67
std::vector< std::unique_ptr< marley::Level > > levels_
Level objects owned by this DecayScheme.
Definition: DecayScheme.hh:120
int Z_
Atomic number.
Definition: DecayScheme.hh:116
marley::Level & add_level(const marley::Level &level)
Add a level to the DecayScheme.
Definition: DecayScheme.cc:367
void print_latex_table(std::ostream &ostr=std::cout)
Print LaTeX source code that gives a tabular representation of the DecayScheme object.
Definition: DecayScheme.cc:291
int A_
Mass number.
Definition: DecayScheme.hh:117
const std::vector< std::unique_ptr< marley::Level > > & get_levels() const
Get a const reference to the vector that holds the Level objects.
Definition: DecayScheme.hh:153
size_t level_lower_bound_index(double Ex)
Get the index of the first level whose energy is not less than Ex.
Definition: DecayScheme.cc:358
FileFormat
The FileFormat type is used to tell the DecayScheme class which format to assume when parsing a discr...
Definition: DecayScheme.hh:41
int A() const
Get the mass number.
Definition: DecayScheme.hh:150
int Z() const
Get the atomic number.
Definition: DecayScheme.hh:149
void print(std::ostream &out=std::cout) const
Print this DecayScheme object to a std::ostream.
Definition: DecayScheme.cc:380
void print_report(std::ostream &ostr=std::cout) const
Print a human-readable text representation of the DecayScheme object.
Definition: DecayScheme.cc:264
marley::Level * get_pointer_to_closest_level(double E_level)
Gets a pointer to the Level in the DecayScheme whose excitation energy is closest to E_level.
Definition: DecayScheme.cc:35
Container for ingoing and outgoing momentum 4-vectors from a reaction.
Definition: Event.hh:66
The MARLEY Event generator.
Definition: Generator.hh:42
A discrete nuclear energy level.
Definition: Level.hh:29