punch-through study

This commit is contained in:
James Szalkie 2026-07-17 16:10:00 -04:00
parent f3882bc313
commit d6e72f1cc7
23 changed files with 10714 additions and 10252 deletions

Binary file not shown.

View File

@ -296,7 +296,6 @@ CMakeFiles/AnasenG4.dir/src/ActionInitialization.cc.o
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Vector/ThreeVector.icc /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Vector/ThreeVector.icc
/home/jamesszalkie/anasen/Armory/AnasenG4/include/BeamReactionSteppingAction.hh /home/jamesszalkie/anasen/Armory/AnasenG4/include/BeamReactionSteppingAction.hh
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4UserSteppingAction.hh /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4UserSteppingAction.hh
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4String.hh
/home/jamesszalkie/anasen/Armory/AnasenG4/include/RunAction.hh /home/jamesszalkie/anasen/Armory/AnasenG4/include/RunAction.hh
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4UserRunAction.hh /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4UserRunAction.hh
@ -305,7 +304,9 @@ CMakeFiles/AnasenG4.dir/src/BeamReactionSteppingAction.cc.o
/usr/include/stdc-predef.h /usr/include/stdc-predef.h
/home/jamesszalkie/anasen/Armory/AnasenG4/include/BeamReactionSteppingAction.hh /home/jamesszalkie/anasen/Armory/AnasenG4/include/BeamReactionSteppingAction.hh
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4UserSteppingAction.hh /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4UserSteppingAction.hh
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4String.hh /home/jamesszalkie/anasen/Armory/AnasenG4/include/BeamConfig.hh
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/globals.hh
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4ios.hh
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4Types.hh /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4Types.hh
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4GlobalConfig.hh /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4GlobalConfig.hh
/usr/include/c++/11/complex /usr/include/c++/11/complex
@ -514,6 +515,7 @@ CMakeFiles/AnasenG4.dir/src/BeamReactionSteppingAction.cc.o
/usr/include/c++/11/bits/istream.tcc /usr/include/c++/11/bits/istream.tcc
/usr/include/c++/11/bits/sstream.tcc /usr/include/c++/11/bits/sstream.tcc
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/tls.hh /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/tls.hh
/usr/include/c++/11/iostream
/usr/include/c++/11/algorithm /usr/include/c++/11/algorithm
/usr/include/c++/11/utility /usr/include/c++/11/utility
/usr/include/c++/11/bits/stl_relops.h /usr/include/c++/11/bits/stl_relops.h
@ -544,16 +546,11 @@ CMakeFiles/AnasenG4.dir/src/BeamReactionSteppingAction.cc.o
/usr/include/c++/11/bits/stl_bvector.h /usr/include/c++/11/bits/stl_bvector.h
/usr/include/c++/11/bits/vector.tcc /usr/include/c++/11/bits/vector.tcc
/usr/include/c++/11/pstl/execution_defs.h /usr/include/c++/11/pstl/execution_defs.h
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4String.hh
/usr/include/c++/11/cstring /usr/include/c++/11/cstring
/usr/include/string.h /usr/include/string.h
/usr/include/strings.h /usr/include/strings.h
/usr/include/c++/11/iostream
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4String.icc /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4String.icc
/home/jamesszalkie/anasen/Armory/AnasenG4/include/ReactionGenerator.hh
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4ThreeVector.hh
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/globals.hh
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4ios.hh
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4String.hh
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/templates.hh /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/templates.hh
/usr/include/c++/11/climits /usr/include/c++/11/climits
/usr/lib/gcc/x86_64-linux-gnu/11/include/limits.h /usr/lib/gcc/x86_64-linux-gnu/11/include/limits.h
@ -590,6 +587,11 @@ CMakeFiles/AnasenG4.dir/src/BeamReactionSteppingAction.cc.o
/usr/include/c++/11/bits/parse_numbers.h /usr/include/c++/11/bits/parse_numbers.h
/usr/include/c++/11/bits/std_mutex.h /usr/include/c++/11/bits/std_mutex.h
/usr/include/c++/11/bits/unique_lock.h /usr/include/c++/11/bits/unique_lock.h
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4SystemOfUnits.hh
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Units/SystemOfUnits.h
/home/jamesszalkie/anasen/Armory/AnasenG4/include/ReactionGenerator.hh
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4ThreeVector.hh
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/globals.hh
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Vector/ThreeVector.h /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Vector/ThreeVector.h
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Utility/defs.h /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Utility/defs.h
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Vector/ThreeVector.icc /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Vector/ThreeVector.icc
@ -609,7 +611,6 @@ CMakeFiles/AnasenG4.dir/src/BeamReactionSteppingAction.cc.o
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Vector/RotationX.h /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Vector/RotationX.h
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Vector/RotationX.icc /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Vector/RotationX.icc
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Units/PhysicalConstants.h /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Units/PhysicalConstants.h
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Units/SystemOfUnits.h
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Vector/RotationY.h /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Vector/RotationY.h
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Vector/RotationY.icc /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Vector/RotationY.icc
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Vector/RotationZ.h /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Vector/RotationZ.h
@ -860,7 +861,6 @@ CMakeFiles/AnasenG4.dir/src/BeamReactionSteppingAction.cc.o
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4Proton.hh /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4Proton.hh
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4Ions.hh /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4Ions.hh
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4Alpha.hh /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4Alpha.hh
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4SystemOfUnits.hh
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4RandomTools.hh /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4RandomTools.hh
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4RandomDirection.hh /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4RandomDirection.hh
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4TwoVector.hh /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4TwoVector.hh
@ -2737,6 +2737,10 @@ CMakeFiles/AnasenG4.dir/src/PrimaryGeneratorAction.cc.o
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Vector/ThreeVector.h /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Vector/ThreeVector.h
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Utility/defs.h /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Utility/defs.h
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Vector/ThreeVector.icc /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Vector/ThreeVector.icc
/home/jamesszalkie/anasen/Armory/AnasenG4/include/BeamConfig.hh
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/globals.hh
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4SystemOfUnits.hh
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Units/SystemOfUnits.h
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4ParticleGun.hh /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4ParticleGun.hh
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4VPrimaryGenerator.hh /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4VPrimaryGenerator.hh
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4ThreeVector.hh /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4ThreeVector.hh
@ -2760,7 +2764,6 @@ CMakeFiles/AnasenG4.dir/src/PrimaryGeneratorAction.cc.o
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/pwdefs.hh /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/pwdefs.hh
/usr/include/c++/11/stdlib.h /usr/include/c++/11/stdlib.h
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Units/PhysicalConstants.h /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Units/PhysicalConstants.h
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Units/SystemOfUnits.h
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4ParticleDefinition.icc /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4ParticleDefinition.icc
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4PrimaryVertex.hh /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4PrimaryVertex.hh
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4Allocator.hh /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4Allocator.hh
@ -2775,7 +2778,6 @@ CMakeFiles/AnasenG4.dir/src/PrimaryGeneratorAction.cc.o
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4Ions.hh /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4Ions.hh
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4ParticleTable.hh /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4ParticleTable.hh
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4Proton.hh /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4Proton.hh
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4SystemOfUnits.hh
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4Event.hh /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4Event.hh
/usr/include/c++/11/set /usr/include/c++/11/set
/usr/include/c++/11/bits/stl_set.h /usr/include/c++/11/bits/stl_set.h
@ -3150,6 +3152,10 @@ CMakeFiles/AnasenG4.dir/src/ReactionGenerator.cc.o
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Vector/ThreeVector.h /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Vector/ThreeVector.h
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Utility/defs.h /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Utility/defs.h
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Vector/ThreeVector.icc /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Vector/ThreeVector.icc
/home/jamesszalkie/anasen/Armory/AnasenG4/include/BeamConfig.hh
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/globals.hh
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4SystemOfUnits.hh
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Units/SystemOfUnits.h
/home/jamesszalkie/anasen/Armory/ClassTransfer.h /home/jamesszalkie/anasen/Armory/ClassTransfer.h
/opt/root-6.36.06/include/TBenchmark.h /opt/root-6.36.06/include/TBenchmark.h
/opt/root-6.36.06/include/TNamed.h /opt/root-6.36.06/include/TNamed.h
@ -3302,8 +3308,6 @@ CMakeFiles/AnasenG4.dir/src/ReactionGenerator.cc.o
/home/jamesszalkie/anasen/Armory/Isotope.h /home/jamesszalkie/anasen/Armory/Isotope.h
/usr/include/c++/11/stdlib.h /usr/include/c++/11/stdlib.h
/home/jamesszalkie/anasen/Armory/constant.h /home/jamesszalkie/anasen/Armory/constant.h
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4SystemOfUnits.hh
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Units/SystemOfUnits.h
CMakeFiles/AnasenG4.dir/src/RunAction.cc.o CMakeFiles/AnasenG4.dir/src/RunAction.cc.o
/home/jamesszalkie/anasen/Armory/AnasenG4/src/RunAction.cc /home/jamesszalkie/anasen/Armory/AnasenG4/src/RunAction.cc

