50 std::vector<G4LorentzVector*>*
 
   51 G4FermiPhaseSpaceDecay::KopylovNBodyDecay(
G4double M, 
 
   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]; }
 
   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]
 
G4GLOB_DLL std::ostream G4cout
 
static constexpr double eV
 
~G4FermiPhaseSpaceDecay()
 
static constexpr double GeV
 
static const G4double * P2[nN]
 
static constexpr double MeV
 
CLHEP::HepLorentzVector G4LorentzVector