Skip to content
Snippets Groups Projects
Commit 27060ed4 authored by Wouter Deconinck's avatar Wouter Deconinck
Browse files

Partial switch to algorithms as list

parent 04a8538c
No related branches found
No related tags found
No related merge requests found
This commit is part of merge request !168. Comments created here will be created in the context of that merge request.
......@@ -100,6 +100,9 @@ sim_coll = [
"DRICHHits"
]
# list of algorithms
algorithms = []
# input and output
podin = PodioInput("PodioReader", collections=sim_coll)
podout = PodioOutput("out", filename=output_rec)
......@@ -108,12 +111,17 @@ podout = PodioOutput("out", filename=output_rec)
copier = MCCopier("MCCopier",
inputCollection="mcparticles",
outputCollection="mcparticles2")
algorithms.append( copier )
trkcopier = TrkCopier("TrkCopier",
inputCollection="TrackerBarrelHits",
outputCollection="TrackerBarrelHits2")
algorithms.append( trkcopier )
pmtcopier = PMTCopier("PMTCopier",
inputCollection="DRICHHits",
outputCollection="DRICHHits2")
algorithms.append( pmtcopier )
# Crystal Endcap Ecal
ce_ecal_daq = dict(
......@@ -127,6 +135,7 @@ ce_ecal_digi = CalHitDigi("ce_ecal_digi",
outputHitCollection="EcalEndcapNHitsDigi",
energyResolutions=[0., 0.02, 0.],
**ce_ecal_daq)
algorithms.append( ce_ecal_digi )
ce_ecal_reco = CalHitReco("ce_ecal_reco",
inputHitCollection=ce_ecal_digi.outputHitCollection,
......@@ -135,6 +144,7 @@ ce_ecal_reco = CalHitReco("ce_ecal_reco",
readoutClass="EcalEndcapNHits",
sectorField="sector",
**ce_ecal_daq)
algorithms.append( ce_ecal_reco )
ce_ecal_cl = IslandCluster("ce_ecal_cl",
inputHitCollection=ce_ecal_reco.outputHitCollection,
......@@ -144,6 +154,7 @@ ce_ecal_cl = IslandCluster("ce_ecal_cl",
minClusterCenterEdep=30*units.MeV,
sectorDist=5.0*units.cm,
dimScaledLocalDistXY=[1.8, 1.8]) # dimension scaled dist is good for hybrid sectors with different module size
algorithms.append( ce_ecal_cl )
ce_ecal_clreco = RecoCoG("ce_ecal_clreco",
inputHitCollection=ce_ecal_cl.inputHitCollection,
......@@ -151,6 +162,7 @@ ce_ecal_clreco = RecoCoG("ce_ecal_clreco",
outputClusterCollection="EcalEndcapNClusters",
samplingFraction=0.998, # this accounts for a small fraction of leakage
logWeightBase=4.6)
algorithms.append( ce_ecal_clreco )
# Endcap Sampling Ecal
ci_ecal_daq = dict(
......@@ -163,12 +175,14 @@ ci_ecal_digi = CalHitDigi("ci_ecal_digi",
inputHitCollection="EcalEndcapPHits",
outputHitCollection="EcalEndcapPHitsDigi",
**ci_ecal_daq)
algorithms.append( ci_ecal_digi )
ci_ecal_reco = CalHitReco("ci_ecal_reco",
inputHitCollection=ci_ecal_digi.outputHitCollection,
outputHitCollection="EcalEndcapPHitsReco",
thresholdFactor=5.0,
**ci_ecal_daq)
algorithms.append( ci_ecal_reco )
# merge hits in different layer (projection to local x-y plane)
ci_ecal_merger = CalHitsMerger("ci_ecal_merger",
......@@ -177,6 +191,7 @@ ci_ecal_merger = CalHitsMerger("ci_ecal_merger",
fields=["layer", "slice"],
fieldRefNumbers=[1, 0],
readoutClass="EcalEndcapPHits")
algorithms.append( ci_ecal_merger )
ci_ecal_cl = IslandCluster("ci_ecal_cl",
inputHitCollection=ci_ecal_merger.outputHitCollection,
......@@ -184,6 +199,7 @@ ci_ecal_cl = IslandCluster("ci_ecal_cl",
splitCluster=False,
minClusterCenterEdep=10.*units.MeV,
localDistXY=[10*units.mm, 10*units.mm])
algorithms.append( ci_ecal_cl )
ci_ecal_clreco = RecoCoG("ci_ecal_clreco",
inputHitCollection=ci_ecal_cl.inputHitCollection,
......@@ -192,6 +208,7 @@ ci_ecal_clreco = RecoCoG("ci_ecal_clreco",
outputInfoCollection="EcalEndcapPClustersInfo",
logWeightBase=6.2,
samplingFraction=ci_ecal_sf)
algorithms.append( ci_ecal_clreco )
# Central Barrel Ecal (Imaging Cal.)
cb_ecal_daq = dict(
......@@ -205,6 +222,7 @@ cb_ecal_digi = CalHitDigi("cb_ecal_digi",
outputHitCollection="EcalBarrelHitsDigi",
energyResolutions=[0., 0.02, 0.], # 2% flat resolution
**cb_ecal_daq)
algorithms.append( cb_ecal_digi )
cb_ecal_reco = ImCalPixelReco("cb_ecal_reco",
inputHitCollection=cb_ecal_digi.outputHitCollection,
......@@ -214,6 +232,7 @@ cb_ecal_reco = ImCalPixelReco("cb_ecal_reco",
layerField="layer", # field to get layer id
sectorField="module", # field to get sector id
**cb_ecal_daq)
algorithms.append( cb_ecal_reco )
cb_ecal_cl = ImagingCluster("cb_ecal_cl",
inputHitCollection=cb_ecal_reco.outputHitCollection,
......@@ -222,6 +241,7 @@ cb_ecal_cl = ImagingCluster("cb_ecal_cl",
layerDistEtaPhi=[10*units.mrad, 10*units.mrad], # adjacent layer
neighbourLayersRange=2, # id diff for adjacent layer
sectorDist=3.*units.cm) # different sector
algorithms.append( cb_ecal_cl )
cb_ecal_clreco = ImagingClusterReco("cb_ecal_clreco",
samplingFraction=cb_ecal_sf,
......@@ -230,6 +250,7 @@ cb_ecal_clreco = ImagingClusterReco("cb_ecal_clreco",
outputClusterCollection="EcalBarrelClusters",
outputInfoCollection="EcalBarrelClustersInfo",
outputLayerCollection="EcalBarrelLayers")
algorithms.append( cb_ecal_clreco )
# Central ECAL SciFi
scfi_barrel_daq = dict(
......@@ -412,7 +433,7 @@ trk_ec_digi = TrackerDigi("trk_ec_digi",
vtx_b_digi = TrackerDigi("vtx_b_digi",
inputHitCollection="VertexBarrelHits",
outputHitCollection="VertexBarrelRawHits",
outputHitCollection="VertetimeResolution=10xBarrelRawHits",
timeResolution=8)
vtx_ec_digi = TrackerDigi("vtx_ec_digi",
......@@ -444,9 +465,8 @@ vtx_ec_reco = TrackerHitReconstruction("vtx_ec_reco",
gem_ec_reco = TrackerHitReconstruction("gem_ec_reco",
inputHitCollection=gem_ec_digi.outputHitCollection,
outputHitCollection="GEMTrackerEndcapRecHits",
timeResolution=10)
TrackingHitsCollector
outputHitCollection="GEMTrackerEndcapRecHits")
# Tracking hit collector
trk_hit_col = TrackingHitsCollector("trk_hit_col",
inputTrackingHits=[
......@@ -547,26 +567,7 @@ podout.outputCommands = [
]
ApplicationMgr(
TopAlg = [podin, copier, trkcopier,
ce_ecal_digi, ce_ecal_reco, ce_ecal_cl, ce_ecal_clreco,
ci_ecal_digi, ci_ecal_reco, ci_ecal_merger, ci_ecal_cl, ci_ecal_clreco,
cb_ecal_digi, cb_ecal_reco, cb_ecal_cl, cb_ecal_clreco,
scfi_barrel_digi, scfi_barrel_reco, scfi_barrel_merger, scfi_barrel_cl, scfi_barrel_clreco,
cb_hcal_digi, cb_hcal_reco, cb_hcal_merger, cb_hcal_cl, cb_hcal_clreco,
ce_hcal_digi, ce_hcal_reco, ce_hcal_merger, ce_hcal_cl, ce_hcal_clreco,
ci_hcal_digi, ci_hcal_reco, ci_hcal_merger, ci_hcal_cl, ci_hcal_clreco,
trk_b_digi, trk_ec_digi, vtx_b_digi, vtx_ec_digi,
trk_b_reco, trk_ec_reco, vtx_b_reco, vtx_ec_reco,
trk_hit_col,
sourcelinker, #trk_hits_srclnkr,
#clust_trk_init,
truth_trk_init, trk_find_alg, parts_from_fit,
#vtxcluster_trk_init,
#trk_find_alg1, parts_from_fit1,
#trk_find_alg2, parts_from_fit2,
pmtcopier, pmtdigi, pmtreco, #richcluster,
podout
],
TopAlg = algorithms,
EvtSel = 'NONE',
EvtMax = n_events,
ExtSvc = [podioevent,geo_service],
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment