Import Geant4 6.1.0 source tree

This commit is contained in:
Gabriele Cosmo
2016-06-09 10:49:58 +02:00
parent 96686e0c8f
commit 1d812b78b1
4545 changed files with 24433 additions and 175005 deletions
@@ -21,8 +21,8 @@
// ********************************************************************
//
//
// $Id: G4AnnihiToMuPair.hh,v 1.2 2003/02/04 11:08:41 maire Exp $
// GEANT4 tag $Name: geant4-06-00 $
// $Id: G4AnnihiToMuPair.hh,v 1.3 2004/03/10 16:48:44 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-01 $
//
// ------------ G4AnnihiToMuPair physics process ------
// by H.Burkhardt, S. Kelner and R. Kokoulin, November 2002
@@ -56,7 +56,8 @@ class G4AnnihiToMuPair : public G4VDiscreteProcess
{
public: // with description
G4AnnihiToMuPair(const G4String& processName ="AnnihiToMuPair");
G4AnnihiToMuPair(const G4String& processName ="AnnihiToMuPair",
G4ProcessType type = fElectromagnetic);
~G4AnnihiToMuPair();
@@ -21,8 +21,8 @@
// ********************************************************************
//
//
// $Id: G4ComptonScattering.hh,v 1.9 2002/04/09 17:34:40 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-00 $
// $Id: G4ComptonScattering.hh,v 1.10 2004/03/10 16:48:44 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-01 $
//
//------------------ G4ComptonScattering physics process -----------------------
// by Michel Maire, April 1996
@@ -70,8 +70,9 @@ class G4ComptonScattering : public G4VDiscreteProcess
{
public: // with description
G4ComptonScattering(const G4String& processName ="compt");
G4ComptonScattering(const G4String& processName ="compt",
G4ProcessType type = fElectromagnetic);
~G4ComptonScattering();
G4bool IsApplicable(const G4ParticleDefinition&);
@@ -22,7 +22,7 @@
//
//
// $Id: G4ComptonScattering.icc,v 1.8 2001/09/21 09:50:53 maire Exp $
// GEANT4 tag $Name: geant4-06-00 $
// GEANT4 tag $Name: geant4-05-02-patch-01 $
//
//------------------ G4ComptonScattering physics process -----------------------
// by Michel Maire, April 1996
@@ -21,8 +21,8 @@
// ********************************************************************
//
//
// $Id: G4GammaConversion.hh,v 1.10 2002/04/09 17:34:40 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-00 $
// $Id: G4GammaConversion.hh,v 1.11 2004/03/10 16:48:45 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-01 $
//
//------------------ G4GammaConversion physics process -------------------------
// by Michel Maire, 24 May 1996
@@ -73,7 +73,8 @@ class G4GammaConversion : public G4VDiscreteProcess
{
public: // with description
G4GammaConversion(const G4String& processName ="conv");
G4GammaConversion(const G4String& processName ="conv",
G4ProcessType type = fElectromagnetic);
~G4GammaConversion();
@@ -22,7 +22,7 @@
//
//
// $Id: G4GammaConversion.icc,v 1.7 2001/09/17 17:07:11 maire Exp $
// GEANT4 tag $Name: geant4-06-00 $
// GEANT4 tag $Name: geant4-05-02-patch-01 $
//
//
// ------------ G4GammaConversion physics process -------------------------
@@ -21,8 +21,8 @@
// ********************************************************************
//
//
// $Id: G4GammaConversionToMuons.hh,v 1.3 2003/05/26 16:13:13 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-00 $
// $Id: G4GammaConversionToMuons.hh,v 1.4 2004/03/10 16:48:45 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-01 $
//
// ------------ G4GammaConversionToMuons physics process ------
// by H.Burkhardt, S. Kelner and R. Kokoulin, April 2002
@@ -58,7 +58,8 @@ class G4GammaConversionToMuons : public G4VDiscreteProcess
{
public: // with description
G4GammaConversionToMuons(const G4String& processName ="GammaToMuPair");
G4GammaConversionToMuons(const G4String& processName ="GammaToMuPair",
G4ProcessType type = fElectromagnetic);
~G4GammaConversionToMuons();
@@ -22,7 +22,7 @@
//
//
// $Id: G4GammaConversionToMuons.icc,v 1.1 2002/04/19 14:44:33 hbu Exp $
// GEANT4 tag $Name: geant4-06-00 $
// GEANT4 tag $Name: geant4-05-02-patch-01 $
//
// ------------ G4GammaConversionToMuons physics process ------
// by H.Burkhardt, S. Kelner and R. Kokoulin, April 2002
@@ -21,7 +21,7 @@
// ********************************************************************
//
// $Id: G4MollerBhabhaModel.hh,v 1.7 2003/07/21 12:52:22 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-00 $
// GEANT4 tag $Name: geant4-06-00-patch-01 $
//
// -------------------------------------------------------------------
//
@@ -122,13 +122,13 @@ public:
void DefineForRegion(const G4Region* r) ;
void ComputeSandiaPhotoAbsCof();
void BuildPAIonisationTable();
void BuildPAIonisationTable();
void BuildLambdaVector(const G4MaterialCutsCouple* matCutsCouple);
G4double GetdNdxCut( G4int iPlace, G4double transferCut);
G4double GetdEdxCut( G4int iPlace, G4double transferCut);
G4double GetPostStepTransfer( G4double scaledTkin );
G4double GetEnergyTransfer( G4int iPlace,
G4double position,
G4double GetEnergyTransfer( G4int iPlace,
G4double position,
G4int iTransfer );
@@ -148,15 +148,15 @@ private:
// The vector over proton kinetic energies: the range of gammas
static const G4double fLowestKineticEnergy;
static const G4double fHighestKineticEnergy;
static G4int fTotBin;
static G4int fMeanNumber;
static G4PhysicsLogVector* fProtonEnergyVector ;
G4double fLowestKineticEnergy;
G4double fHighestKineticEnergy;
G4int fTotBin;
G4int fMeanNumber;
G4PhysicsLogVector* fProtonEnergyVector ;
// vectors
// vectors
G4PhysicsTable* fPAItransferBank;
std::vector<G4PhysicsTable*> fPAIxscBank;
G4PhysicsTable* fPAIdEdxTable;
@@ -22,7 +22,7 @@
//
//
// $Id: G4PAIxSection.hh,v 1.10 2003/10/19 15:21:22 grichine Exp $
// GEANT4 tag $Name: geant4-06-00 $
// GEANT4 tag $Name: geant4-06-00-patch-01 $
//
//
// G4PAIxSection.hh -- header file
@@ -21,8 +21,8 @@
// ********************************************************************
//
//
// $Id: G4PhotoElectricEffect.hh,v 1.15 2002/05/02 11:37:22 maire Exp $
// GEANT4 tag $Name: geant4-06-00 $
// $Id: G4PhotoElectricEffect.hh,v 1.16 2004/03/10 16:48:45 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-01 $
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
//
@@ -78,7 +78,8 @@ class G4PhotoElectricEffect : public G4VDiscreteProcess
{
public: // with description
G4PhotoElectricEffect(const G4String& processName ="phot");
G4PhotoElectricEffect(const G4String& processName ="phot",
G4ProcessType type = fElectromagnetic);
~G4PhotoElectricEffect();
@@ -22,7 +22,7 @@
//
//
// $Id: G4PhotoElectricEffect.icc,v 1.10 2002/04/18 10:12:01 maire Exp $
// GEANT4 tag $Name: geant4-06-00 $
// GEANT4 tag $Name: geant4-05-02-patch-01 $
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -22,7 +22,7 @@
//
//
// $Id: G4PolarizedComptonScattering.hh,v 1.7 2002/04/09 17:34:40 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-00 $
// GEANT4 tag $Name: geant4-05-02-patch-01 $
//
// --------- G4PolarizedComptonScattering physics process ----------------------
// by Vicente Lara, March 1998
@@ -21,8 +21,8 @@
// ********************************************************************
//
//
// $Id: G4SynchrotronRadiation.hh,v 1.8 2003/05/26 16:13:14 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-00 $
// $Id: G4SynchrotronRadiation.hh,v 1.9 2004/03/10 16:48:45 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-01 $
//
// ------------------------------------------------------------
// GEANT 4 class header file
@@ -65,7 +65,8 @@ class G4SynchrotronRadiation : public G4VDiscreteProcess
public:
G4SynchrotronRadiation(const G4String& processName =
"SynchrotronRadiation");
"SynchrotronRadiation",
G4ProcessType type = fElectromagnetic);
~G4SynchrotronRadiation();
@@ -22,7 +22,7 @@
//
//
// $Id: G4VPAIenergyLoss.hh,v 1.10 2003/06/16 17:01:57 gunter Exp $
// GEANT4 tag $Name: geant4-06-00 $
// GEANT4 tag $Name: geant4-05-02-patch-01 $
//
// ------------------------------------------------------------
// GEANT 4 class header file
@@ -22,7 +22,7 @@
//
//
// $Id: G4VeEnergyLoss.hh,v 1.12 2003/01/17 18:55:42 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-00 $
// GEANT4 tag $Name: geant4-05-02-patch-01 $
//
// -----------------------------------------------------------------------------
@@ -22,7 +22,7 @@
//
//
// $Id: G4VeEnergyLoss.icc,v 1.13 2003/06/16 17:01:58 gunter Exp $
// GEANT4 tag $Name: geant4-06-00 $
// GEANT4 tag $Name: geant4-05-02-patch-01 $
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
//
@@ -22,7 +22,7 @@
//
//
// $Id: G4VhEnergyLoss.hh,v 1.17 2003/01/22 14:03:53 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-00 $
// GEANT4 tag $Name: geant4-05-02-patch-01 $
//
// ------------- G4VhEnergyLoss physics process --------------------------------
// by Laszlo Urban, 30 May 1997
@@ -22,7 +22,7 @@
//
//
// $Id: G4VhEnergyLoss.icc,v 1.6 2003/01/17 18:55:42 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-00 $
// GEANT4 tag $Name: geant4-05-02-patch-01 $
//
//
// ---------------- G4VhEnergyLoss physics process -----------------------------
@@ -20,8 +20,8 @@
// * statement, and all its terms. *
// ********************************************************************
//
// $Id: G4eBremsstrahlung.hh,v 1.20 2003/11/12 16:23:42 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-00 $
// $Id: G4eBremsstrahlung.hh,v 1.21 2004/01/21 18:05:22 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-01 $
//
// -------------------------------------------------------------------
//
@@ -51,6 +51,7 @@
// 08-08-03 STD substitute standard (V.Ivanchenko)
// 17-10-03 PrintInfoDefinition - virtual (V.Ivanchenko)
// 12-11-03 G4EnergyLossSTD -> G4EnergyLossProcess (V.Ivanchenko)
// 21-01-04 Migrade to G4ParticleChangeForLoss (V.Ivanchenko)
//
//
// Class Description:
@@ -130,8 +131,8 @@ inline void G4eBremsstrahlung::SecondariesPostStep(
G4double& kinEnergy)
{
G4DynamicParticle* gamma = model->SampleSecondary(couple, dp, tcut, kinEnergy);
aParticleChange.SetNumberOfSecondaries(1);
aParticleChange.AddSecondary(gamma);
fParticleChange.SetNumberOfSecondaries(1);
fParticleChange.AddSecondary(gamma);
kinEnergy -= gamma->GetKineticEnergy();
}
@@ -22,7 +22,7 @@
//
//
// $Id: G4eBremsstrahlung52.hh,v 1.1 2003/08/08 11:30:00 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-00 $
// GEANT4 tag $Name: geant4-06-00-patch-01 $
//
//
// ------------ G4eBremsstrahlung5252 physics process ------
@@ -22,7 +22,7 @@
//
//
// $Id: G4eBremsstrahlung52.icc,v 1.1 2003/08/08 11:30:00 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-00 $
// GEANT4 tag $Name: geant4-06-00-patch-01 $
//
// ------------ G4eBremsstrahlung52 physics process ---------
// by Michel Maire, 27 July 1996
@@ -21,7 +21,7 @@
// ********************************************************************
//
// $Id: G4eBremsstrahlungModel.hh,v 1.8 2003/07/21 12:52:23 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-00 $
// GEANT4 tag $Name: geant4-06-00-patch-01 $
//
// -------------------------------------------------------------------
//
@@ -20,8 +20,8 @@
// * statement, and all its terms. *
// ********************************************************************
//
// $Id: G4eIonisation.hh,v 1.20 2003/11/12 16:23:42 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-00 $
// $Id: G4eIonisation.hh,v 1.23 2004/01/21 18:05:22 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-01 $
//
// -------------------------------------------------------------------
//
@@ -50,6 +50,7 @@
// 03-06-03 Fix initialisation problem for STD ionisation (V.Ivanchenko)
// 08-08-03 STD substitute standard (V.Ivanchenko)
// 12-11-03 G4EnergyLossSTD -> G4EnergyLossProcess (V.Ivanchenko)
// 21-01-04 Migrade to G4ParticleChangeForLoss (V.Ivanchenko)
//
//
// Class Description:
@@ -187,13 +188,13 @@ inline void G4eIonisation::SecondariesPostStep(
G4double& kinEnergy)
{
G4DynamicParticle* delta = model->SampleSecondary(couple, dp, tcut, kinEnergy);
aParticleChange.SetNumberOfSecondaries(1);
aParticleChange.AddSecondary(delta);
G4ThreeVector finalP = dp->GetMomentum();
kinEnergy -= delta->GetKineticEnergy();
finalP -= delta->GetMomentum();
finalP = finalP.unit();
aParticleChange.SetMomentumDirectionChange(finalP);
fParticleChange.SetNumberOfSecondaries(1);
fParticleChange.AddSecondary(delta);
fParticleChange.SetProposedMomentumDirection(finalP);
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -22,7 +22,7 @@
//
//
// $Id: G4eIonisation52.hh,v 1.1 2003/08/08 11:30:01 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-00 $
// GEANT4 tag $Name: geant4-06-00-patch-01 $
//
//--------------- G4eIonisation52 physics process --------------------------------
// by Laszlo Urban, 20 March 1997
@@ -22,7 +22,7 @@
//
//
// $Id: G4eIonisation52.icc,v 1.1 2003/08/08 11:30:01 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-00 $
// GEANT4 tag $Name: geant4-06-00-patch-01 $
//
//
//----------------- G4eIonisation52 physics process ------------------------------
@@ -21,8 +21,8 @@
// ********************************************************************
//
//
// $Id: G4eplusAnnihilation.hh,v 1.10 2002/04/09 17:34:41 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-00 $
// $Id: G4eplusAnnihilation.hh,v 1.11 2004/03/10 16:48:45 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-01 $
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -66,7 +66,8 @@ class G4eplusAnnihilation : public G4VRestDiscreteProcess
{
public: // with description
G4eplusAnnihilation(const G4String& processName ="annihil");
G4eplusAnnihilation(const G4String& processName ="annihil",
G4ProcessType type = fElectromagnetic);
~G4eplusAnnihilation();
@@ -22,7 +22,7 @@
//
//
// $Id: G4eplusAnnihilation.icc,v 1.8 2001/09/17 17:07:11 maire Exp $
// GEANT4 tag $Name: geant4-06-00 $
// GEANT4 tag $Name: geant4-05-02-patch-01 $
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -20,8 +20,8 @@
// * statement, and all its terms. *
// ********************************************************************
//
// $Id: G4hIonisation.hh,v 1.24 2003/11/12 16:23:42 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-00 $
// $Id: G4hIonisation.hh,v 1.25 2004/01/21 18:05:22 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-01 $
//
// -------------------------------------------------------------------
//
@@ -55,6 +55,7 @@
// 16-06-03 ShortLived are not applicable any more (V.Ivanchenko)
// 08-08-03 STD substitute standard (V.Ivanchenko)
// 12-11-03 G4EnergyLossSTD -> G4EnergyLossProcess (V.Ivanchenko)
// 21-01-04 Migrade to G4ParticleChangeForLoss (V.Ivanchenko)
//
// Class Description:
//
@@ -200,13 +201,13 @@ inline void G4hIonisation::SecondariesPostStep(
{
G4DynamicParticle* delta = model->SampleSecondary(couple, dp, tcut, kinEnergy);
if (delta) {
aParticleChange.SetNumberOfSecondaries(1);
aParticleChange.AddSecondary(delta);
fParticleChange.SetNumberOfSecondaries(1);
fParticleChange.AddSecondary(delta);
G4ThreeVector finalP = dp->GetMomentum();
kinEnergy -= delta->GetKineticEnergy();
finalP -= delta->GetMomentum();
finalP = finalP.unit();
aParticleChange.SetMomentumDirectionChange(finalP);
fParticleChange.SetProposedMomentumDirection(finalP);
}
}
@@ -22,7 +22,7 @@
//
//
// $Id: G4hIonisation52.hh,v 1.1 2003/08/08 11:30:01 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-00 $
// GEANT4 tag $Name: geant4-06-00-patch-01 $
//
// --------------- G4hIonisation52 physics process -------------------------------
// by Laszlo Urban, 30 May 1997
@@ -22,7 +22,7 @@
//
//
// $Id: G4hIonisation52.icc,v 1.1 2003/08/08 11:30:01 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-00 $
// GEANT4 tag $Name: geant4-06-00-patch-01 $
//
//
//------------------ G4hIonisation52 physics process -----------------------------
@@ -20,8 +20,8 @@
// * statement, and all its terms. *
// ********************************************************************
//
// $Id: G4ionIonisation.hh,v 1.22 2003/11/12 16:23:42 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-00 $
// $Id: G4ionIonisation.hh,v 1.23 2004/01/21 18:05:22 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-01 $
//
// -------------------------------------------------------------------
//
@@ -45,6 +45,7 @@
// 03-08-03 Add effective charge and saturation of tmax (V.Ivanchenko)
// 12-11-03 Fix problem of negative effective charge (V.Ivanchenko)
// 12-11-03 G4EnergyLossSTD -> G4EnergyLossProcess (V.Ivanchenko)
// 21-01-04 Migrade to G4ParticleChangeForLoss (V.Ivanchenko)
//
// Class Description:
//
@@ -139,7 +140,7 @@ private:
inline G4bool G4ionIonisation::IsApplicable(const G4ParticleDefinition& p)
{
return (p.GetPDGCharge() != 0.0 && !p.IsShortLived() &&
(p.GetParticleType() == "nucleus" || p.GetParticleType() == "static_nucleus"));
(p.GetParticleType() == "nucleus" || p.GetParticleType() == "static_nucleus"));
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
@@ -199,7 +200,7 @@ inline std::vector<G4Track*>* G4ionIonisation::SecondariesAlongStep(
}
}
G4double e = step.GetTrack()->GetKineticEnergy() - eloss;
aParticleChange.SetChargeChange(EffectiveCharge(currentParticle,theMaterial,e));
fParticleChange.SetProposedCharge(EffectiveCharge(currentParticle,theMaterial,e));
return newp;
}
@@ -216,14 +217,14 @@ inline void G4ionIonisation::SecondariesPostStep(
{
G4DynamicParticle* delta = model->SampleSecondary(couple, dp, tcut, kinEnergy);
if(delta) {
aParticleChange.SetNumberOfSecondaries(1);
aParticleChange.AddSecondary(delta);
fParticleChange.SetNumberOfSecondaries(1);
fParticleChange.AddSecondary(delta);
G4ThreeVector finalP = dp->GetMomentum();
kinEnergy -= delta->GetKineticEnergy();
aParticleChange.SetChargeChange(EffectiveCharge(currentParticle,theMaterial,kinEnergy));
fParticleChange.SetProposedCharge(EffectiveCharge(currentParticle,theMaterial,kinEnergy));
finalP -= delta->GetMomentum();
finalP = finalP.unit();
aParticleChange.SetMomentumDirectionChange(finalP);
fParticleChange.SetProposedMomentumDirection(finalP);
}
}