Import Geant4 10.3.0.beta source tree

This commit is contained in:
Gabriele Cosmo
2016-06-30 14:12:05 +02:00
parent a654a7ab1f
commit 4ec577e5c4
2021 changed files with 100995 additions and 78277 deletions
@@ -23,7 +23,7 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: G4EmCorrections.hh 91745 2015-08-04 11:51:12Z gcosmo $
// $Id: G4EmCorrections.hh 96698 2016-05-02 07:19:24Z gcosmo $
//
// -------------------------------------------------------------------
//
@@ -60,7 +60,7 @@
#include "G4ionEffectiveCharge.hh"
#include "G4Material.hh"
#include "G4ParticleDefinition.hh"
#include "G4NistManager.hh"
#include "G4Pow.hh"
class G4VEmModel;
class G4PhysicsVector;
@@ -73,7 +73,7 @@ class G4EmCorrections
public:
G4EmCorrections(G4int verb);
explicit G4EmCorrections(G4int verb);
virtual ~G4EmCorrections();
@@ -160,9 +160,10 @@ public:
G4double kineticEnergy);
// ionisation models for ions
inline void SetIonisationModels(G4VEmModel* m1 = 0, G4VEmModel* m2 = 0);
inline void SetIonisationModels(G4VEmModel* m1 = nullptr,
G4VEmModel* m2 = nullptr);
inline G4int GetNumberOfStoppingVectors();
inline G4int GetNumberOfStoppingVectors() const;
inline void SetVerbose(G4int verb);
@@ -180,68 +181,46 @@ private:
G4double LShell(G4double theta, G4double eta);
G4int Index(G4double x, G4double* y, G4int n);
G4int Index(G4double x, const G4double* y, G4int n) const;
G4double Value(G4double xv, G4double x1, G4double x2,
G4double y1, G4double y2);
G4double y1, G4double y2) const;
G4double Value2(G4double xv, G4double yv, G4double x1, G4double x2,
G4double y1, G4double y2,
G4double z11, G4double z21, G4double z12, G4double z22);
G4double y1, G4double y2, G4double z11, G4double z21,
G4double z12, G4double z22) const;
G4double NuclearStoppingPower(G4double e, G4double z1, G4double z2,
G4double m1, G4double m2);
// hide assignment operator
G4EmCorrections & operator=(const G4EmCorrections &right);
G4EmCorrections(const G4EmCorrections&);
G4EmCorrections & operator=(const G4EmCorrections &right) = delete;
G4EmCorrections(const G4EmCorrections&) = delete;
G4Pow* g4pow;
static const G4double inveplus;
static const G4double ZD[11];
static const G4double UK[20];
static const G4double VK[20];
static G4double ZK[20];
static const G4double Eta[29];
static G4double CK[20][29];
static G4double CL[26][28];
static const G4double UL[26];
static G4double VL[26];
static G4LPhysicsFreeVector* BarkasCorr;
static G4LPhysicsFreeVector* ThetaK;
static G4LPhysicsFreeVector* ThetaL;
G4double ed[104];
G4double a[104];
G4double theZieglerFactor;
G4double alpha2;
G4bool lossFlucFlag;
G4int verbose;
G4int nK;
G4int nL;
G4int nEtaK;
G4int nEtaL;
G4double COSEB[14];
G4double COSXI[14];
G4double ZD[11];
G4double TheK[20];
G4double SK[20];
G4double TK[20];
G4double UK[20];
G4double VK[20];
G4double ZK[20];
G4double TheL[26];
G4double SL[26];
G4double TL[26];
G4double UL[26];
G4double VL[26];
G4double Eta[29];
G4double CK[20][29];
G4double CL[26][28];
G4double HM[53];
G4double HN[31];
G4double Z23[100];
G4LPhysicsFreeVector* BarkasCorr;
G4LPhysicsFreeVector* ThetaK;
G4LPhysicsFreeVector* ThetaL;
std::vector<const G4Material*> currmat;
std::map< G4int, std::vector<G4double> > thcorr;
size_t ncouples;
size_t ncouples;
const G4ParticleDefinition* particle;
const G4ParticleDefinition* curParticle;
@@ -250,11 +229,15 @@ private:
const G4ElementVector* theElementVector;
const G4double* atomDensity;
G4int numberOfElements;
G4PhysicsVector* curVector;
G4IonTable* ionTable;
G4VEmModel* ionLEModel;
G4VEmModel* ionHEModel;
G4double kinEnergy;
G4double mass;
G4double massFactor;
G4double formfact;
G4double eth;
G4double tau;
G4double gamma;
@@ -267,14 +250,16 @@ private:
G4double q2;
G4double eCorrMin;
G4double eCorrMax;
G4int verbose;
G4int nK;
G4int nL;
G4int nEtaK;
G4int nEtaL;
G4int nbinCorr;
G4ionEffectiveCharge effCharge;
G4NistManager* nist;
G4IonTable* ionTable;
G4VEmModel* ionLEModel;
G4VEmModel* ionHEModel;
G4int numberOfElements;
// Ion stopping data
G4int nIons;
@@ -288,10 +273,13 @@ private:
std::vector<const G4Material*> materialList;
std::vector<G4PhysicsVector*> stopData;
G4PhysicsVector* curVector;
G4bool isMaster;
G4ionEffectiveCharge effCharge;
};
inline G4int G4EmCorrections::Index(G4double x, G4double* y, G4int n)
inline G4int
G4EmCorrections::Index(G4double x, const G4double* y, G4int n) const
{
G4int iddd = n-1;
// Loop checking, 03-Aug-2015, Vladimir Ivanchenko
@@ -300,7 +288,7 @@ inline G4int G4EmCorrections::Index(G4double x, G4double* y, G4int n)
}
inline G4double G4EmCorrections::Value(G4double xv, G4double x1, G4double x2,
G4double y1, G4double y2)
G4double y1, G4double y2) const
{
return y1 + (y2 - y1)*(xv - x1)/(x2 - x1);
}
@@ -309,7 +297,7 @@ inline G4double G4EmCorrections::Value2(G4double xv, G4double yv,
G4double x1, G4double x2,
G4double y1, G4double y2,
G4double z11, G4double z21,
G4double z12, G4double z22)
G4double z12, G4double z22) const
{
return (z11*(x2-xv)*(y2-yv) + z22*(xv-x1)*(yv-y1) +
0.5*(z12*((x2-xv)*(yv-y1)+(xv-x1)*(y2-yv))+
@@ -324,7 +312,7 @@ G4EmCorrections::SetIonisationModels(G4VEmModel* mod1, G4VEmModel* mod2)
if(mod2) { ionHEModel = mod2; }
}
inline G4int G4EmCorrections::GetNumberOfStoppingVectors()
inline G4int G4EmCorrections::GetNumberOfStoppingVectors() const
{
return nIons;
}