46#define G4NUCLEVEL_HH 1
57 const std::vector<G4int>& vTrans,
58 const std::vector<G4float>& wLevelGamma,
59 const std::vector<G4float>& wGamma,
60 const std::vector<G4float>& vRatio,
61 const std::vector<
const std::vector<G4float>*>& wShell);
90 void PrintError(
size_t idx,
const G4String&)
const;
116 if(idx >=
length) { PrintError(idx,
"FinalExcitationIndex(idx)"); }
118 return (
size_t)(
fTrans[idx]/10000);
124 if(idx >=
length) { PrintError(idx,
"TransitionType(idx)"); }
137 if(idx >=
length) { PrintError(idx,
"GammaProbability(idx)"); }
145 if(idx >=
length) { PrintError(idx,
"GammaCumProbability(idx)"); }
153 if(idx >=
length) { PrintError(idx,
"MultipolarityRatio(idx)"); }
162 for(; idx<
length; ++idx) {
171 if(idx >=
length) { PrintError(idx,
"SampleShell(idx,rndm)"); }
178 for(i=0; i<
nn; ++i) {
if(x <= (*prob)[i]) {
break; } }
183inline const std::vector<G4float>*
187 if(idx >=
length) { PrintError(idx,
"ShellProbability(idx)"); }
const std::vector< G4float > * ShellProbabilty(size_t idx) const
const G4NucLevel & operator=(const G4NucLevel &right)=delete
G4int TransitionType(size_t idx) const
G4float MultipolarityRatio(size_t idx) const
std::vector< G4int > fTrans
std::vector< G4float > fGammaCumProbability
G4float GammaProbability(size_t idx) const
G4NucLevel(size_t ntrans, G4double tgamma, const std::vector< G4int > &vTrans, const std::vector< G4float > &wLevelGamma, const std::vector< G4float > &wGamma, const std::vector< G4float > &vRatio, const std::vector< const std::vector< G4float > * > &wShell)
G4NucLevel(const G4NucLevel &right)=delete
G4bool operator<(const G4NucLevel &right) const =delete
void StreamInfo(std::ostream &os) const
std::vector< G4float > fGammaProbability
size_t NumberOfTransitions() const
std::vector< const std::vector< G4float > * > fShellProbability
size_t FinalExcitationIndex(size_t idx) const
std::vector< G4float > fMpRatio
G4float GammaCumProbability(size_t idx) const
size_t SampleGammaTransition(G4double rndm) const
G4bool operator!=(const G4NucLevel &right) const =delete
G4bool operator==(const G4NucLevel &right) const =delete
G4double GetTimeGamma() const
G4int SampleShell(size_t idx, G4double rndm) const