53 : widthOfPtSquare(-2*
sqr(sigmaPt)) , minExtraMass(minextraMass), minmass(x0mass)
 
   84   Psum=Pprojectile+Ptarget;
 
   90   if ( Ptmp.pz() <= 0. )
 
  114     if (whilecount++ >= 500 && (whilecount%100)==0)
 
  119     if (whilecount > 1000 )
 
  128     G4double Xmin = minmass / ( Pprojectile.e() + Ptarget.e() );
 
  134     G4double Qplus =-1 * pt2 / Xminus/Ptarget.minus();
 
  135     G4double Qminus=     pt2 / Xplus /Pprojectile.plus();
 
  137     if ( KeepProjectile )
 
  140            / (Pprojectile.plus() + Qplus ) -  Pprojectile.minus();
 
  143                        / (Ptarget.minus() - Qminus );
 
  146     Qmomentum.
setPz( (Qplus-Qminus)/2 );
 
  147     Qmomentum.
setE(  (Qplus+Qminus)/2 );
 
  155   } 
while (  (Ptarget-Qmomentum).mag2() <= Mtarget2  
 
  156          || (Pprojectile+Qmomentum).mag2() <= Mprojectile2
 
  157          || (Ptarget-Qmomentum).e() < 0.
 
  158          || (Pprojectile+Qmomentum).e() < 0. );
 
  162   Pprojectile += Qmomentum;
 
  163   Ptarget     -= Qmomentum;
 
  196   if ( Xmin <= 0. || range <=0. ) 
 
  198     G4cout << 
" Xmin, range : " << Xmin << 
" , " << range << 
G4endl;
 
  199     throw G4HadronicException(__FILE__, __LINE__, 
"G4SingleDiffractiveExcitation::ChooseX : Invalid arguments ");
 
  217   const G4int maxNumberOfLoops = 1000;
 
  218   G4int loopCounter = -1;
 
  221   } 
while ( ( pt2 > maxPtSquare) && ++loopCounter < maxNumberOfLoops );  
 
  222   if ( loopCounter >= maxNumberOfLoops ) pt2 = 0.0;
 
  228   return G4ThreeVector (pt2*std::cos(phi), pt2*std::sin(phi), 0.);    
 
~G4SingleDiffractiveExcitation()
 
G4bool ExciteParticipants(G4VSplitableHadron *aPartner, G4VSplitableHadron *bPartner) const 
 
Hep3Vector boostVector() const 
 
CLHEP::Hep3Vector G4ThreeVector
 
static constexpr double perCent
 
HepLorentzVector & rotateZ(double)
 
static constexpr double twopi
 
const G4ParticleDefinition * GetDefinition() const 
 
G4GLOB_DLL std::ostream G4cout
 
HepLorentzRotation & transform(const HepBoost &b)
 
const G4LorentzVector & Get4Momentum() const 
 
G4double G4Log(G4double x)
 
G4double GetPDGMass() const 
 
G4SingleDiffractiveExcitation(G4double sigmaPt=0.6 *CLHEP::GeV, G4double minExtraMass=250 *CLHEP::MeV, G4double x0mass=250 *CLHEP::MeV)
 
HepLorentzVector & rotateY(double)
 
HepLorentzVector & transform(const HepRotation &)
 
void Set4Momentum(const G4LorentzVector &a4Momentum)
 
CLHEP::HepLorentzVector G4LorentzVector