68 excTolerance(tolerance), inputEkin(0.),
69 recoilA(0), recoilZ(0), excitationEnergy(0.) {
84 G4cout <<
" >>> G4CascadeRecoilMaker::collide" <<
G4endl;
99 const std::vector<G4CascadParticle>& cparticles) {
101 G4cout <<
" >>> G4CascadeRecoilMaker::collide(<EP>,<CP>)" <<
G4endl;
145 G4cout <<
" >>> G4CascadeRecoilMaker::makeRecoilNuclei" <<
G4endl;
166 G4cout <<
" >>> G4CascadeRecoilMaker::makeRecoilFragment" <<
G4endl;
218 G4cout <<
" >>> G4CascadeRecoilMaker::wholeEvent:"
221 <<
"\n wholeEvent returns "
236 G4cout <<
" >>> G4CascadeRecoilMaker::goodNucleus" <<
G4endl;
240 const G4double reasonableExcitation = 7.0;
241 const G4double fractionalExcitation = 0.2;
247 G4cerr <<
" goodNucleus: negative excitation" <<
G4endl;
257 G4double exc_dm = reasonableExcitation * dm;
258 G4double exc_max = (exc_max0z > exc_dm) ? exc_max0z : exc_dm;
262 <<
" dm " << dm <<
G4endl;
266 G4cerr <<
" goodNucleus: too much excitation" <<
G4endl;
static constexpr double keV
static constexpr double GeV
G4GLOB_DLL std::ostream G4cerr
G4GLOB_DLL std::ostream G4cout
void setVectM(const Hep3Vector &spatial, double mass)
void collide(G4InuclParticle *bullet, G4InuclParticle *target, G4CollisionOutput &output)
G4LorentzVector deltaLV() const
G4CascadeCheckBalance * balance
G4bool wholeEvent() const
virtual ~G4CascadeRecoilMaker()
G4InuclNuclei theRecoilNuclei
G4LorentzVector recoilMomentum
void collide(G4InuclParticle *bullet, G4InuclParticle *target, G4CollisionOutput &output)
G4bool goodNucleus() const
G4InuclNuclei * makeRecoilNuclei(G4InuclParticle::Model model=G4InuclParticle::DefaultModel)
G4Fragment * makeRecoilFragment()
G4Fragment theRecoilFragment
G4bool goodRecoil() const
G4ExitonConfiguration theExcitons
G4double excitationEnergy
G4bool goodFragment() const
G4CascadeRecoilMaker(G4double tolerance=0.001 *CLHEP::MeV)
G4int neutronQuasiParticles
G4int protonQuasiParticles
void SetNumberOfHoles(G4int valueTot, G4int valueP=0)
void SetMomentum(const G4LorentzVector &value)
void SetNumberOfExcitedParticle(G4int valueTot, G4int valueP)
void SetZandA_asInt(G4int Znew, G4int Anew)
void setExitonConfiguration(const G4ExitonConfiguration &config)
G4double getNucleiMass() const
void fill(G4int a, G4int z, G4double exc=0., Model model=DefaultModel)
G4double getKineticEnergy() const
virtual void setVerboseLevel(G4int verbose=0)
G4double bindingEnergy(G4int A, G4int Z)