100 delete thePhotonSpectrum;
129 if(1 >= Z) {
return 0.0; }
153 (*theProjectileCrossSections)[0]+(*theProjectileCrossSections)[1];
154 delete theProjectileCrossSections;
158 (*theTargetCrossSections)[0]+(*theTargetCrossSections)[1];
159 delete theTargetCrossSections;
178 G4double AProot3 = std::pow(AP,1.0/3.0);
179 G4double u = 3.0 * J / Qprime / AProot3;
181 G4double E_GDR = hbarc / std::sqrt(0.7*amu_c2*R0*R0/8.0/J*
182 (1.0 + u - (1.0 + epsilon + 3.0*u)/(1.0 + epsilon + u)*epsilon));
183 G4double E_GQR = 63.0 * MeV / AProot3;
198 G4double sE1 = 60.0 * millibarn * MeV * (AP-ZP)*ZP/AP;
199 G4double sE2 = 0.22 * microbarn / MeV * ZP * AProot3 * AProot3;
200 if (AP > 100.0) sE2 *= 0.9;
201 else if (AP > 40.0) sE2 *= 0.6;
209 theCrossSectionVector->
PutValue(0, E_GDR, sE1*nE1);
210 theCrossSectionVector->
PutValue(1, E_GQR, sE2*nE2*E_GQR*E_GQR);
212 return theCrossSectionVector;
249 G4double p2 = 1.95*std::exp(-0.075*Z);
G4ParticleDefinition * GetDefinition() const
G4LorentzVector Get4Momentum() const
~G4EMDissociationCrossSection()
G4PhysicsFreeVector * GetCrossSectionForProjectile(G4double, G4double, G4double, G4double, G4double, G4double)
virtual G4bool IsElementApplicable(const G4DynamicParticle *, G4int Z, const G4Material *)
virtual G4double GetElementCrossSection(const G4DynamicParticle *, G4int Z, const G4Material *)
G4double GetWilsonProbabilityForProtonDissociation(G4double, G4double)
G4PhysicsFreeVector * GetCrossSectionForTarget(G4double, G4double, G4double, G4double, G4double, G4double)
G4EMDissociationCrossSection()
G4double GetGeneralE1Spectrum(G4double, G4double, G4double)
G4double GetClosestApproach(const G4double, const G4double, G4double, G4double, G4double)
G4double GetGeneralE2Spectrum(G4double, G4double, G4double)
static G4NistManager * Instance()
G4double GetAtomicMassAmu(const G4String &symb) const
G4double GetPDGCharge() const
G4int GetBaryonNumber() const
static G4ParticleTable * GetParticleTable()
void PutValue(size_t binNumber, G4double binValue, G4double dataValue)