51 fRadiusEff(0.0), fRadiusNN2(0.0),
52 fTotalXsc(0.0), fElasticXsc(0.0), fInelasticXsc(0.0),
53 fAntiHadronNucleonTotXsc(0.0), fAntiHadronNucleonElXsc(0.0),
54 Elab(0.0),
S(0.0), SqrtS(0)
91 G4double xsection, sigmaTotal, sigmaElastic;
99 fRadiusNN2=sigmaTotal*sigmaTotal*0.1/(8.*sigmaElastic*
pi) ;
156 xsection = 2*
pi*REf2*10.*
G4Log(1+(ApAt*sigmaTotal/(2*
pi*REf2*10.)));
179 G4double inelxsection, sigmaTotal, sigmaElastic;
187 fRadiusNN2=sigmaTotal*sigmaTotal*0.1/(8.*sigmaElastic*
pi);
248 inelxsection =
pi*REf2 *10*
G4Log(1+(ApAt*sigmaTotal/(
pi*REf2*10.)));
294 G4double xsection, Pmass, Energy, momentum;
297 Energy=Pmass+kinEnergy;
298 momentum=std::sqrt(Energy*Energy-Pmass*Pmass)/std::abs(theParticle->
GetBaryonNumber());
304 Elab = std::sqrt(
Mn*
Mn + Plab*Plab);
310 R0 = std::sqrt(0.40874044*SigAss - B);
358 outFile <<
"The G4ComponentAntiNuclNuclearXS calculates total,\n" 359 <<
"inelastic, elastic cross sections of anti-nucleons and light \n" 360 <<
"anti-nucleus interactions with nuclei using Glauber's approach.\n" 361 <<
"It uses parametrizations of antiproton-proton total and elastic \n" 362 <<
"cross sections and Wood-Saxon distribution of nuclear density.\n" 363 <<
"The lower limit is 10 MeV, the upper limit is 10 TeV. \n" 364 <<
"See details in Phys.Lett. B705 (2011) 235. \n";
G4ParticleDefinition * theANeutron
static G4Pow * GetInstance()
static G4AntiHe3 * AntiHe3()
G4ParticleDefinition * theATriton
virtual G4double GetElasticElementCrossSection(const G4ParticleDefinition *aParticle, G4double kinEnergy, G4int Z, G4double A)
G4int GetBaryonNumber() const
static G4AntiDeuteron * AntiDeuteron()
virtual G4double GetInelasticElementCrossSection(const G4ParticleDefinition *aParticle, G4double kinEnergy, G4int Z, G4double A)
G4double GetAntiHadronNucleonElCrSc(const G4ParticleDefinition *aParticle, G4double kinEnergy)
static G4AntiAlpha * AntiAlpha()
virtual ~G4ComponentAntiNuclNuclearXS()
G4double GetAntiHadronNucleonTotCrSc(const G4ParticleDefinition *aParticle, G4double kinEnergy)
double A(double temperature)
static G4AntiProton * AntiProton()
G4ParticleDefinition * theAHe3
virtual G4double GetTotalElementCrossSection(const G4ParticleDefinition *aParticle, G4double kinEnergy, G4int Z, G4double A)
G4double G4Log(G4double x)
virtual void CrossSectionDescription(std::ostream &) const
G4ParticleDefinition * theADeuteron
virtual G4double GetTotalIsotopeCrossSection(const G4ParticleDefinition *aParticle, G4double kinEnergy, G4int Z, G4int A)
G4double GetPDGMass() const
virtual G4double GetInelasticIsotopeCrossSection(const G4ParticleDefinition *aParticle, G4double kinEnergy, G4int Z, G4int A)
static const double millibarn
G4ComponentAntiNuclNuclearXS()
G4double fAntiHadronNucleonElXsc
G4double powA(G4double A, G4double y) const
static G4AntiTriton * AntiTriton()
G4ParticleDefinition * theAAlpha
G4ParticleDefinition * theAProton
static G4AntiNeutron * AntiNeutron()
virtual G4double GetElasticIsotopeCrossSection(const G4ParticleDefinition *aParticle, G4double kinEnergy, G4int Z, G4int A)
G4double fAntiHadronNucleonTotXsc