50 std::vector<G4LorentzVector*>*
 
   52                                           const std::vector<G4double>& mr) 
const 
   57   std::vector<G4LorentzVector*>* 
P = 
 
   58     new std::vector<G4LorentzVector*>(N, 0);
 
   61   for(
size_t k=0; k<N; ++k) { mtot += mr[k]; }
 
   70   CLHEP::HepRandomEngine* rndmEngine = G4Random::getTheEngine();
 
   72   for (
size_t k = N-1; k>0; --k)
 
   75       if (k>1) { T *= BetaKopylov(k, rndmEngine); }
 
   80       PFragMagCM = PtwoBody(Mass,mr[k],RestMass);
 
   83       G4ThreeVector RandVector(IsotropicVector(PFragMagCM, rndmEngine));
 
   85       PFragCM.setVect(RandVector);
 
   86       PFragCM.setE(std::sqrt(PFragMagCM*PFragMagCM + mr[k]*mr[k]));
 
   88       PRestCM.setVect(-RandVector);
 
   89       PRestCM.setE(std::sqrt(PFragMagCM*PFragMagCM + RestMass*RestMass));
 
   94       PFragCM.boost(BoostV);
 
   95       PRestCM.boost(BoostV);
 
  112   G4cout << 
"G4FermiPhaseSpaceDecay:  problem of decay of M(GeV)= " << E/
GeV  
  113          << 
" on M1(GeV)= " << P1/
GeV << 
" and  M2(GeV)= " << P2/
GeV 
  114          << 
" P(MeV)= " << P/
MeV << 
" < 0" << 
G4endl;
 
static G4Pow * GetInstance()
 
static const G4double * P1[nN]
 
CLHEP::Hep3Vector G4ThreeVector
 
void DumpProblem(G4double E, G4double P1, G4double P2, G4double P) const 
 
G4GLOB_DLL std::ostream G4cout
 
~G4FermiPhaseSpaceDecay()
 
static const G4double * P2[nN]
 
std::vector< G4LorentzVector * > * KopylovNBodyDecay(G4double, const std::vector< G4double > &) const 
 
CLHEP::HepLorentzVector G4LorentzVector