SND@LHC Software
Loading...
Searching...
No Matches
run_simSND Namespace Reference

Classes

class  MyTask
 

Functions

 checkOverlaps (removeScifi=False)
 
 checkOverlapsWithGeant4 ()
 

Variables

str mcEngine = "TGeant4"
 
str simEngine = "Pythia8"
 
bool inactivateMuonProcesses = False
 
bool MCTracksWithHitsOnly = False
 
bool MCTracksWithEnergyCutOnly = True
 
bool MCTracksWithHitsOrEnergyCut = False
 
 parser = ArgumentParser()
 
 dest
 
 help
 
 action
 
 required
 
 False
 
 default
 
 type
 
 float
 
 int
 
 options = parser.parse_args()
 
bool userTask = False
 
bool checking4overlaps = False
 
 inputFile = options.inputFile
 
bool defaultInputFile = False
 
 snd_geo = ConfigRegistry.loadpy("$SNDSW_ROOT/geometry/sndLHC_H6geom_config.py")
 
 tag
 
str outFile = "%s/sndLHC.%s.root" % (options.outputDir, tag)
 
str parFile = "%s/ship.params.%s.root" % (options.outputDir, tag)
 
 timer = ROOT.TStopwatch()
 
 run = ROOT.FairRunSim()
 
 rtdb = run.GetRuntimeDb()
 
 modules = sndDet_conf.configure(run,snd_geo)
 
 primGen = ROOT.FairPrimaryGenerator()
 
 myPgun = ROOT.FairBoxGenerator(options.pID,1)
 
 targetZpos = np.array(np.arange(options.nZSlices)*options.zSliceStep*u.cm, dtype='d')
 
 DISgen = ROOT.MuDISGenerator()
 
 mu_start
 
 mu_end
 
 nEvents
 
 Nuagegen = ROOT.NuageGenerator()
 
 Geniegen = ROOT.GenieGenerator()
 
int tolerance_vtx_z = 1*u.m * 0.5/39
 
int neutrino_vtx_start_z = snd_geo.MuFilter.Veto1Dy - snd_geo.MuFilter.VetoBarZ/2. - tolerance_vtx_z
 
int neutrino_vtx_end_z = snd_geo.Scifi.Ypos4 + snd_geo.Scifi.zdim/2. + tolerance_vtx_z
 
 Ntuplegen = ROOT.NtupleGenerator_FLUKA()
 
 fileType = ut.checkFileExists(inputFile)
 
 MuonBackgen = ROOT.MuonBackGenerator()
 
 fastMuon
 
 gMC = ROOT.TVirtualMC.GetMC()
 
 fStack = gMC.GetStack()
 
 gProcessTable = ROOT.G4ProcessTable.GetProcessTable()
 
 gammaToMuPair = gProcessTable.FindProcess(ROOT.G4String('GammaToMuPair'),ROOT.G4String('gamma'))
 
 AnnihiToMuPair = gProcessTable.FindProcess(ROOT.G4String('AnnihiToMuPair'),ROOT.G4String('e+'))
 
 MuonToMuonPair = gProcessTable.FindProcess(ROOT.G4String('muToMuonPairProd'),ROOT.G4String('mu+'))
 
 mygMC = ROOT.TGeant4.GetMC()
 
 pt = ROOT.G4ParticleTable.GetParticleTable()
 
 particleG4 = pt.FindParticle(pid)
 
 lt = particleG4.GetPDGLifeTime()
 
 procmu = gProcessTable.FindProcess(ROOT.G4String('muIoni'),ROOT.G4String('mu+'))
 
 kParameterMerged = ROOT.kTRUE
 
 parOut = ROOT.FairParRootFileIo(kParameterMerged)
 
str geoFile = "%s/geofile_full.%s.root" % (options.outputDir, tag)
 
 f_input = ROOT.TFile(inputFile)
 
 gst = f_input.gst
 
str selection_string = "(Entry$ >= "+str(options.firstEvent)+")"
 
 f_output = ROOT.TFile(outFile, "UPDATE")
 
 gst_copy = gst.CopyTree(selection_string)
 
 rtime = timer.RealTime()
 
 ctime = timer.CpuTime()
 

Function Documentation

◆ checkOverlaps()

run_simSND.checkOverlaps (   removeScifi = False)

Definition at line 429 of file run_simSND.py.

429def checkOverlaps(removeScifi=False):
430 sGeo = ROOT.gGeoManager
431 if removeScifi:
432 for n in range(1,6):
433 Hscifi = sGeo.FindVolumeFast('ScifiVolume'+str(n))
434 removalList = []
435 for x in Hscifi.GetNodes():
436 if x.GetName().find('Scifi')==0: removalList.append(x)
437 for x in removalList: Hscifi.RemoveNode(x)
438 sGeo.SetNmeshPoints(10000)
439 sGeo.CheckOverlaps(0.1) # 1 micron takes 5minutes
440 sGeo.PrintOverlaps()
441# check subsystems in more detail
442 for x in sGeo.GetTopNode().GetNodes():
443 x.CheckOverlaps(0.0001)
444 sGeo.PrintOverlaps()
445

