67 using namespace G4InuclParticleNames;
77 throw G4HadronicException(__FILE__, __LINE__,
"G4InuclEvaporation::copy_constructor meant to not be accessable.");
85 throw G4HadronicException(__FILE__, __LINE__,
"G4InuclEvaporation::operator= meant to not be accessable.");
98 verboseLevel = verbose;
105 theResult->push_back(
new G4Fragment(theNucleus));
119 if ( verboseLevel > 2 )
120 G4cout <<
" G4InuclEvaporation : initial kinematics : boostToLab vector = " << boostToLab <<
G4endl
121 <<
" excitation energy : " << exitationE <<
G4endl;
123 if (verboseLevel > 2) {
124 G4cout <<
"G4InuclEvaporation::BreakItUp >>> A: " << A <<
" Z: " << Z
125 <<
" exitation E: " << exitationE <<
" mass: " << mTar/
GeV <<
" GeV"
133 evaporator->
collide(0, nucleus, output);
141 if (!particles.empty()) {
144 for (; ipart != particles.end(); ipart++) {
145 outgoingType = ipart->type();
147 if (verboseLevel > 2) {
148 G4cout <<
"Evaporated particle: " << i <<
" of type: "
149 << outgoingType <<
G4endl;
153 eTot += ipart->getEnergy();
158 theResult->push_back(
new G4Fragment(vlab, ipart->getDefinition()) );
162 if (!outgoingNuclei.empty()) {
164 for (i=1; ifrag != outgoingNuclei.end(); ifrag++) {
165 if (verboseLevel > 2) {
169 eTot += ifrag->getEnergy();
173 G4int fragA = ifrag->getA();
175 if (verboseLevel > 2) {
178 theResult->push_back(
new G4Fragment(fragA, fragZ, vlab) );
static G4double GetNuclearMass(const G4double A, const G4double Z)
void setVerboseLevel(const G4int verbose)
G4FragmentVector * BreakItUp(const G4Fragment &theNucleus)
void setExitationEnergy(G4double e)
G4GLOB_DLL std::ostream G4cout
double A(double temperature)
const G4LorentzVector & GetMomentum() const
HepLorentzVector & boost(double, double, double)
std::vector< G4Fragment * > G4FragmentVector
virtual void collide(G4InuclParticle *bullet, G4InuclParticle *target, G4CollisionOutput &globalOutput)
const std::vector< G4InuclNuclei > & getOutgoingNuclei() const
const std::vector< G4InuclElementaryParticle > & getOutgoingParticles() const
static constexpr double GeV
std::vector< G4InuclNuclei >::const_iterator nucleiIterator
std::vector< G4InuclElementaryParticle >::iterator particleIterator
G4double GetExcitationEnergy() const