Import Geant4 10.3.0.beta source tree

This commit is contained in:
Gabriele Cosmo
2016-06-30 14:12:05 +02:00
parent a654a7ab1f
commit 4ec577e5c4
2021 changed files with 100995 additions and 78277 deletions
File diff suppressed because it is too large Load Diff
@@ -15,6 +15,10 @@ track of all tags.
* Reverse chronological order (last date on top), please *
----------------------------------------------------------
04-Mar-2016 A. Ribon (expar02-V10-02-00)
- Added magnetic field, and corrected the way to create a G4FieldTrack
object in Par02FastSimModelTracker.
14-Oct-2015 J. Apostolakis (expar02-V10-01-07)
- Simplified code to set Primary Particle Information (Par02FastSimModelHCal)
@@ -2,6 +2,9 @@
#
#/tracking/verbose 1
#
/globalField/setValue 0 0 1 tesla
/globalField/verbose 1
#
###/gun/particle mu-
###/gun/energy 100 GeV
###/run/beamOn 1000
File diff suppressed because it is too large Load Diff
@@ -38,6 +38,8 @@
#include "G4LogicalVolume.hh"
#include "G4VUserDetectorConstruction.hh"
#include "globals.hh"
#include "tls.hh"
#include "G4GlobalMagFieldMessenger.hh"
/// Construction of detector geometry.
///
@@ -72,6 +74,9 @@ class Par02DetectorConstruction : public G4VUserDetectorConstruction {
/// A vector of the muon detector regions
std::vector< G4Region* > fMuonList;
/// Messenger of the magnetic field
G4GlobalMagFieldMessenger* fMagFieldMessenger;
};
#endif
@@ -34,6 +34,8 @@
#include "G4RegionStore.hh"
#include "G4GDMLParser.hh"
#include "G4AutoDelete.hh"
#include "G4GlobalMagFieldMessenger.hh"
#include "G4AutoDelete.hh"
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -63,12 +65,15 @@ G4VPhysicalVolume* Par02DetectorConstruction::Construct() {
if ( ( myvol->GetName() ).find( "Tracker" ) != std::string::npos ) {
fTrackerList.push_back( new G4Region( myvol->GetName() ) );
fTrackerList.back()->AddRootLogicalVolume( myvol );
G4cout << G4endl << "tracker !!!" << G4endl;
} else if ( ( myvol->GetName() ).find( "HCal" ) != std::string::npos ) {
fHCalList.push_back( new G4Region( myvol->GetName() ) );
fHCalList.back()->AddRootLogicalVolume( myvol );
G4cout << G4endl << "hcal !!!" << G4endl;
} else if ( ( myvol->GetName() ).find( "ECal" ) != std::string::npos ) {
fECalList.push_back( new G4Region( myvol->GetName() ) );
fECalList.back()->AddRootLogicalVolume( myvol );
G4cout << G4endl << "ecal !!!" << G4endl;
} else if ( ( myvol->GetName() ).find( "Muon" ) != std::string::npos ) {
fMuonList.push_back( new G4Region( myvol->GetName() ) );
fMuonList.back()->AddRootLogicalVolume( myvol );
@@ -117,7 +122,7 @@ void Par02DetectorConstruction::ConstructSDandField() {
// to all the corresponding Geant4 regions
Par02FastSimModelTracker* fastSimModelTracker
= new Par02FastSimModelTracker( "fastSimModelTracker", fTrackerList[ iterTracker ],
Par02DetectorParametrisation::eCMS );
Par02DetectorParametrisation::eCMS );
// Register the fast simulation model for deleting
G4AutoDelete::Register(fastSimModelTracker);
@@ -127,7 +132,7 @@ void Par02DetectorConstruction::ConstructSDandField() {
// to all the corresponding Geant4 regions
Par02FastSimModelEMCal* fastSimModelEMCal
= new Par02FastSimModelEMCal( "fastSimModelEMCal", fECalList[ iterECal ],
Par02DetectorParametrisation::eCMS );
Par02DetectorParametrisation::eCMS );
// Register the fast simulation model for deleting
G4AutoDelete::Register(fastSimModelEMCal);
@@ -137,15 +142,20 @@ void Par02DetectorConstruction::ConstructSDandField() {
// to all the corresponding Geant4 regions
Par02FastSimModelHCal* fastSimModelHCal
= new Par02FastSimModelHCal( "fastSimModelHCal", fHCalList[ iterHCal ],
Par02DetectorParametrisation::eCMS );
Par02DetectorParametrisation::eCMS );
// Register the fast simulation model for deleting
G4AutoDelete::Register(fastSimModelHCal);
G4AutoDelete::Register( fastSimModelHCal );
}
// Currently we don't have a fast muon simulation model to be bound
// to all the corresponding Geant4 regions.
// But it could be added in future, in a similar way as done above for
// the tracker subdetector and the electromagnetic and hadronic calorimeters.
// Add global magnetic field
G4ThreeVector fieldValue = G4ThreeVector();
fMagFieldMessenger = new G4GlobalMagFieldMessenger( fieldValue );
fMagFieldMessenger->SetVerboseLevel(1);
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -91,22 +91,16 @@ G4bool Par02FastSimModelTracker::ModelTrigger( const G4FastTrack& /*aFastTrack*/
void Par02FastSimModelTracker::DoIt( const G4FastTrack& aFastTrack,
G4FastStep& aFastStep ) {
//G4cout << " ________Tracker model triggered _________" << G4endl;
G4cout << " ________Tracker model triggered _________" << G4endl;
// Calculate the final position (at the outer boundary of the tracking detector)
// of the particle with the momentum at the entrance of the tracking detector.
G4ThreeVector spin = aFastTrack.GetPrimaryTrack()->GetPolarization() ;
G4FieldTrack theFieldTrack =
G4FieldTrack( aFastTrack.GetPrimaryTrack()->GetPosition(),
aFastTrack.GetPrimaryTrack()->GetMomentumDirection(),
0.0,
aFastTrack.GetPrimaryTrack()->GetKineticEnergy(),
aFastTrack.GetPrimaryTrack()->GetDynamicParticle()->
GetDefinition()->GetPDGMass(),
0.0, // UNUSED: aFastTrack.GetPrimaryTrack().GetVelocity(),
aFastTrack.GetPrimaryTrack()->GetGlobalTime(), // Lab.
aFastTrack.GetPrimaryTrack()->GetProperTime(), // Part.
&spin );
G4Track track = * aFastTrack.GetPrimaryTrack();
G4FieldTrack aFieldTrack( '0' );
G4FieldTrackUpdator::Update( &aFieldTrack, &track );
G4double retSafety = -1.0;
ELimited retStepLimited;
G4FieldTrack endTrack( 'a' );
@@ -114,14 +108,15 @@ void Par02FastSimModelTracker::DoIt( const G4FastTrack& aFastTrack,
// to particle momentum.
G4PathFinder* fPathFinder = G4PathFinder::GetInstance();
/*G4double lengthAlongCurve = */
fPathFinder->ComputeStep( theFieldTrack,
fPathFinder->ComputeStep( aFieldTrack,
currentMinimumStep,
0,
aFastTrack.GetPrimaryTrack()->GetCurrentStepNumber(),
retSafety,
retStepLimited,
endTrack,
aFastTrack.GetPrimaryTrack()->GetVolume() ) ;
aFastTrack.GetPrimaryTrack()->GetVolume() );
// Place the particle at the tracking detector exit
// (at the place it would reach without the change of its momentum).
aFastStep.ProposePrimaryTrackFinalPosition( endTrack.GetPosition() );
@@ -9,7 +9,7 @@
############################################
*************************************************************
Geant4 version Name: geant4-10-02-ref-00 (4-December-2015)
Geant4 version Name: geant4-10-03-beta-01 (30-June-2016)
Copyright : Geant4 Collaboration
Reference : NIM A 506 (2003), 250-303
WWW : http://cern.ch/geant4
@@ -49,16 +49,18 @@ Registering model factories...
You have successfully registered the following model factories.
Registered model factories:
generic
drawByCharge
drawByParticleID
drawByOriginVolume
drawByAttribute
drawByCharge
drawByOriginVolume
drawByParticleID
drawByTouchedVolume
Registered filter factories:
chargeFilter
particleFilter
originVolumeFilter
attributeFilter
chargeFilter
originVolumeFilter
particleFilter
touchedVolumeFilter
You have successfully registered the following user vis actions.
Run Duration User Vis Actions: none
@@ -109,6 +111,14 @@ Creating shower parameterization models
- GFlashHomoShowerParameterisation::Constructor -
/********************************************/
end shower parameterization.
=======================================================================
====== Pre-compound/De-excitation Physics Parameters ========
=======================================================================
Type of pre-compound inverse x-section 3
Type of de-excitation inverse x-section 3
Min excitation energy (keV) 0.1
Level density (1/MeV) 0.1
=======================================================================
### Adding tracking cuts for neutron TimeCut(ns)= 10000 KinEnergyCut(MeV)= 0
FastSimulationManagerProcess constructed
Warning : Region <crystals> does not have specific production cuts,
@@ -230,7 +240,7 @@ msc: for GenericIon SubType= 10
ionIoni: for GenericIon SubType= 2
dE/dx and range tables from 100 eV to 10 TeV in 77 bins
Lambda tables from threshold to 10 TeV, 7 bins per decade, spline: 1
finalRange(mm)= 0.01, dRoverRange= 0.1, integral: 1, fluct: 1, linLossLimit= 0.02
finalRange(mm)= 0.1, dRoverRange= 0.2, integral: 1, fluct: 1, linLossLimit= 0.02
Stopping Power data for 17 ion/material pairs
===== EM models for the G4Region DefaultRegionForTheWorld ======
BraggIon : Emin= 0 eV Emax= 2 MeV
@@ -244,7 +254,7 @@ msc: for alpha SubType= 10
ionIoni: for alpha SubType= 2
dE/dx and range tables from 100 eV to 10 TeV in 77 bins
Lambda tables from threshold to 10 TeV, 7 bins per decade, spline: 1
finalRange(mm)= 0.01, dRoverRange= 0.1, integral: 1, fluct: 1, linLossLimit= 0.02
finalRange(mm)= 0.1, dRoverRange= 0.2, integral: 1, fluct: 1, linLossLimit= 0.02
===== EM models for the G4Region DefaultRegionForTheWorld ======
BraggIon : Emin= 0 eV Emax= 7.9452 MeV
BetheBloch : Emin= 7.9452 MeV Emax= 10 TeV
@@ -353,7 +363,7 @@ msc: for mu+ SubType= 10
muIoni: for mu+ SubType= 2
dE/dx and range tables from 100 eV to 10 TeV in 77 bins
Lambda tables from threshold to 10 TeV, 7 bins per decade, spline: 1
finalRange(mm)= 1, dRoverRange= 0.2, integral: 1, fluct: 1, linLossLimit= 0.01
finalRange(mm)= 0.1, dRoverRange= 0.2, integral: 1, fluct: 1, linLossLimit= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
Bragg : Emin= 0 eV Emax= 200 keV
BetheBloch : Emin= 200 keV Emax= 1 GeV
@@ -386,7 +396,7 @@ msc: for mu- SubType= 10
muIoni: for mu- SubType= 2
dE/dx and range tables from 100 eV to 10 TeV in 77 bins
Lambda tables from threshold to 10 TeV, 7 bins per decade, spline: 1
finalRange(mm)= 1, dRoverRange= 0.2, integral: 1, fluct: 1, linLossLimit= 0.01
finalRange(mm)= 0.1, dRoverRange= 0.2, integral: 1, fluct: 1, linLossLimit= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
ICRU73QO : Emin= 0 eV Emax= 200 keV
BetheBloch : Emin= 200 keV Emax= 1 GeV
@@ -512,6 +522,11 @@ CoulombScat: for pi-, integral: 1 SubType= 1 BuildTable= 1
---------------------------------------------------
Hadronic Processes for He3
Process: hadElastic
Model: hElasticLHEP: 0 eV /n ---> 100 TeV/n
Cr_sctns: Glauber-Gribov nucleus nucleus: 0 eV ---> 2.88022e+295 J
Cr_sctns: GheishaElastic: 0 eV ---> 100 TeV
Process: He3Inelastic
Model: Binary Light Ion Cascade: 0 eV /n ---> 4 GeV/n
Model: FTFP: 2 GeV/n ---> 100 TeV/n
@@ -788,9 +803,9 @@ CoulombScat: for pi-, integral: 1 SubType= 1 BuildTable= 1
******************************************
Internal Real Elapsed Time is: 0.03
Internal Real Elapsed Time is: 0.02
Internal System Elapsed Time: 0
Internal GetUserElapsed Time: 0.02
Internal GetUserElapsed Time: 0.01
******************************************
------ ExGflashEventAction::End of event nr. 0 -----
11918 hits are stored in ExGflashHitsCollection
@@ -802,9 +817,9 @@ Internal GetUserElapsed Time: 0.02
******************************************
Internal Real Elapsed Time is: 0.02
Internal Real Elapsed Time is: 0.01
Internal System Elapsed Time: 0
Internal GetUserElapsed Time: 0.02
Internal GetUserElapsed Time: 0.01
******************************************
------ ExGflashEventAction::End of event nr. 1 -----
11927 hits are stored in ExGflashHitsCollection
@@ -816,9 +831,9 @@ Internal GetUserElapsed Time: 0.02
******************************************
Internal Real Elapsed Time is: 0.02
Internal Real Elapsed Time is: 0.01
Internal System Elapsed Time: 0
Internal GetUserElapsed Time: 0.02
Internal GetUserElapsed Time: 0.01
******************************************
------ ExGflashEventAction::End of event nr. 2 -----
11980 hits are stored in ExGflashHitsCollection
@@ -830,9 +845,9 @@ Internal GetUserElapsed Time: 0.02
******************************************
Internal Real Elapsed Time is: 0.02
Internal Real Elapsed Time is: 0
Internal System Elapsed Time: 0
Internal GetUserElapsed Time: 0.02
Internal GetUserElapsed Time: 0
******************************************
------ ExGflashEventAction::End of event nr. 3 -----
11976 hits are stored in ExGflashHitsCollection
@@ -844,9 +859,9 @@ Internal GetUserElapsed Time: 0.02
******************************************
Internal Real Elapsed Time is: 0.02
Internal Real Elapsed Time is: 0.01
Internal System Elapsed Time: 0
Internal GetUserElapsed Time: 0.01
Internal GetUserElapsed Time: 0
******************************************
------ ExGflashEventAction::End of event nr. 4 -----
11925 hits are stored in ExGflashHitsCollection
@@ -858,7 +873,7 @@ Internal GetUserElapsed Time: 0.01
******************************************
Internal Real Elapsed Time is: 0.02
Internal Real Elapsed Time is: 0.01
Internal System Elapsed Time: 0
Internal GetUserElapsed Time: 0.01
******************************************
@@ -886,9 +901,9 @@ Internal GetUserElapsed Time: 0.02
******************************************
Internal Real Elapsed Time is: 0.02
Internal Real Elapsed Time is: 0
Internal System Elapsed Time: 0
Internal GetUserElapsed Time: 0.02
Internal GetUserElapsed Time: 0.01
******************************************
------ ExGflashEventAction::End of event nr. 7 -----
11976 hits are stored in ExGflashHitsCollection
@@ -900,7 +915,7 @@ Internal GetUserElapsed Time: 0.02
******************************************
Internal Real Elapsed Time is: 0.02
Internal Real Elapsed Time is: 0
Internal System Elapsed Time: 0
Internal GetUserElapsed Time: 0.01
******************************************
@@ -914,9 +929,9 @@ Internal GetUserElapsed Time: 0.01
******************************************
Internal Real Elapsed Time is: 0.02
Internal Real Elapsed Time is: 0.01
Internal System Elapsed Time: 0
Internal GetUserElapsed Time: 0.01
Internal GetUserElapsed Time: 0
******************************************
------ ExGflashEventAction::End of event nr. 9 -----
11961 hits are stored in ExGflashHitsCollection
@@ -926,10 +941,10 @@ Internal GetUserElapsed Time: 0.01
number of event = 10
Graphics systems deleted.
Visualization Manager deleting...
Internal Real Elapsed Time /event is: 0.0233333
Internal Real Elapsed Time /event is: 0.01
******************************************
Total Real Elapsed Time is: 1.64
Total Real Elapsed Time is: 1.07
Total System Elapsed Time: 0.03
Total GetUserElapsed Time: 1.6
Total GetUserElapsed Time: 1.02
******************************************