Import Geant4 10.3.0.beta source tree
This commit is contained in:
@@ -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;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user