31#ifndef G4FERMIDATATYPES_HH
32#define G4FERMIDATATYPES_HH
40 static constexpr G4int MAX_Z = 9;
41 static constexpr G4int MAX_A = 17;
61 constexpr operator std::uint32_t()
const {
return mass_; }
63 constexpr operator G4int()
const {
return mass_; }
65 constexpr operator G4double()
const {
return mass_; }
100 constexpr operator std::uint32_t()
const {
return charge_; }
102 constexpr operator G4int()
const {
return charge_; }
104 constexpr operator G4double()
const {
return charge_; }
153 return (mass * (mass + 1)) / 2 + charge;
177#define FERMI_ASSERT_MSG(COND, MSG) \
179 G4ExceptionDescription ed; \
180 ed << "assertion failed: \"" << #COND << '\"' << " at " << __FILE__ << ':' << __LINE__ \
183 G4Exception("G4FermiBreakUpAN: ", "fermi03", FatalException, ed, ""); \
186#endif // G4FERMIDATATYPES_HH
G4bool operator<(const G4FermiAtomicMass &other) const
G4bool operator==(const G4FermiAtomicMass &other) const
G4bool operator>=(const G4FermiAtomicMass &other) const
G4bool operator>(const G4FermiAtomicMass &other) const
constexpr G4FermiAtomicMass(ValueType mass)
G4FermiAtomicMass & operator=(const G4FermiAtomicMass &other)=default
G4FermiAtomicMass(G4FermiAtomicMass &&other)=default
G4bool operator<=(const G4FermiAtomicMass &other) const
G4FermiAtomicMass(const G4FermiAtomicMass &other)=default
G4bool operator!=(const G4FermiAtomicMass &other) const
G4FermiAtomicMass()=default
G4FermiAtomicMass & operator=(G4FermiAtomicMass &&other)=default
G4bool operator>(const G4FermiChargeNumber &other) const
G4bool operator<=(const G4FermiChargeNumber &other) const
G4bool operator==(const G4FermiChargeNumber &other) const
G4FermiChargeNumber(G4FermiChargeNumber &&other)=default
G4bool operator!=(const G4FermiChargeNumber &other) const
G4FermiChargeNumber(const G4FermiChargeNumber &other)=default
G4FermiChargeNumber()=default
G4bool operator>=(const G4FermiChargeNumber &other) const
G4FermiChargeNumber & operator=(const G4FermiChargeNumber &other)=default
G4bool operator<(const G4FermiChargeNumber &other) const
constexpr G4FermiChargeNumber(ValueType charge)
G4FermiChargeNumber & operator=(G4FermiChargeNumber &&other)=default
std::istream & operator>>(std::istream &in, G4FermiAtomicMass &mass)
std::ostream & operator<<(std::ostream &out, const G4FermiAtomicMass &mass)
std::string to_string(G4FermiAtomicMass mass)
G4bool operator!=(const G4FermiNucleiData &other) const
G4FermiChargeNumber chargeNumber
G4bool operator==(const G4FermiNucleiData &other) const
G4bool operator<(const G4FermiNucleiData &other) const
G4FermiAtomicMass atomicMass
std::size_t operator()(const G4FermiNucleiData &key) const