Import Geant4 10.3.0 source tree

This commit is contained in:
Gabriele Cosmo
2016-12-09 12:35:28 +01:00
parent 4ec577e5c4
commit a3452e42ac
3514 changed files with 210500 additions and 89628 deletions
@@ -14,6 +14,22 @@ code and to keep track of all tags.
* Please list in reverse chronological order (last date on top)
---------------------------------------------------------------
12 August 2016 - Alberto Ribon (hadr-cross-V10-02-04)
-----------------------------------------------------
- G4CrossSectionDataStore : added "throw" to hadronic exception;
- G4ComponentGGHadronNucleusXsc, G4ComponentGGNuclNuclXsc.cc : comment out
redundant if-statement.
(fixes suggested by the PVS-Studio static code analyzer)
03 August 2016 - Alberto Ribon (hadr-cross-V10-02-03)
-----------------------------------------------------
- G4ComponentGGHadronNucleusXsc : two new fields were added by V. Grichine
to be used by final string generators.
1 July 2016 - Vladimir Ivanchenko (hadr-cross-V10-02-02)
-----------------------------------------------------------
- G4VCrossSectionDataSet, G4CrossSectionDataStore - fixed minor Coverity report
2 March 2016 - Tatsumi Koi (hadr-cross-V10-02-01)
-----------------------------------------------------------
- G4CrossSectionDataSetRegistry - Deleted ad-hoc trick which was added in "hadr-cross-V10-01-29"
@@ -140,6 +140,9 @@ virtual
G4double GetNucleusRadius(const G4DynamicParticle*, const G4Element*);
G4double GetNucleusRadius(G4int At);
G4double GetAxsc2piR2(){return fAxsc2piR2;};
G4double GetModelInLog(){return fModelInLog;};
virtual void CrossSectionDescription(std::ostream&) const;
inline G4double GetElasticGlauberGribov(const G4DynamicParticle*, G4int Z, G4int A);
@@ -176,6 +179,7 @@ private:
static const G4double fPionMinusBarCorrectionIn[93];
G4double fTotalXsc, fElasticXsc, fInelasticXsc, fProductionXsc, fDiffractionXsc;
G4double fAxsc2piR2, fModelInLog;
// G4double fHadronNucleonXsc;
G4ParticleDefinition* theGamma;
@@ -363,15 +363,19 @@ G4ComponentGGHadronNucleusXsc::GetIsoCrossSection(const G4DynamicParticle* aPart
fTotalXsc = xsection;
// inelastic xsc
fInelasticXsc = nucleusSquare*G4Log( 1. + cofInelastic*ratio )/cofInelastic;
fAxsc2piR2 = cofInelastic*ratio;
fModelInLog = G4Log( 1. + fAxsc2piR2 );
fInelasticXsc = nucleusSquare*fModelInLog/cofInelastic;
fInelasticXsc *= GetParticleBarCorIn(theParticle, Z);
fElasticXsc = fTotalXsc - fInelasticXsc;
if(fElasticXsc < 0.) fElasticXsc = 0.;
if( fElasticXsc < 0. ) fElasticXsc = 0.;
G4double difratio = ratio/(1.+ratio);
@@ -812,7 +816,7 @@ G4ComponentGGHadronNucleusXsc::GetHadronNucleonXscNS(const G4DynamicParticle* aP
// Delta = 1.; // DHW 19 May 2011: variable set but not used
// if( proj_energy < 40. ) Delta = 0.916+0.0021*proj_energy;
if(proj_momentum >= 10.)
//AR-12Aug2016 if(proj_momentum >= 10.)
{
B0 = 7.5;
A0 = 100. - B0*G4Log(3.0e7);
@@ -872,7 +876,7 @@ G4ComponentGGHadronNucleusXsc::GetHadronNucleonXscNS(const G4DynamicParticle* aP
// Delta = 1.; DHW 19 May 2011: variable set but not used
// if( proj_energy < 40. ) Delta = 0.916+0.0021*proj_energy;
if(proj_momentum >= 10.)
//AR-12Aug2016 if(proj_momentum >= 10.)
{
B0 = 7.5;
A0 = 100. - B0*G4Log(3.0e7);
@@ -571,14 +571,14 @@ G4ComponentGGNuclNuclXsc::GetHadronNucleonXscNS(const G4ParticleDefinition* pPar
// Delta = 1.; // DHW 19 May 2011: variable set but not used
// if (proj_energy < 40.) Delta = 0.916+0.0021*proj_energy;
if (proj_momentum >= 10.) {
//AR-12Aug2016 if (proj_momentum >= 10.) {
B0 = 7.5;
A0 = 100. - B0*G4Log(3.0e7);
xsection = A0 + B0*G4Log(proj_energy) - 11
+ 103*G4Pow::GetInstance()->powA(2*0.93827*proj_energy + proj_mass*proj_mass+
0.93827*0.93827,-0.165); // mb
}
//AR-12Aug2016 }
}
else // low energy pp = nn != np
{
@@ -23,7 +23,7 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: G4CrossSectionDataStore.cc 94008 2015-11-05 10:06:41Z gcosmo $
// $Id: G4CrossSectionDataStore.cc 98827 2016-08-12 12:37:39Z gcosmo $
//
// -------------------------------------------------------------------
//
@@ -361,8 +361,6 @@ G4CrossSectionDataStore::GetIsoCrossSection(const G4DynamicParticle* part,
<< " E(MeV)= " << part->GetKineticEnergy()/MeV << G4endl;
throw G4HadronicException(__FILE__, __LINE__,
" no applicable data set found for the isotope");
return 0.0;
//return dataSetList[idx]->ComputeCrossSection(part, elm, mat);
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.....
@@ -388,8 +386,7 @@ G4CrossSectionDataStore::GetCrossSection(const G4DynamicParticle* part,
<< " Z= " << Z << " A= " << A
<< " E(MeV)= " << part->GetKineticEnergy()/MeV << G4endl;
throw G4HadronicException(__FILE__, __LINE__,
" no applicable data set found for the isotope");
return 0.0;
" no applicable data set found for the isotope");
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.....
@@ -539,7 +536,7 @@ void G4CrossSectionDataStore::ActivateFastPath( const G4ParticleDefinition* pdef
std::ostringstream msg;
msg<<"Attempting to request FastPath for couple: "<<pdef->GetParticleName()<<","<<mat->GetName();
msg<<" but combination already exists";
G4HadronicException(__FILE__,__LINE__,msg.str());
throw G4HadronicException(__FILE__,__LINE__,msg.str());
}
}
@@ -35,7 +35,6 @@
#include <math.h>
#endif
#include <cmath>
//#include <math.h>
#include <array>
#ifdef FPDEBUG
@@ -23,7 +23,7 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: G4VCrossSectionDataSet.cc 89024 2015-03-18 08:17:25Z gcosmo $
// $Id: G4VCrossSectionDataSet.cc 98738 2016-08-09 12:53:25Z gcosmo $
//
// -------------------------------------------------------------------
//
@@ -143,9 +143,8 @@ G4VCrossSectionDataSet::GetElementCrossSection(const G4DynamicParticle* dynPart,
<< " E(MeV)= " << dynPart->GetKineticEnergy()/MeV;
if(mat) { G4cout << " inside " << mat->GetName(); }
G4cout << " for Z= " << Z << G4endl;
throw G4HadronicException(__FILE__, __LINE__,
throw G4HadronicException(__FILE__, __LINE__,
"G4VCrossSectionDataSet::GetElementCrossSection is absent");
return 0.0;
}
G4double
@@ -164,7 +163,6 @@ G4VCrossSectionDataSet::GetIsoCrossSection(const G4DynamicParticle* dynPart,
G4cout << " Z= " << Z << " A= " << A << G4endl;
throw G4HadronicException(__FILE__, __LINE__,
"G4VCrossSectionDataSet::GetIsoCrossSection is absent");
return 0.0;
}
G4Isotope*