94{
95
97
99
102 ResidualA = FragmentA - theA;
103 ResidualZ = FragmentZ - theZ;
104
105
106
107
110
111
112 if (ResidualA <= 0 || ResidualZ <= 0 || ResidualA < ResidualZ ||
113 (ResidualA == ResidualZ && ResidualA > 1) || ExEnergy <= 0.0) {
114 CoulombBarrier = ResidualMass = 0.0;
115 MaximalKineticEnergy = -1000.0*MeV;
116 EmissionProbability = 0.0;
117 } else {
120 CoulombBarrier = theCoulombBarrierPtr->
GetCoulombBarrier(ResidualA,ResidualZ,ExEnergy);
121
122 MaximalKineticEnergy = CalcMaximalKineticEnergy(FragmentMass + ExEnergy);
123
124
125
126
127
128
129
130
133 limit= CoulombBarrier;
134 else limit=0.;
135 limit = std::max(limit, FragmentMass - ResidualMass - EvaporatedMass);
136
137
138
139 if (MaximalKineticEnergy <= limit) EmissionProbability = 0.0;
140 else {
141
142 EmissionProbability = theEvaporationProbabilityPtr->
143 EmissionProbability(*fragment, MaximalKineticEnergy);
144 }
145 }
146
147
148 return EmissionProbability;
149}
G4double GetGroundStateMass() const
G4double GetExcitationEnergy() const
static G4PairingCorrection * GetInstance()
G4double GetPairingCorrection(G4int A, G4int Z) const
virtual G4double GetCoulombBarrier(G4int ARes, G4int ZRes, G4double U) const =0