diff --git a/compact/hcal/barrel_gdml.xml b/compact/hcal/barrel_gdml.xml index 3713d4d5bc..fbb694f7e9 100644 --- a/compact/hcal/barrel_gdml.xml +++ b/compact/hcal/barrel_gdml.xml @@ -33,10 +33,10 @@ - - - - + + + + diff --git a/src/BarrelHCalCalorimeter_geo.cpp b/src/BarrelHCalCalorimeter_geo.cpp index 4990804944..edfafa86c1 100644 --- a/src/BarrelHCalCalorimeter_geo.cpp +++ b/src/BarrelHCalCalorimeter_geo.cpp @@ -255,18 +255,23 @@ static Ref_t create_detector(Detector& description, xml_h e, SensitiveDetector s Transform3D(RotationZ(-k * sec_rot_angle * dd4hep::deg) * RotationY(180.0 * dd4hep::deg), Translation3D(0, 0, 0))); } + BarrelHCAL.placeVolume( barrel_csector_vol, 0, Transform3D(RotationZ(sec_rot_angle * dd4hep::deg) * RotationY(180.0 * dd4hep::deg), Translation3D(0, 0, 0))); + BarrelHCAL.placeVolume(barrel_csector_vol, 1, Transform3D(RotationY(180.0 * dd4hep::deg), Translation3D(0, 0, 0))); + BarrelHCAL.placeVolume( barrel_csector_vol, 2, Transform3D(RotationZ(-sec_rot_angle * dd4hep::deg) * RotationY(180.0 * dd4hep::deg), Translation3D(0, 0, 0))); + BarrelHCAL.placeVolume(barrel_er_vol, 0, Transform3D(RotationY(180.0 * dd4hep::deg), Translation3D(0, 0, 0))); + BarrelHCAL.placeVolume(barrel_er_vol, 1, Transform3D(RotationY(0.0 * dd4hep::deg), Translation3D(0, 0, 0))); @@ -424,8 +429,8 @@ static Ref_t create_detector(Detector& description, xml_h e, SensitiveDetector s RotationY(90.0 * dd4hep::deg), Translation3D(xposOuter[0] * dd4hep::mm, yposOuter[0] * dd4hep::mm, 0.0)) * RotationX(-tilePlaneRotate * dd4hep::deg) * - Translation3D((xposTile[tnum] + (tnum + 1) * tile_tolerance) * dd4hep::mm, - yposTile[tnum] * dd4hep::mm, zposTile[tnum] * dd4hep::mm)); + Translation3D(-(xposTile[tnum] + (tnum + 1) * tile_tolerance) * dd4hep::mm, + yposTile[tnum] * dd4hep::mm, -zposTile[tnum] * dd4hep::mm)); phv1.addPhysVolID("eta", i_eta).addPhysVolID("phi", i_phi); DetElement sd1 = tile_det.clone(_toString(i_eta, "eta%d ") + _toString(i_phi, "phi%d")); @@ -441,8 +446,8 @@ static Ref_t create_detector(Detector& description, xml_h e, SensitiveDetector s RotationX(-tilePlaneRotate * dd4hep::deg) * Transform3D( RotationY(180.0 * dd4hep::deg), - Translation3D(-(xposTile[tnum] + (tnum + 1) * tile_tolerance) * dd4hep::mm, - yposTile[tnum] * dd4hep::mm, -zposTile[tnum] * dd4hep::mm))); + Translation3D((xposTile[tnum] + (tnum + 1) * tile_tolerance) * dd4hep::mm, + yposTile[tnum] * dd4hep::mm, zposTile[tnum] * dd4hep::mm))); phv0.addPhysVolID("eta", (12 + tnum)).addPhysVolID("phi", i_phi); DetElement sd0 = @@ -479,8 +484,8 @@ static Ref_t create_detector(Detector& description, xml_h e, SensitiveDetector s RotationY(90.0 * dd4hep::deg), Translation3D(xposOuter[0] * dd4hep::mm, yposOuter[0] * dd4hep::mm, 0.0)) * RotationX(-tilePlaneRotate * dd4hep::deg) * - Translation3D((xposTile[tnum] + (tnum + 1) * tile_tolerance) * dd4hep::mm, - yposTile[tnum] * dd4hep::mm, zposTile[tnum] * dd4hep::mm)); + Translation3D(-(xposTile[tnum] + (tnum + 1) * tile_tolerance) * dd4hep::mm, + yposTile[tnum] * dd4hep::mm, -zposTile[tnum] * dd4hep::mm)); phv0.addPhysVolID("eta", i_eta).addPhysVolID("phi", i_phi); DetElement sd0 = tile_det.clone(_toString(i_eta, "eta%d ") + _toString(i_phi, "phi%d"));