Skip to content
Snippets Groups Projects

Added input collection copiers

Merged Whitney Armstrong requested to merge rich_update into master
Files
3
+ 23
6
@@ -4,29 +4,46 @@ from GaudiKernel import SystemOfUnits as units
@@ -4,29 +4,46 @@ from GaudiKernel import SystemOfUnits as units
from GaudiKernel.DataObjectHandleBase import DataObjectHandleBase
from GaudiKernel.DataObjectHandleBase import DataObjectHandleBase
from Configurables import ApplicationMgr, EICDataSvc, PodioOutput, GeoSvc
from Configurables import ApplicationMgr, EICDataSvc, PodioOutput, GeoSvc
geo_service = GeoSvc("GeoSvc", detectors=["topside.xml"])
detector_name = "topside"
podioevent = EICDataSvc("EventDataSvc", inputs=["rich_test.root"], OutputLevel=DEBUG)
if "JUGGLER_DETECTOR" in os.environ :
 
detector_name = str(os.environ["JUGGLER_DETECTOR"])
 
 
# todo add checks
 
input_sim_file = str(os.environ["JUGGLER_SIM_FILE"])
 
output_rec_file = str(os.environ["JUGGLER_REC_FILE"])
 
n_events = str(os.environ["JUGGLER_N_EVENTS"])
 
 
geo_service = GeoSvc("GeoSvc", detectors=["{}.xml".format(detector_name)])
 
podioevent = EICDataSvc("EventDataSvc", inputs=[input_sim_file], OutputLevel=DEBUG)
from Configurables import PodioInput
from Configurables import PodioInput
from Configurables import Jug__Digi__PhotoMultiplierDigi as PhotoMultiplierDigi
from Configurables import Jug__Digi__PhotoMultiplierDigi as PhotoMultiplierDigi
from Configurables import Jug__Reco__PhotoMultiplierReco as PhotoMultiplierReco
from Configurables import Jug__Reco__PhotoMultiplierReco as PhotoMultiplierReco
from Configurables import Jug__Reco__PhotoRingClusters as PhotoRingClusters
from Configurables import Jug__Reco__PhotoRingClusters as PhotoRingClusters
 
from Configurables import Jug__Base__InputCopier_dd4pod__Geant4ParticleCollection_dd4pod__Geant4ParticleCollection_ as MCCopier
 
from Configurables import Jug__Base__InputCopier_dd4pod__PhotoMultiplierHitCollection_dd4pod__PhotoMultiplierHitCollection_ as PMTCopier
 
qe_data = [(1.0, 0.25), (7.5, 0.25),]
qe_data = [(1.0, 0.25), (7.5, 0.25),]
podioinput = PodioInput("PodioReader", collections=["mcparticles", "ForwardRICHHits"], OutputLevel=DEBUG)
podioinput = PodioInput("PodioReader", collections=["mcparticles", "ForwardRICHHits"], OutputLevel=DEBUG)
 
## copiers to get around input --> output copy bug. Note the "2" appended to the output collection.
 
# copy these inputs to the output (a bug work around for now...). Note the the output name has a "2" at the end.
 
copier = MCCopier("MCCopier", inputCollection="mcparticles", outputCollection="mcparticles2",OutputLevel=DEBUG)
 
pmtcopier = PMTCopier("PMTCopier", inputCollection="ForwardRICHHits", outputCollection="ForwardRICHHits2",OutputLevel=DEBUG)
 
pmtdigi = PhotoMultiplierDigi(inputHitCollection="ForwardRICHHits", outputHitCollection="DigiForwardRICHHits",
pmtdigi = PhotoMultiplierDigi(inputHitCollection="ForwardRICHHits", outputHitCollection="DigiForwardRICHHits",
quantumEfficiency=[(a*units.eV, b) for a, b in qe_data])
quantumEfficiency=[(a*units.eV, b) for a, b in qe_data])
pmtreco = PhotoMultiplierReco(inputHitCollection="DigiForwardRICHHits", outputHitCollection="RecoForwardRICHHits")
pmtreco = PhotoMultiplierReco(inputHitCollection="DigiForwardRICHHits", outputHitCollection="RecoForwardRICHHits")
richcluster = PhotoRingClusters(inputHitCollection="RecoForwardRICHHits", inputTrackCollection="mcparticles",
richcluster = PhotoRingClusters(inputHitCollection="RecoForwardRICHHits", #inputTrackCollection="mcparticles",
outputClusterCollection="RICHClusters")
outputClusterCollection="RICHClusters")
out = PodioOutput("out", filename="rich_test_reco.root")
out = PodioOutput("out", filename=output_rec_file)
out.outputCommands = ["keep *"]
out.outputCommands = ["keep *"]
ApplicationMgr(
ApplicationMgr(
TopAlg = [podioinput, pmtdigi, pmtreco, richcluster, out],
TopAlg = [podioinput, copier, pmtcopier, pmtdigi, pmtreco, richcluster, out],
EvtSel = 'NONE',
EvtSel = 'NONE',
EvtMax = 100000,
EvtMax = n_events,
ExtSvc = [podioevent],
ExtSvc = [podioevent],
OutputLevel=DEBUG
OutputLevel=DEBUG
)
)
Loading