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
 
 choices
 
 default
 
 type
 
 required
 
 False
 
 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 435 of file run_simSND.py.

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

◆ checkOverlapsWithGeant4()

run_simSND.checkOverlapsWithGeant4 ( )

Definition at line 452 of file run_simSND.py.

452def checkOverlapsWithGeant4():
453 # after /run/initialize, but prints warning messages, problems with TGeo volume
454 mygMC = ROOT.TGeant4.GetMC()
455 mygMC.ProcessGeantCommand("/geometry/test/recursion_start 0")
456 mygMC.ProcessGeantCommand("/geometry/test/recursion_depth 2")
457 mygMC.ProcessGeantCommand("/geometry/test/run")
458
459# 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 343 of file run_simSND.py.

◆ checking4overlaps

run_simSND.checking4overlaps = False

Definition at line 80 of file run_simSND.py.

◆ choices

run_simSND.choices

Definition at line 26 of file run_simSND.py.

◆ ctime

run_simSND.ctime = timer.CpuTime()

Definition at line 426 of file run_simSND.py.

◆ default

run_simSND.default

Definition at line 26 of file run_simSND.py.

◆ defaultInputFile

bool run_simSND.defaultInputFile = False

Definition at line 94 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 205 of file run_simSND.py.

◆ f_input

run_simSND.f_input = ROOT.TFile(inputFile)

Definition at line 406 of file run_simSND.py.

◆ f_output

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

Definition at line 414 of file run_simSND.py.

◆ False

run_simSND.False

Definition at line 27 of file run_simSND.py.

◆ fastMuon

run_simSND.fastMuon

Definition at line 287 of file run_simSND.py.

◆ fileType

run_simSND.fileType = ut.checkFileExists(inputFile)

Definition at line 263 of file run_simSND.py.

◆ float

run_simSND.float

Definition at line 47 of file run_simSND.py.

◆ fStack

run_simSND.fStack = gMC.GetStack()

Definition at line 309 of file run_simSND.py.

◆ gammaToMuPair

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

Definition at line 341 of file run_simSND.py.

◆ Geniegen

run_simSND.Geniegen = ROOT.GenieGenerator()

Definition at line 232 of file run_simSND.py.

◆ geoFile

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

Definition at line 394 of file run_simSND.py.

◆ gMC

run_simSND.gMC = ROOT.TVirtualMC.GetMC()

Definition at line 308 of file run_simSND.py.

◆ gProcessTable

run_simSND.gProcessTable = ROOT.G4ProcessTable.GetProcessTable()

Definition at line 334 of file run_simSND.py.

◆ gst

run_simSND.gst = f_input.gst

Definition at line 407 of file run_simSND.py.

◆ gst_copy

run_simSND.gst_copy = gst.CopyTree(selection_string)

Definition at line 417 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 92 of file run_simSND.py.

◆ int

run_simSND.int

Definition at line 63 of file run_simSND.py.

◆ kParameterMerged

run_simSND.kParameterMerged = ROOT.kTRUE

Definition at line 386 of file run_simSND.py.

◆ lt

run_simSND.lt = particleG4.GetPDGLifeTime()

Definition at line 365 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 169 of file run_simSND.py.

◆ mu_end

run_simSND.mu_end

Definition at line 206 of file run_simSND.py.

◆ mu_start

run_simSND.mu_start

Definition at line 206 of file run_simSND.py.

◆ MuonBackgen

run_simSND.MuonBackgen = ROOT.MuonBackGenerator()

Definition at line 270 of file run_simSND.py.

◆ MuonToMuonPair

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

Definition at line 345 of file run_simSND.py.

◆ mygMC

run_simSND.mygMC = ROOT.TGeant4.GetMC()

Definition at line 348 of file run_simSND.py.

◆ myPgun

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

Definition at line 176 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 243 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 241 of file run_simSND.py.

◆ nEvents

run_simSND.nEvents

Definition at line 210 of file run_simSND.py.

◆ Ntuplegen

run_simSND.Ntuplegen = ROOT.NtupleGenerator_FLUKA()

Definition at line 255 of file run_simSND.py.

◆ Nuagegen

run_simSND.Nuagegen = ROOT.NuageGenerator()

Definition at line 218 of file run_simSND.py.

◆ options

run_simSND.options = parser.parse_args()

Definition at line 65 of file run_simSND.py.

◆ outFile

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

Definition at line 141 of file run_simSND.py.

◆ parFile

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

Definition at line 147 of file run_simSND.py.

◆ parOut

run_simSND.parOut = ROOT.FairParRootFileIo(kParameterMerged)

Definition at line 387 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 364 of file run_simSND.py.

◆ primGen

run_simSND.primGen = ROOT.FairPrimaryGenerator()

Definition at line 172 of file run_simSND.py.

◆ procmu

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

Definition at line 379 of file run_simSND.py.

◆ pt

run_simSND.pt = ROOT.G4ParticleTable.GetParticleTable()

Definition at line 362 of file run_simSND.py.

◆ required

run_simSND.required

Definition at line 27 of file run_simSND.py.

◆ rtdb

run_simSND.rtdb = run.GetRuntimeDb()

Definition at line 161 of file run_simSND.py.

◆ rtime

run_simSND.rtime = timer.RealTime()

Definition at line 425 of file run_simSND.py.

◆ run

run_simSND.run = ROOT.FairRunSim()

Definition at line 157 of file run_simSND.py.

◆ selection_string

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

Definition at line 409 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 120 of file run_simSND.py.

◆ tag

run_simSND.tag

Definition at line 134 of file run_simSND.py.

◆ targetZpos

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

Definition at line 194 of file run_simSND.py.

◆ timer

run_simSND.timer = ROOT.TStopwatch()

Definition at line 153 of file run_simSND.py.

◆ tolerance_vtx_z

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

Definition at line 239 of file run_simSND.py.

◆ type

run_simSND.type

Definition at line 26 of file run_simSND.py.

◆ userTask

run_simSND.userTask = False

Definition at line 68 of file run_simSND.py.