#include <G4CascadeRecoilMaker.hh>
Definition at line 65 of file G4CascadeRecoilMaker.hh.
 
Definition at line 67 of file G4CascadeRecoilMaker.cc.
   69     excTolerance(tolerance), inputEkin(0.),
 
   70     recoilA(0), recoilZ(0), excitationEnergy(0.) {
 
G4VCascadeCollider(const G4String &name, G4int verbose=0)
 
 
 
 
  
  
      
        
          | G4CascadeRecoilMaker::~G4CascadeRecoilMaker  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
virtual   | 
  
 
 
Implements G4VCascadeCollider.
Definition at line 81 of file G4CascadeRecoilMaker.cc.
   85     G4cout << 
" >>> G4CascadeRecoilMaker::collide" << 
G4endl;
 
   91   balance->
collide(bullet, target, output);
 
void collide(G4InuclParticle *bullet, G4InuclParticle *target, G4CollisionOutput &output)
 
virtual void setVerboseLevel(G4int verbose=0)
 
G4double getKineticEnergy() const 
 
G4GLOB_DLL std::ostream G4cout
 
 
 
 
Definition at line 97 of file G4CascadeRecoilMaker.cc.
  102     G4cout << 
" >>> G4CascadeRecoilMaker::collide(<EP>,<CP>)" << 
G4endl;
 
  108   balance->
collide(bullet, target, output, cparticles);
 
void collide(G4InuclParticle *bullet, G4InuclParticle *target, G4CollisionOutput &output)
 
virtual void setVerboseLevel(G4int verbose=0)
 
G4double getKineticEnergy() const 
 
G4GLOB_DLL std::ostream G4cout
 
 
 
 
  
  
      
        
          | G4double G4CascadeRecoilMaker::deltaM  | 
          ( | 
           | ) | 
           const | 
         
       
   | 
  
protected   | 
  
 
 
  
  
      
        
          | void G4CascadeRecoilMaker::fillRecoil  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
protected   | 
  
 
Definition at line 116 of file G4CascadeRecoilMaker.cc.
  117   recoilZ = -(balance->
deltaQ());       
 
  118   recoilA = -(balance->
deltaB());       
 
  119   recoilMomentum = -(balance->
deltaLV());
 
  128   if (std::abs(excitationEnergy) < excTolerance) excitationEnergy = 0.;
 
  131     G4cout << 
"  recoil px " << recoilMomentum.
px()
 
  132        << 
" py " << recoilMomentum.
py() << 
" pz " << recoilMomentum.
pz()
 
  133        << 
" E " << recoilMomentum.
e() << 
" baryon " << recoilA
 
  134        << 
" charge " << recoilZ
 
  135        << 
"\n  recoil mass " << recoilMomentum.
m()
 
  136        << 
" 'excitation' energy " << excitationEnergy << 
G4endl;
 
G4LorentzVector deltaLV() const 
 
G4GLOB_DLL std::ostream G4cout
 
G4bool goodFragment() const 
 
static constexpr double GeV
 
 
 
 
  
  
      
        
          | G4int G4CascadeRecoilMaker::getRecoilA  | 
          ( | 
           | ) | 
           const | 
         
       
   | 
  
inline   | 
  
 
 
  
  
      
        
          | G4double G4CascadeRecoilMaker::getRecoilExcitation  | 
          ( | 
           | ) | 
           const | 
         
       
   | 
  
inline   | 
  
 
 
  
  
      
        
          | G4int G4CascadeRecoilMaker::getRecoilZ  | 
          ( | 
           | ) | 
           const | 
         
       
   | 
  
inline   | 
  
 
 
      
        
          | G4bool G4CascadeRecoilMaker::goodFragment  | 
          ( | 
           | ) | 
           const | 
        
      
 
 
      
        
          | G4bool G4CascadeRecoilMaker::goodNucleus  | 
          ( | 
           | ) | 
           const | 
        
      
 
Definition at line 235 of file G4CascadeRecoilMaker.cc.
  237     G4cout << 
" >>> G4CascadeRecoilMaker::goodNucleus" << 
G4endl;
 
  241   const G4double reasonableExcitation = 7.0;    
 
  242   const G4double fractionalExcitation = 0.2;    
 
  247       else if (excitationEnergy < -excTolerance) 
 
  248     G4cerr << 
" goodNucleus: negative excitation" << 
G4endl;
 
  253   if (excitationEnergy <= minExcitation) 
return true;   
 
  257   G4double exc_max0z = fractionalExcitation * inputEkin*
GeV;
 
  258   G4double exc_dm    = reasonableExcitation * dm;
 
  259   G4double exc_max = (exc_max0z > exc_dm) ? exc_max0z : exc_dm;
 
  262     G4cout << 
" eexs " << excitationEnergy << 
" max " << exc_max
 
  263        << 
" dm " << dm << 
G4endl;
 
  267     G4cerr << 
" goodNucleus: too much excitation" << 
G4endl;
 
  269   return (excitationEnergy < exc_max);      
 
G4bool goodRecoil() const 
 
G4GLOB_DLL std::ostream G4cout
 
G4bool goodFragment() const 
 
static constexpr double GeV
 
G4double bindingEnergy(G4int A, G4int Z)
 
static constexpr double keV
 
G4GLOB_DLL std::ostream G4cerr
 
 
 
 
      
        
          | G4bool G4CascadeRecoilMaker::goodRecoil  | 
          ( | 
           | ) | 
           const | 
        
      
 
 
      
        
          | G4Fragment * G4CascadeRecoilMaker::makeRecoilFragment  | 
          ( | 
           | ) | 
           | 
        
      
 
Definition at line 165 of file G4CascadeRecoilMaker.cc.
  167     G4cout << 
" >>> G4CascadeRecoilMaker::makeRecoilFragment" << 
G4endl;
 
  195   return &theRecoilFragment;
 
void SetNumberOfHoles(G4int valueTot, G4int valueP=0)
 
G4bool wholeEvent() const 
 
void setVectM(const Hep3Vector &spatial, double mass)
 
void SetNumberOfExcitedParticle(G4int valueTot, G4int valueP)
 
G4bool goodRecoil() const 
 
G4GLOB_DLL std::ostream G4cout
 
void SetMomentum(const G4LorentzVector &value)
 
G4double getNucleiMass() const 
 
void SetZandA_asInt(G4int Znew, G4int Anew)
 
static constexpr double GeV
 
G4int neutronQuasiParticles
 
G4int protonQuasiParticles
 
 
 
 
Definition at line 144 of file G4CascadeRecoilMaker.cc.
  146     G4cout << 
" >>> G4CascadeRecoilMaker::makeRecoilNuclei" << 
G4endl;
 
  155   theRecoilNuclei.
fill(recoilMomentum, recoilA, recoilZ,
 
  156                excitationEnergy, 
model);
 
  159   return &theRecoilNuclei;
 
void fill(G4int a, G4int z, G4double exc=0., Model model=DefaultModel)
 
G4bool wholeEvent() const 
 
G4bool goodRecoil() const 
 
G4GLOB_DLL std::ostream G4cout
 
void setExitonConfiguration(const G4ExitonConfiguration &config)
 
const XML_Char XML_Content * model
 
 
 
 
  
  
      
        
          | void G4CascadeRecoilMaker::setRecoilExcitation  | 
          ( | 
          G4double  | 
          Eexc | ) | 
           | 
         
       
   | 
  
inline   | 
  
 
 
  
  
      
        
          | void G4CascadeRecoilMaker::setTolerance  | 
          ( | 
          G4double  | 
          tolerance | ) | 
           | 
         
       
   | 
  
inline   | 
  
 
 
  
  
      
        
          | G4bool G4CascadeRecoilMaker::unphysicalRecoil  | 
          ( | 
           | ) | 
           const | 
         
       
   | 
  
inline   | 
  
 
 
      
        
          | G4bool G4CascadeRecoilMaker::wholeEvent  | 
          ( | 
           | ) | 
           const | 
        
      
 
Definition at line 217 of file G4CascadeRecoilMaker.cc.
  219     G4cout << 
" >>> G4CascadeRecoilMaker::wholeEvent:" 
  220        << 
" A " << recoilA << 
" Z " << recoilZ
 
  221        << 
" P " << recoilMomentum.
rho() << 
" E " << recoilMomentum.
e()
 
  222        << 
"\n wholeEvent returns " 
  223        << (recoilA==0 && recoilZ==0 && 
 
  224            recoilMomentum.
rho() < excTolerance/
GeV &&
 
  225            std::abs(recoilMomentum.
e()) < excTolerance/
GeV) << 
G4endl;
 
  228   return (recoilA==0 && recoilZ==0 && 
 
  229       recoilMomentum.
rho() < excTolerance/
GeV &&
 
  230       std::abs(recoilMomentum.
e()) < excTolerance/
GeV);
 
G4GLOB_DLL std::ostream G4cout
 
static constexpr double GeV
 
 
 
 
The documentation for this class was generated from the following files: