From fc1176bf208ab90cd65d191cb2790677dc4c4b37 Mon Sep 17 00:00:00 2001
From: miguelignacio <miguel.arratia@ucr>
Date: Wed, 16 Jun 2021 11:41:52 -0700
Subject: [PATCH] adding HCal endcap clusters, fixing scale factors for both
 barrel and endcal HCAL

---
 .../clustering/options/full_cal_clustering.py | 48 ++++++++++++++++++-
 1 file changed, 47 insertions(+), 1 deletion(-)

diff --git a/benchmarks/clustering/options/full_cal_clustering.py b/benchmarks/clustering/options/full_cal_clustering.py
index ed736e8e..4f670f20 100644
--- a/benchmarks/clustering/options/full_cal_clustering.py
+++ b/benchmarks/clustering/options/full_cal_clustering.py
@@ -13,7 +13,9 @@ compact_path = os.path.join(detector_path, detector_name)
 # get sampling fractions from system environment variable, 1.0 by default
 ce_ecal_sf = float(os.environ.get("CE_ECAL_SAMP_FRAC", 0.253))
 cb_ecal_sf = float(os.environ.get("CB_ECAL_SAMP_FRAC", 0.01324))
-cb_hcal_sf = float(os.environ.get("CB_HCAL_SAMP_FRAC", 1.0))
+cb_hcal_sf = float(os.environ.get("CB_HCAL_SAMP_FRAC", 0.038))
+hcal_hadronendcap_sf = float(os.environ.get("CE_HCAL_HADRONENDCAP_SAMP_FRAC", 0.025))
+
 
 # input and output
 input_sims = [f.strip() for f in str.split(os.environ["FULL_CAL_SIM_FILE"], ",") if f.strip()]
@@ -46,6 +48,7 @@ sim_coll = [
     "EcalEndcapHits",
     "EcalBarrelHits",
     "HcalBarrelHits",
+    "HcalEndcapHits",
 ]
 
 # input and output
@@ -202,6 +205,47 @@ cb_hcal_clreco = RecoCoG("cb_hcal_clreco",
         logWeightBase=6.2,
         samplingFraction=cb_hcal_sf)
 
+
+##Hadron Endcap HCal                                                                                       
+hcal_hadronendcap_digi = CalHitDigi("hcal_hadronendcap_digi",
+         inputHitCollection="HcalEndcapHits",
+         outputHitCollection="HcalHadronEndcapHitsDigi",
+         dynamicRangeADC=50.*MeV,
+	 capacityADC=32768,
+	 pedestalMean=400,
+         pedestalSigma=10)
+
+hcal_hadronendcap_reco = CalHitReco("hcal_hadronendcap_reco",
+        inputHitCollection="HcalHadronEndcapHitsDigi",
+        outputHitCollection="HcalHadronEndcapHitsReco",
+        dynamicRangeADC=50.*MeV,
+        capacityADC=32768,
+	pedestalMean=400,
+        pedestalSigma=10,
+        thresholdFactor=5.0)
+
+hcal_hadronendcap_merger = CalHitsMerger("hcal_hadronendcap_merger",
+        inputHitCollection="HcalHadronEndcapHitsReco",
+	outputHitCollection="HcalHadronEndcapHitsRecoXY",
+	readoutClass="HcalEndcapHits",
+        fields=["layer", "slice"],
+	fieldRefNumbers=[1, 0])
+
+hcal_hadronendcap_cl = IslandCluster("hcal_hadronendcap_cl",
+        inputHitCollection="HcalHadronEndcapHitsRecoXY",
+        outputClusterCollection="HcalHadronEndcapClusters",
+        splitHitCollection="HcalHadronEndcapHitsSplit",
+	splitCluster=False,
+        minClusterCenterEdep=30.*MeV,
+        groupRanges=[15.*cm, 15.*cm])
+
+hcal_hadronendcap_clreco = RecoCoG("hcal_hadronendcap_clreco",
+        clusterCollection="HcalHadronEndcapClusters",
+	logWeightBase=6.2,
+	samplingFraction=hcal_hadronendcap_sf)
+
+
+
 podout.outputCommands = ["keep *"]
 
 ApplicationMgr(
@@ -210,6 +254,8 @@ ApplicationMgr(
               ce_ecal2_digi, ce_ecal2_reco, ce_ecal2_merger, ce_ecal2_cl, ce_ecal2_clreco,
               cb_ecal_digi, cb_ecal_reco, cb_ecal_cl, cb_ecal_clreco,
               cb_hcal_digi, cb_hcal_reco, cb_hcal_merger, cb_hcal_cl, cb_hcal_clreco,
+              hcal_hadronendcap_digi, hcal_hadronendcap_reco, hcal_hadronendcap_merger,
+              hcal_hadronendcap_cl, hcal_hadronendcap_clreco,
               podout],
     EvtSel = 'NONE',
     EvtMax   = n_events,
-- 
GitLab