Import Geant4 11.0.0 source tree

This commit is contained in:
Gabriele Cosmo
2021-12-10 14:46:44 +01:00
committed by Ben Morgan
parent 6399a014b6
commit 80e2389dd8
3932 changed files with 202519 additions and 246221 deletions
@@ -43,7 +43,7 @@ class G4ParticleHP2AInelasticFS : public G4ParticleHPInelasticBaseFS
{
public:
G4ParticleHP2AInelasticFS(){}
G4ParticleHP2AInelasticFS();
~G4ParticleHP2AInelasticFS(){}
void Init (G4double A, G4double Z, G4int M, G4String & dirName, G4String & aFSType, G4ParticleDefinition*);
G4HadFinalState * ApplyYourself(const G4HadProjectile & theTrack);
@@ -42,7 +42,7 @@ class G4ParticleHP2N2AInelasticFS : public G4ParticleHPInelasticBaseFS
{
public:
G4ParticleHP2N2AInelasticFS(){}
G4ParticleHP2N2AInelasticFS();
~G4ParticleHP2N2AInelasticFS(){}
void Init (G4double A, G4double Z, G4int M, G4String & dirName, G4String & aFSType, G4ParticleDefinition*);
G4HadFinalState * ApplyYourself(const G4HadProjectile & theTrack);
@@ -42,7 +42,7 @@ class G4ParticleHP2NAInelasticFS : public G4ParticleHPInelasticBaseFS
{
public:
G4ParticleHP2NAInelasticFS(){}
G4ParticleHP2NAInelasticFS();
~G4ParticleHP2NAInelasticFS(){}
void Init (G4double A, G4double Z, G4int M, G4String & dirName, G4String & aFSType, G4ParticleDefinition*);
G4HadFinalState * ApplyYourself(const G4HadProjectile & theTrack);
@@ -42,7 +42,7 @@ class G4ParticleHP2NDInelasticFS : public G4ParticleHPInelasticBaseFS
{
public:
G4ParticleHP2NDInelasticFS(){}
G4ParticleHP2NDInelasticFS();
~G4ParticleHP2NDInelasticFS(){}
void Init (G4double A, G4double Z, G4int M, G4String & dirName, G4String & aFSType, G4ParticleDefinition*);
G4HadFinalState * ApplyYourself(const G4HadProjectile & theTrack);
@@ -42,7 +42,7 @@ class G4ParticleHP2NInelasticFS : public G4ParticleHPInelasticBaseFS
{
public:
G4ParticleHP2NInelasticFS(){}
G4ParticleHP2NInelasticFS();
~G4ParticleHP2NInelasticFS(){}
void Init (G4double A, G4double Z, G4int M, G4String & dirName, G4String & aFSType, G4ParticleDefinition*);
G4HadFinalState * ApplyYourself(const G4HadProjectile & theTrack);
@@ -42,7 +42,7 @@ class G4ParticleHP2NPInelasticFS : public G4ParticleHPInelasticBaseFS
{
public:
G4ParticleHP2NPInelasticFS(){}
G4ParticleHP2NPInelasticFS();
~G4ParticleHP2NPInelasticFS(){}
void Init (G4double A, G4double Z, G4int M, G4String & dirName, G4String & aFSType, G4ParticleDefinition*);
G4HadFinalState * ApplyYourself(const G4HadProjectile & theTrack);
@@ -42,7 +42,7 @@ class G4ParticleHP2PInelasticFS : public G4ParticleHPInelasticBaseFS
{
public:
G4ParticleHP2PInelasticFS(){}
G4ParticleHP2PInelasticFS();
~G4ParticleHP2PInelasticFS(){}
void Init (G4double A, G4double Z, G4int M, G4String & dirName, G4String & aFSType, G4ParticleDefinition*);
G4HadFinalState * ApplyYourself(const G4HadProjectile & theTrack);
@@ -42,7 +42,7 @@ class G4ParticleHP3AInelasticFS : public G4ParticleHPInelasticBaseFS
{
public:
G4ParticleHP3AInelasticFS(){}
G4ParticleHP3AInelasticFS();
~G4ParticleHP3AInelasticFS(){}
void Init (G4double A, G4double Z, G4int M, G4String & dirName, G4String & aFSType, G4ParticleDefinition*);
G4HadFinalState * ApplyYourself(const G4HadProjectile & theTrack);
@@ -43,7 +43,7 @@ class G4ParticleHP3NAInelasticFS : public G4ParticleHPInelasticBaseFS
{
public:
G4ParticleHP3NAInelasticFS(){}
G4ParticleHP3NAInelasticFS();
~G4ParticleHP3NAInelasticFS(){}
void Init (G4double A, G4double Z, G4int M, G4String & dirName, G4String & aFSType, G4ParticleDefinition*);
G4HadFinalState * ApplyYourself(const G4HadProjectile & theTrack);
@@ -43,7 +43,7 @@ class G4ParticleHP3NInelasticFS : public G4ParticleHPInelasticBaseFS
{
public:
G4ParticleHP3NInelasticFS(){}
G4ParticleHP3NInelasticFS();
~G4ParticleHP3NInelasticFS(){}
void Init (G4double A, G4double Z, G4int M, G4String & dirName, G4String & aFSType, G4ParticleDefinition*);
G4HadFinalState * ApplyYourself(const G4HadProjectile & theTrack);
@@ -43,7 +43,7 @@ class G4ParticleHP3NPInelasticFS : public G4ParticleHPInelasticBaseFS
{
public:
G4ParticleHP3NPInelasticFS(){}
G4ParticleHP3NPInelasticFS();
~G4ParticleHP3NPInelasticFS(){}
void Init (G4double A, G4double Z, G4int M, G4String & dirName, G4String & aFSType, G4ParticleDefinition*);
G4HadFinalState * ApplyYourself(const G4HadProjectile & theTrack);
@@ -43,7 +43,7 @@ class G4ParticleHP4NInelasticFS : public G4ParticleHPInelasticBaseFS
{
public:
G4ParticleHP4NInelasticFS(){}
G4ParticleHP4NInelasticFS();
~G4ParticleHP4NInelasticFS(){}
void Init (G4double A, G4double Z, G4int M, G4String & dirName, G4String & aFSType, G4ParticleDefinition*);
G4HadFinalState * ApplyYourself(const G4HadProjectile & theTrack);
@@ -43,7 +43,7 @@ class G4ParticleHPAInelasticFS : public G4ParticleHPInelasticCompFS
{
public:
G4ParticleHPAInelasticFS(){}
G4ParticleHPAInelasticFS();
~G4ParticleHPAInelasticFS(){}
void Init (G4double A, G4double Z, G4int M, G4String & dirName, G4String & aFSType, G4ParticleDefinition*);
G4HadFinalState * ApplyYourself(const G4HadProjectile & theTrack);
@@ -43,12 +43,7 @@ class G4ParticleHPCaptureFS : public G4ParticleHPFinalState
{
public:
G4ParticleHPCaptureFS()
{
hasXsec = false;
hasExactMF6 = false;
targetMass = 0;
}
G4ParticleHPCaptureFS();
~G4ParticleHPCaptureFS()
{
@@ -38,7 +38,7 @@ class G4ParticleHPD2AInelasticFS : public G4ParticleHPInelasticBaseFS
{
public:
G4ParticleHPD2AInelasticFS(){}
G4ParticleHPD2AInelasticFS();
~G4ParticleHPD2AInelasticFS(){}
void Init (G4double A, G4double Z, G4int M, G4String & dirName, G4String & aFSType, G4ParticleDefinition*);
G4HadFinalState * ApplyYourself(const G4HadProjectile & theTrack);
@@ -42,7 +42,7 @@ class G4ParticleHPDAInelasticFS : public G4ParticleHPInelasticBaseFS
{
public:
G4ParticleHPDAInelasticFS(){}
G4ParticleHPDAInelasticFS();
~G4ParticleHPDAInelasticFS(){}
void Init (G4double A, G4double Z, G4int M, G4String & dirName, G4String & aFSType, G4ParticleDefinition*);
G4HadFinalState * ApplyYourself(const G4HadProjectile & theTrack);
@@ -42,7 +42,7 @@ class G4ParticleHPDInelasticFS : public G4ParticleHPInelasticCompFS
{
public:
G4ParticleHPDInelasticFS(){}
G4ParticleHPDInelasticFS();
~G4ParticleHPDInelasticFS(){}
void Init (G4double A, G4double Z, G4int M, G4String & dirName, G4String & aFSType, G4ParticleDefinition*);
G4HadFinalState * ApplyYourself(const G4HadProjectile & theTrack);
@@ -54,6 +54,7 @@ class G4ParticleHPElastic : public G4HadronicInteraction
~G4ParticleHPElastic();
G4HadFinalState * ApplyYourself(const G4HadProjectile& aTrack, G4Nucleus& aTargetNucleus);
G4HadFinalState * ApplyYourself(const G4HadProjectile& aTrack, G4Nucleus& aTargetNucleus, G4bool isFromTSL);
virtual const std::pair<G4double, G4double> GetFatalEnergyCheckLevels() const;
@@ -47,17 +47,7 @@ class G4ParticleHPElasticFS : public G4ParticleHPFinalState
{
public:
G4ParticleHPElasticFS()
{
hasXsec = false;
theCoefficients = 0;
theProbArray = 0;
repFlag = 0;
tE_of_repFlag3 = 0.0;
targetMass = 0.0;
frameFlag = 0;
}
G4ParticleHPElasticFS();
~G4ParticleHPElasticFS()
{
if(theCoefficients!=0) delete theCoefficients;
@@ -64,6 +64,8 @@ public:
theProjectile = G4Neutron::Neutron();
theResult.Put( 0 );
secID = -1;
}
virtual ~G4ParticleHPFinalState()
@@ -135,5 +137,6 @@ protected:
G4int theNDLDataA;
G4int theNDLDataM;
G4int secID; // Creator model ID for the secondaries created by this class or derived ones
};
#endif
@@ -47,7 +47,7 @@ class G4ParticleHPFissionFS : public G4ParticleHPFinalState
{
public:
G4ParticleHPFissionFS(){ hasXsec = false; produceFissionFragments = false; }
G4ParticleHPFissionFS();
~G4ParticleHPFissionFS(){}
void Init (G4double A, G4double Z, G4int M, G4String & dirName, G4String & aFSType, G4ParticleDefinition* );
G4HadFinalState * ApplyYourself(const G4HadProjectile & theTrack);
@@ -42,7 +42,7 @@ class G4ParticleHPHe3InelasticFS : public G4ParticleHPInelasticCompFS
{
public:
G4ParticleHPHe3InelasticFS(){}
G4ParticleHPHe3InelasticFS();
~G4ParticleHPHe3InelasticFS(){}
void Init (G4double A, G4double Z, G4int M, G4String & dirName, G4String & aFSType, G4ParticleDefinition*);
G4HadFinalState * ApplyYourself(const G4HadProjectile & theTrack);
@@ -42,7 +42,7 @@ class G4ParticleHPN2AInelasticFS : public G4ParticleHPInelasticBaseFS
{
public:
G4ParticleHPN2AInelasticFS(){}
G4ParticleHPN2AInelasticFS();
~G4ParticleHPN2AInelasticFS(){}
void Init (G4double A, G4double Z, G4int M, G4String & dirName, G4String & aFSType, G4ParticleDefinition*);
G4HadFinalState * ApplyYourself(const G4HadProjectile & theTrack);
@@ -42,7 +42,7 @@ class G4ParticleHPN2PInelasticFS : public G4ParticleHPInelasticBaseFS
{
public:
G4ParticleHPN2PInelasticFS(){}
G4ParticleHPN2PInelasticFS();
~G4ParticleHPN2PInelasticFS(){}
void Init (G4double A, G4double Z, G4int M, G4String & dirName, G4String & aFSType, G4ParticleDefinition*);
G4HadFinalState * ApplyYourself(const G4HadProjectile & theTrack);
@@ -42,7 +42,7 @@ class G4ParticleHPN3AInelasticFS : public G4ParticleHPInelasticBaseFS
{
public:
G4ParticleHPN3AInelasticFS(){}
G4ParticleHPN3AInelasticFS();
~G4ParticleHPN3AInelasticFS(){}
void Init (G4double A, G4double Z, G4int M, G4String & dirName, G4String & aFSType, G4ParticleDefinition*);
G4HadFinalState * ApplyYourself(const G4HadProjectile & theTrack);
@@ -42,7 +42,7 @@ class G4ParticleHPNAInelasticFS : public G4ParticleHPInelasticBaseFS
{
public:
G4ParticleHPNAInelasticFS(){}
G4ParticleHPNAInelasticFS();
~G4ParticleHPNAInelasticFS(){}
void Init (G4double A, G4double Z, G4int M, G4String & dirName, G4String & aFSType, G4ParticleDefinition*);
G4HadFinalState * ApplyYourself(const G4HadProjectile & theTrack);
@@ -42,7 +42,7 @@ class G4ParticleHPND2AInelasticFS : public G4ParticleHPInelasticBaseFS
{
public:
G4ParticleHPND2AInelasticFS(){}
G4ParticleHPND2AInelasticFS();
~G4ParticleHPND2AInelasticFS(){}
void Init (G4double A, G4double Z, G4int M, G4String & dirName, G4String & aFSType, G4ParticleDefinition*);
G4HadFinalState * ApplyYourself(const G4HadProjectile & theTrack);
@@ -42,7 +42,7 @@ class G4ParticleHPNDInelasticFS : public G4ParticleHPInelasticBaseFS
{
public:
G4ParticleHPNDInelasticFS(){}
G4ParticleHPNDInelasticFS();
~G4ParticleHPNDInelasticFS(){}
void Init (G4double A, G4double Z, G4int M, G4String & dirName, G4String & aFSType, G4ParticleDefinition*);
G4HadFinalState * ApplyYourself(const G4HadProjectile & theTrack);
@@ -42,7 +42,7 @@ class G4ParticleHPNHe3InelasticFS : public G4ParticleHPInelasticBaseFS
{
public:
G4ParticleHPNHe3InelasticFS(){}
G4ParticleHPNHe3InelasticFS();
~G4ParticleHPNHe3InelasticFS(){}
void Init (G4double A, G4double Z, G4int M, G4String & dirName, G4String & aFSType, G4ParticleDefinition*);
G4HadFinalState * ApplyYourself(const G4HadProjectile & theTrack);
@@ -42,7 +42,7 @@ class G4ParticleHPNInelasticFS : public G4ParticleHPInelasticCompFS
{
public:
G4ParticleHPNInelasticFS(){}
G4ParticleHPNInelasticFS();
~G4ParticleHPNInelasticFS(){}
void Init (G4double A, G4double Z, G4int M, G4String & dirName, G4String & aFSType, G4ParticleDefinition*);
G4HadFinalState * ApplyYourself(const G4HadProjectile & theTrack);
@@ -42,7 +42,7 @@ class G4ParticleHPNPAInelasticFS : public G4ParticleHPInelasticBaseFS
{
public:
G4ParticleHPNPAInelasticFS(){}
G4ParticleHPNPAInelasticFS();
~G4ParticleHPNPAInelasticFS(){}
void Init (G4double A, G4double Z, G4int M, G4String & dirName, G4String & aFSType, G4ParticleDefinition*);
G4HadFinalState * ApplyYourself(const G4HadProjectile & theTrack);
@@ -42,7 +42,7 @@ class G4ParticleHPNPInelasticFS : public G4ParticleHPInelasticBaseFS
{
public:
G4ParticleHPNPInelasticFS(){}
G4ParticleHPNPInelasticFS();
~G4ParticleHPNPInelasticFS(){}
void Init (G4double A, G4double Z, G4int M, G4String & dirName, G4String & aFSType, G4ParticleDefinition*);
G4HadFinalState * ApplyYourself(const G4HadProjectile & theTrack);
@@ -42,7 +42,7 @@ class G4ParticleHPNT2AInelasticFS : public G4ParticleHPInelasticBaseFS
{
public:
G4ParticleHPNT2AInelasticFS(){}
G4ParticleHPNT2AInelasticFS();
~G4ParticleHPNT2AInelasticFS(){}
void Init (G4double A, G4double Z, G4int M, G4String & dirName, G4String & aFSType, G4ParticleDefinition*);
G4HadFinalState * ApplyYourself(const G4HadProjectile & theTrack);
@@ -42,7 +42,7 @@ class G4ParticleHPNTInelasticFS : public G4ParticleHPInelasticBaseFS
{
public:
G4ParticleHPNTInelasticFS(){}
G4ParticleHPNTInelasticFS();
~G4ParticleHPNTInelasticFS(){}
void Init (G4double A, G4double Z, G4int M, G4String & dirName, G4String & aFSType, G4ParticleDefinition*);
G4HadFinalState * ApplyYourself(const G4HadProjectile & theTrack);
@@ -42,7 +42,7 @@ class G4ParticleHPNXInelasticFS : public G4ParticleHPInelasticBaseFS
{
public:
G4ParticleHPNXInelasticFS(){}
G4ParticleHPNXInelasticFS();
~G4ParticleHPNXInelasticFS(){}
void Init (G4double A, G4double Z, G4int M, G4String & dirName, G4String & aFSType, G4ParticleDefinition*);
G4HadFinalState * ApplyYourself(const G4HadProjectile & theTrack);
@@ -42,7 +42,7 @@ class G4ParticleHPPAInelasticFS : public G4ParticleHPInelasticBaseFS
{
public:
G4ParticleHPPAInelasticFS(){}
G4ParticleHPPAInelasticFS();
~G4ParticleHPPAInelasticFS(){}
void Init (G4double A, G4double Z, G4int M, G4String & dirName, G4String & aFSType, G4ParticleDefinition*);
G4HadFinalState * ApplyYourself(const G4HadProjectile & theTrack);
@@ -42,7 +42,7 @@ class G4ParticleHPPDInelasticFS : public G4ParticleHPInelasticBaseFS
{
public:
G4ParticleHPPDInelasticFS(){}
G4ParticleHPPDInelasticFS();
~G4ParticleHPPDInelasticFS(){}
void Init (G4double A, G4double Z, G4int M, G4String & dirName, G4String & aFSType, G4ParticleDefinition*);
G4HadFinalState * ApplyYourself(const G4HadProjectile & theTrack);
@@ -42,7 +42,7 @@ class G4ParticleHPPInelasticFS : public G4ParticleHPInelasticCompFS
{
public:
G4ParticleHPPInelasticFS(){}
G4ParticleHPPInelasticFS();
~G4ParticleHPPInelasticFS(){}
void Init (G4double A, G4double Z, G4int M, G4String & dirName, G4String & aFSType, G4ParticleDefinition*);
G4HadFinalState * ApplyYourself(const G4HadProjectile & theTrack);
@@ -42,7 +42,7 @@ class G4ParticleHPPTInelasticFS : public G4ParticleHPInelasticBaseFS
{
public:
G4ParticleHPPTInelasticFS(){}
G4ParticleHPPTInelasticFS();
~G4ParticleHPPTInelasticFS(){}
void Init (G4double A, G4double Z, G4int M, G4String & dirName, G4String & aFSType, G4ParticleDefinition*);
G4HadFinalState * ApplyYourself(const G4HadProjectile & theTrack);
@@ -38,7 +38,7 @@ class G4ParticleHPT2AInelasticFS : public G4ParticleHPInelasticBaseFS
{
public:
G4ParticleHPT2AInelasticFS(){}
G4ParticleHPT2AInelasticFS();
~G4ParticleHPT2AInelasticFS(){}
void Init (G4double A, G4double Z, G4int M, G4String & dirName, G4String & aFSType, G4ParticleDefinition*);
G4HadFinalState * ApplyYourself(const G4HadProjectile & theTrack);
@@ -42,7 +42,7 @@ class G4ParticleHPTInelasticFS : public G4ParticleHPInelasticCompFS
{
public:
G4ParticleHPTInelasticFS(){}
G4ParticleHPTInelasticFS();
~G4ParticleHPTInelasticFS(){}
void Init (G4double A, G4double Z, G4int M, G4String & dirName, G4String & aFSType, G4ParticleDefinition*);
G4HadFinalState * ApplyYourself(const G4HadProjectile & theTrack);
@@ -67,6 +67,10 @@ struct E_P_E_isoAng
std::vector < G4double > prob;
std::vector < E_isoAng* > vE_isoAngle;
G4double sum_of_probXdEs; // should be close to 1
std::vector< G4double > secondary_energy_cdf;
std::vector< G4double > secondary_energy_pdf;
std::vector< G4double > secondary_energy_value;
G4int secondary_energy_cdf_size;
E_P_E_isoAng() {
energy=0.0;
n=0;
@@ -122,13 +126,17 @@ class G4ParticleHPThermalScattering : public G4HadronicInteraction
G4ParticleHPElastic* theHPElastic;
G4double getMu ( E_isoAng* );
G4double getMu ( G4double rndm1 , G4double rndm2 , E_isoAng* anEPM );
std::pair< G4double , G4double > find_LH ( G4double , std::vector<G4double>* );
G4double get_linear_interpolated ( G4double , std::pair < G4double , G4double > , std::pair < G4double , G4double > );
E_isoAng create_E_isoAng_from_energy( G4double , std::vector< E_isoAng* >* );
G4double get_secondary_energy_from_E_P_E_isoAng ( G4double , E_P_E_isoAng* );
G4double get_secondary_energy_from_E_P_E_isoAng ( G4double random , E_P_E_isoAng* anE_P_E_isoAng );
std::pair< G4double, G4double > sample_inelastic_E_mu( G4double pE , std::vector< E_P_E_isoAng* >* vNEP_EPM );
std::pair< G4double, G4int > sample_inelastic_E( G4double rndm1 , G4double rndm2 , E_P_E_isoAng* anE_P_E_isoAng );
std::pair< G4double , E_isoAng > create_sE_and_EPM_from_pE_and_vE_P_E_isoAng ( G4double , G4double , std::vector < E_P_E_isoAng* >* );
@@ -65,5 +65,7 @@ private:
G4ParticleHPNames fileNames;
G4int Verbosity_;
G4int secID; // Creator model ID for the fission fragments
};
#endif