60 theEvaporationProbabilityPtr(aEmissionStrategy),
61 theCoulombBarrierPtr(aCoulombBarrier),
62 EmissionProbability(0.0),
63 MaximalKineticEnergy(-1000.0)
106 G4double Etot = FragmentMass + ExEnergy;
146 EvaporatedMomentum.boost(ResidualMomentum.boostVector());
149 ResidualMomentum -= EvaporatedMomentum;
161 if(frag1) { theResult->push_back(frag1); }
162 theResult->push_back(frag0);
182 if (RbSqrt < 160.0) PEX1 =
G4Exp(-RbSqrt);
187 Rk = 1.0 + (1./RbSqrt)*
G4Log(RandNumber + (1.0-RandNumber)*PEX1);
194 Q2 = Q1*std::sqrt(Q1);
197 FRk = (3.0*std::sqrt(3.0)/2.0)/Q2 * Rk * (Q1 - Rk*Rk);
219 G4double SinTheta = std::sqrt(1.0 - CosTheta*CosTheta);
222 Magnitude*std::sin(Phi)*SinTheta,
static G4Pow * GetInstance()
static G4double GetNuclearMass(const G4double A, const G4double Z)
CLHEP::Hep3Vector G4ThreeVector
G4double MaximalKineticEnergy
G4double SampleKineticEnergy(const G4Fragment &aFragment)
G4VCoulombBarrier * theCoulombBarrierPtr
G4EvaporationProbability * theEvaporationProbabilityPtr
virtual G4Fragment * EmittedFragment(G4Fragment *theNucleus)
virtual G4double GetEmissionProbability(G4Fragment *fragment)
G4double ProbabilityDistributionFunction(const G4Fragment &aFragment, G4double K)
G4VLevelDensityParameter * theLevelDensityPtr
G4double Z13(G4int Z) const
G4PairingCorrection * pairingCorrection
const G4LorentzVector & GetMomentum() const
void SetMomentum(const G4LorentzVector &value)
G4double GetPairingCorrection(G4int A, G4int Z) const
std::vector< G4Fragment * > G4FragmentVector
G4double GetGroundStateMass() const
G4double G4Log(G4double x)
G4double G4Exp(G4double initial_x)
Exponential Function double precision.
static G4PairingCorrection * GetInstance()
G4EvaporationChannel(G4int theA, G4int theZ, const G4String &aName, G4EvaporationProbability *aEmissionStrategy, G4VCoulombBarrier *aCoulombBarrier)
virtual ~G4EvaporationChannel()
G4double EmissionProbability
void SetZandA_asInt(G4int Znew, G4int Anew)
virtual G4FragmentVector * BreakUp(const G4Fragment &theNucleus)
G4double Z23(G4int Z) const
virtual G4double GetCoulombBarrier(G4int ARes, G4int ZRes, G4double U) const =0
G4ThreeVector IsotropicVector(G4double Magnitude=1.0)
virtual void Initialise()
G4double GetExcitationEnergy() const
CLHEP::HepLorentzVector G4LorentzVector