14#define PoPI_A_Chars "A"
30 m_chemicalElement( a_chemicalElement ),
31 m_Z( a_chemicalElement->
Z( ) ),
51 std::string energyUnit =
"MeV";
54 for( std::size_t i1 = 0; i1 < m_nuclides.size( ); ++i1 ) {
55 std::size_t initialSize = a_nuclideGammaBranchStateInfos.
size( );
59 nuclide.calculateNuclideGammaBranchStateInfos( a_pops, a_nuclideGammaBranchStateInfos );
60 if( a_nuclideGammaBranchStateInfos.
size( ) > initialSize ) {
61 info = a_nuclideGammaBranchStateInfos[initialSize];
62 if( priorInfo !=
nullptr ) {
64 for( std::size_t i2 = i1 + 1; i2 < m_nuclides.size( ); ++i2 ) {
65 Nuclide const &nuclide2 = m_nuclides[i2];
66 if( nuclide2.
levelEnergy( energyUnit ) > levelEnergy ) {
67 width = nuclide2.
levelEnergy( energyUnit ) - levelEnergy;
71 priorInfo->setNuclearLevelEnergyWidth( width );
87void Isotope::toXMLList( std::vector<std::string> &a_XMLList, std::string
const &a_indent1 )
const {
89 std::string::size_type size = m_nuclides.size( );
92 std::string header = a_indent1 +
"<isotope symbol=\"" +
symbol( ) +
"\" A=\"" + AStr +
"\">";
93 a_XMLList.push_back( std::move( header ) );
95 std::string indent2 = a_indent1 +
" ";
97 a_XMLList.push_back( std::move( nuclideSuite ) );
99 std::string indent3 = indent2 +
" ";
100 for( std::string::size_type i1 = 0; i1 < size; ++i1 ) m_nuclides[i1].
toXMLList( a_XMLList, indent3 );
#define PoPI_nuclidesChars
#define PoPI_continuumChars
#define PoPI_isotopeChars
Node child(const char *name) const
void calculateNuclideGammaBranchStateInfos(PoPI::Database const &a_pops, NuclideGammaBranchStateInfos &a_nuclideGammaBranchStateInfos) const
Isotope(HAPI::Node const &a_node, Database *a_DB, ChemicalElement *a_parent)
void toXMLList(std::vector< std::string > &a_XMLList, std::string const &a_indent1) const
double levelEnergy(std::string const &a_unit) const
SymbolBase(HAPI::Node const &a_node, Particle_class a_class)
std::string const & symbol() const
std::string argumentsToString(char const *a_format,...)
void appendXMLEnd(std::vector< std::string > &a_XMLList, std::string const &a_label)