Import Geant4 10.4.0 source tree

This commit is contained in:
Gabriele Cosmo
2017-12-08 12:52:30 +01:00
parent 98e455a940
commit fc6af9e721
2166 changed files with 276760 additions and 100873 deletions
@@ -26,7 +26,7 @@
/// \file electromagnetic/TestEm8/include/DetectorConstruction.hh
/// \brief Definition of the DetectorConstruction class
//
// $Id: DetectorConstruction.hh 92047 2015-08-14 07:23:37Z gcosmo $
// $Id: DetectorConstruction.hh 106960 2017-10-31 08:35:19Z gcosmo $
//
/////////////////////////////////////////////////////////////////////////
//
@@ -73,7 +73,11 @@ public:
void SetContainerThickness(G4double);
void SetPairEnergy(G4double);
inline G4VPhysicalVolume* GetWorldPhysVol() const { return fPhysWorld; }
inline void SetMaxChargedStep(G4double x) { fMaxStep = x; }
inline G4double GetMaxChargedStep() const { return fMaxStep; }
private:
void DefineMaterials();
@@ -82,6 +86,7 @@ private:
G4Material* fGasMat;
G4double fGasThickness;
G4double fGasRadius;
G4double fMaxStep;
G4Material* fWindowMat;
G4double fWindowThick;
@@ -26,7 +26,7 @@
/// \file electromagnetic/TestEm8/include/DetectorMessenger.hh
/// \brief Definition of the DetectorMessenger class
//
// $Id: DetectorMessenger.hh 67268 2013-02-13 11:38:40Z ihrivnac $
// $Id: DetectorMessenger.hh 106960 2017-10-31 08:35:19Z gcosmo $
//
/////////////////////////////////////////////////////////////////////////
//
@@ -81,6 +81,7 @@ private:
G4UIcmdWithAString* fWorldMaterCmd;
G4UIcmdWithADoubleAndUnit* fIonCmd;
G4UIcmdWithADoubleAndUnit* fStepMaxCmd;
};
#endif
@@ -26,7 +26,7 @@
/// \file electromagnetic/TestEm8/include/PhysicsList.hh
/// \brief Definition of the PhysicsList class
//
// $Id: PhysicsList.hh 92047 2015-08-14 07:23:37Z gcosmo $
// $Id: PhysicsList.hh 106960 2017-10-31 08:35:19Z gcosmo $
//
//---------------------------------------------------------------------------
//
@@ -47,7 +47,7 @@
class G4VPhysicsConstructor;
class PhysicsListMessenger;
class StepMax;
class DetectorConstruction;
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -55,7 +55,7 @@ class PhysicsList: public G4VModularPhysicsList
{
public:
PhysicsList();
PhysicsList(DetectorConstruction*);
virtual ~PhysicsList();
virtual void ConstructParticle();
@@ -74,7 +74,7 @@ private:
G4String fEmName;
PhysicsListMessenger* fMessenger;
static G4ThreadLocal StepMax* fStepMaxProcess;
DetectorConstruction* fDetectorConstruction;
};
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -23,10 +23,7 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/// \file electromagnetic/TestEm8/include/StepMax.hh
/// \brief Definition of the StepMax class
//
// $Id: StepMax.hh 66241 2012-12-13 18:34:42Z gunter $
// $Id: StepMax.hh 106960 2017-10-31 08:35:19Z gcosmo $
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -35,43 +32,44 @@
#define StepMax_h 1
#include "globals.hh"
#include "G4VDiscreteProcess.hh"
#include "G4VEmProcess.hh"
#include "G4ParticleDefinition.hh"
#include "G4Step.hh"
class StepMaxMessenger;
class DetectorConstruction;
class G4VPhysicalVolume;
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
class StepMax : public G4VDiscreteProcess
class StepMax : public G4VEmProcess
{
public:
StepMax(const G4String& processName = "UserMaxStep");
~StepMax();
void SetMaxStep(G4double);
inline G4double GetMaxStep() { return fMaxChargedStep; };
StepMax(DetectorConstruction* ptr,
const G4String& processName = "UserMaxStep");
virtual ~StepMax();
virtual G4bool IsApplicable(const G4ParticleDefinition&);
virtual G4double
PostStepGetPhysicalInteractionLength(const G4Track& track,
G4double previousStepSize,
G4ForceCondition* condition);
virtual void PreparePhysicsTable(const G4ParticleDefinition&);
virtual void BuildPhysicsTable(const G4ParticleDefinition&);
virtual void InitialiseProcess(const G4ParticleDefinition*);
virtual G4double PostStepGetPhysicalInteractionLength(const G4Track& track,
G4double previousStep,
G4ForceCondition* cond);
virtual G4VParticleChange* PostStepDoIt(const G4Track&, const G4Step&);
virtual G4double
GetMeanFreePath(const G4Track&, G4double, G4ForceCondition*);
private:
G4double fMaxChargedStep;
G4double fProposedStep;
StepMaxMessenger* fMessenger;
DetectorConstruction* fDetector;
G4VPhysicalVolume* fWorld;
G4bool isInitialised;
};
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -1,61 +0,0 @@
//
// ********************************************************************
// * License and Disclaimer *
// * *
// * The Geant4 software is copyright of the Copyright Holders of *
// * the Geant4 Collaboration. It is provided under the terms and *
// * conditions of the Geant4 Software License, included in the file *
// * LICENSE and available at http://cern.ch/geant4/license . These *
// * include a list of copyright holders. *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. Please see the license in the file LICENSE and URL above *
// * for the full disclaimer and the limitation of liability. *
// * *
// * This code implementation is the result of the scientific and *
// * technical work of the GEANT4 collaboration. *
// * By using, copying, modifying or distributing the software (or *
// * any work based on the software) you agree to acknowledge its *
// * use in resulting scientific publications, and indicate your *
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/// \file electromagnetic/TestEm8/include/StepMaxMessenger.hh
/// \brief Definition of the StepMaxMessenger class
//
// $Id: StepMaxMessenger.hh 67268 2013-02-13 11:38:40Z ihrivnac $
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
#ifndef StepMaxMessenger_h
#define StepMaxMessenger_h 1
#include "globals.hh"
#include "G4UImessenger.hh"
class StepMax;
class G4UIcmdWithADoubleAndUnit;
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
class StepMaxMessenger: public G4UImessenger
{
public:
StepMaxMessenger(StepMax*);
~StepMaxMessenger();
virtual void SetNewValue(G4UIcommand*, G4String);
private:
StepMax* fStepMax;
G4UIcmdWithADoubleAndUnit* fStepMaxCmd;
};
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
#endif