◆ checkOverlapsWithGeant4()

run_simSND.checkOverlapsWithGeant4 ( )

Definition at line 446 of file run_simSND.py.

446def checkOverlapsWithGeant4():
447 # after /run/initialize, but prints warning messages, problems with TGeo volume
448 mygMC = ROOT.TGeant4.GetMC()
449 mygMC.ProcessGeantCommand("/geometry/test/recursion_start 0")
450 mygMC.ProcessGeantCommand("/geometry/test/recursion_depth 2")
451 mygMC.ProcessGeantCommand("/geometry/test/run")
452
453# checking for overlaps

Variable Documentation

◆ action

run_simSND.action

Definition at line 23 of file run_simSND.py.

◆ AnnihiToMuPair

run_simSND.AnnihiToMuPair = gProcessTable.FindProcess(ROOT.G4String('AnnihiToMuPair'),ROOT.G4String('e+'))

Definition at line 337 of file run_simSND.py.

◆ checking4overlaps

run_simSND.checking4overlaps = False

Definition at line 78 of file run_simSND.py.

◆ ctime

run_simSND.ctime = timer.CpuTime()

Definition at line 420 of file run_simSND.py.

◆ default

run_simSND.default

Definition at line 25 of file run_simSND.py.

◆ defaultInputFile

bool run_simSND.defaultInputFile = False

Definition at line 92 of file run_simSND.py.

◆ dest

run_simSND.dest

Definition at line 23 of file run_simSND.py.

◆ DISgen

run_simSND.DISgen = ROOT.MuDISGenerator()

Definition at line 199 of file run_simSND.py.

◆ f_input

run_simSND.f_input = ROOT.TFile(inputFile)

Definition at line 400 of file run_simSND.py.

◆ f_output

run_simSND.f_output = ROOT.TFile(outFile, "UPDATE")

Definition at line 408 of file run_simSND.py.

◆ False

run_simSND.False

Definition at line 25 of file run_simSND.py.

◆ fastMuon

run_simSND.fastMuon

Definition at line 281 of file run_simSND.py.

◆ fileType

run_simSND.fileType = ut.checkFileExists(inputFile)

Definition at line 257 of file run_simSND.py.

◆ float

run_simSND.float

Definition at line 45 of file run_simSND.py.

◆ fStack

run_simSND.fStack = gMC.GetStack()

Definition at line 303 of file run_simSND.py.

◆ gammaToMuPair

run_simSND.gammaToMuPair = gProcessTable.FindProcess(ROOT.G4String('GammaToMuPair'),ROOT.G4String('gamma'))

Definition at line 335 of file run_simSND.py.

◆ Geniegen

run_simSND.Geniegen = ROOT.GenieGenerator()

Definition at line 226 of file run_simSND.py.

◆ geoFile

str run_simSND.geoFile = "%s/geofile_full.%s.root" % (options.outputDir, tag)

Definition at line 388 of file run_simSND.py.

◆ gMC

run_simSND.gMC = ROOT.TVirtualMC.GetMC()

Definition at line 302 of file run_simSND.py.

◆ gProcessTable

run_simSND.gProcessTable = ROOT.G4ProcessTable.GetProcessTable()

Definition at line 328 of file run_simSND.py.

◆ gst

run_simSND.gst = f_input.gst

Definition at line 401 of file run_simSND.py.

◆ gst_copy

run_simSND.gst_copy = gst.CopyTree(selection_string)

Definition at line 411 of file run_simSND.py.

◆ help

run_simSND.help

Definition at line 23 of file run_simSND.py.

◆ inactivateMuonProcesses

bool run_simSND.inactivateMuonProcesses = False

Definition at line 15 of file run_simSND.py.

◆ inputFile

str run_simSND.inputFile = options.inputFile

Definition at line 90 of file run_simSND.py.

◆ int

run_simSND.int

Definition at line 61 of file run_simSND.py.

◆ kParameterMerged

run_simSND.kParameterMerged = ROOT.kTRUE

Definition at line 380 of file run_simSND.py.

◆ lt

run_simSND.lt = particleG4.GetPDGLifeTime()

Definition at line 359 of file run_simSND.py.

◆ mcEngine

str run_simSND.mcEngine = "TGeant4"

Definition at line 13 of file run_simSND.py.

◆ MCTracksWithEnergyCutOnly

bool run_simSND.MCTracksWithEnergyCutOnly = True

Definition at line 18 of file run_simSND.py.

◆ MCTracksWithHitsOnly

bool run_simSND.MCTracksWithHitsOnly = False

Definition at line 17 of file run_simSND.py.

◆ MCTracksWithHitsOrEnergyCut

bool run_simSND.MCTracksWithHitsOrEnergyCut = False

