diff --git a/ACTSTracking/GeometryIdMappingTool.hxx b/ACTSTracking/GeometryIdMappingTool.hxx index 6a99a06..9b9abda 100644 --- a/ACTSTracking/GeometryIdMappingTool.hxx +++ b/ACTSTracking/GeometryIdMappingTool.hxx @@ -19,7 +19,7 @@ namespace ACTSTracking { */ class GeometryIdMappingTool { public: - enum class DetSchema : char { MuColl_v1, MuSIC_v1 }; + enum class DetSchema : char { MuColl_v1, MuSIC_v1, MuSIC_v2 }; using modules_map = std::unordered_map; using det_mod_map = std::unordered_map; diff --git a/data/MuSIC_v2.json b/data/MuSIC_v2.json new file mode 100644 index 0000000..0b9e02e --- /dev/null +++ b/data/MuSIC_v2.json @@ -0,0 +1,307 @@ +{ + "geo-tgeo-unit-scalor": 10.0, + "geo-tgeo-build-beampipe": false, + "geo-tgeo-beampipe-parameters": [ + 0.0, + 0.0, + 0.0 + ], + "Volumes": [ + { + "geo-tgeo-volume-name": "Vertex", + "geo-tgeo-sfbin-r-tolerance": { + "lower": 5.0, + "upper": 5.0 + }, + "geo-tgeo-sfbin-z-tolerance": { + "lower": 5.0, + "upper": 5.0 + }, + "geo-tgeo-sfbin-phi-tolerance": { + "lower": 0.025, + "upper": 0.025 + }, + "geo-tgeo-volume-layers": { + "negative": true, + "central": true, + "positive": true + }, + "geo-tgeo-subvolume-names": { + "negative": "VertexEndcap*", + "central": "VertexBarrel*", + "positive": "VertexEndcap*" + }, + "geo-tgeo-sensitive-names": { + "negative": ["sensor*"], + "central": ["VertexBarrel_layer*_sens"], + "positive": ["sensor*"] + }, + "geo-tgeo-sensitive-axes": { + "negative": "xZy", + "central": "YZX", + "positive": "xZy" + }, + "geo-tgeo-layer-r-ranges": { + "negative": { + "lower": 0.0, + "upper": 120.0 + }, + "central": { + "lower": 0.0, + "upper": 120.0 + }, + "positive": { + "lower": 0.0, + "upper": 120.0 + } + }, + "geo-tgeo-layer-z-ranges": { + "negative": { + "lower": -405.0, + "upper": -150.0 + }, + "central": { + "lower": -150.0, + "upper": 150.0 + }, + "positive": { + "lower": 150.0, + "upper": 405.0 + } + }, + "geo-tgeo-layer-r-split": { + "negative": -1.0, + "central": 0.1, + "positive": -1.0 + }, + "geo-tgeo-layer-z-split": { + "negative": 1.0, + "central": -1.0, + "positive": 1.0 + }, + "geo-tgeo-cyl-disc-split": false + }, + { + "geo-tgeo-volume-name": "InnerTrackers", + "geo-tgeo-sfbin-r-tolerance": { + "lower": 5.0, + "upper": 5.0 + }, + "geo-tgeo-sfbin-z-tolerance": { + "lower": 5.0, + "upper": 5.0 + }, + "geo-tgeo-sfbin-phi-tolerance": { + "lower": 0.025, + "upper": 0.025 + }, + "geo-tgeo-volume-layers": { + "negative": true, + "central": true, + "positive": true + }, + "geo-tgeo-subvolume-names": { + "negative": "InnerTrackerEndcap*", + "central": "InnerTrackerBarrel*", + "positive": "InnerTrackerEndcap*" + }, + "geo-tgeo-sensitive-names": { + "negative": ["sensor*"], + "central": ["sensor*"], + "positive": ["sensor*"] + }, + "geo-tgeo-sensitive-axes": { + "negative": "XYZ", + "central": "XYZ", + "positive": "XYZ" + }, + "geo-tgeo-layer-r-ranges": { + "negative": { + "lower": 50.0, + "upper": 500.0 + }, + "central": { + "lower": 120.0, + "upper": 500.0 + }, + "positive": { + "lower": 50.0, + "upper": 500.0 + } + }, + "geo-tgeo-layer-z-ranges": { + "negative": { + "lower": -650.0, + "upper": -500.0 + }, + "central": { + "lower": -500.0, + "upper": 500.0 + }, + "positive": { + "lower": 500.0, + "upper": 650.0 + } + }, + "geo-tgeo-layer-r-split": { + "negative": -1.0, + "central": 10, + "positive": -1.0 + }, + "geo-tgeo-layer-z-split": { + "negative": 10.0, + "central": -1.0, + "positive": 10.0 + }, + "geo-tgeo-cyl-disc-split": false + }, + { + "geo-tgeo-volume-name": "OuterInnerTrackers", + "geo-tgeo-sfbin-r-tolerance": { + "lower": 5.0, + "upper": 5.0 + }, + "geo-tgeo-sfbin-z-tolerance": { + "lower": 5.0, + "upper": 5.0 + }, + "geo-tgeo-sfbin-phi-tolerance": { + "lower": 0.025, + "upper": 0.025 + }, + "geo-tgeo-volume-layers": { + "negative": true, + "central": true, + "positive": true + }, + "geo-tgeo-subvolume-names": { + "negative": "InnerTrackerEndcap*", + "central": "InnerTrackerBarrel*", + "positive": "InnerTrackerEndcap*" + }, + "geo-tgeo-sensitive-names": { + "negative": ["sensor*"], + "central": ["sensor*"], + "positive": ["sensor*"] + }, + "geo-tgeo-sensitive-axes": { + "negative": "XYZ", + "central": "XYZ", + "positive": "XYZ" + }, + "geo-tgeo-layer-r-ranges": { + "negative": { + "lower": 120.0, + "upper": 600.0 + }, + "central": { + "lower": 500.0, + "upper": 600.0 + }, + "positive": { + "lower": 120.0, + "upper": 600.0 + } + }, + "geo-tgeo-layer-z-ranges": { + "negative": { + "lower": -2210.0, + "upper": -750.0 + }, + "central": { + "lower": -750.0, + "upper": 750.0 + }, + "positive": { + "lower": 750.0, + "upper": 2210.0 + } + }, + "geo-tgeo-layer-r-split": { + "negative": -1.0, + "central": 10, + "positive": -1.0 + }, + "geo-tgeo-layer-z-split": { + "negative": 10.0, + "central": -1.0, + "positive": 10.0 + }, + "geo-tgeo-cyl-disc-split": false + }, + { + "geo-tgeo-volume-name": "OuterTrackers", + "geo-tgeo-sfbin-r-tolerance": { + "lower": 5.0, + "upper": 5.0 + }, + "geo-tgeo-sfbin-z-tolerance": { + "lower": 5.0, + "upper": 5.0 + }, + "geo-tgeo-sfbin-phi-tolerance": { + "lower": 0.025, + "upper": 0.025 + }, + "geo-tgeo-volume-layers": { + "negative": true, + "central": true, + "positive": true + }, + "geo-tgeo-subvolume-names": { + "negative": "OuterTrackerEndcap*", + "central": "OuterTrackerBarrel*", + "positive": "OuterTrackerEndcap*" + }, + "geo-tgeo-sensitive-names": { + "negative": ["sensor*"], + "central": ["sensor*"], + "positive": ["sensor*"] + }, + "geo-tgeo-sensitive-axes": { + "negative": "XYZ", + "central": "XYZ", + "positive": "XYZ" + }, + "geo-tgeo-layer-r-ranges": { + "negative": { + "lower": 570.0, + "upper": 1550.0 + }, + "central": { + "lower": 600.0, + "upper": 1550.0 + }, + "positive": { + "lower": 570.0, + "upper": 1550.0 + } + }, + "geo-tgeo-layer-z-ranges": { + "negative": { + "lower": -2210.0, + "upper": -1300.0 + }, + "central": { + "lower": -1300.0, + "upper": 1300.0 + }, + "positive": { + "lower": 1300.0, + "upper": 2210.0 + } + }, + "geo-tgeo-layer-r-split": { + "negative": -1.0, + "central": 10, + "positive": -1.0 + }, + "geo-tgeo-layer-z-split": { + "negative": 10.0, + "central": -1.0, + "positive": 10.0 + }, + "geo-tgeo-cyl-disc-split": false + } + ] +} diff --git a/data/MuSIC_v2.root b/data/MuSIC_v2.root new file mode 100644 index 0000000..d51f83c Binary files /dev/null and b/data/MuSIC_v2.root differ diff --git a/src/ACTSProcBase.cxx b/src/ACTSProcBase.cxx index c4442ea..93c1398 100644 --- a/src/ACTSProcBase.cxx +++ b/src/ACTSProcBase.cxx @@ -98,7 +98,8 @@ void ACTSProcBase::init() { << " -------------------------------------" << std::endl; // Initialize mapping tool - DetSchema dSchema = DetSchema::MuSIC_v1; + DetSchema dSchema = DetSchema::MuSIC_v2; // default configuration is MuSIC_v2 + if (_detSchema == "MuSIC_v1") dSchema = DetSchema::MuSIC_v1; if (_detSchema == "MuColl_v1") dSchema = DetSchema::MuColl_v1; _geoIDMappingTool = std::make_shared( diff --git a/src/GeometryIdMappingTool.cxx b/src/GeometryIdMappingTool.cxx index 82f93be..9f27bcb 100644 --- a/src/GeometryIdMappingTool.cxx +++ b/src/GeometryIdMappingTool.cxx @@ -23,35 +23,44 @@ const det_mod_map GeometryIdMappingTool::NLad_VertexBarrel = { { GeometryIdMappingTool::DetSchema::MuColl_v1, { {0, 5}, {1, 5}, {2, 5}, {3, 5}, {4, 5}, {5, 5}, {6, 5}, {7, 5}} }, { GeometryIdMappingTool::DetSchema::MuSIC_v1, { - {0, 5}, {2, 5}, {4, 5}, {6, 5}} } + {0, 5}, {2, 5}, {4, 5}, {6, 5}} }, + { GeometryIdMappingTool::DetSchema::MuSIC_v2, { + {0, 5}, {2, 5}, {4, 5}, {6, 5}, {8, 5}} }, }; const det_mod_map GeometryIdMappingTool::NRng_VertexEndCap = { { GeometryIdMappingTool::DetSchema::MuColl_v1, { {0, 16}, {1, 16}, {2, 16}, {3, 16}, {4, 16}, {5, 16}, {6, 16}, {7, 16}} }, { GeometryIdMappingTool::DetSchema::MuSIC_v1, { + {0, 16}, {2, 16}, {4, 16}, {6,16} } }, + { GeometryIdMappingTool::DetSchema::MuSIC_v2, { {0, 16}, {2, 16}, {4, 16}, {6,16} } } }; const det_mod_map GeometryIdMappingTool::NLad_InnerTrackerBarrel = { { GeometryIdMappingTool::DetSchema::MuColl_v1, { {0, 32}, {1, 32} } }, - { GeometryIdMappingTool::DetSchema::MuSIC_v1, { {0, 32}, {1, 32} } } + { GeometryIdMappingTool::DetSchema::MuSIC_v1, { {0, 32}, {1, 32} } }, + { GeometryIdMappingTool::DetSchema::MuSIC_v2, { {0, 32}, {1, 32} } } }; const det_mod_map GeometryIdMappingTool::NRng_InnerTrackerEndCap = { { GeometryIdMappingTool::DetSchema::MuColl_v1, { {0, 26} } }, - { GeometryIdMappingTool::DetSchema::MuSIC_v1, { {0, 26} } } + { GeometryIdMappingTool::DetSchema::MuSIC_v1, { {0, 26} } }, + { GeometryIdMappingTool::DetSchema::MuSIC_v2, { {0, 26} } } }; const det_mod_map GeometryIdMappingTool::NLad_OuterInnerTrackerBarrel = { { GeometryIdMappingTool::DetSchema::MuColl_v1, { {2, 46} } }, - { GeometryIdMappingTool::DetSchema::MuSIC_v1, { {2, 46} } } + { GeometryIdMappingTool::DetSchema::MuSIC_v1, { {2, 46} } }, + { GeometryIdMappingTool::DetSchema::MuSIC_v2, { {2, 46} } } }; const det_mod_map GeometryIdMappingTool::NRng_OuterInnerTrackerEndCap = { { GeometryIdMappingTool::DetSchema::MuColl_v1, { {1, 26}, {2, 26}, {3, 26}, {4, 26}, {5, 26}, {6, 26} } }, { GeometryIdMappingTool::DetSchema::MuSIC_v1, { + {1, 26}, {2, 26}, {3, 26}, {4, 26}, {5, 26}, {6, 26} } }, + { GeometryIdMappingTool::DetSchema::MuSIC_v2, { {1, 26}, {2, 26}, {3, 26}, {4, 26}, {5, 26}, {6, 26} } } }; @@ -59,6 +68,8 @@ const det_mod_map GeometryIdMappingTool::NLad_OuterTrackerBarrel = { { GeometryIdMappingTool::DetSchema::MuColl_v1, { {0, 84}, {1, 84}, {2, 84} } }, { GeometryIdMappingTool::DetSchema::MuSIC_v1, { + {0, 84}, {1, 84}, {2, 84} } }, + { GeometryIdMappingTool::DetSchema::MuSIC_v2, { {0, 84}, {1, 84}, {2, 84} } } }; @@ -66,6 +77,8 @@ const det_mod_map GeometryIdMappingTool::NRng_OuterTrackerEndCap = { { GeometryIdMappingTool::DetSchema::MuColl_v1, { {0, 48}, {1, 48}, {2, 48}, {3, 48}, {4, 48}, {5, 48}, {6, 48}, {7, 48} } }, { GeometryIdMappingTool::DetSchema::MuSIC_v1, { + {0, 48}, {1, 48}, {2, 48}, {3, 48}, {4, 48}, {5, 48}, {6, 48}, {7, 48} } }, + { GeometryIdMappingTool::DetSchema::MuSIC_v2, { {0, 48}, {1, 48}, {2, 48}, {3, 48}, {4, 48}, {5, 48}, {6, 48}, {7, 48} } } };