Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
109 commits
Select commit Hold shift + click to select a range
05dab3a
[g4star] Expose partcile stack for the geant4 application.
klendathu2k Oct 31, 2023
4ef0d92
[geant4star] Load packages required for G4* for 64bit builds.
klendathu2k Nov 8, 2023
78ea6c0
... and the CLHEP package required by G4 as well ...
klendathu2k Nov 9, 2023
e4a4ba7
Fix duplicate.
klendathu2k Feb 20, 2024
6dca37a
Restore gcomad for agstar dummy routines
klendathu2k Feb 20, 2024
5c25821
Extern causes issues at runtime
klendathu2k Feb 20, 2024
b5a7f99
Duplicate load removed.
klendathu2k Feb 21, 2024
6c1e9dc
Make multi-engine simulation the default. Comment out the "NAME:engi…
klendathu2k Feb 21, 2024
40e8340
Handle ROOT version dependence for VMC library.
klendathu2k Mar 12, 2024
f164cd2
Add VMC include path if separate from ROOT.
klendathu2k Mar 12, 2024
80f70bb
Load VMC, G3/G4 VMC and concrete libraries for 64bit builds.
klendathu2k Mar 12, 2024
ca409ab
Invoke local copy for sensitive volume materials.
klendathu2k May 1, 2024
6597aec
Different set of sensitive volumes in sTGC geometry.
klendathu2k May 1, 2024
23627ac
Think we really want muons here...
klendathu2k May 1, 2024
d7b18de
Volume sensitivitiy can be flagged in either the material or medium b…
klendathu2k May 1, 2024
cfc6767
... and definitely want them here...
klendathu2k May 1, 2024
1a136be
libgeom not needed for geant3vmc / fix EEmcUtil chain option.
klendathu2k May 15, 2024
9dcbce8
Add g3 vmc as default chain option.
klendathu2k May 15, 2024
0f5dace
libPhysics does not need to be preloaded.
klendathu2k May 15, 2024
7b3f604
Reduce unneccesary verbosity.
klendathu2k May 15, 2024
4012f0c
Apply the NODEBUG environment variable.
klendathu2k May 15, 2024
b3285d7
[g4star] Expose partcile stack for the geant4 application.
klendathu2k Oct 31, 2023
00e6e42
[geant4star] Load packages required for G4* for 64bit builds.
klendathu2k Nov 8, 2023
5e2f517
... and the CLHEP package required by G4 as well ...
klendathu2k Nov 9, 2023
4e93513
Fix duplicate.
klendathu2k Feb 20, 2024
42b1eb0
Restore gcomad for agstar dummy routines
klendathu2k Feb 20, 2024
e46192d
Extern causes issues at runtime
klendathu2k Feb 20, 2024
151231a
Duplicate load removed.
klendathu2k Feb 21, 2024
75d5ccf
Make multi-engine simulation the default. Comment out the "NAME:engi…
klendathu2k Feb 21, 2024
250e023
Handle ROOT version dependence for VMC library.
klendathu2k Mar 12, 2024
9ff6986
Add VMC include path if separate from ROOT.
klendathu2k Mar 12, 2024
c9324af
Load VMC, G3/G4 VMC and concrete libraries for 64bit builds.
klendathu2k Mar 12, 2024
89ebf66
Invoke local copy for sensitive volume materials.
klendathu2k May 1, 2024
d00c2b7
Different set of sensitive volumes in sTGC geometry.
klendathu2k May 1, 2024
e860df6
Think we really want muons here...
klendathu2k May 1, 2024
da18036
Volume sensitivitiy can be flagged in either the material or medium b…
klendathu2k May 1, 2024
b20950b
... and definitely want them here...
klendathu2k May 1, 2024
ceddeb4
libgeom not needed for geant3vmc / fix EEmcUtil chain option.
klendathu2k May 15, 2024
8d3d5fb
Add g3 vmc as default chain option.
klendathu2k May 15, 2024
6797477
libPhysics does not need to be preloaded.
klendathu2k May 15, 2024
383a1ce
Reduce unneccesary verbosity.
klendathu2k May 15, 2024
e6b4a73
Apply the NODEBUG environment variable.
klendathu2k May 15, 2024
7f4a3d9
Do not build geant4star if we are not at 64bit and we are not at leas…
klendathu2k May 22, 2024
ac2a2bc
Remove dead code.
klendathu2k May 22, 2024
570cc5a
Cleanup comments.
klendathu2k May 22, 2024
109bb35
Merge branch 'import-geant4maker-rebased' of https://github.com/klend…
klendathu2k May 22, 2024
210df98
libVMC --> LIBVMC
klendathu2k May 22, 2024
ea7c71a
Problem between chair and keyboard... the EEmcUtil class is provided…
klendathu2k May 29, 2024
40631c8
ROOT5 / CINT doesn't replace the LIBVMC definition which concatinatin…
klendathu2k May 30, 2024
7d8abe0
Merge branch 'main' into import-geant4maker-rebased
klendathu2k May 31, 2024
037dfef
Prevent ROOT6/CLING from loading all TROOT exposed classes twice... (…
klendathu2k Aug 2, 2024
1e1cd29
Local code implies local search path for headers.
klendathu2k Aug 2, 2024
9123eee
Cling wrap... to prevent ROOT from ingesting class definitions multip…
klendathu2k Aug 2, 2024
400539f
From PR#693
klendathu2k Aug 2, 2024
c3f1d0e
Merge branch 'star-bnl:main' into main
klendathu2k Sep 11, 2024
16cc33b
When geant4maker is set, we should add the geantBranch to the output …
klendathu2k Sep 12, 2024
029e112
Add pythia6 chain option.
klendathu2k Sep 13, 2024
c3f6681
Output implies geant4out, not geantout.
klendathu2k Sep 25, 2024
5e8ebff
Option to load geant tables w/out other dependencies.
klendathu2k Oct 30, 2024
fa71fe4
The protected against both CINT and CLING.
klendathu2k Oct 30, 2024
9ca2b32
Remove ancient version of geant3 vmc from our source tree.
klendathu2k Oct 30, 2024
476fdf9
TGeant3TGeo available under the TGeant3/ directory.
klendathu2k Oct 30, 2024
deca9e8
...
klendathu2k Nov 1, 2024
4ca7499
Use R__LOAD_LIBRARY rather than initialization macro. Add valgrind o…
klendathu2k Nov 1, 2024
f462b52
This removes the internal CLHEP library distributed with G4, so we ca…
klendathu2k Nov 1, 2024
e630bf0
Use R__LOAD_LIBRARY ...
klendathu2k Nov 6, 2024
b80757e
Clingwrap header files.
klendathu2k Nov 6, 2024
b204aee
Add (possibly nonfunctional) hijing macro.
klendathu2k Nov 6, 2024
5612264
Will need to expose TCallf77 in 32bit builds as well. So make sure w…
klendathu2k Nov 6, 2024
7b5cd92
Merge branch 'star-bnl:main' into main
klendathu2k Nov 13, 2024
14e8592
Handle the (hopefully rare) case where truth track is not defined.
klendathu2k Nov 15, 2024
149384c
Expose enum to cling.
klendathu2k Jan 29, 2025
6e2b71f
Merge branch 'main' into import-geant4maker-rebased
klendathu2k Jan 29, 2025
9b249e3
Check for null pointers and skip to next.
klendathu2k Jan 30, 2025
3732f46
Merge branch 'import-geant4maker-rebased' of https://github.com/klend…
klendathu2k Jan 30, 2025
6ba5451
No need to update for ROOT 5.
klendathu2k Feb 7, 2025
3048c8d
Merge branch 'star-bnl:main' into main
klendathu2k Feb 7, 2025
db3af0e
Merge branch 'import-geant4maker-rebased' into main-patchup
klendathu2k Feb 7, 2025
168aefc
Merge pull request #21 from klendathu2k/main-patchup
klendathu2k Feb 7, 2025
11ebccb
Uncomment the line which enables geometry selection.
klendathu2k May 20, 2025
e223838
Readout FMS hits.
klendathu2k May 20, 2025
18b893b
Silently skip nonsensitive volumes.
klendathu2k May 20, 2025
f9bfa29
The FMS is a calorimeter.
klendathu2k May 20, 2025
23f993a
Silence is golden.
klendathu2k May 20, 2025
25999bb
FMS sensitive detectors
klendathu2k May 21, 2025
6ef05fd
Properly handle multiple sensitive detectors mapped to single g2t table.
klendathu2k May 21, 2025
6237bbd
Handle BTOF back to (c) 2010.
klendathu2k May 28, 2025
07c2ef0
Update MTD. Add BBC, VPD and ETOF.
klendathu2k May 28, 2025
5747a5c
Handle inner TPC padrows from before the iTPC, during the single sect…
klendathu2k May 28, 2025
c8e6c80
Update the volume id factory.
klendathu2k May 28, 2025
506efd0
Allows instrospection about the detector models which are applied in …
klendathu2k May 28, 2025
bbd80bd
Remove unused struct.
klendathu2k May 28, 2025
5eb453c
Remove actions associated with the ancient (now removed) G3 VMC package.
klendathu2k May 28, 2025
78ea004
Example macro for running geant4 ala embedding.
klendathu2k Jun 12, 2025
8dc2444
Ensure that the geant4 maker is instantiated only once..
klendathu2k Jun 12, 2025
e3e542a
Dummy routines should live in the StarGenerator area and be shipped a…
klendathu2k Jun 12, 2025
9d6bb4e
Make configuration available via attributes which, if set, will resul…
klendathu2k Jun 12, 2025
1e11d2c
Additional verbosity.
klendathu2k Jun 12, 2025
aa36d8a
Removed unused TObjArray dependency. Clingwrap TClonesArray to avoid…
klendathu2k Jun 12, 2025
e32ecb9
Clingwraps. Allow configuration purely at the 'maker' level.
klendathu2k Jun 12, 2025
0e077b9
Avoid runtime problems w/ root6
klendathu2k Jun 12, 2025
c577489
Additional chain options aimed at supporting geant4 embedding.
klendathu2k Jun 12, 2025
37eaf60
Should have been part of 8dc24440.
klendathu2k Jun 12, 2025
9697309
Early geometry initialization if geant4star maker exists.
klendathu2k Jun 12, 2025
1b5e01e
Define an embedding mode.
klendathu2k Jun 12, 2025
9e00f36
ignore
klendathu2k Jun 12, 2025
6a28788
Initial working root6 compatible embedding macro. Only supports sing…
klendathu2k Jul 21, 2025
d630aac
Add README.md. Add documentation block for each class.
Jul 21, 2025
5d2d19a
Update documentation.
klendathu2k Jul 21, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,3 +4,5 @@
.DS_Store
.vscode/
StRoot/StBFChain/doc/
SCL
jail
42 changes: 39 additions & 3 deletions StRoot/StBFChain/BigFullChain.h
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,14 @@ ________________________________________________________________________________
*/
#endif

#include <RVersion.h>

//#if ROOT_VERSION_CODE>=ROOT_VERSION(6,24,0) // 399366
//#define LIBVMC "libVMCLibrary.so"
//#else
//#define LIBVMC "libVMC.so"
//#endif

#define STAR_CHAIN_OBSOLETE "WARNING *** Option is OBSOLETE ***"

//#define __NoStrangeMuDst__
Expand Down Expand Up @@ -1156,6 +1164,7 @@ Bfc_st BFC[] = { // standard chains
{"McEvOut" ,"" ,"","StMcEvent,Tree" ,"","","Write StMcEvent to StTree",kFALSE},
{"EvOut" ,"" ,"","Tree" ,"","","Write StEvent to StTree",kFALSE},
{"GeantOut" ,"" ,"","Tree" ,"","","Write g2t tables to StTree",kFALSE},
{"Geant4Out" ,"" ,"","Tree" ,"","","Write g2t tables to StTree",kFALSE},
{"Simu" ,"" ,"","" ,"","","Simulated Data, force to use Db time stamp from used geometry",kFALSE},
{"HitsBranch" ,"" ,"","" ,"","","take out points from dst branch and put them into HitsBranch",kFALSE},
{"paw" ,"" ,"","" ,"","","Allocate memory for pawc",kFALSE},
Expand Down Expand Up @@ -1260,7 +1269,12 @@ Bfc_st BFC[] = { // standard chains
{"StarMiniCern","" ,"","geant3","" ,"","STAR addition to minicern OBSOLETE",kFALSE},
{"mysql" ,"" ,"","","" ,"libmysqlclient","MySQL",kFALSE},
{"libPhysics" ,"" ,"","","" ,"libPhysics","TVector",kFALSE},
{"geant3vmc" ,"" ,"","-usexgeom,-xgeometry","", "libGeom,libVMC,libgeant3", "VMC geant3",kFALSE},
#if ROOT_VERSION_CODE>=399366
{"geant3vmc" ,"" ,"","-usexgeom,-xgeometry","", "libVMCLibrary.so,libgeant321.so", "VMC geant3",kFALSE},
#else
{"geant3vmc" ,"" ,"","-usexgeom,-xgeometry","", "libVMC.so,libgeant321.so", "VMC geant3",kFALSE},
#endif

{"geant3" ,"" ,"","geant3vmc","" ,"EG,Pythia6,EGPythia6","VMC geant3 plus ROOT EG,pythia6",kFALSE},
{"geometry" ,"" ,"","","" ,"geometry","geometry+Mag.Field",kFALSE},
{"StarMagField","", "","magF" ,"","VMC,StarMagField","Load StarMagField",kFALSE},
Expand Down Expand Up @@ -1318,28 +1332,50 @@ Bfc_st BFC[] = { // standard chains

{"geantL","","","geomT,gen_T,sim_T,StarMagField","","geometry,Geom,St_db_Maker,St_g2t,St_geant_Maker"
, "Load GeantLibs",kFALSE},

{"geantTables","","","geomT,gen_T,sim_T","","geometry,Geom,St_db_Maker,St_g2t", "Geant tables",kFALSE},

{"gstarLib","","","" ,"","gstar","Load gstar lib",kFALSE},
{"flux" ,"","","simu" ,"","flux","Load flux lib",kFALSE},
{"------------","-----------","-----------","------------------------------------------","","","",kFALSE},
{"Generators ","-----------","-----------","------------------------------------------","","","",kFALSE},
{"------------","-----------","-----------","------------------------------------------","","","",kFALSE},
{"stargen", "","", "gen_T,sim_T"/*+++*/, "", "libVMC.so,libStarGeneratorUtil.so,libStarGeneratorEvent.so,libStarGeneratorBase.so,libStarGeneratorFilt.so,libMathMore.so","STAR Generator BASE",false},
#if ROOT_VERSION_CODE>=399366
{"stargen", "","", "gen_T,sim_T"/*+++*/, "", "libVMCLibrary.so,libfastjet.so,libStarGeneratorUtil.so,libStarGeneratorEvent.so,libStarGeneratorFilt.so,libStarGeneratorBase.so,libMathMore.so","STAR Generator BASE",false},
#else
{"stargen", "","", "gen_T,sim_T"/*+++*/, "", "libVMC.so,libfastjet.so,libStarGeneratorUtil.so,libStarGeneratorEvent.so,libStarGeneratorFilt.so,libStarGeneratorBase.so,libMathMore.so","STAR Generator BASE",false},
#endif
{"stargen:stubs", "", "","stargen", "", "StarGeneratorStubs.so", "Dummy starsim callbacks", false },
{"stargen:mk", "", "","stargen", "StarPrimaryMaker", "", "Setup the primary event generator maker", false },
{"pythia6.4.28","","","stargen", "", "Pythia6_4_28.so", "Load Pythia 6.4.28 generator", false },
{"pythia8.1.86","","","stargen", "", "Pythia8_1_86.so", "Load Pythia 8.1.86 generator", false },
{"pythia8.2.35","","","stargen", "", "Pythia8_2_35.so", "Load Pythia 8.1.86 generator", false },
{"hijing1.383" ,"","","stargen", "", "Hijing1_383.so", "Load Hijing 1.383 generator", false },
{"kinematics" ,"","","stargen", "", "Kinematics.so", "Load STAR Particle Gun", false },
{"kinematics:mk" ,"","","stargen:mk,kinematics", "StarKinematics", "", "Load STAR Particle Gun", false },
{"genreader" ,"","","stargen", "", "StarGenEventReader.so", "Load STAR Gen Event Reader", false },


{"fastjet" ,"","","" , "", "libfastjet.so", "Load fast jet reconstruction algo", false},


{"------------","-----------","-----------","------------------------------------------","","","",kFALSE},
{"GEANT4 Libs ","-----------","-----------","------------------------------------------","","","",kFALSE},
{"------------","-----------","-----------","------------------------------------------","","","",kFALSE},

{"g4interfaces","", "", "", "", "libG4clhep.so,libG4global.so,libG4intercoms.so,libG4interfaces.so,libG4modeling.so,libG4vis_management.so","Load G4 libs",false},
// {"g4interfaces","", "", "", "", "libG4clhep.so,libG4global.so,libG4intercoms.so,libG4interfaces.so,libG4modeling.so,libG4vis_management.so","Load G4 libs",false},
{"g4interfaces","", "", "", "", "libG4global.so,libG4intercoms.so,libG4interfaces.so,libG4modeling.so,libG4vis_management.so","Load G4 libs",false},
{"g4physics", "", "", "", "", "libG4materials.so,libG4graphics_reps.so,libG4geometry.so,libG4particles.so,libG4track.so,libG4zlib.so,libG4digits_hits.so,libG4processes.so,libG4tracking.so,libG4event.so,libG4run.so,libG4physicslists.so", "Load G4",false},
{"g4geant3", "", "", "", "", "libG3toG4.so", "Load g3 to g4 support", false },
{"geant4", "", "", "g4physics,g4interfaces","","","Load G4 libs", false},
#if ROOT_VERSION_CODE>=399366
{"geant4vmc", "","", "geant4", "", "libVMCLibrary.so,libgeant4vmc.so", "Load G4 VMC libs", false},
#else
{"geant4vmc", "","", "geant4", "", "libVMC.so,libgeant4vmc.so", "Load G4 VMC libs", false},
#endif
{"geant4mk", "","", "stargen,geant4vmc,geant3vmc,geant4out", "", "StGeant4Maker.so,StarMagField.so", "Load G4 VMC libs", false},

{"geant4mk:mk", "","", "geant4mk", "StGeant4Maker", "", "Load G4 VMC libs", false},

{"------------","-----------","-----------","------------------------------------------","","","",kFALSE},
{"I/O Makers ","-----------","-----------","------------------------------------------","","","",kFALSE},
Expand Down
24 changes: 15 additions & 9 deletions StRoot/StBFChain/StBFChain.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -228,16 +228,20 @@ Int_t StBFChain::Instantiate()
StMaker *myChain = 0;
StMaker *mk = 0;
// Require only instance for the following named makers
if (maker == "St_db_Maker" || maker == "StTpcDbMaker" ||
maker == "StSvtDbMaker" || maker == "StSsdDbMaker" || maker == "StSstDbMaker" ||
if (maker == "St_db_Maker" ||
maker == "StTpcDbMaker" ||
maker == "StSvtDbMaker" ||
maker == "StSsdDbMaker" ||
maker == "StSstDbMaker" ||
maker == "StDetectorDbMaker" ||
maker == "StMagFMaker" ||
maker == "StEEmcDbMaker" ||
maker == "St_geant_Maker" ||
maker == "StMagFMaker" ||
maker == "StEEmcDbMaker" ||
maker == "St_geant_Maker" ||
maker == "StGeant4Maker" ||
maker == "StVMCMaker") {
mk = GetTopChain()->GetMakerInheritsFrom(maker);
if (mk) {
if (maker == "St_geant_Maker" || maker == "StVMCMaker") {
if (maker == "St_geant_Maker" || maker == "StVMCMaker" || maker == "StGeant4Maker" ) {
LOG_INFO << "StBFChain::Instantiate ignore request for instantiation of " << maker
<< "(\"" << fBFC[i].Name << "\") because chain alreary has one." << endm;
continue;
Expand Down Expand Up @@ -1011,9 +1015,10 @@ Int_t StBFChain::Init() {

// force load of geometry for VMC and Sti

if (GetOption("Sti") || GetOption("StiCA") ||
GetOption("StiVMC") ||GetOption("VMC") ||
GetOption("VMCPassive")) {
if (GetOption("Sti") || GetOption("StiCA") ||
GetOption("StiVMC") || GetOption("VMC") ||
GetOption("VMCPassive" || GetMaker("geant4star") )) {

const DbAlias_t *DbAlias = GetDbAliases();
for (Int_t i = 0; DbAlias[i].tag; i++) {
TString dbTag("r");
Expand Down Expand Up @@ -1943,6 +1948,7 @@ void StBFChain::SetTreeOptions()
treeMk->IntoBranch("McEventBranch","StMcEvent");
}
if (GetOption("GeantOut")) treeMk->IntoBranch("geantBranch","geant");
if (GetOption("Geant4Out")) treeMk->IntoBranch("geantBranch","geant4star");
if (GetOption("AllEvent")) {
if (GetOption("fzin") ||
GetOption("ntin") ||
Expand Down
Loading
Loading