View File

@ -295,7 +295,6 @@ CMakeFiles/AnasenG4.dir/src/ActionInitialization.cc.o: ../src/ActionInitializati
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Vector/ThreeVector.icc \ /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Vector/ThreeVector.icc \
../include/BeamReactionSteppingAction.hh \ ../include/BeamReactionSteppingAction.hh \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4UserSteppingAction.hh \ /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4UserSteppingAction.hh \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4String.hh \
../include/RunAction.hh \ ../include/RunAction.hh \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4UserRunAction.hh /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4UserRunAction.hh
@ -303,7 +302,9 @@ CMakeFiles/AnasenG4.dir/src/BeamReactionSteppingAction.cc.o: ../src/BeamReaction
/usr/include/stdc-predef.h \ /usr/include/stdc-predef.h \
../include/BeamReactionSteppingAction.hh \ ../include/BeamReactionSteppingAction.hh \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4UserSteppingAction.hh \ /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4UserSteppingAction.hh \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4String.hh \ ../include/BeamConfig.hh \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/globals.hh \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4ios.hh \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4Types.hh \ /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4Types.hh \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4GlobalConfig.hh \ /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4GlobalConfig.hh \
/usr/include/c++/11/complex \ /usr/include/c++/11/complex \
@ -512,6 +513,7 @@ CMakeFiles/AnasenG4.dir/src/BeamReactionSteppingAction.cc.o: ../src/BeamReaction
/usr/include/c++/11/bits/istream.tcc \ /usr/include/c++/11/bits/istream.tcc \
/usr/include/c++/11/bits/sstream.tcc \ /usr/include/c++/11/bits/sstream.tcc \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/tls.hh \ /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/tls.hh \
/usr/include/c++/11/iostream \
/usr/include/c++/11/algorithm \ /usr/include/c++/11/algorithm \
/usr/include/c++/11/utility \ /usr/include/c++/11/utility \
/usr/include/c++/11/bits/stl_relops.h \ /usr/include/c++/11/bits/stl_relops.h \
@ -542,16 +544,11 @@ CMakeFiles/AnasenG4.dir/src/BeamReactionSteppingAction.cc.o: ../src/BeamReaction
/usr/include/c++/11/bits/stl_bvector.h \ /usr/include/c++/11/bits/stl_bvector.h \
/usr/include/c++/11/bits/vector.tcc \ /usr/include/c++/11/bits/vector.tcc \
/usr/include/c++/11/pstl/execution_defs.h \ /usr/include/c++/11/pstl/execution_defs.h \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4String.hh \
/usr/include/c++/11/cstring \ /usr/include/c++/11/cstring \
/usr/include/string.h \ /usr/include/string.h \
/usr/include/strings.h \ /usr/include/strings.h \
/usr/include/c++/11/iostream \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4String.icc \ /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4String.icc \
../include/ReactionGenerator.hh \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4ThreeVector.hh \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/globals.hh \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4ios.hh \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4String.hh \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/templates.hh \ /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/templates.hh \
/usr/include/c++/11/climits \ /usr/include/c++/11/climits \
/usr/lib/gcc/x86_64-linux-gnu/11/include/limits.h \ /usr/lib/gcc/x86_64-linux-gnu/11/include/limits.h \
@ -588,6 +585,11 @@ CMakeFiles/AnasenG4.dir/src/BeamReactionSteppingAction.cc.o: ../src/BeamReaction
/usr/include/c++/11/bits/parse_numbers.h \ /usr/include/c++/11/bits/parse_numbers.h \
/usr/include/c++/11/bits/std_mutex.h \ /usr/include/c++/11/bits/std_mutex.h \
/usr/include/c++/11/bits/unique_lock.h \ /usr/include/c++/11/bits/unique_lock.h \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4SystemOfUnits.hh \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Units/SystemOfUnits.h \
../include/ReactionGenerator.hh \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4ThreeVector.hh \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/globals.hh \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Vector/ThreeVector.h \ /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Vector/ThreeVector.h \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Utility/defs.h \ /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Utility/defs.h \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Vector/ThreeVector.icc \ /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Vector/ThreeVector.icc \
@ -607,7 +609,6 @@ CMakeFiles/AnasenG4.dir/src/BeamReactionSteppingAction.cc.o: ../src/BeamReaction
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Vector/RotationX.h \ /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Vector/RotationX.h \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Vector/RotationX.icc \ /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Vector/RotationX.icc \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Units/PhysicalConstants.h \ /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Units/PhysicalConstants.h \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Units/SystemOfUnits.h \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Vector/RotationY.h \ /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Vector/RotationY.h \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Vector/RotationY.icc \ /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Vector/RotationY.icc \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Vector/RotationZ.h \ /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Vector/RotationZ.h \
@ -858,7 +859,6 @@ CMakeFiles/AnasenG4.dir/src/BeamReactionSteppingAction.cc.o: ../src/BeamReaction
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4Proton.hh \ /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4Proton.hh \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4Ions.hh \ /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4Ions.hh \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4Alpha.hh \ /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4Alpha.hh \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4SystemOfUnits.hh \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4RandomTools.hh \ /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4RandomTools.hh \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4RandomDirection.hh \ /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4RandomDirection.hh \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4TwoVector.hh \ /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4TwoVector.hh \
@ -2731,6 +2731,10 @@ CMakeFiles/AnasenG4.dir/src/PrimaryGeneratorAction.cc.o: ../src/PrimaryGenerator
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Vector/ThreeVector.h \ /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Vector/ThreeVector.h \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Utility/defs.h \ /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Utility/defs.h \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Vector/ThreeVector.icc \ /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Vector/ThreeVector.icc \
../include/BeamConfig.hh \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/globals.hh \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4SystemOfUnits.hh \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Units/SystemOfUnits.h \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4ParticleGun.hh \ /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4ParticleGun.hh \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4VPrimaryGenerator.hh \ /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4VPrimaryGenerator.hh \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4ThreeVector.hh \ /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4ThreeVector.hh \
@ -2754,7 +2758,6 @@ CMakeFiles/AnasenG4.dir/src/PrimaryGeneratorAction.cc.o: ../src/PrimaryGenerator
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/pwdefs.hh \ /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/pwdefs.hh \
/usr/include/c++/11/stdlib.h \ /usr/include/c++/11/stdlib.h \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Units/PhysicalConstants.h \ /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Units/PhysicalConstants.h \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Units/SystemOfUnits.h \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4ParticleDefinition.icc \ /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4ParticleDefinition.icc \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4PrimaryVertex.hh \ /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4PrimaryVertex.hh \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4Allocator.hh \ /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4Allocator.hh \
@ -2769,7 +2772,6 @@ CMakeFiles/AnasenG4.dir/src/PrimaryGeneratorAction.cc.o: ../src/PrimaryGenerator
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4Ions.hh \ /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4Ions.hh \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4ParticleTable.hh \ /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4ParticleTable.hh \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4Proton.hh \ /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4Proton.hh \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4SystemOfUnits.hh \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4Event.hh \ /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4Event.hh \
/usr/include/c++/11/set \ /usr/include/c++/11/set \
/usr/include/c++/11/bits/stl_set.h \ /usr/include/c++/11/bits/stl_set.h \
@ -3143,6 +3145,10 @@ CMakeFiles/AnasenG4.dir/src/ReactionGenerator.cc.o: ../src/ReactionGenerator.cc
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Vector/ThreeVector.h \ /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Vector/ThreeVector.h \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Utility/defs.h \ /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Utility/defs.h \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Vector/ThreeVector.icc \ /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Vector/ThreeVector.icc \
../include/BeamConfig.hh \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/globals.hh \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4SystemOfUnits.hh \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Units/SystemOfUnits.h \
/home/jamesszalkie/anasen/Armory/ClassTransfer.h \ /home/jamesszalkie/anasen/Armory/ClassTransfer.h \
/opt/root-6.36.06/include/TBenchmark.h \ /opt/root-6.36.06/include/TBenchmark.h \
/opt/root-6.36.06/include/TNamed.h \ /opt/root-6.36.06/include/TNamed.h \
@ -3294,9 +3300,7 @@ CMakeFiles/AnasenG4.dir/src/ReactionGenerator.cc.o: ../src/ReactionGenerator.cc
/usr/include/c++/11/bits/fstream.tcc \ /usr/include/c++/11/bits/fstream.tcc \
/home/jamesszalkie/anasen/Armory/Isotope.h \ /home/jamesszalkie/anasen/Armory/Isotope.h \
/usr/include/c++/11/stdlib.h \ /usr/include/c++/11/stdlib.h \
/home/jamesszalkie/anasen/Armory/constant.h \ /home/jamesszalkie/anasen/Armory/constant.h
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4SystemOfUnits.hh \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Units/SystemOfUnits.h
CMakeFiles/AnasenG4.dir/src/RunAction.cc.o: ../src/RunAction.cc \ CMakeFiles/AnasenG4.dir/src/RunAction.cc.o: ../src/RunAction.cc \
/usr/include/stdc-predef.h \ /usr/include/stdc-predef.h \
@ -5553,6 +5557,12 @@ CMakeFiles/AnasenG4.dir/src/main.cc.o: ../src/main.cc \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4ProcessManager.hh: /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4ProcessManager.hh:
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4ProcessType.hh:
/opt/root-6.36.06/include/TRandom.h:
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4ParticleChange.icc:
/usr/lib/gcc/x86_64-linux-gnu/11/include/limits.h: /usr/lib/gcc/x86_64-linux-gnu/11/include/limits.h:
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4CacheDetails.hh: /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4CacheDetails.hh:
@ -5745,8 +5755,6 @@ CMakeFiles/AnasenG4.dir/src/main.cc.o: ../src/main.cc \
/usr/include/c++/11/bits/memoryfwd.h: /usr/include/c++/11/bits/memoryfwd.h:
/usr/include/c++/11/ext/alloc_traits.h:
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4TwoVector.hh: /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4TwoVector.hh:
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Geometry/Normal3D.h: /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Geometry/Normal3D.h:
@ -5835,6 +5843,10 @@ CMakeFiles/AnasenG4.dir/src/main.cc.o: ../src/main.cc \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/templates.hh: /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/templates.hh:
/usr/include/c++/11/ext/alloc_traits.h:
../include/BeamConfig.hh:
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4Exp.hh: /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4Exp.hh:
/usr/include/c++/11/bits/nested_exception.h: /usr/include/c++/11/bits/nested_exception.h:
@ -5855,10 +5867,6 @@ CMakeFiles/AnasenG4.dir/src/main.cc.o: ../src/main.cc \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4Allocator.hh: /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4Allocator.hh:
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4SystemOfUnits.hh:
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Random/RandGaussQ.icc:
/usr/include/c++/11/bits/regex_scanner.h: /usr/include/c++/11/bits/regex_scanner.h:
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4ParticleGun.hh: /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4ParticleGun.hh:
@ -6471,6 +6479,10 @@ CMakeFiles/AnasenG4.dir/src/main.cc.o: ../src/main.cc \
../src/BeamReactionSteppingAction.cc: ../src/BeamReactionSteppingAction.cc:
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/CLHEP/Random/RandGaussQ.icc:
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4SystemOfUnits.hh:
../include/ReactionGenerator.hh: ../include/ReactionGenerator.hh:
/usr/include/x86_64-linux-gnu/bits/types/__FILE.h: /usr/include/x86_64-linux-gnu/bits/types/__FILE.h:
@ -6563,8 +6575,6 @@ CMakeFiles/AnasenG4.dir/src/main.cc.o: ../src/main.cc \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4SteppingControl.hh: /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4SteppingControl.hh:
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4ProcessType.hh:
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4AllocatorPool.hh: /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4AllocatorPool.hh:
/usr/include/c++/11/bits/hashtable_policy.h: /usr/include/c++/11/bits/hashtable_policy.h:
@ -6952,7 +6962,3 @@ CMakeFiles/AnasenG4.dir/src/main.cc.o: ../src/main.cc \
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4Profiler.icc: /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4Profiler.icc:
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4ForceCondition.hh: /home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4ForceCondition.hh:
/opt/root-6.36.06/include/TRandom.h:
/home/jamesszalkie/geant4_installation/geant4-install/include/Geant4/G4ParticleChange.icc:

View File

@ -0,0 +1,17 @@
#ifndef BeamConfig_h
#define BeamConfig_h 1
#include "globals.hh"
#include "G4SystemOfUnits.hh"
namespace BeamConfig {
inline constexpr G4int kAtomicNumber = 13;
inline constexpr G4int kAtomicMass = 27;
inline constexpr G4double kRadius = 5.0 * mm;
inline constexpr G4double kStartZ = -190.0 * mm;
inline constexpr G4double kTotalBeamEnergy = 72.0 * MeV;
inline constexpr G4double kEnergyPerU = kTotalBeamEnergy / kAtomicMass; // Approximately 2.67 MeV/u for 27Al
inline constexpr char kTargetVolumeName[] = "Target";
} // namespace BeamConfig
#endif

View File

@ -2,7 +2,6 @@
#define BeamReactionSteppingAction_h 1 #define BeamReactionSteppingAction_h 1
#include "G4UserSteppingAction.hh" #include "G4UserSteppingAction.hh"
#include "G4String.hh"
class G4Step; class G4Step;
class ReactionGenerator; class ReactionGenerator;
@ -17,9 +16,6 @@ class BeamReactionSteppingAction : public G4UserSteppingAction
private: private:
ReactionGenerator* fReaction; ReactionGenerator* fReaction;
G4String fTargetVolumeName;
G4int fBeamZ;
G4int fBeamA;
}; };
#endif #endif

View File

@ -25,6 +25,7 @@ class HitOutputManager
const std::string& particleType, const std::string& particleType,
double kineticEnergy, double kineticEnergy,
double energyDeposit, double energyDeposit,
double wireDeltaESinTheta,
const std::string& detectorType, const std::string& detectorType,
int detectorId, int detectorId,
int anodeId, int anodeId,
@ -54,6 +55,7 @@ class HitOutputManager
int fCathodeId; int fCathodeId;
double fKineticEnergy; double fKineticEnergy;
double fEnergyDeposit; double fEnergyDeposit;
double fWireDeltaESinTheta;
double fAnodeEnergy; double fAnodeEnergy;
double fCathodeEnergy; double fCathodeEnergy;
double fWireDeltaE; double fWireDeltaE;
@ -69,6 +71,7 @@ class HitOutputManager
TH1D* fKineticEnergyHist; TH1D* fKineticEnergyHist;
TH1D* fEnergyDepositHist; TH1D* fEnergyDepositHist;
TH1D* fWireDeltaEHist; TH1D* fWireDeltaEHist;
TH2D* fWireDeltaESinThetaVsDetEHist;
TH1D* fHitZHist; TH1D* fHitZHist;
TH1D* fVertexZHist; TH1D* fVertexZHist;
TH1D* fDetectorIdHist; TH1D* fDetectorIdHist;

