diff --git a/Geometry/HGCalCommonData/data/dd4hep/cms-test-ddhgcalWafer8-algorithm.xml b/Geometry/HGCalCommonData/data/dd4hep/cms-test-ddhgcalWafer8-algorithm.xml
new file mode 100644
index 0000000000000..a2b99a7472e44
--- /dev/null
+++ b/Geometry/HGCalCommonData/data/dd4hep/cms-test-ddhgcalWafer8-algorithm.xml
@@ -0,0 +1,33 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Geometry/HGCalCommonData/plugins/DDHGCalCell.cc b/Geometry/HGCalCommonData/plugins/DDHGCalCell.cc
index 38e01eaa6c426..eecd077e2388c 100644
--- a/Geometry/HGCalCommonData/plugins/DDHGCalCell.cc
+++ b/Geometry/HGCalCommonData/plugins/DDHGCalCell.cc
@@ -18,8 +18,7 @@
class DDHGCalCell : public DDAlgorithm {
public:
// Constructor and Destructor
- DDHGCalCell();
- ~DDHGCalCell() override;
+ DDHGCalCell() {}
void initialize(const DDNumericArguments& nArgs,
const DDVectorArguments& vArgs,
@@ -42,14 +41,6 @@ class DDHGCalCell : public DDAlgorithm {
std::string nameSpace_; // Namespace to be used
};
-DDHGCalCell::DDHGCalCell() {
-#ifdef EDM_ML_DEBUG
- edm::LogVerbatim("HGCalGeom") << "DDHGCalCell: Creating an instance";
-#endif
-}
-
-DDHGCalCell::~DDHGCalCell() {}
-
void DDHGCalCell::initialize(const DDNumericArguments& nArgs,
const DDVectorArguments&,
const DDMapArguments&,
@@ -84,7 +75,7 @@ void DDHGCalCell::initialize(const DDNumericArguments& nArgs,
#ifdef EDM_ML_DEBUG
edm::LogVerbatim("HGCalGeom") << "DDHGCalCell: Wafer r " << waferSize_ << " T " << waferT_ << " Cell T " << cellT_
<< " Cells/Wafer " << nCells_ << " Material " << material_ << "Sensitive Position "
- << posSens_ << " NameSpace " << nameSpace_ << " Full Cell: " << fullCN_ << ":"
+ << posSens_ << " NameSpace " << nameSpace_ << ": Full Cell: " << fullCN_ << ":"
<< fullSensN_;
for (unsigned int k = 0; k < truncCN_.size(); ++k)
edm::LogVerbatim("HGCalGeom") << "DDHGCalCell: Truncated Cell[" << k << "] " << truncCN_[k] << ":"
@@ -97,14 +88,10 @@ void DDHGCalCell::initialize(const DDNumericArguments& nArgs,
}
void DDHGCalCell::execute(DDCompactView& cpv) {
-#ifdef EDM_ML_DEBUG
- edm::LogVerbatim("HGCalGeom") << "==>> Executing DDHGCalCell...";
-#endif
-
DDName matName(DDSplit(material_).first, DDSplit(material_).second);
DDMaterial matter(matName);
#ifdef EDM_ML_DEBUG
- edm::LogVerbatim("HGCalGeom") << "DDHGCalCell: " << matName << " initialized at " << &matter;
+ edm::LogVerbatim("HGCalGeom") << "DDHGCalCell: " << matName << " initialized";
#endif
DDLogicalPart glog1, glog2;
@@ -187,7 +174,7 @@ void DDHGCalCell::execute(DDCompactView& cpv) {
cpv.position(glog2, glog1, 1, tran, rot);
#ifdef EDM_ML_DEBUG
edm::LogVerbatim("HGCalGeom") << "DDHGCalCell: " << glog2.name() << " number 1 position in " << glog1.name()
- << " at " << tran << " with " << rot;
+ << " at " << tran << " with no rotation";
#endif
}
@@ -222,7 +209,7 @@ void DDHGCalCell::execute(DDCompactView& cpv) {
cpv.position(glog2, glog1, 1, tran, rot);
#ifdef EDM_ML_DEBUG
edm::LogVerbatim("HGCalGeom") << "DDHGCalCell: " << glog2.name() << " number 1 position in " << glog1.name()
- << " at " << tran << " with " << rot;
+ << " at " << tran << " with no rotation";
#endif
}
@@ -257,7 +244,7 @@ void DDHGCalCell::execute(DDCompactView& cpv) {
cpv.position(glog2, glog1, 1, tran, rot);
#ifdef EDM_ML_DEBUG
edm::LogVerbatim("HGCalGeom") << "DDHGCalCell: " << glog2.name() << " number 1 position in " << glog1.name()
- << " at " << tran << " with " << rot;
+ << " at " << tran << " with no rotation";
#endif
}
}
diff --git a/Geometry/HGCalCommonData/plugins/DDHGCalEEFileAlgo.cc b/Geometry/HGCalCommonData/plugins/DDHGCalEEFileAlgo.cc
index 3c1472fab82f5..ea365dde75317 100644
--- a/Geometry/HGCalCommonData/plugins/DDHGCalEEFileAlgo.cc
+++ b/Geometry/HGCalCommonData/plugins/DDHGCalEEFileAlgo.cc
@@ -194,7 +194,7 @@ void DDHGCalEEFileAlgo::initialize(const DDNumericArguments& nArgs,
#endif
nameSpace_ = DDCurrentNamespace::ns();
#ifdef EDM_ML_DEBUG
- edm::LogVerbatim("HGCalGeom") << "DDHGCalEEFileAlgo: NameSpace " << nameSpace_;
+ edm::LogVerbatim("HGCalGeom") << "DDHGCalEEFileAlgo: NameSpace " << nameSpace_ << ":";
#endif
}
@@ -220,9 +220,6 @@ void DDHGCalEEFileAlgo::execute(DDCompactView& cpv) {
}
void DDHGCalEEFileAlgo::constructLayers(const DDLogicalPart& module, DDCompactView& cpv) {
-#ifdef EDM_ML_DEBUG
- edm::LogVerbatim("HGCalGeom") << "DDHGCalEEFileAlgo: \t\tInside Layers";
-#endif
double zi(zMinBlock_);
int laymin(0);
for (unsigned int i = 0; i < layers_.size(); i++) {
@@ -289,10 +286,10 @@ void DDHGCalEEFileAlgo::constructLayers(const DDLogicalPart& module, DDCompactVi
DDSolid solid = DDSolidFactory::tubs(DDName(name, nameSpace_), hthick, rins, routs, 0.0, 2._pi);
glog = DDLogicalPart(solid.ddname(), matter, solid);
#ifdef EDM_ML_DEBUG
- edm::LogVerbatim("HGCalGeom") << "DDHGCalEEFileAlgo: " << solid.name() << " Tubs made of " << matName << ":"
- << &matter << " of dimensions " << rinB << ":" << rins << ", " << routF << ":"
- << routs << ", " << hthick << ", 0.0, 360.0 and position " << glog.name()
- << " number " << copy << ":" << layerCenter_[copy - firstLayer_];
+ edm::LogVerbatim("HGCalGeom") << "DDHGCalEEFileAlgo: " << solid.name() << " Tubs made of " << matName
+ << " of dimensions " << rinB << ":" << rins << ", " << routF << ":" << routs
+ << ", " << hthick << ", 0.0, 360.0 and position " << glog.name() << " number "
+ << copy << ":" << layerCenter_[copy - firstLayer_];
#endif
positionSensitive(glog, rins, routs, zz, layerSense_[ly], (copy - firstLayer_), cpv);
}
diff --git a/Geometry/HGCalCommonData/plugins/DDHGCalHEFileAlgo.cc b/Geometry/HGCalCommonData/plugins/DDHGCalHEFileAlgo.cc
index 79855c0748031..ce58f61ab1a03 100644
--- a/Geometry/HGCalCommonData/plugins/DDHGCalHEFileAlgo.cc
+++ b/Geometry/HGCalCommonData/plugins/DDHGCalHEFileAlgo.cc
@@ -248,7 +248,7 @@ void DDHGCalHEFileAlgo::initialize(const DDNumericArguments& nArgs,
#endif
nameSpace_ = DDCurrentNamespace::ns();
#ifdef EDM_ML_DEBUG
- edm::LogVerbatim("HGCalGeom") << "DDHGCalHEFileAlgo: NameSpace " << nameSpace_;
+ edm::LogVerbatim("HGCalGeom") << "DDHGCalHEFileAlgo: NameSpace " << nameSpace_ << ":";
#endif
}
@@ -274,9 +274,6 @@ void DDHGCalHEFileAlgo::execute(DDCompactView& cpv) {
}
void DDHGCalHEFileAlgo::constructLayers(const DDLogicalPart& module, DDCompactView& cpv) {
-#ifdef EDM_ML_DEBUG
- edm::LogVerbatim("HGCalGeom") << "DDHGCalHEFileAlgo: \t\tInside Layers";
-#endif
double zi(zMinBlock_);
int laymin(0);
for (unsigned int i = 0; i < layers_.size(); i++) {
diff --git a/Geometry/HGCalCommonData/plugins/DDHGCalWafer8.cc b/Geometry/HGCalCommonData/plugins/DDHGCalWafer8.cc
index 3e548f5c551b9..d14168404c213 100644
--- a/Geometry/HGCalCommonData/plugins/DDHGCalWafer8.cc
+++ b/Geometry/HGCalCommonData/plugins/DDHGCalWafer8.cc
@@ -19,8 +19,7 @@
class DDHGCalWafer8 : public DDAlgorithm {
public:
// Constructor and Destructor
- DDHGCalWafer8();
- ~DDHGCalWafer8() override;
+ DDHGCalWafer8() {}
void initialize(const DDNumericArguments& nArgs,
const DDVectorArguments& vArgs,
@@ -33,7 +32,6 @@ class DDHGCalWafer8 : public DDAlgorithm {
double waferSize_; // Wafer size
double waferT_; // Wafer thickness
double waferSepar_; // Sensor separation
- double mouseBite_; // MouseBite radius
int nCells_; // Half number of cells along u-v axis
int cellType_; // Cell Type (0,1,2: Fine, Course 2/3)
std::string material_; // Material name for module with gap
@@ -41,14 +39,6 @@ class DDHGCalWafer8 : public DDAlgorithm {
std::string nameSpace_; // Namespace to be used
};
-DDHGCalWafer8::DDHGCalWafer8() {
-#ifdef EDM_ML_DEBUG
- edm::LogVerbatim("HGCalGeom") << "DDHGCalWafer8: Creating an instance";
-#endif
-}
-
-DDHGCalWafer8::~DDHGCalWafer8() {}
-
void DDHGCalWafer8::initialize(const DDNumericArguments& nArgs,
const DDVectorArguments&,
const DDMapArguments&,
@@ -57,7 +47,6 @@ void DDHGCalWafer8::initialize(const DDNumericArguments& nArgs,
waferSize_ = nArgs["WaferSize"];
waferT_ = nArgs["WaferThick"];
waferSepar_ = nArgs["SensorSeparation"];
- mouseBite_ = nArgs["MouseBite"];
nCells_ = (int)(nArgs["NCells"]);
cellType_ = (int)(nArgs["CellType"]);
material_ = sArgs["Material"];
@@ -65,20 +54,15 @@ void DDHGCalWafer8::initialize(const DDNumericArguments& nArgs,
nameSpace_ = DDCurrentNamespace::ns();
#ifdef EDM_ML_DEBUG
edm::LogVerbatim("HGCalGeom") << "DDHGCalWafer8: Wafer 2r " << waferSize_ << " T " << waferT_ << " Half Separation "
- << waferSepar_ << " Mouse bite radius " << mouseBite_ << " Cells/Wafer " << nCells_
- << " Cell Type " << cellType_ << " Material " << material_ << " Names "
- << parent().name() << " NameSpace " << nameSpace_ << " # of cells "
- << cellNames_.size();
+ << waferSepar_ << " Cells/Wafer " << nCells_ << " Cell Type " << cellType_
+ << " Material " << material_ << " Names " << parent().name() << " NameSpace "
+ << nameSpace_ << ": # of cells " << cellNames_.size();
for (unsigned int k = 0; k < cellNames_.size(); ++k)
edm::LogVerbatim("HGCalGeom") << "DDHGCalWafer8: Cell[" << k << "] " << cellNames_[k];
#endif
}
void DDHGCalWafer8::execute(DDCompactView& cpv) {
-#ifdef EDM_ML_DEBUG
- edm::LogVerbatim("HGCalGeom") << "==>> Executing DDHGCalWafer8...";
-#endif
-
static const double sqrt3 = std::sqrt(3.0);
double rM = 0.5 * (waferSize_ + waferSepar_);
double RM2 = rM / sqrt3;
@@ -102,12 +86,16 @@ void DDHGCalWafer8::execute(DDCompactView& cpv) {
<< " and " << xM.size() << " edges";
for (unsigned int k = 0; k < xM.size(); ++k)
edm::LogVerbatim("HGCalGeom") << "[" << k << "] " << xM[k] << ":" << yM[k];
+ int counter(0);
#endif
DDRotation rot;
for (int u = 0; u < 2 * nCells_; ++u) {
for (int v = 0; v < 2 * nCells_; ++v) {
if (((v - u) < nCells_) && (u - v) <= nCells_) {
+#ifdef EDM_ML_DEBUG
+ counter++;
+#endif
int n2 = nCells_ / 2;
double yp = (u - 0.5 * v - n2) * 2 * r;
double xp = (1.5 * (v - nCells_) + 1.0) * R;
@@ -146,6 +134,9 @@ void DDHGCalWafer8::execute(DDCompactView& cpv) {
}
}
}
+#ifdef EDM_ML_DEBUG
+ edm::LogVerbatim("HGCalGeom") << "\nDDHGCalWafer8::Counter : " << counter << "\n===============================\n";
+#endif
}
DEFINE_EDM_PLUGIN(DDAlgorithmFactory, DDHGCalWafer8, "hgcal:DDHGCalWafer8");
diff --git a/Geometry/HGCalCommonData/plugins/dd4hep/DDHGCalCell.cc b/Geometry/HGCalCommonData/plugins/dd4hep/DDHGCalCell.cc
index 2a94abac48d61..c30f102548ebc 100644
--- a/Geometry/HGCalCommonData/plugins/dd4hep/DDHGCalCell.cc
+++ b/Geometry/HGCalCommonData/plugins/dd4hep/DDHGCalCell.cc
@@ -53,19 +53,18 @@ static long algorithm(dd4hep::Detector& /* description */, cms::DDParsingContext
edm::LogVerbatim("HGCalGeom") << "DDHGCalCell: Wafer r " << cms::convert2mm(waferSize) << " T "
<< cms::convert2mm(waferT) << " Cell T " << cms::convert2mm(cellT) << " Cells/Wafer "
<< nCells << " Material " << material << "Sensitive Position " << posSens
- << " Full Cell: " << fullCN << ":" << fullSensN;
+ << " NameSpace " << ns.name() << " Full Cell: " << fullCN << ":" << fullSensN;
for (int k = 0; k < 3; ++k)
edm::LogVerbatim("HGCalGeom") << "DDHGCalCell: Truncated Cell[" << k << "] " << truncCN[k] << ":" << truncSensN[k];
for (int k = 0; k < 3; ++k)
edm::LogVerbatim("HGCalGeom") << "DDHGCalCell: Extended Cell[" << k << "] " << extenCN[k] << ":" << extenSensN[k];
for (int k = 0; k < 6; ++k)
edm::LogVerbatim("HGCalGeom") << "DDHGCalCell: Corner Cell[" << k << "] " << cornrCN[k] << ":" << cornrSensN[k];
- edm::LogVerbatim("HGCalGeom") << "Name space " << ns.name();
#endif
dd4hep::Material matter = ns.material(material);
#ifdef EDM_ML_DEBUG
- edm::LogVerbatim("HGCalGeom") << "DDHGCalCell: " << material << " initialized at " << &matter;
+ edm::LogVerbatim("HGCalGeom") << "DDHGCalCell: " << material << " initialized";
#endif
dd4hep::Volume glog1, glog2;
@@ -119,8 +118,7 @@ static long algorithm(dd4hep::Detector& /* description */, cms::DDParsingContext
edm::LogVerbatim("HGCalGeom") << "[" << k << "] " << cms::convert2mm(xw[k]) << ":" << cms::convert2mm(yw[k]);
#endif
- dd4hep::Rotation3D rotation;
- glog1.placeVolume(glog2, 1, dd4hep::Transform3D(rotation, tran));
+ glog1.placeVolume(glog2, 1, tran);
#ifdef EDM_ML_DEBUG
edm::LogVerbatim("HGCalGeom") << "DDHGCalCell: " << glog2.name() << " number 1 position in " << glog1.name()
<< " at (0,0," << cms::convert2mm(zpos) << ") with no rotation";
@@ -162,7 +160,7 @@ static long algorithm(dd4hep::Detector& /* description */, cms::DDParsingContext
for (unsigned int k = 0; k < xw.size(); ++k)
edm::LogVerbatim("HGCalGeom") << "[" << k << "] " << cms::convert2mm(xw[k]) << ":" << cms::convert2mm(yw[k]);
#endif
- glog1.placeVolume(glog2, 1, dd4hep::Transform3D(rotation, tran));
+ glog1.placeVolume(glog2, 1, tran);
#ifdef EDM_ML_DEBUG
edm::LogVerbatim("HGCalGeom") << "DDHGCalCell: " << glog2.name() << " number 1 position in " << glog1.name()
<< " at (0,0," << cms::convert2mm(zpos) << ") with no rotation";
@@ -203,10 +201,10 @@ static long algorithm(dd4hep::Detector& /* description */, cms::DDParsingContext
for (unsigned int k = 0; k < xw.size(); ++k)
edm::LogVerbatim("HGCalGeom") << "[" << k << "] " << cms::convert2mm(xw[k]) << ":" << cms::convert2mm(yw[k]);
#endif
- glog1.placeVolume(glog2, 1, dd4hep::Transform3D(rotation, tran));
+ glog1.placeVolume(glog2, 1, tran);
#ifdef EDM_ML_DEBUG
edm::LogVerbatim("HGCalGeom") << "DDHGCalCell: " << glog2.name() << " number 1 position in " << glog1.name()
- << " at (0,0," << cms::convert2mm(zpos) << " with no rotation";
+ << " at (0,0," << cms::convert2mm(zpos) << ") with no rotation";
#endif
}
@@ -244,10 +242,10 @@ static long algorithm(dd4hep::Detector& /* description */, cms::DDParsingContext
for (unsigned int k = 0; k < xw.size(); ++k)
edm::LogVerbatim("HGCalGeom") << "[" << k << "] " << cms::convert2mm(xw[k]) << ":" << cms::convert2mm(yw[k]);
#endif
- glog1.placeVolume(glog2, 1, dd4hep::Transform3D(rotation, tran));
+ glog1.placeVolume(glog2, 1, tran);
#ifdef EDM_ML_DEBUG
edm::LogVerbatim("HGCalGeom") << "DDHGCalCell: " << glog2.name() << " number 1 position in " << glog1.name()
- << " at (0,0," << cms::convert2mm(zpos) << " with no rotation";
+ << " at (0,0," << cms::convert2mm(zpos) << ") with no rotation";
#endif
}
return cms::s_executed;
diff --git a/Geometry/HGCalCommonData/plugins/dd4hep/DDHGCalHEFileAlgo.cc b/Geometry/HGCalCommonData/plugins/dd4hep/DDHGCalHEFileAlgo.cc
index 7391cb5c74fbb..52ef2236c155f 100644
--- a/Geometry/HGCalCommonData/plugins/dd4hep/DDHGCalHEFileAlgo.cc
+++ b/Geometry/HGCalCommonData/plugins/dd4hep/DDHGCalHEFileAlgo.cc
@@ -483,8 +483,9 @@ struct HGCalHEFileAlgo {
#ifdef EDM_ML_DEBUG
int ium(0), ivm(0), iumAll(0), ivmAll(0), kount(0), ntot(0), nin(0);
std::vector ntype(6, 0);
- edm::LogVerbatim("HGCalGeom") << "DDHGCalHEFileAlgo: " << glog.name() << " rout " << cms::convert2mm(rout) << " N "
- << N << " for maximum u, v Offset; Shift " << cms::convert2mm(xyoff.first) << ":"
+ edm::LogVerbatim("HGCalGeom") << "DDHGCalHEFileAlgo: " << glog.name() << " rin:rout " << cms::convert2mm(rin) << ":"
+ << cms::convert2mm(rout) << " zpos " << cms::convert2mm(zpos) << " N " << N
+ << " for maximum u, v Offset; Shift " << cms::convert2mm(xyoff.first) << ":"
<< cms::convert2mm(xyoff.second) << " WaferSize "
<< cms::convert2mm((waferSize_ + waferSepar_));
#endif
@@ -506,6 +507,8 @@ struct HGCalHEFileAlgo {
int type = HGCalWaferType::getType(indx, waferIndex_, waferProperty_);
if (corner.first > 0 && type >= 0) {
int copy = HGCalTypes::packTypeUV(type, u, v);
+ if (layertype > 1)
+ type += 3;
#ifdef EDM_ML_DEBUG
edm::LogVerbatim("HGCalGeom") << " DDHGCalHEFileAlgo: " << waferNames_[type] << " number " << copy << " type "
<< type << " layer:u:v:indx " << (layer + firstLayer_) << ":" << u << ":" << v
@@ -526,17 +529,14 @@ struct HGCalHEFileAlgo {
ivmAll = iv;
++nin;
#endif
-
dd4hep::Position tran(xpos, ypos, 0.0);
- if (layertype > 1)
- type += 3;
glog.placeVolume(ns.volume(waferNames_[type]), copy, tran);
-
#ifdef EDM_ML_DEBUG
++ntype[type];
edm::LogVerbatim("HGCalGeom")
- << "DDHGCalHEFileAlgo: " << glog.name() << " number " << copy << " positioned in " << glog.name()
- << " at (" << cms::convert2mm(xpos) << ", " << cms::convert2mm(ypos) << ", 0) with no rotation";
+ << "DDHGCalHEFileAlgo: " << waferNames_[type] << " number " << copy << " type " << layertype << ":"
+ << type << " positioned in " << glog.name() << " at (" << cms::convert2mm(xpos) << ", "
+ << cms::convert2mm(ypos) << ", 0) with no rotation";
#endif
}
}
diff --git a/Geometry/HGCalCommonData/python/testHGCalWafer8XML_cfi.py b/Geometry/HGCalCommonData/python/testHGCalWafer8XML_cfi.py
index fe896fd23877c..f326c1fcec214 100644
--- a/Geometry/HGCalCommonData/python/testHGCalWafer8XML_cfi.py
+++ b/Geometry/HGCalCommonData/python/testHGCalWafer8XML_cfi.py
@@ -1,14 +1,15 @@
import FWCore.ParameterSet.Config as cms
XMLIdealGeometryESSource = cms.ESSource("XMLIdealGeometryESSource",
- geomXMLFiles = cms.vstring('Geometry/CMSCommonData/data/materials.xml',
+ geomXMLFiles = cms.vstring(
+ 'Geometry/CMSCommonData/data/materials/2021/v1/materials.xml',
'Geometry/CMSCommonData/data/rotations.xml',
'Geometry/HGCalCommonData/test/cms.xml',
'Geometry/HGCalCommonData/data/hgcalwafer/v9/hgcal.xml',
- 'Geometry/HGCalCommonData/data/hgcalwafer/v9/hgcalpos.xml',
+ 'Geometry/HGCalCommonData/data/hgcalcell/v9/hgcalcell.xml',
'Geometry/HGCalCommonData/data/hgcalwafer/v9/hgcalwafer.xml',
- 'Geometry/HGCalCommonData/data/hgcalcell/v9/hgcalcell.xml'),
- rootNodeName = cms.string('cms:OCMS')
+ 'Geometry/HGCalCommonData/data/hgcalwafer/v9/hgcalpos.xml'),
+ rootNodeName = cms.string('cms:OCMS')
)
diff --git a/Geometry/HGCalCommonData/test/cms.xml b/Geometry/HGCalCommonData/test/cms.xml
index b42537f44de7a..16cc2d0cd146a 100644
--- a/Geometry/HGCalCommonData/test/cms.xml
+++ b/Geometry/HGCalCommonData/test/cms.xml
@@ -15,6 +15,10 @@
+
+
+
+
diff --git a/Geometry/HGCalCommonData/test/python/runHGCalD76DD4Hep_cfg.py b/Geometry/HGCalCommonData/test/python/runHGCalD76DD4Hep_cfg.py
new file mode 100644
index 0000000000000..9123193fd2a26
--- /dev/null
+++ b/Geometry/HGCalCommonData/test/python/runHGCalD76DD4Hep_cfg.py
@@ -0,0 +1,151 @@
+import FWCore.ParameterSet.Config as cms
+
+from Configuration.Eras.Era_Phase2C11I13M9_cff import Phase2C11I13M9
+from Configuration.ProcessModifiers.dd4hep_cff import dd4hep
+
+process = cms.Process('SIM',Phase2C11I13M9,dd4hep)
+
+# import of standard configurations
+process.load('Configuration.StandardSequences.Services_cff')
+process.load('SimGeneral.HepPDTESSource.pythiapdt_cfi')
+process.load('FWCore.MessageService.MessageLogger_cfi')
+process.load('Configuration.EventContent.EventContent_cff')
+process.load('SimGeneral.MixingModule.mixNoPU_cfi')
+process.load('Configuration.Geometry.GeometryDD4hepExtended2026D76Reco_cff')
+process.load('Configuration.StandardSequences.MagneticField_cff')
+process.load('Configuration.StandardSequences.Generator_cff')
+process.load('IOMC.EventVertexGenerators.VtxSmearedHLLHC14TeV_cfi')
+process.load('GeneratorInterface.Core.genFilterSummary_cff')
+process.load('Configuration.StandardSequences.SimIdeal_cff')
+process.load('Configuration.StandardSequences.EndOfProcess_cff')
+process.load('Configuration.StandardSequences.FrontierConditions_GlobalTag_cff')
+
+process.maxEvents = cms.untracked.PSet(
+ input = cms.untracked.int32(10),
+ output = cms.optional.untracked.allowed(cms.int32,cms.PSet)
+)
+
+# Input source
+process.source = cms.Source("EmptySource")
+
+process.options = cms.untracked.PSet(
+ FailPath = cms.untracked.vstring(),
+ IgnoreCompletely = cms.untracked.vstring(),
+ Rethrow = cms.untracked.vstring(),
+ SkipEvent = cms.untracked.vstring(),
+ allowUnscheduled = cms.obsolete.untracked.bool,
+ canDeleteEarly = cms.untracked.vstring(),
+ deleteNonConsumedUnscheduledModules = cms.untracked.bool(True),
+ emptyRunLumiMode = cms.obsolete.untracked.string,
+ eventSetup = cms.untracked.PSet(
+ forceNumberOfConcurrentIOVs = cms.untracked.PSet(
+ allowAnyLabel_=cms.required.untracked.uint32
+ ),
+ numberOfConcurrentIOVs = cms.untracked.uint32(1)
+ ),
+ fileMode = cms.untracked.string('FULLMERGE'),
+ forceEventSetupCacheClearOnNewRun = cms.untracked.bool(False),
+ makeTriggerResults = cms.obsolete.untracked.bool,
+ numberOfConcurrentLuminosityBlocks = cms.untracked.uint32(1),
+ numberOfConcurrentRuns = cms.untracked.uint32(1),
+ numberOfStreams = cms.untracked.uint32(0),
+ numberOfThreads = cms.untracked.uint32(1),
+ printDependencies = cms.untracked.bool(False),
+ sizeOfStackForThreadsInKB = cms.optional.untracked.uint32,
+ throwIfIllegalParameter = cms.untracked.bool(True),
+ wantSummary = cms.untracked.bool(False)
+)
+
+# Production Info
+process.configurationMetadata = cms.untracked.PSet(
+ annotation = cms.untracked.string('TTbar_14TeV_TuneCP5_cfi nevts:10'),
+ name = cms.untracked.string('Applications'),
+ version = cms.untracked.string('$Revision: 1.19 $')
+)
+
+
+# Additional output definition
+
+# Other statements
+process.genstepfilter.triggerConditions=cms.vstring("generation_step")
+from Configuration.AlCa.GlobalTag import GlobalTag
+process.GlobalTag = GlobalTag(process.GlobalTag, 'auto:phase2_realistic_T21', '')
+
+process.generator = cms.EDFilter("Pythia8GeneratorFilter",
+ PythiaParameters = cms.PSet(
+ parameterSets = cms.vstring(
+ 'pythia8CommonSettings',
+ 'pythia8CP5Settings',
+ 'processParameters'
+ ),
+ processParameters = cms.vstring(
+ 'Top:gg2ttbar = on ',
+ 'Top:qqbar2ttbar = on ',
+ '6:m0 = 175 '
+ ),
+ pythia8CP5Settings = cms.vstring(
+ 'Tune:pp 14',
+ 'Tune:ee 7',
+ 'MultipartonInteractions:ecmPow=0.03344',
+ 'MultipartonInteractions:bProfile=2',
+ 'MultipartonInteractions:pT0Ref=1.41',
+ 'MultipartonInteractions:coreRadius=0.7634',
+ 'MultipartonInteractions:coreFraction=0.63',
+ 'ColourReconnection:range=5.176',
+ 'SigmaTotal:zeroAXB=off',
+ 'SpaceShower:alphaSorder=2',
+ 'SpaceShower:alphaSvalue=0.118',
+ 'SigmaProcess:alphaSvalue=0.118',
+ 'SigmaProcess:alphaSorder=2',
+ 'MultipartonInteractions:alphaSvalue=0.118',
+ 'MultipartonInteractions:alphaSorder=2',
+ 'TimeShower:alphaSorder=2',
+ 'TimeShower:alphaSvalue=0.118',
+ 'SigmaTotal:mode = 0',
+ 'SigmaTotal:sigmaEl = 21.89',
+ 'SigmaTotal:sigmaTot = 100.309',
+ 'PDF:pSet=LHAPDF6:NNPDF31_nnlo_as_0118'
+ ),
+ pythia8CommonSettings = cms.vstring(
+ 'Tune:preferLHAPDF = 2',
+ 'Main:timesAllowErrors = 10000',
+ 'Check:epTolErr = 0.01',
+ 'Beams:setProductionScalesFromLHEF = off',
+ 'SLHA:minMassSM = 1000.',
+ 'ParticleDecays:limitTau0 = on',
+ 'ParticleDecays:tau0Max = 10',
+ 'ParticleDecays:allowPhotonRadiation = on'
+ )
+ ),
+ comEnergy = cms.double(14000.0),
+ filterEfficiency = cms.untracked.double(1.0),
+ maxEventsToPrint = cms.untracked.int32(0),
+ pythiaHepMCVerbosity = cms.untracked.bool(False),
+ pythiaPylistVerbosity = cms.untracked.int32(0)
+)
+
+
+process.ProductionFilterSequence = cms.Sequence(process.generator)
+
+# Path and EndPath definitions
+process.generation_step = cms.Path(process.pgen)
+process.simulation_step = cms.Path(process.psim)
+process.genfiltersummary_step = cms.EndPath(process.genFilterSummary)
+process.endjob_step = cms.EndPath(process.endOfProcess)
+
+# Schedule definition
+process.schedule = cms.Schedule(process.generation_step,process.genfiltersummary_step,process.simulation_step,process.endjob_step)
+from PhysicsTools.PatAlgos.tools.helpers import associatePatAlgosToolsTask
+associatePatAlgosToolsTask(process)
+# filter all path with the production filter sequence
+for path in process.paths:
+ getattr(process,path).insert(0, process.ProductionFilterSequence)
+
+
+
+# Customisation from command line
+
+# Add early deletion of temporary data products to reduce peak memory need
+from Configuration.StandardSequences.earlyDeleteSettings_cff import customiseEarlyDelete
+process = customiseEarlyDelete(process)
+# End adding early deletion
diff --git a/Geometry/HGCalCommonData/test/python/runHGCalD76DDD_cfg.py b/Geometry/HGCalCommonData/test/python/runHGCalD76DDD_cfg.py
new file mode 100644
index 0000000000000..99280b4d6debd
--- /dev/null
+++ b/Geometry/HGCalCommonData/test/python/runHGCalD76DDD_cfg.py
@@ -0,0 +1,150 @@
+import FWCore.ParameterSet.Config as cms
+
+from Configuration.Eras.Era_Phase2C11I13M9_cff import Phase2C11I13M9
+
+process = cms.Process('SIM',Phase2C11I13M9)
+
+# import of standard configurations
+process.load('Configuration.StandardSequences.Services_cff')
+process.load('SimGeneral.HepPDTESSource.pythiapdt_cfi')
+process.load('FWCore.MessageService.MessageLogger_cfi')
+process.load('Configuration.EventContent.EventContent_cff')
+process.load('SimGeneral.MixingModule.mixNoPU_cfi')
+process.load('Configuration.Geometry.GeometryExtended2026D76Reco_cff')
+process.load('Configuration.StandardSequences.MagneticField_cff')
+process.load('Configuration.StandardSequences.Generator_cff')
+process.load('IOMC.EventVertexGenerators.VtxSmearedHLLHC14TeV_cfi')
+process.load('GeneratorInterface.Core.genFilterSummary_cff')
+process.load('Configuration.StandardSequences.SimIdeal_cff')
+process.load('Configuration.StandardSequences.EndOfProcess_cff')
+process.load('Configuration.StandardSequences.FrontierConditions_GlobalTag_cff')
+
+process.maxEvents = cms.untracked.PSet(
+ input = cms.untracked.int32(10),
+ output = cms.optional.untracked.allowed(cms.int32,cms.PSet)
+)
+
+# Input source
+process.source = cms.Source("EmptySource")
+
+process.options = cms.untracked.PSet(
+ FailPath = cms.untracked.vstring(),
+ IgnoreCompletely = cms.untracked.vstring(),
+ Rethrow = cms.untracked.vstring(),
+ SkipEvent = cms.untracked.vstring(),
+ allowUnscheduled = cms.obsolete.untracked.bool,
+ canDeleteEarly = cms.untracked.vstring(),
+ deleteNonConsumedUnscheduledModules = cms.untracked.bool(True),
+ emptyRunLumiMode = cms.obsolete.untracked.string,
+ eventSetup = cms.untracked.PSet(
+ forceNumberOfConcurrentIOVs = cms.untracked.PSet(
+ allowAnyLabel_=cms.required.untracked.uint32
+ ),
+ numberOfConcurrentIOVs = cms.untracked.uint32(1)
+ ),
+ fileMode = cms.untracked.string('FULLMERGE'),
+ forceEventSetupCacheClearOnNewRun = cms.untracked.bool(False),
+ makeTriggerResults = cms.obsolete.untracked.bool,
+ numberOfConcurrentLuminosityBlocks = cms.untracked.uint32(1),
+ numberOfConcurrentRuns = cms.untracked.uint32(1),
+ numberOfStreams = cms.untracked.uint32(0),
+ numberOfThreads = cms.untracked.uint32(1),
+ printDependencies = cms.untracked.bool(False),
+ sizeOfStackForThreadsInKB = cms.optional.untracked.uint32,
+ throwIfIllegalParameter = cms.untracked.bool(True),
+ wantSummary = cms.untracked.bool(False)
+)
+
+# Production Info
+process.configurationMetadata = cms.untracked.PSet(
+ annotation = cms.untracked.string('TTbar_14TeV_TuneCP5_cfi nevts:10'),
+ name = cms.untracked.string('Applications'),
+ version = cms.untracked.string('$Revision: 1.19 $')
+)
+
+
+# Additional output definition
+
+# Other statements
+process.genstepfilter.triggerConditions=cms.vstring("generation_step")
+from Configuration.AlCa.GlobalTag import GlobalTag
+process.GlobalTag = GlobalTag(process.GlobalTag, 'auto:phase2_realistic_T21', '')
+
+process.generator = cms.EDFilter("Pythia8GeneratorFilter",
+ PythiaParameters = cms.PSet(
+ parameterSets = cms.vstring(
+ 'pythia8CommonSettings',
+ 'pythia8CP5Settings',
+ 'processParameters'
+ ),
+ processParameters = cms.vstring(
+ 'Top:gg2ttbar = on ',
+ 'Top:qqbar2ttbar = on ',
+ '6:m0 = 175 '
+ ),
+ pythia8CP5Settings = cms.vstring(
+ 'Tune:pp 14',
+ 'Tune:ee 7',
+ 'MultipartonInteractions:ecmPow=0.03344',
+ 'MultipartonInteractions:bProfile=2',
+ 'MultipartonInteractions:pT0Ref=1.41',
+ 'MultipartonInteractions:coreRadius=0.7634',
+ 'MultipartonInteractions:coreFraction=0.63',
+ 'ColourReconnection:range=5.176',
+ 'SigmaTotal:zeroAXB=off',
+ 'SpaceShower:alphaSorder=2',
+ 'SpaceShower:alphaSvalue=0.118',
+ 'SigmaProcess:alphaSvalue=0.118',
+ 'SigmaProcess:alphaSorder=2',
+ 'MultipartonInteractions:alphaSvalue=0.118',
+ 'MultipartonInteractions:alphaSorder=2',
+ 'TimeShower:alphaSorder=2',
+ 'TimeShower:alphaSvalue=0.118',
+ 'SigmaTotal:mode = 0',
+ 'SigmaTotal:sigmaEl = 21.89',
+ 'SigmaTotal:sigmaTot = 100.309',
+ 'PDF:pSet=LHAPDF6:NNPDF31_nnlo_as_0118'
+ ),
+ pythia8CommonSettings = cms.vstring(
+ 'Tune:preferLHAPDF = 2',
+ 'Main:timesAllowErrors = 10000',
+ 'Check:epTolErr = 0.01',
+ 'Beams:setProductionScalesFromLHEF = off',
+ 'SLHA:minMassSM = 1000.',
+ 'ParticleDecays:limitTau0 = on',
+ 'ParticleDecays:tau0Max = 10',
+ 'ParticleDecays:allowPhotonRadiation = on'
+ )
+ ),
+ comEnergy = cms.double(14000.0),
+ filterEfficiency = cms.untracked.double(1.0),
+ maxEventsToPrint = cms.untracked.int32(0),
+ pythiaHepMCVerbosity = cms.untracked.bool(False),
+ pythiaPylistVerbosity = cms.untracked.int32(0)
+)
+
+
+process.ProductionFilterSequence = cms.Sequence(process.generator)
+
+# Path and EndPath definitions
+process.generation_step = cms.Path(process.pgen)
+process.simulation_step = cms.Path(process.psim)
+process.genfiltersummary_step = cms.EndPath(process.genFilterSummary)
+process.endjob_step = cms.EndPath(process.endOfProcess)
+
+# Schedule definition
+process.schedule = cms.Schedule(process.generation_step,process.genfiltersummary_step,process.simulation_step,process.endjob_step)
+from PhysicsTools.PatAlgos.tools.helpers import associatePatAlgosToolsTask
+associatePatAlgosToolsTask(process)
+# filter all path with the production filter sequence
+for path in process.paths:
+ getattr(process,path).insert(0, process.ProductionFilterSequence)
+
+
+
+# Customisation from command line
+
+# Add early deletion of temporary data products to reduce peak memory need
+from Configuration.StandardSequences.earlyDeleteSettings_cff import customiseEarlyDelete
+process = customiseEarlyDelete(process)
+# End adding early deletion
diff --git a/Geometry/HGCalCommonData/test/python/runHGCalWafer8DD4Hep_cfg.py b/Geometry/HGCalCommonData/test/python/runHGCalWafer8DD4Hep_cfg.py
new file mode 100644
index 0000000000000..686bf572ba4b7
--- /dev/null
+++ b/Geometry/HGCalCommonData/test/python/runHGCalWafer8DD4Hep_cfg.py
@@ -0,0 +1,133 @@
+import FWCore.ParameterSet.Config as cms
+
+from Configuration.Eras.Era_Phase2C11_dd4hep_cff import Phase2C11_dd4hep
+
+process = cms.Process('SIM',Phase2C11_dd4hep)
+
+# import of standard configurations
+process.load('Configuration.StandardSequences.Services_cff')
+process.load('SimGeneral.HepPDTESSource.pythiapdt_cfi')
+process.load('FWCore.MessageService.MessageLogger_cfi')
+process.load('Configuration.EventContent.EventContent_cff')
+process.load('SimGeneral.MixingModule.mixNoPU_cfi')
+process.load('Configuration.StandardSequences.MagneticField_cff')
+process.load('Configuration.StandardSequences.Generator_cff')
+process.load('IOMC.EventVertexGenerators.VtxSmearedHLLHC14TeV_cfi')
+process.load('GeneratorInterface.Core.genFilterSummary_cff')
+process.load('Configuration.StandardSequences.SimIdeal_cff')
+process.load('Configuration.StandardSequences.EndOfProcess_cff')
+process.load('Configuration.StandardSequences.FrontierConditions_GlobalTag_cff')
+
+process.DDDetectorESProducer = cms.ESSource("DDDetectorESProducer",
+ confGeomXMLFiles = cms.FileInPath('Geometry/HGCalCommonData/data/dd4hep/cms-test-ddhgcalwafer8-algorithm.xml'),
+ appendToDataLabel = cms.string('')
+ )
+
+process.DDSpecParRegistryESProducer = cms.ESProducer("DDSpecParRegistryESProducer",
+ appendToDataLabel = cms.string('')
+)
+
+process.DDVectorRegistryESProducer = cms.ESProducer("DDVectorRegistryESProducer",
+ appendToDataLabel = cms.string(''))
+
+process.DDCompactViewESProducer = cms.ESProducer("DDCompactViewESProducer",
+ appendToDataLabel = cms.string('')
+)
+
+process.maxEvents = cms.untracked.PSet(
+ input = cms.untracked.int32(2),
+ output = cms.optional.untracked.allowed(cms.int32,cms.PSet)
+)
+
+if hasattr(process,'MessageLogger'):
+ process.MessageLogger.HGCalGeom=dict()
+ process.MessageLogger.G4cout=dict()
+ process.MessageLogger.G4cerr=dict()
+
+# Input source
+process.source = cms.Source("EmptySource")
+
+process.options = cms.untracked.PSet(
+ FailPath = cms.untracked.vstring(),
+ IgnoreCompletely = cms.untracked.vstring(),
+ Rethrow = cms.untracked.vstring(),
+ SkipEvent = cms.untracked.vstring(),
+ allowUnscheduled = cms.obsolete.untracked.bool,
+ canDeleteEarly = cms.untracked.vstring(),
+ deleteNonConsumedUnscheduledModules = cms.untracked.bool(True),
+ emptyRunLumiMode = cms.obsolete.untracked.string,
+ eventSetup = cms.untracked.PSet(
+ forceNumberOfConcurrentIOVs = cms.untracked.PSet(
+ allowAnyLabel_=cms.required.untracked.uint32
+ ),
+ numberOfConcurrentIOVs = cms.untracked.uint32(1)
+ ),
+ fileMode = cms.untracked.string('FULLMERGE'),
+ forceEventSetupCacheClearOnNewRun = cms.untracked.bool(False),
+ makeTriggerResults = cms.obsolete.untracked.bool,
+ numberOfConcurrentLuminosityBlocks = cms.untracked.uint32(1),
+ numberOfConcurrentRuns = cms.untracked.uint32(1),
+ numberOfStreams = cms.untracked.uint32(0),
+ numberOfThreads = cms.untracked.uint32(1),
+ printDependencies = cms.untracked.bool(False),
+ sizeOfStackForThreadsInKB = cms.optional.untracked.uint32,
+ throwIfIllegalParameter = cms.untracked.bool(True),
+ wantSummary = cms.untracked.bool(False)
+)
+
+# Production Info
+process.configurationMetadata = cms.untracked.PSet(
+ annotation = cms.untracked.string('single pi E 1000'),
+ name = cms.untracked.string('Applications'),
+ version = cms.untracked.string('$Revision: 1.19 $')
+)
+
+# Output definition
+
+# Additional output definition
+
+# Other statements
+process.genstepfilter.triggerConditions=cms.vstring("generation_step")
+from Configuration.AlCa.GlobalTag import GlobalTag
+process.GlobalTag = GlobalTag(process.GlobalTag, 'auto:phase2_realistic_T21', '')
+
+process.generator = cms.EDProducer("FlatRandomEGunProducer",
+ PGunParameters = cms.PSet(
+ PartID = cms.vint32(211),
+ MinEta = cms.double(1.48),
+ MaxEta = cms.double(3.01),
+ MinPhi = cms.double(-3.14159265359),
+ MaxPhi = cms.double(3.14159265359),
+ MinE = cms.double(999.99),
+ MaxE = cms.double(1000.01)
+ ),
+ Verbosity = cms.untracked.int32(0), ## set to 1 (or greater) for printouts
+ psethack = cms.string('single pi E 1000'),
+ AddAntiParticle = cms.bool(True),
+ firstRun = cms.untracked.uint32(1)
+)
+
+process.ProductionFilterSequence = cms.Sequence(process.generator)
+
+# Path and EndPath definitions
+process.generation_step = cms.Path(process.pgen)
+process.simulation_step = cms.Path(process.psim)
+process.genfiltersummary_step = cms.EndPath(process.genFilterSummary)
+process.endjob_step = cms.EndPath(process.endOfProcess)
+
+# Schedule definition
+process.schedule = cms.Schedule(process.generation_step,process.genfiltersummary_step,process.simulation_step,process.endjob_step)
+from PhysicsTools.PatAlgos.tools.helpers import associatePatAlgosToolsTask
+associatePatAlgosToolsTask(process)
+# filter all path with the production filter sequence
+for path in process.paths:
+ getattr(process,path).insert(0, process.ProductionFilterSequence)
+
+
+
+# Customisation from command line
+
+# Add early deletion of temporary data products to reduce peak memory need
+from Configuration.StandardSequences.earlyDeleteSettings_cff import customiseEarlyDelete
+process = customiseEarlyDelete(process)
+# End adding early deletion
diff --git a/Geometry/HGCalCommonData/test/python/runHGCalWafer8DDD_cfg.py b/Geometry/HGCalCommonData/test/python/runHGCalWafer8DDD_cfg.py
new file mode 100644
index 0000000000000..95d92c52d6026
--- /dev/null
+++ b/Geometry/HGCalCommonData/test/python/runHGCalWafer8DDD_cfg.py
@@ -0,0 +1,118 @@
+import FWCore.ParameterSet.Config as cms
+
+from Configuration.Eras.Era_Phase2C11M9_cff import Phase2C11M9
+
+process = cms.Process('SIM',Phase2C11M9)
+
+# import of standard configurations
+process.load('Configuration.StandardSequences.Services_cff')
+process.load('SimGeneral.HepPDTESSource.pythiapdt_cfi')
+process.load('FWCore.MessageService.MessageLogger_cfi')
+process.load('Configuration.EventContent.EventContent_cff')
+process.load('SimGeneral.MixingModule.mixNoPU_cfi')
+process.load('Geometry.HGCalCommonData.testHGCalWafer8XML_cfi')
+process.load('Configuration.StandardSequences.MagneticField_cff')
+process.load('Configuration.StandardSequences.Generator_cff')
+process.load('IOMC.EventVertexGenerators.VtxSmearedHLLHC14TeV_cfi')
+process.load('GeneratorInterface.Core.genFilterSummary_cff')
+process.load('Configuration.StandardSequences.SimIdeal_cff')
+process.load('Configuration.StandardSequences.EndOfProcess_cff')
+process.load('Configuration.StandardSequences.FrontierConditions_GlobalTag_cff')
+
+process.maxEvents = cms.untracked.PSet(
+ input = cms.untracked.int32(2),
+ output = cms.optional.untracked.allowed(cms.int32,cms.PSet)
+)
+
+if hasattr(process,'MessageLogger'):
+ process.MessageLogger.HGCalGeom=dict()
+ process.MessageLogger.G4cout=dict()
+ process.MessageLogger.G4cerr=dict()
+
+# Input source
+process.source = cms.Source("EmptySource")
+
+process.options = cms.untracked.PSet(
+ FailPath = cms.untracked.vstring(),
+ IgnoreCompletely = cms.untracked.vstring(),
+ Rethrow = cms.untracked.vstring(),
+ SkipEvent = cms.untracked.vstring(),
+ allowUnscheduled = cms.obsolete.untracked.bool,
+ canDeleteEarly = cms.untracked.vstring(),
+ deleteNonConsumedUnscheduledModules = cms.untracked.bool(True),
+ emptyRunLumiMode = cms.obsolete.untracked.string,
+ eventSetup = cms.untracked.PSet(
+ forceNumberOfConcurrentIOVs = cms.untracked.PSet(
+ allowAnyLabel_=cms.required.untracked.uint32
+ ),
+ numberOfConcurrentIOVs = cms.untracked.uint32(1)
+ ),
+ fileMode = cms.untracked.string('FULLMERGE'),
+ forceEventSetupCacheClearOnNewRun = cms.untracked.bool(False),
+ makeTriggerResults = cms.obsolete.untracked.bool,
+ numberOfConcurrentLuminosityBlocks = cms.untracked.uint32(1),
+ numberOfConcurrentRuns = cms.untracked.uint32(1),
+ numberOfStreams = cms.untracked.uint32(0),
+ numberOfThreads = cms.untracked.uint32(1),
+ printDependencies = cms.untracked.bool(False),
+ sizeOfStackForThreadsInKB = cms.optional.untracked.uint32,
+ throwIfIllegalParameter = cms.untracked.bool(True),
+ wantSummary = cms.untracked.bool(False)
+)
+
+# Production Info
+process.configurationMetadata = cms.untracked.PSet(
+ annotation = cms.untracked.string('single pi E 1000'),
+ name = cms.untracked.string('Applications'),
+ version = cms.untracked.string('$Revision: 1.19 $')
+)
+
+# Output definition
+
+# Additional output definition
+
+# Other statements
+process.genstepfilter.triggerConditions=cms.vstring("generation_step")
+from Configuration.AlCa.GlobalTag import GlobalTag
+process.GlobalTag = GlobalTag(process.GlobalTag, 'auto:phase2_realistic_T21', '')
+
+process.generator = cms.EDProducer("FlatRandomEGunProducer",
+ PGunParameters = cms.PSet(
+ PartID = cms.vint32(211),
+ MinEta = cms.double(1.48),
+ MaxEta = cms.double(3.01),
+ MinPhi = cms.double(-3.14159265359),
+ MaxPhi = cms.double(3.14159265359),
+ MinE = cms.double(999.99),
+ MaxE = cms.double(1000.01)
+ ),
+ Verbosity = cms.untracked.int32(0), ## set to 1 (or greater) for printouts
+ psethack = cms.string('single pi E 1000'),
+ AddAntiParticle = cms.bool(True),
+ firstRun = cms.untracked.uint32(1)
+)
+
+process.ProductionFilterSequence = cms.Sequence(process.generator)
+
+# Path and EndPath definitions
+process.generation_step = cms.Path(process.pgen)
+process.simulation_step = cms.Path(process.psim)
+process.genfiltersummary_step = cms.EndPath(process.genFilterSummary)
+process.endjob_step = cms.EndPath(process.endOfProcess)
+
+# Schedule definition
+process.schedule = cms.Schedule(process.generation_step,process.genfiltersummary_step,process.simulation_step,process.endjob_step)
+from PhysicsTools.PatAlgos.tools.helpers import associatePatAlgosToolsTask
+associatePatAlgosToolsTask(process)
+# filter all path with the production filter sequence
+for path in process.paths:
+ getattr(process,path).insert(0, process.ProductionFilterSequence)
+
+
+
+# Customisation from command line
+
+# Add early deletion of temporary data products to reduce peak memory need
+from Configuration.StandardSequences.earlyDeleteSettings_cff import customiseEarlyDelete
+process = customiseEarlyDelete(process)
+# End adding early deletion