- Timestamp:
- May 28, 2009, 4:26:57 PM (15 years ago)
- Location:
- trunk/source/processes/hadronic/models/de_excitation/evaporation/src
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/source/processes/hadronic/models/de_excitation/evaporation/src/G4AlphaEvaporationProbability.cc
r1007 r1055 104 104 //OPT=3,4 Kalbach's parameterization 105 105 // 106 G4double G4AlphaEvaporationProbability::CrossSection(const G4Fragment & fragment, const G4double K) 106 G4double G4AlphaEvaporationProbability::CrossSection(const G4Fragment & fragment, 107 const G4double K) 107 108 { 108 109 theA=GetA(); … … 117 118 118 119 if (OPTxs==0) {std::ostringstream errOs; 119 errOs << "We should'n be here (OPT =0) at evaporation cross section calculation (Alpha's)!!" <<G4endl; 120 errOs << "We should'n be here (OPT =0) at evaporation cross section calculation (Alpha's)!!" 121 <<G4endl; 120 122 throw G4HadronicException(__FILE__, __LINE__, errOs.str()); 121 123 return 0.;} … … 203 205 G4double ra=1.20; 204 206 205 ec = 1.44 * theZ * ResidualZ / (1.5*ResidualAthrd+ra); 207 //JMQ 13/02/09 increase of reduced radius to lower the barrier 208 // ec = 1.44 * theZ * ResidualZ / (1.5*ResidualAthrd+ra); 209 ec = 1.44 * theZ * ResidualZ / (1.7*ResidualAthrd+ra); 206 210 ecsq = ec * ec; 207 211 p = p0 + p1/ec + p2/ecsq; … … 226 230 227 231 if (elab <= ec) { //start for E<Ec 228 if (elab > ecut2) sig = (p*elab*elab+a*elab+b) * signor; 232 if (elab > ecut2) sig = (p*elab*elab+a*elab+b) * signor; 229 233 } //end for E<Ec 230 234 else { //start for E>Ec -
trunk/source/processes/hadronic/models/de_excitation/evaporation/src/G4DeuteronEvaporationProbability.cc
r1007 r1055 106 106 //OPT=3,4 Kalbach's parameterization 107 107 // 108 108 G4double G4DeuteronEvaporationProbability::CrossSection(const G4Fragment & fragment, const G4double K) 109 109 { 110 110 theA=GetA(); … … 205 205 G4double ra=0.80; 206 206 207 ec = 1.44 * theZ * ResidualZ / (1.5*ResidualAthrd+ra); 207 //JMQ 13/02/09 increase of reduced radius to lower the barrier 208 // ec = 1.44 * theZ * ResidualZ / (1.5*ResidualAthrd+ra); 209 ec = 1.44 * theZ * ResidualZ / (1.7*ResidualAthrd+ra); 208 210 ecsq = ec * ec; 209 211 p = p0 + p1/ec + p2/ecsq; … … 226 228 elab = K * FragmentA / ResidualA; 227 229 sig = 0.; 228 230 229 231 if (elab <= ec) { //start for E<Ec 230 if (elab > ecut2) sig = (p*elab*elab+a*elab+b) * signor; 232 if (elab > ecut2) sig = (p*elab*elab+a*elab+b) * signor; 231 233 } //end for E<Ec 232 234 else { //start for E>Ec -
trunk/source/processes/hadronic/models/de_excitation/evaporation/src/G4EvaporationProbability.cc
r1007 r1055 33 33 // JMQ (06 September 2008) Also external choices have been added for 34 34 // superimposed Coulomb barrier (if useSICB is set true, by default is false) 35 35 // 36 // JMQ (14 february 2009) bug fixed in emission width: hbarc instead of hbar_Planck in the denominator 37 // 36 38 #include <iostream> 37 39 using namespace std; … … 138 140 139 141 140 // if Coulomb barrier cutoff is superimposed for all cross sections the limit is the Coulomb Barrier141 142 143 // MaximalKineticEnergy: asimptotic value (already accounted for in G4EvaporationChannel)144 145 G4double UpperLimit = MaximalKineticEnergy;146 147 148 G4double Width = IntegrateEmissionProbability(fragment,LowerLimit,UpperLimit);149 150 return Width;142 // if Coulomb barrier cutoff is superimposed for all cross sections the limit is the Coulomb Barrier 143 G4double LowerLimit= limit; 144 145 // MaximalKineticEnergy: asimptotic value (already accounted for in G4EvaporationChannel) 146 147 G4double UpperLimit = MaximalKineticEnergy; 148 149 150 G4double Width = IntegrateEmissionProbability(fragment,LowerLimit,UpperLimit); 151 152 return Width; 151 153 } else{ 152 154 std::ostringstream errOs; … … 244 246 if (E1<0.) return 0.; 245 247 246 247 //Without 1/hbar_Panck remains as a width 248 249 G4double Prob=Gamma*ParticleMass/((pi*hbar_Planck)*(pi*hbar_Planck)*std::exp(2*std::sqrt(a0*E0)))*K*CrossSection(fragment,K)*std::exp(2*std::sqrt(a1*E1))*millibarn; 250 251 return Prob; 252 253 } 254 255 248 //JMQ 14/02/09 BUG fixed: hbarc should be in the denominator instead of hbar_Planck 249 //Without 1/hbar_Panck remains as a width 250 // G4double Prob=Gamma*ParticleMass/((pi*hbar_Planck)*(pi*hbar_Planck)* 251 //std::exp(2*std::sqrt(a0*E0)))*K*CrossSection(fragment,K)*std::exp(2*std::sqrt(a1*E1))*millibarn; 252 253 G4double Prob=Gamma*ParticleMass/((pi*hbarc)*(pi*hbarc)*std::exp(2*std::sqrt(a0*E0))) 254 *K*CrossSection(fragment,K)*std::exp(2*std::sqrt(a1*E1))*millibarn; 255 256 return Prob; 257 } 258 259 -
trunk/source/processes/hadronic/models/de_excitation/evaporation/src/G4He3EvaporationProbability.cc
r1007 r1055 104 104 //OPT=3,4 Kalbach's parameterization 105 105 // 106 106 G4double G4He3EvaporationProbability::CrossSection(const G4Fragment & fragment, const G4double K) 107 107 { 108 108 theA=GetA(); … … 117 117 118 118 if (OPTxs==0) {std::ostringstream errOs; 119 errOs << "We should'n be here (OPT =0) at evaporation cross section calculation (He3's)!!" <<G4endl; 119 errOs << "We should'n be here (OPT =0) at evaporation cross section calculation (He3's)!!" 120 <<G4endl; 120 121 throw G4HadronicException(__FILE__, __LINE__, errOs.str()); 121 122 return 0.;} … … 200 201 G4double ra=0.80; 201 202 202 ec = 1.44 * theZ * ResidualZ / (1.5*ResidualAthrd+ra); 203 //JMQ 13/02/09 increase of reduced radius to lower the barrier 204 // ec = 1.44 * theZ * ResidualZ / (1.5*ResidualAthrd+ra); 205 ec = 1.44 * theZ * ResidualZ / (1.7*ResidualAthrd+ra); 203 206 ecsq = ec * ec; 204 207 p = p0 + p1/ec + p2/ecsq; … … 221 224 elab = K * FragmentA / ResidualA; 222 225 sig = 0.; 223 226 224 227 if (elab <= ec) { //start for E<Ec 225 if (elab > ecut2) sig = (p*elab*elab+a*elab+b) * signor; 228 if (elab > ecut2) sig = (p*elab*elab+a*elab+b) * signor; 226 229 } //end for E<Ec 227 230 else { //start for E>Ec -
trunk/source/processes/hadronic/models/de_excitation/evaporation/src/G4TritonEvaporationProbability.cc
r1007 r1055 100 100 //OPT=3,4 Kalbach's parameterization 101 101 // 102 102 G4double G4TritonEvaporationProbability::CrossSection(const G4Fragment & fragment, const G4double K) 103 103 { 104 104 theA=GetA(); … … 113 113 114 114 if (OPTxs==0) {std::ostringstream errOs; 115 errOs << "We should'n be here (OPT =0) at evaporation cross section calculation (tritons)!!" <<G4endl; 115 errOs << "We should'n be here (OPT =0) at evaporation cross section calculation (tritons)!!" 116 <<G4endl; 116 117 throw G4HadronicException(__FILE__, __LINE__, errOs.str()); 117 118 return 0.;} … … 198 199 G4double ra=0.80; 199 200 200 ec = 1.44 * theZ * ResidualZ / (1.5*ResidualAthrd+ra); 201 //JMQ 13/02/09 increase of reduced radius to lower the barrier 202 // ec = 1.44 * theZ * ResidualZ / (1.5*ResidualAthrd+ra); 203 ec = 1.44 * theZ * ResidualZ / (1.7*ResidualAthrd+ra); 201 204 ecsq = ec * ec; 202 205 p = p0 + p1/ec + p2/ecsq; … … 219 222 elab = K * FragmentA / ResidualA; 220 223 sig = 0.; 221 224 222 225 if (elab <= ec) { //start for E<Ec 223 if (elab > ecut2) sig = (p*elab*elab+a*elab+b) * signor; 226 if (elab > ecut2) sig = (p*elab*elab+a*elab+b) * signor; 224 227 } //end for E<Ec 225 else { //start for E>Ec 228 else { //start for E>Ec 226 229 sig = (landa*elab+mu+nu/elab) * signor; 227 230 geom = 0.;
Note: See TracChangeset
for help on using the changeset viewer.