135   const G4int itry_max = 100;
   140       G4cout << 
" InuclCollider -> particle on particle collision" << 
G4endl;
   153       G4cerr << 
" InuclCollider -> no collision possible " << 
G4endl;
   162     G4cerr << 
" InuclCollider -> ERROR target is not a nucleus " << 
G4endl;
   177       G4cerr << 
" InuclCollider -> ERROR bullet is not a hadron " << 
G4endl;
   183       G4cerr << 
" InuclCollider -> ERROR can not collide with "   189     btype = pbullet->
type();
   194       G4cerr << 
" InuclCollider -> ERROR bullet is not a nucleus " << 
G4endl;
   199     ab = nbullet->
getA();
   200     zb = nbullet->
getZ();
   210       G4cout << 
" InuclCollider -> inelastic interaction is impossible\n"   211          << 
" due to the coulomb barirer " << 
G4endl;
   220     G4cout << 
" degenerated? " << convertToTargetRestFrame.
trivial()
   235   while (itry < itry_max) { 
   240     globalOutput.
reset();       
   251     if (getenv(
"G4CASCADE_CHECK_PHOTONUCLEAR"))
   255       G4cout << 
" itry " << itry << 
" finished, moving to lab frame" << 
G4endl;
   267     G4cout << 
" InuclCollider output after trials " << itry << 
G4endl;
   272     G4cerr << 
" InuclCollider setOnShell failed." << 
G4endl;
   277     G4cout << 
" InuclCollider -> can not generate acceptable inter. after "    278        << itry_max << 
" attempts " << 
G4endl;
   299   globalOutput.
reset();     
   313     G4cout << 
" InuclCollider output after trials " << itry << 
G4endl;
   325   const G4int itry_max = 10;        
   349     G4cout << 
" >>> G4InuclCollider::photonuclearOkay" << 
G4endl;
   354     G4cout << 
" comparing final nucleus with initial target:\n"   362   if (mfinalNuc != mtargetNuc) 
return true; 
   365     G4cout << 
" photonuclear produced only gammas.  Try again." << 
G4endl;
 
void trivialise(G4InuclParticle *bullet, G4InuclParticle *target)
 
void rescatter(G4InuclParticle *bullet, G4KineticTrackVector *theSecondaries, G4V3DNucleus *theNucleus, G4CollisionOutput &globalOutput)
 
void setVerboseLevel(G4int verbose)
 
static const G4CascadeChannel * GetTable(G4int initialState)
 
G4bool photonuclearOkay(G4CollisionOutput &checkOutput) const
 
virtual G4bool useEPCollider(G4InuclParticle *bullet, G4InuclParticle *target) const
 
virtual G4bool inelasticInteractionPossible(G4InuclParticle *bullet, G4InuclParticle *target, G4double ekin) const
 
G4InuclParticle * getTarget() const
 
G4CollisionOutput DEXoutput
 
G4bool isElectron() const
 
void removeRecoilFragment(G4int index=-1)
 
void collide(G4InuclParticle *bullet, G4InuclParticle *target, G4CollisionOutput &output)
 
virtual ~G4InuclCollider()
 
G4InuclParticle * getBullet() const
 
void deexcite(const G4Fragment &fragment, G4CollisionOutput &globalOutput)
 
G4ElementaryParticleCollider * theElementaryParticleCollider
 
virtual void setVerboseLevel(G4int verbose=0)
 
virtual void deExcite(const G4Fragment &fragment, G4CollisionOutput &output)=0
 
G4bool hadNucleus() const
 
void add(const G4CollisionOutput &right)
 
void useCascadeDeexcitation()
 
const G4String & GetParticleName() const
 
G4GLOB_DLL std::ostream G4cout
 
void setVerboseLevel(G4int verbose=0)
 
void rescatter(G4InuclParticle *bullet, G4KineticTrackVector *theSecondaries, G4V3DNucleus *theNucleus, G4CollisionOutput &globalOutput)
 
void boostToLabFrame(const G4LorentzConvertor &convertor)
 
void collide(G4InuclParticle *bullet, G4InuclParticle *target, G4CollisionOutput &globalOutput)
 
void collide(G4InuclParticle *bullet, G4InuclParticle *target, G4CollisionOutput &globalOutput)
 
G4InteractionCase interCase
 
void set(G4InuclParticle *part1, G4InuclParticle *part2)
 
G4double getKineticEnergy() const
 
virtual G4bool validateOutput(G4InuclParticle *bullet, G4InuclParticle *target, G4CollisionOutput &output)
 
cout<< "-> Edep in the target
 
G4IntraNucleiCascader * theIntraNucleiCascader
 
G4double getTRSMomentum() const
 
virtual void setVerboseLevel(G4int verbose=0)
 
void setVerboseLevel(G4int verbose=0)
 
G4double getKinEnergyInTheTRS() const
 
void toTheTargetRestFrame()
 
G4bool acceptable() const
 
const std::vector< G4InuclNuclei > & getOutgoingNuclei() const
 
const G4ParticleDefinition * getDefinition() const
 
void usePreCompoundDeexcitation()
 
G4VCascadeDeexcitation * theDeexcitation
 
void setOnShell(G4InuclParticle *bullet, G4InuclParticle *target)
 
G4GLOB_DLL std::ostream G4cerr
 
const G4Fragment & getRecoilFragment(G4int index=0) const