View File

@ -19,7 +19,6 @@ class PrimaryGeneratorAction : public G4VUserPrimaryGeneratorAction
G4ParticleGun* fParticleGun; G4ParticleGun* fParticleGun;
G4double fBeamRadius; G4double fBeamRadius;
G4double fBeamStartZ; G4double fBeamStartZ;
G4double fBeamEnergyPerU;
}; };
#endif #endif

View File

@ -10,4 +10,5 @@
/vis/filtering/trajectories/particleFilter-0/add e+ /vis/filtering/trajectories/particleFilter-0/add e+
/vis/filtering/trajectories/particleFilter-0/invert true /vis/filtering/trajectories/particleFilter-0/invert true
/run/beamOn 1000 /run/beamOn 1000000
#/run/beamOn 1000

View File

@ -1,5 +1,7 @@
#include "BeamReactionSteppingAction.hh" #include "BeamReactionSteppingAction.hh"
#include "BeamConfig.hh"
#include "ReactionGenerator.hh" #include "ReactionGenerator.hh"
#include "WireTrackingManager.hh" #include "WireTrackingManager.hh"
@ -18,10 +20,7 @@
BeamReactionSteppingAction::BeamReactionSteppingAction() BeamReactionSteppingAction::BeamReactionSteppingAction()
: G4UserSteppingAction(), : G4UserSteppingAction(),
fReaction(new ReactionGenerator()), fReaction(new ReactionGenerator())
fTargetVolumeName("Target"),
fBeamZ(13),
fBeamA(27)
{} {}
BeamReactionSteppingAction::~BeamReactionSteppingAction() BeamReactionSteppingAction::~BeamReactionSteppingAction()
@ -43,7 +42,8 @@ void BeamReactionSteppingAction::UserSteppingAction(const G4Step* step)
return; return;
} }
if (particle->GetAtomicNumber() != fBeamZ || particle->GetAtomicMass() != fBeamA) { if (particle->GetAtomicNumber() != BeamConfig::kAtomicNumber ||
particle->GetAtomicMass() != BeamConfig::kAtomicMass) {
return; return;
} }
@ -52,7 +52,7 @@ void BeamReactionSteppingAction::UserSteppingAction(const G4Step* step)
return; return;
} }
if (prePoint->GetPhysicalVolume()->GetName() != fTargetVolumeName) { if (prePoint->GetPhysicalVolume()->GetName() != BeamConfig::kTargetVolumeName) {
return; return;
} }

View File

@ -10,6 +10,7 @@
#include "G4VPhysicalVolume.hh" #include "G4VPhysicalVolume.hh"
#include "G4StepPoint.hh" #include "G4StepPoint.hh"
#include <cmath>
#include <string> #include <string>
namespace { namespace {
@ -81,10 +82,15 @@ G4bool DetectorSensitiveDetector::ProcessHits(G4Step* step, G4TouchableHistory*)
wireInfo = WireTrackingManager::Instance().InferFromTrackGeometry(step->GetTrack(), preStepPoint); wireInfo = WireTrackingManager::Instance().InferFromTrackGeometry(step->GetTrack(), preStepPoint);
} }
const G4ThreeVector trackDirection = step->GetTrack()->GetMomentumDirection();
const double sinThetaZ = std::sin(trackDirection.theta());
const double wireDeltaESinTheta = wireInfo.deltaE * sinThetaZ;
HitOutputManager::Instance().RecordHit(currentEvent->GetEventID(), HitOutputManager::Instance().RecordHit(currentEvent->GetEventID(),
particleName, particleName,
kineticEnergy, kineticEnergy,
energyDeposit, energyDeposit,
wireDeltaESinTheta,
detectorType, detectorType,
volume->GetCopyNo(), volume->GetCopyNo(),
wireInfo.anodeId, wireInfo.anodeId,

View File

@ -28,6 +28,7 @@ HitOutputManager::HitOutputManager()
fCathodeId(-1), fCathodeId(-1),
fKineticEnergy(0.0), fKineticEnergy(0.0),
fEnergyDeposit(0.0), fEnergyDeposit(0.0),
fWireDeltaESinTheta(0.0),
fAnodeEnergy(0.0), fAnodeEnergy(0.0),
fCathodeEnergy(0.0), fCathodeEnergy(0.0),
fWireDeltaE(0.0), fWireDeltaE(0.0),
@ -40,6 +41,7 @@ HitOutputManager::HitOutputManager()
fKineticEnergyHist(nullptr), fKineticEnergyHist(nullptr),
fEnergyDepositHist(nullptr), fEnergyDepositHist(nullptr),
fWireDeltaEHist(nullptr), fWireDeltaEHist(nullptr),
fWireDeltaESinThetaVsDetEHist(nullptr),
fHitZHist(nullptr), fHitZHist(nullptr),
fVertexZHist(nullptr), fVertexZHist(nullptr),
fDetectorIdHist(nullptr), fDetectorIdHist(nullptr),
@ -65,6 +67,7 @@ void HitOutputManager::Open()
fTree->Branch("particleType", fParticleType, "particleType/C"); fTree->Branch("particleType", fParticleType, "particleType/C");
fTree->Branch("kineticEnergy", &fKineticEnergy, "kineticEnergy/D"); fTree->Branch("kineticEnergy", &fKineticEnergy, "kineticEnergy/D");
fTree->Branch("energyDeposit", &fEnergyDeposit, "energyDeposit/D"); fTree->Branch("energyDeposit", &fEnergyDeposit, "energyDeposit/D");
fTree->Branch("wireDeltaESinTheta", &fWireDeltaESinTheta, "wireDeltaESinTheta/D");
fTree->Branch("detectorType", fDetectorType, "detectorType/C"); fTree->Branch("detectorType", fDetectorType, "detectorType/C");
fTree->Branch("detectorID", &fDetectorId, "detectorID/I"); fTree->Branch("detectorID", &fDetectorId, "detectorID/I");
fTree->Branch("anodeID", &fAnodeId, "anodeID/I"); fTree->Branch("anodeID", &fAnodeId, "anodeID/I");
@ -83,6 +86,15 @@ void HitOutputManager::Open()
fKineticEnergyHist = new TH1D("hKineticEnergy", "Hit kinetic energy;Kinetic energy [MeV];Counts", 200, 0.0, 200.0); fKineticEnergyHist = new TH1D("hKineticEnergy", "Hit kinetic energy;Kinetic energy [MeV];Counts", 200, 0.0, 200.0);
fEnergyDepositHist = new TH1D("hEnergyDeposit", "Step energy deposit;Energy deposit [MeV];Counts", 200, 0.0, 50.0); fEnergyDepositHist = new TH1D("hEnergyDeposit", "Step energy deposit;Energy deposit [MeV];Counts", 200, 0.0, 50.0);
fWireDeltaEHist = new TH1D("hWireDeltaE", "Energy loss between anode and cathode crossings;#DeltaE [MeV];Counts", 200, 0.0, 20.0); fWireDeltaEHist = new TH1D("hWireDeltaE", "Energy loss between anode and cathode crossings;#DeltaE [MeV];Counts", 200, 0.0, 20.0);
fWireDeltaESinThetaVsDetEHist =
new TH2D("hWireDeltaESinThetaVsDetE",
"PC #DeltaE #times sin(#theta_{z}) vs detector deposited energy;Detector deposited energy [MeV];#DeltaE_{PC} #times sin(#theta_{z}) [MeV]",
200,
0.0,
14.0,
200,
0.0,
20.0);
fHitZHist = new TH1D("hHitZ", "Hit z position;z [mm];Counts", 200, -200.0, 200.0); fHitZHist = new TH1D("hHitZ", "Hit z position;z [mm];Counts", 200, -200.0, 200.0);
fVertexZHist = new TH1D("hVertexZ", "Track vertex z position;z_{vertex} [mm];Counts", 200, -250.0, 250.0); fVertexZHist = new TH1D("hVertexZ", "Track vertex z position;z_{vertex} [mm];Counts", 200, -250.0, 250.0);
fDetectorIdHist = new TH1D("hDetectorID", "Detector ID occupancy;Detector ID;Counts", 64, -0.5, 63.5); fDetectorIdHist = new TH1D("hDetectorID", "Detector ID occupancy;Detector ID;Counts", 64, -0.5, 63.5);
@ -90,7 +102,7 @@ void HitOutputManager::Open()
fVertexXYHist = new TH2D("hVertexXY", "Track vertex position;x_{vertex} [mm];y_{vertex} [mm]", 200, -200.0, 200.0, 200, -200.0, 200.0); fVertexXYHist = new TH2D("hVertexXY", "Track vertex position;x_{vertex} [mm];y_{vertex} [mm]", 200, -200.0, 200.0, 200, -200.0, 200.0);
fTextFile.open(kTextOutputName, std::ios::out | std::ios::trunc); fTextFile.open(kTextOutputName, std::ios::out | std::ios::trunc);
fTextFile << "eventID,particleType,kineticEnergy,energyDeposit,detectorType,detectorID,anodeID,cathodeID,anodeEnergy,cathodeEnergy,wireDeltaE,volumeName,x,y,z,vertexX,vertexY,vertexZ\n"; fTextFile << "eventID,particleType,kineticEnergy,energyDeposit,wireDeltaESinTheta,detectorType,detectorID,anodeID,cathodeID,anodeEnergy,cathodeEnergy,wireDeltaE,volumeName,x,y,z,vertexX,vertexY,vertexZ\n";
} }
void HitOutputManager::Close() void HitOutputManager::Close()
@ -109,6 +121,9 @@ void HitOutputManager::Close()
if (fWireDeltaEHist != nullptr) { if (fWireDeltaEHist != nullptr) {
fWireDeltaEHist->Write("", TObject::kOverwrite); fWireDeltaEHist->Write("", TObject::kOverwrite);
} }
if (fWireDeltaESinThetaVsDetEHist != nullptr) {
fWireDeltaESinThetaVsDetEHist->Write("", TObject::kOverwrite);
}
if (fHitZHist != nullptr) { if (fHitZHist != nullptr) {
fHitZHist->Write("", TObject::kOverwrite); fHitZHist->Write("", TObject::kOverwrite);
} }
@ -131,6 +146,7 @@ void HitOutputManager::Close()
fKineticEnergyHist = nullptr; fKineticEnergyHist = nullptr;
fEnergyDepositHist = nullptr; fEnergyDepositHist = nullptr;
fWireDeltaEHist = nullptr; fWireDeltaEHist = nullptr;
fWireDeltaESinThetaVsDetEHist = nullptr;
fHitZHist = nullptr; fHitZHist = nullptr;
fVertexZHist = nullptr; fVertexZHist = nullptr;
fDetectorIdHist = nullptr; fDetectorIdHist = nullptr;
@ -166,6 +182,7 @@ void HitOutputManager::RecordHit(int eventId,
const std::string& particleType, const std::string& particleType,
double kineticEnergy, double kineticEnergy,
double energyDeposit, double energyDeposit,
double wireDeltaESinTheta,
const std::string& detectorType, const std::string& detectorType,
int detectorId, int detectorId,
int anodeId, int anodeId,
@ -189,6 +206,7 @@ void HitOutputManager::RecordHit(int eventId,
fCathodeId = cathodeId; fCathodeId = cathodeId;
fKineticEnergy = kineticEnergy; fKineticEnergy = kineticEnergy;
fEnergyDeposit = energyDeposit; fEnergyDeposit = energyDeposit;
fWireDeltaESinTheta = wireDeltaESinTheta;
fAnodeEnergy = anodeEnergy; fAnodeEnergy = anodeEnergy;
fCathodeEnergy = cathodeEnergy; fCathodeEnergy = cathodeEnergy;
fWireDeltaE = wireDeltaE; fWireDeltaE = wireDeltaE;
@ -213,6 +231,9 @@ void HitOutputManager::RecordHit(int eventId,
if (fWireDeltaEHist != nullptr && fAnodeId >= 0 && fCathodeId >= 0) { if (fWireDeltaEHist != nullptr && fAnodeId >= 0 && fCathodeId >= 0) {
fWireDeltaEHist->Fill(fWireDeltaE); fWireDeltaEHist->Fill(fWireDeltaE);
} }
if (fWireDeltaESinThetaVsDetEHist != nullptr && fAnodeId >= 0 && fCathodeId >= 0) {
fWireDeltaESinThetaVsDetEHist->Fill(fEnergyDeposit, 100.0 * fWireDeltaESinTheta); //2D histogram programmed
}
if (fHitZHist != nullptr) { if (fHitZHist != nullptr) {
fHitZHist->Fill(fZ); fHitZHist->Fill(fZ);
} }
@ -233,6 +254,7 @@ void HitOutputManager::RecordHit(int eventId,
<< fParticleType << ',' << fParticleType << ','
<< std::setprecision(12) << fKineticEnergy << ',' << std::setprecision(12) << fKineticEnergy << ','
<< fEnergyDeposit << ',' << fEnergyDeposit << ','
<< fWireDeltaESinTheta << ','
<< fDetectorType << ',' << fDetectorType << ','
<< fDetectorId << ',' << fDetectorId << ','
<< fAnodeId << ',' << fAnodeId << ','

View File

@ -1,4 +1,5 @@
#include "PrimaryGeneratorAction.hh" #include "PrimaryGeneratorAction.hh"
#include "BeamConfig.hh"
#include "G4ParticleGun.hh" #include "G4ParticleGun.hh"
#include "G4ParticleTable.hh" #include "G4ParticleTable.hh"
#include "G4IonTable.hh" #include "G4IonTable.hh"
@ -14,15 +15,14 @@
PrimaryGeneratorAction::PrimaryGeneratorAction() PrimaryGeneratorAction::PrimaryGeneratorAction()
: G4VUserPrimaryGeneratorAction(), : G4VUserPrimaryGeneratorAction(),
fParticleGun(nullptr), fParticleGun(nullptr),
fBeamRadius(2.0 * mm), fBeamRadius(BeamConfig::kRadius),
fBeamStartZ(-190.0 * mm), fBeamStartZ(BeamConfig::kStartZ)
fBeamEnergyPerU(10.0 * MeV)
{ {
G4int nParticle = 1; G4int nParticle = 1;
fParticleGun = new G4ParticleGun(nParticle); fParticleGun = new G4ParticleGun(nParticle);
fParticleGun->SetParticleDefinition(G4Proton::ProtonDefinition()); fParticleGun->SetParticleDefinition(G4Proton::ProtonDefinition());
fParticleGun->SetParticleMomentumDirection(G4ThreeVector(0., 0., 1.)); fParticleGun->SetParticleMomentumDirection(G4ThreeVector(0., 0., 1.));
fParticleGun->SetParticleEnergy(2.6 * fBeamEnergyPerU); fParticleGun->SetParticleEnergy(BeamConfig::kTotalBeamEnergy);
} }
PrimaryGeneratorAction::~PrimaryGeneratorAction() PrimaryGeneratorAction::~PrimaryGeneratorAction()
@ -32,7 +32,7 @@ PrimaryGeneratorAction::~PrimaryGeneratorAction()
void PrimaryGeneratorAction::GeneratePrimaries(G4Event* event) void PrimaryGeneratorAction::GeneratePrimaries(G4Event* event)
{ {
auto* ion = G4IonTable::GetIonTable()->GetIon(13, 27, 0.0); auto* ion = G4IonTable::GetIonTable()->GetIon(BeamConfig::kAtomicNumber, BeamConfig::kAtomicMass, 0.0);
if (ion) { if (ion) {
fParticleGun->SetParticleDefinition(ion); fParticleGun->SetParticleDefinition(ion);
} }
@ -45,6 +45,6 @@ void PrimaryGeneratorAction::GeneratePrimaries(G4Event* event)
fParticleGun->SetParticlePosition(G4ThreeVector(x, y, z)); fParticleGun->SetParticlePosition(G4ThreeVector(x, y, z));
fParticleGun->SetParticleMomentumDirection(G4ThreeVector(0., 0., 1.)); fParticleGun->SetParticleMomentumDirection(G4ThreeVector(0., 0., 1.));
fParticleGun->SetParticleEnergy(2.6 * fBeamEnergyPerU); fParticleGun->SetParticleEnergy(BeamConfig::kTotalBeamEnergy);
fParticleGun->GeneratePrimaryVertex(event); fParticleGun->GeneratePrimaryVertex(event);
} }

View File

@ -1,4 +1,5 @@
#include "ReactionGenerator.hh" #include "ReactionGenerator.hh"
#include "BeamConfig.hh"
#include "ClassTransfer.h" #include "ClassTransfer.h"
#include "G4SystemOfUnits.hh" #include "G4SystemOfUnits.hh"
#include "TRandom.h" #include "TRandom.h"
@ -13,23 +14,23 @@ struct ReactionGenerator::Impl {
ReactionGenerator::ReactionGenerator() ReactionGenerator::ReactionGenerator()
: fImpl(nullptr), : fImpl(nullptr),
fEffectiveSigma(5e3 * barn) //originally 5e6 fEffectiveSigma(5e5 * barn) //originally 5e6
{ {
// Ensure the isotope mass table is found when running from the AnasenG4 folder. // Ensure the isotope mass table is found when running from the AnasenG4 folder.
massData = "/home/jamesszalkie/anasen/Armory/mass20.txt"; massData = "/home/jamesszalkie/anasen/Armory/mass20.txt";
fImpl = new Impl(); fImpl = new Impl();
// p-channel: 27Al + 4He -> p + 30Si // p-channel: 27Al + 4He -> p + 30Si
fImpl->transferP.SetA(27, 13, 0); fImpl->transferP.SetA(BeamConfig::kAtomicMass, BeamConfig::kAtomicNumber, 0);
fImpl->transferP.Seta(4, 2); fImpl->transferP.Seta(4, 2);
fImpl->transferP.Setb(1, 1); fImpl->transferP.Setb(1, 1);
fImpl->transferP.SetB(30, 14, 0); fImpl->transferP.SetB(30, 14, 0);
// alpha-channel: 27Al + 4He -> alpha + 27Al // alpha-channel: 27Al + 4He -> alpha + 27Al
fImpl->transferAlpha.SetA(27, 13, 0); fImpl->transferAlpha.SetA(BeamConfig::kAtomicMass, BeamConfig::kAtomicNumber, 0);
fImpl->transferAlpha.Seta(4, 2); fImpl->transferAlpha.Seta(4, 2);
fImpl->transferAlpha.Setb(4, 2); fImpl->transferAlpha.Setb(4, 2);
fImpl->transferAlpha.SetB(27, 13, 0); fImpl->transferAlpha.SetB(BeamConfig::kAtomicMass, BeamConfig::kAtomicNumber, 0);
} }
ReactionGenerator::~ReactionGenerator() ReactionGenerator::~ReactionGenerator()
@ -51,7 +52,7 @@ ReactionOutput ReactionGenerator::SampleEvent(double beamKineticEnergy, const G4
} }
const double phiCM = gRandom->Rndm() * 2.0 * M_PI; const double phiCM = gRandom->Rndm() * 2.0 * M_PI;
const double beamEnergyPerU = beamKineticEnergy / (27.0 * MeV); const double beamEnergyPerU = beamKineticEnergy / (BeamConfig::kAtomicMass * MeV);
const double beamThetaDeg = beamDirection.theta() / deg; const double beamThetaDeg = beamDirection.theta() / deg;
const double beamPhiDeg = beamDirection.phi() / deg; const double beamPhiDeg = beamDirection.phi() / deg;

View File

@ -192,7 +192,8 @@ inline void ANASEN::Construct3DModel(int anodeID1, int anodeID2, int cathodeID1,
new TGeoRotation("rot1", wirePhi , wireTheta, 0.))); new TGeoRotation("rot1", wirePhi , wireTheta, 0.)));
} }
TGeoVolume * sx3Det = geom->MakeBox("box", Si, 0.1, sx3->GetWidth()/2, sx3->GetLength()/2); // Half-thickness is 0.5 mm so full Si thickness is 1.0 mm (0.1 cm).
TGeoVolume * sx3Det = geom->MakeBox("box", Si, 0.5, sx3->GetWidth()/2, sx3->GetLength()/2);
sx3Det->SetLineColor(kGreen+3); sx3Det->SetLineColor(kGreen+3);
for( int i = 0; i < sx3->GetNumDet(); i++){ for( int i = 0; i < sx3->GetNumDet(); i++){

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff