Skip to content
Snippets Groups Projects
Commit 0d27580b authored by Wouter Deconinck's avatar Wouter Deconinck Committed by Wouter Deconinck
Browse files

Full reconstruction: ScFi reconstruction

parent 940eeff4
No related branches found
No related tags found
1 merge request!135Full reconstruction: ScFi reconstruction
...@@ -84,6 +84,7 @@ sim_coll = [ ...@@ -84,6 +84,7 @@ sim_coll = [
"EcalEndcapNHits", "EcalEndcapNHits",
"EcalEndcapPHits", "EcalEndcapPHits",
"EcalBarrelHits", "EcalBarrelHits",
"EcalBarrelScFiHits",
"HcalBarrelHits", "HcalBarrelHits",
"HcalHadronEndcapHits", "HcalHadronEndcapHits",
"HcalElectronEndcapHits", "HcalElectronEndcapHits",
...@@ -99,12 +100,12 @@ podin = PodioInput("PodioReader", collections=sim_coll) ...@@ -99,12 +100,12 @@ podin = PodioInput("PodioReader", collections=sim_coll)
podout = PodioOutput("out", filename=output_rec) podout = PodioOutput("out", filename=output_rec)
## copiers to get around input --> output copy bug. Note the "2" appended to the output collection. ## copiers to get around input --> output copy bug. Note the "2" appended to the output collection.
copier = MCCopier("MCCopier", copier = MCCopier("MCCopier",
inputCollection="mcparticles", inputCollection="mcparticles",
outputCollection="mcparticles2") outputCollection="mcparticles2")
trkcopier = TrkCopier("TrkCopier", trkcopier = TrkCopier("TrkCopier",
inputCollection="TrackerBarrelHits", inputCollection="TrackerBarrelHits",
outputCollection="TrackerBarrelHits2") outputCollection="TrackerBarrelHits2")
pmtcopier = PMTCopier("PMTCopier", pmtcopier = PMTCopier("PMTCopier",
inputCollection="ForwardRICHHits", inputCollection="ForwardRICHHits",
outputCollection="ForwardRICHHits2") outputCollection="ForwardRICHHits2")
...@@ -242,6 +243,49 @@ cb_ecal_clreco = ImagingClusterReco("cb_ecal_clreco", ...@@ -242,6 +243,49 @@ cb_ecal_clreco = ImagingClusterReco("cb_ecal_clreco",
outputClusterCollection="EcalBarrelClusters", outputClusterCollection="EcalBarrelClusters",
outputLayerCollection="EcalBarrelLayers") outputLayerCollection="EcalBarrelLayers")
# Central ECAL SciFi
scfi_barrel_daq = dict(
dynamicRangeADC=50.*MeV,
capacityADC=32768,
pedestalMean=400,
pedestalSigma=10)
scfi_barrel_digi = CalHitDigi("scfi_barrel_digi",
inputHitCollection="EcalBarrelScFiHits",
outputHitCollection="EcalBarrelScFiHitsDigi",
**scfi_barrel_daq)
scfi_barrel_reco = CalHitReco("scfi_barrel_reco",
inputHitCollection="EcalBarrelScFiHitsDigi",
outputHitCollection="EcalBarrelScFiHitsReco",
thresholdFactor=5.0,
readoutClass="EcalBarrelScFiHits",
layerField="layer",
sectorField="module",
localDetFields=["system", "module"], # use local coordinates in each module (stave)
**scfi_barrel_daq)
# merge hits in different layer (projection to local x-y plane)
scfi_barrel_merger = CalHitsMerger("scfi_barrel_merger",
inputHitCollection="EcalBarrelScFiHitsReco",
outputHitCollection="EcalBarrelScFiGridReco",
fields=["fiber"],
fieldRefNumbers=[1],
readoutClass="EcalBarrelScFiHits")
scfi_barrel_cl = IslandCluster("scfi_barrel_cl",
inputHitCollection="EcalBarrelScFiGridReco",
outputHitCollection="EcalBarrelScFiClusterHits",
splitCluster=False,
minClusterCenterEdep=10.*MeV,
localDistXZ=[30*mm, 30*mm])
scfi_barrel_clreco = RecoCoG("scfi_barrel_clreco",
inputHitCollection="EcalBarrelScFiClusterHits",
outputClusterCollection="EcalBarrelScFiClusters",
logWeightBase=6.2,
samplingFraction= scifi_barrel_sf)
# Central Barrel Hcal # Central Barrel Hcal
cb_hcal_daq = dict( cb_hcal_daq = dict(
dynamicRangeADC=50.*units.MeV, dynamicRangeADC=50.*units.MeV,
...@@ -365,17 +409,17 @@ trk_b_digi = TrackerDigi("trk_b_digi", ...@@ -365,17 +409,17 @@ trk_b_digi = TrackerDigi("trk_b_digi",
inputHitCollection="TrackerBarrelHits", inputHitCollection="TrackerBarrelHits",
outputHitCollection="TrackerBarrelRawHits", outputHitCollection="TrackerBarrelRawHits",
timeResolution=8) timeResolution=8)
trk_ec_digi = TrackerDigi("trk_ec_digi", trk_ec_digi = TrackerDigi("trk_ec_digi",
inputHitCollection="TrackerEndcapHits", inputHitCollection="TrackerEndcapHits",
outputHitCollection="TrackerEndcapRawHits", outputHitCollection="TrackerEndcapRawHits",
timeResolution=8) timeResolution=8)
vtx_b_digi = TrackerDigi("vtx_b_digi", vtx_b_digi = TrackerDigi("vtx_b_digi",
inputHitCollection="VertexBarrelHits", inputHitCollection="VertexBarrelHits",
outputHitCollection="VertexBarrelRawHits", outputHitCollection="VertexBarrelRawHits",
timeResolution=8) timeResolution=8)
vtx_ec_digi = TrackerDigi("vtx_ec_digi", vtx_ec_digi = TrackerDigi("vtx_ec_digi",
inputHitCollection="VertexEndcapHits", inputHitCollection="VertexEndcapHits",
outputHitCollection="VertexEndcapRawHits", outputHitCollection="VertexEndcapRawHits",
timeResolution=8) timeResolution=8)
...@@ -397,11 +441,11 @@ vtx_ec_reco = TrackerHitReconstruction("vtx_ec_reco", ...@@ -397,11 +441,11 @@ vtx_ec_reco = TrackerHitReconstruction("vtx_ec_reco",
inputHitCollection = vtx_ec_digi.outputHitCollection, inputHitCollection = vtx_ec_digi.outputHitCollection,
outputHitCollection="VertexEndcapRecHits") outputHitCollection="VertexEndcapRecHits")
# Hit Source linker # Hit Source linker
sourcelinker = TrackerSourceLinker("sourcelinker", sourcelinker = TrackerSourcesLinker("trk_srcslnkr",
inputHitCollection=trk_b_reco.outputHitCollection, inputHitCollections = ["VertexBarrelRecHits", "TrackerBarrelRecHits"],
outputSourceLinks="BarrelTrackSourceLinks", outputSourceLinks = "TrackerSourceLinks",
outputMeasurements="BarrelTrackMeasurements") outputMeasurements = "TrackerMeasurements")
#trk_hits_srclnkr = TrackerSourcesLinker("trk_srcslnkr", #trk_hits_srclnkr = TrackerSourcesLinker("trk_srcslnkr",
# ITrackerBarrelHits = vtx_b_reco.outputHitCollection, # ITrackerBarrelHits = vtx_b_reco.outputHitCollection,
...@@ -429,18 +473,18 @@ truth_trk_init = TrackParamTruthInit("truth_trk_init", ...@@ -429,18 +473,18 @@ truth_trk_init = TrackParamTruthInit("truth_trk_init",
trk_find_alg = TrackFindingAlgorithm("trk_find_alg", trk_find_alg = TrackFindingAlgorithm("trk_find_alg",
inputSourceLinks = sourcelinker.outputSourceLinks, inputSourceLinks = sourcelinker.outputSourceLinks,
inputMeasurements = sourcelinker.outputMeasurements, inputMeasurements = sourcelinker.outputMeasurements,
inputInitialTrackParameters= "InitTrackParamsFromTruth", inputInitialTrackParameters = "InitTrackParamsFromTruth",
outputTrajectories="trajectories") outputTrajectories = "trajectories")
parts_from_fit = ParticlesFromTrackFit("parts_from_fit", parts_from_fit = ParticlesFromTrackFit("parts_from_fit",
inputTrajectories="trajectories", inputTrajectories = "trajectories",
outputParticles="ReconstructedParticlesInitFromTruth", outputParticles = "ReconstructedParticlesInitFromTruth",
outputTrackParameters="outputTrackParameters") outputTrackParameters = "outputTrackParameters")
#trk_find_alg1 = TrackFindingAlgorithm("trk_find_alg1", #trk_find_alg1 = TrackFindingAlgorithm("trk_find_alg1",
# inputSourceLinks = sourcelinker.outputSourceLinks, # inputSourceLinks = sourcelinker.outputSourceLinks,
# inputMeasurements = sourcelinker.outputMeasurements, # inputMeasurements = sourcelinker.outputMeasurements,
# inputInitialTrackParameters= "InitTrackParamsFromClusters", # inputInitialTrackParameters= "InitTrackParamsFromClusters",
# outputTrajectories="trajectories1") # outputTrajectories="trajectories1")
#parts_from_fit1 = ParticlesFromTrackFit("parts_from_fit1", #parts_from_fit1 = ParticlesFromTrackFit("parts_from_fit1",
...@@ -451,7 +495,7 @@ parts_from_fit = ParticlesFromTrackFit("parts_from_fit", ...@@ -451,7 +495,7 @@ parts_from_fit = ParticlesFromTrackFit("parts_from_fit",
#trk_find_alg2 = TrackFindingAlgorithm("trk_find_alg2", #trk_find_alg2 = TrackFindingAlgorithm("trk_find_alg2",
# inputSourceLinks = trk_hits_srclnkr.outputSourceLinks, # inputSourceLinks = trk_hits_srclnkr.outputSourceLinks,
# inputMeasurements = trk_hits_srclnkr.outputMeasurements, # inputMeasurements = trk_hits_srclnkr.outputMeasurements,
# inputInitialTrackParameters= "InitTrackParamsFromVtxClusters", # inputInitialTrackParameters= "InitTrackParamsFromVtxClusters",
# outputTrajectories="trajectories2") # outputTrajectories="trajectories2")
#parts_from_fit2 = ParticlesFromTrackFit("parts_from_fit2", #parts_from_fit2 = ParticlesFromTrackFit("parts_from_fit2",
# inputTrajectories="trajectories2", # inputTrajectories="trajectories2",
...@@ -491,15 +535,16 @@ ApplicationMgr( ...@@ -491,15 +535,16 @@ ApplicationMgr(
ce_ecal_digi, ce_ecal_reco, ce_ecal_cl, ce_ecal_clreco, 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, 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, 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, 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, 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, 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_digi, trk_ec_digi, vtx_b_digi, vtx_ec_digi,
trk_b_reco, trk_ec_reco, vtx_b_reco, vtx_ec_reco, trk_b_reco, trk_ec_reco, vtx_b_reco, vtx_ec_reco,
sourcelinker, #trk_hits_srclnkr, sourcelinker, #trk_hits_srclnkr,
#clust_trk_init, #clust_trk_init,
truth_trk_init, truth_trk_init,
#vtxcluster_trk_init, #vtxcluster_trk_init,
trk_find_alg, parts_from_fit, trk_find_alg, parts_from_fit,
#trk_find_alg1, parts_from_fit1, #trk_find_alg1, parts_from_fit1,
#trk_find_alg2, parts_from_fit2, #trk_find_alg2, parts_from_fit2,
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment