Import Geant4 11.0.0 source tree
This commit is contained in:
committed by
Ben Morgan
parent
6399a014b6
commit
80e2389dd8
+14
-12
@@ -24,32 +24,34 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
/// \file B3aActionInitialization.hh
|
||||
/// \brief Definition of the B3aActionInitialization class
|
||||
/// \file ActionInitialization.hh
|
||||
/// \brief Definition of the B3a::ActionInitialization class
|
||||
|
||||
#ifndef B3aActionInitialization_h
|
||||
#define B3aActionInitialization_h 1
|
||||
|
||||
#include "G4VUserActionInitialization.hh"
|
||||
|
||||
/// Action initialization class.
|
||||
///
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
class B3aActionInitialization : public G4VUserActionInitialization
|
||||
namespace B3a
|
||||
{
|
||||
|
||||
/// Action initialization class.
|
||||
|
||||
class ActionInitialization : public G4VUserActionInitialization
|
||||
{
|
||||
public:
|
||||
B3aActionInitialization();
|
||||
virtual ~B3aActionInitialization();
|
||||
ActionInitialization();
|
||||
~ActionInitialization() override;
|
||||
|
||||
virtual void BuildForMaster() const;
|
||||
virtual void Build() const;
|
||||
void BuildForMaster() const override;
|
||||
void Build() const override;
|
||||
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
@@ -1,37 +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 B3Analysis.hh
|
||||
/// \brief Selection of the analysis technology
|
||||
|
||||
#ifndef B3Analysis_h
|
||||
#define B3Analysis_h 1
|
||||
|
||||
#include "g4root.hh"
|
||||
//#include "g4csv.hh"
|
||||
//#include "g4xml.hh"
|
||||
|
||||
#endif
|
||||
+13
-8
@@ -24,8 +24,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
/// \file B3DetectorConstruction.hh
|
||||
/// \brief Definition of the B3DetectorConstruction class
|
||||
/// \file DetectorConstruction.hh
|
||||
/// \brief Definition of the B3::DetectorConstruction class
|
||||
|
||||
#ifndef B3DetectorConstruction_h
|
||||
#define B3DetectorConstruction_h 1
|
||||
@@ -36,27 +36,32 @@
|
||||
class G4VPhysicalVolume;
|
||||
class G4LogicalVolume;
|
||||
|
||||
namespace B3
|
||||
{
|
||||
|
||||
/// Detector construction class to define materials and geometry.
|
||||
///
|
||||
/// Crystals are positioned in Ring, with an appropriate rotation matrix.
|
||||
/// Several copies of Ring are placed in the full detector.
|
||||
|
||||
class B3DetectorConstruction : public G4VUserDetectorConstruction
|
||||
class DetectorConstruction : public G4VUserDetectorConstruction
|
||||
{
|
||||
public:
|
||||
B3DetectorConstruction();
|
||||
virtual ~B3DetectorConstruction();
|
||||
DetectorConstruction();
|
||||
~DetectorConstruction() override;
|
||||
|
||||
public:
|
||||
virtual G4VPhysicalVolume* Construct();
|
||||
virtual void ConstructSDandField();
|
||||
G4VPhysicalVolume* Construct() override;
|
||||
void ConstructSDandField() override;
|
||||
|
||||
private:
|
||||
void DefineMaterials();
|
||||
|
||||
G4bool fCheckOverlaps;
|
||||
G4bool fCheckOverlaps = true;
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
#endif
|
||||
+17
-12
@@ -24,8 +24,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
/// \file B3aEventAction.hh
|
||||
/// \brief Definition of the B3aEventAction class
|
||||
/// \file EventAction.hh
|
||||
/// \brief Definition of the B3a::EventAction class
|
||||
|
||||
#ifndef B3aEventAction_h
|
||||
#define B3aEventAction_h 1
|
||||
@@ -33,29 +33,34 @@
|
||||
#include "G4UserEventAction.hh"
|
||||
#include "globals.hh"
|
||||
|
||||
class B3aRunAction;
|
||||
namespace B3a
|
||||
{
|
||||
|
||||
class RunAction;
|
||||
|
||||
/// Event action class
|
||||
///
|
||||
/// In EndOfEventAction() there is collected information event per event
|
||||
/// from Hits Collections, and accumulated statistic for
|
||||
/// B3RunAction::EndOfRunAction().
|
||||
/// RunAction::EndOfRunAction().
|
||||
|
||||
class B3aEventAction : public G4UserEventAction
|
||||
class EventAction : public G4UserEventAction
|
||||
{
|
||||
public:
|
||||
B3aEventAction(B3aRunAction* runAction);
|
||||
virtual ~B3aEventAction();
|
||||
EventAction(RunAction* runAction);
|
||||
~EventAction() override;
|
||||
|
||||
virtual void BeginOfEventAction(const G4Event*);
|
||||
virtual void EndOfEventAction(const G4Event*);
|
||||
void BeginOfEventAction(const G4Event*) override;
|
||||
void EndOfEventAction(const G4Event*) override;
|
||||
|
||||
private:
|
||||
B3aRunAction* fRunAction;
|
||||
G4int fCollID_cryst;
|
||||
G4int fCollID_patient;
|
||||
RunAction* fRunAction = nullptr;
|
||||
G4int fCollID_cryst = -1;
|
||||
G4int fCollID_patient = -1;
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
#endif
|
||||
+11
-6
@@ -24,14 +24,17 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
/// \file B3PhysicsList.hh
|
||||
/// \brief Definition of the B3PhysicsList class
|
||||
/// \file PhysicsList.hh
|
||||
/// \brief Definition of the B3::PhysicsList class
|
||||
|
||||
#ifndef B3PhysicsList_h
|
||||
#define B3PhysicsList_h 1
|
||||
|
||||
#include "G4VModularPhysicsList.hh"
|
||||
|
||||
namespace B3
|
||||
{
|
||||
|
||||
/// Modular physics list
|
||||
///
|
||||
/// It includes the folowing physics builders
|
||||
@@ -39,15 +42,17 @@
|
||||
/// - G4RadioactiveDecayPhysics
|
||||
/// - G4EmStandardPhysics
|
||||
|
||||
class B3PhysicsList: public G4VModularPhysicsList
|
||||
class PhysicsList: public G4VModularPhysicsList
|
||||
{
|
||||
public:
|
||||
B3PhysicsList();
|
||||
virtual ~B3PhysicsList();
|
||||
PhysicsList();
|
||||
~PhysicsList() override;
|
||||
|
||||
virtual void SetCuts();
|
||||
void SetCuts() override;
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
#endif
|
||||
+12
-7
@@ -24,8 +24,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
/// \file B3PrimaryGeneratorAction.hh
|
||||
/// \brief Definition of the B3PrimaryGeneratorAction class
|
||||
/// \file PrimaryGeneratorAction.hh
|
||||
/// \brief Definition of the B3::PrimaryGeneratorAction class
|
||||
|
||||
#ifndef B3PrimaryGeneratorAction_h
|
||||
#define B3PrimaryGeneratorAction_h 1
|
||||
@@ -37,26 +37,31 @@
|
||||
class G4ParticleGun;
|
||||
class G4Event;
|
||||
|
||||
namespace B3
|
||||
{
|
||||
|
||||
/// The primary generator action class with particle gum.
|
||||
///
|
||||
/// It defines an ion (F18), at rest, randomly distribued within a zone
|
||||
/// in a patient defined in GeneratePrimaries(). Ion F18 can be changed
|
||||
/// with the G4ParticleGun commands (see run2.mac).
|
||||
|
||||
class B3PrimaryGeneratorAction : public G4VUserPrimaryGeneratorAction
|
||||
class PrimaryGeneratorAction : public G4VUserPrimaryGeneratorAction
|
||||
{
|
||||
public:
|
||||
B3PrimaryGeneratorAction();
|
||||
virtual ~B3PrimaryGeneratorAction();
|
||||
PrimaryGeneratorAction();
|
||||
~PrimaryGeneratorAction() override;
|
||||
|
||||
virtual void GeneratePrimaries(G4Event*);
|
||||
void GeneratePrimaries(G4Event*) override;
|
||||
|
||||
const G4ParticleGun* GetParticleGun() const { return fParticleGun; }
|
||||
|
||||
private:
|
||||
G4ParticleGun* fParticleGun;
|
||||
G4ParticleGun* fParticleGun = nullptr;
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
#endif
|
||||
+14
-9
@@ -24,8 +24,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
/// \file B3aRunAction.hh
|
||||
/// \brief Definition of the B3aRunAction class
|
||||
/// \file RunAction.hh
|
||||
/// \brief Definition of the B3a::RunAction class
|
||||
|
||||
#ifndef B3aRunAction_h
|
||||
#define B3aRunAction_h 1
|
||||
@@ -34,25 +34,30 @@
|
||||
#include "G4Accumulable.hh"
|
||||
#include "globals.hh"
|
||||
|
||||
namespace B3a
|
||||
{
|
||||
|
||||
/// Run action class
|
||||
|
||||
class B3aRunAction : public G4UserRunAction
|
||||
class RunAction : public G4UserRunAction
|
||||
{
|
||||
public:
|
||||
B3aRunAction();
|
||||
virtual ~B3aRunAction();
|
||||
RunAction();
|
||||
~RunAction() override;
|
||||
|
||||
virtual void BeginOfRunAction(const G4Run*);
|
||||
virtual void EndOfRunAction(const G4Run*);
|
||||
void BeginOfRunAction(const G4Run*) override;
|
||||
void EndOfRunAction(const G4Run*) override;
|
||||
|
||||
void CountEvent() { fGoodEvents += 1; };
|
||||
void SumDose(G4double dose) { fSumDose += dose; };
|
||||
|
||||
private:
|
||||
G4Accumulable<G4int> fGoodEvents;
|
||||
G4Accumulable<G4double> fSumDose;
|
||||
G4Accumulable<G4int> fGoodEvents = 0;
|
||||
G4Accumulable<G4double> fSumDose = 0.;
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
#endif
|
||||
+11
-6
@@ -24,8 +24,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
/// \file B3StackingAction.hh
|
||||
/// \brief Definition of the B3StackingAction class
|
||||
/// \file StackingAction.hh
|
||||
/// \brief Definition of the B3::StackingAction class
|
||||
|
||||
#ifndef B3StackingAction_h
|
||||
#define B3StackingAction_h 1
|
||||
@@ -33,20 +33,25 @@
|
||||
#include "G4UserStackingAction.hh"
|
||||
#include "globals.hh"
|
||||
|
||||
namespace B3
|
||||
{
|
||||
|
||||
/// Stacking action class : manage the newly generated particles
|
||||
///
|
||||
/// One wishes do not track secondary neutrino.Therefore one kills it
|
||||
/// immediately, before created particles will put in a stack.
|
||||
|
||||
class B3StackingAction : public G4UserStackingAction
|
||||
class StackingAction : public G4UserStackingAction
|
||||
{
|
||||
public:
|
||||
B3StackingAction();
|
||||
virtual ~B3StackingAction();
|
||||
StackingAction();
|
||||
~StackingAction() override;
|
||||
|
||||
virtual G4ClassificationOfNewTrack ClassifyNewTrack(const G4Track*);
|
||||
G4ClassificationOfNewTrack ClassifyNewTrack(const G4Track*) override;
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user