Definition at line 19 of file run_simSND.py.

◆ modules

run_simSND.modules = sndDet_conf.configure(run,snd_geo)

Definition at line 163 of file run_simSND.py.

◆ mu_end

run_simSND.mu_end

Definition at line 200 of file run_simSND.py.

◆ mu_start

run_simSND.mu_start

Definition at line 200 of file run_simSND.py.

◆ MuonBackgen

run_simSND.MuonBackgen = ROOT.MuonBackGenerator()

Definition at line 264 of file run_simSND.py.

◆ MuonToMuonPair

run_simSND.MuonToMuonPair = gProcessTable.FindProcess(ROOT.G4String('muToMuonPairProd'),ROOT.G4String('mu+'))

Definition at line 339 of file run_simSND.py.

◆ mygMC

run_simSND.mygMC = ROOT.TGeant4.GetMC()

Definition at line 342 of file run_simSND.py.

◆ myPgun

run_simSND.myPgun = ROOT.FairBoxGenerator(options.pID,1)

Definition at line 170 of file run_simSND.py.

◆ neutrino_vtx_end_z

int run_simSND.neutrino_vtx_end_z = snd_geo.Scifi.Ypos4 + snd_geo.Scifi.zdim/2. + tolerance_vtx_z

Definition at line 237 of file run_simSND.py.

◆ neutrino_vtx_start_z

int run_simSND.neutrino_vtx_start_z = snd_geo.MuFilter.Veto1Dy - snd_geo.MuFilter.VetoBarZ/2. - tolerance_vtx_z

Definition at line 235 of file run_simSND.py.

◆ nEvents

run_simSND.nEvents

Definition at line 204 of file run_simSND.py.

◆ Ntuplegen

run_simSND.Ntuplegen = ROOT.NtupleGenerator_FLUKA()

Definition at line 249 of file run_simSND.py.

◆ Nuagegen

run_simSND.Nuagegen = ROOT.NuageGenerator()

Definition at line 212 of file run_simSND.py.

◆ options

run_simSND.options = parser.parse_args()

Definition at line 63 of file run_simSND.py.

◆ outFile

str run_simSND.outFile = "%s/sndLHC.%s.root" % (options.outputDir, tag)

Definition at line 135 of file run_simSND.py.

◆ parFile

str run_simSND.parFile = "%s/ship.params.%s.root" % (options.outputDir, tag)

Definition at line 141 of file run_simSND.py.

◆ parOut

run_simSND.parOut = ROOT.FairParRootFileIo(kParameterMerged)

Definition at line 381 of file run_simSND.py.

◆ parser

run_simSND.parser = ArgumentParser()

Definition at line 21 of file run_simSND.py.

◆ particleG4

run_simSND.particleG4 = pt.FindParticle(pid)

Definition at line 358 of file run_simSND.py.

◆ primGen

run_simSND.primGen = ROOT.FairPrimaryGenerator()

Definition at line 166 of file run_simSND.py.

◆ procmu

run_simSND.procmu = gProcessTable.FindProcess(ROOT.G4String('muIoni'),ROOT.G4String('mu+'))

Definition at line 373 of file run_simSND.py.

◆ pt

run_simSND.pt = ROOT.G4ParticleTable.GetParticleTable()

Definition at line 356 of file run_simSND.py.

◆ required

run_simSND.required

Definition at line 25 of file run_simSND.py.

◆ rtdb

run_simSND.rtdb = run.GetRuntimeDb()

Definition at line 155 of file run_simSND.py.

◆ rtime

run_simSND.rtime = timer.RealTime()

Definition at line 419 of file run_simSND.py.

◆ run

run_simSND.run = ROOT.FairRunSim()

Definition at line 151 of file run_simSND.py.

◆ selection_string

str run_simSND.selection_string = "(Entry$ >= "+str(options.firstEvent)+")"

Definition at line 403 of file run_simSND.py.

◆ simEngine

run_simSND.simEngine = "Pythia8"

Definition at line 14 of file run_simSND.py.

◆ snd_geo

run_simSND.snd_geo = ConfigRegistry.loadpy("$SNDSW_ROOT/geometry/sndLHC_H6geom_config.py")

Definition at line 118 of file run_simSND.py.

◆ tag

run_simSND.tag

Definition at line 128 of file run_simSND.py.

◆ targetZpos

run_simSND.targetZpos = np.array(np.arange(options.nZSlices)*options.zSliceStep*u.cm, dtype='d')

Definition at line 188 of file run_simSND.py.

◆ timer

run_simSND.timer = ROOT.TStopwatch()

Definition at line 147 of file run_simSND.py.

◆ tolerance_vtx_z

int run_simSND.tolerance_vtx_z = 1*u.m * 0.5/39

Definition at line 233 of file run_simSND.py.

◆ type

run_simSND.type

Definition at line 25 of file run_simSND.py.

◆ userTask

run_simSND.userTask = False

Definition at line 66 of file run_simSND.py.