Skip to content
Snippets Groups Projects
Commit 814608b8 authored by myliu@ihep.ac.cn's avatar myliu@ihep.ac.cn
Browse files

Modify dc name and chamber ID

parent 29342e1e
No related branches found
No related tags found
No related merge requests found
...@@ -19,18 +19,15 @@ ...@@ -19,18 +19,15 @@
<constant name="world_z" value="world_size"/> <constant name="world_z" value="world_size"/>
<!-- SDT --> <!-- SDT -->
<constant name="SDT_radius_min" value="799.78*mm"/> <constant name="SDT_radius_min" value="DC_inner_radius"/>
<constant name="SDT_radius_max" value="1803*mm"/> <constant name="SDT_radius_max" value="DC_outer_radius"/>
<constant name="SDT_half_length" value="MainTracker_half_length"/> <constant name="SDT_half_length" value="MainTracker_half_length"/>
<constant name="DC_length" value="DC_half_length*2"/> <constant name="DC_length" value="DC_half_length*2"/>
<constant name="SDT_length" value="SDT_half_length*2"/> <constant name="SDT_length" value="SDT_half_length*2"/>
<constant name="SDT_inner_wall_thickness" value="0.2*mm"/> <constant name="SDT_chamber_radius_min" value="DC_chamber_layer_rbegin-DC_safe_distance"/>
<constant name="SDT_outer_wall_thickness" value="2.8*mm"/> <constant name="SDT_chamber_radius_max" value="DC_chamber_layer_rend+DC_safe_distance"/>
<constant name="SDT_chamber_radius_min" value="DC_chamber_radius_min"/>
<constant name="SDT_chamber_radius_max" value="DC_chamber_radius_max"/>
<constant name="SDT_chamber_half_length" value="DC_half_length"/> <constant name="SDT_chamber_half_length" value="DC_half_length"/>
<constant name="SDT_chamber_layer_width" value="10*mm"/> <constant name="SDT_chamber_layer_width" value="10*mm"/>
......
...@@ -87,6 +87,7 @@ ...@@ -87,6 +87,7 @@
<constant name="SDT_inner_wall_thickness" value="0.2*mm"/> <constant name="SDT_inner_wall_thickness" value="0.2*mm"/>
<constant name="SDT_outer_wall_thickness" value="2.8*mm"/> <constant name="SDT_outer_wall_thickness" value="2.8*mm"/>
<constant name="MainTracker_half_length" value="DC_half_length+DC_Endcap_dz" /> <constant name="MainTracker_half_length" value="DC_half_length+DC_Endcap_dz" />
<constant name="InnerTracker_half_length" value="DC_half_length" /> <constant name="InnerTracker_half_length" value="DC_half_length" />
<constant name="InnerTracker_inner_radius" value="234*mm"/> <constant name="InnerTracker_inner_radius" value="234*mm"/>
<constant name="InnerTracker_outer_radius" value="909*mm"/> <constant name="InnerTracker_outer_radius" value="909*mm"/>
...@@ -97,10 +98,9 @@ ...@@ -97,10 +98,9 @@
<!-- Parameters of single drift chamber --> <!-- Parameters of single drift chamber -->
<constant name="DC_chamber_layer_rbegin" value="800*mm"/> <constant name="DC_chamber_layer_rbegin" value="800*mm"/>
<constant name="DC_chamber_layer_rend" value="1800*mm"/> <constant name="DC_chamber_layer_rend" value="1800*mm"/>
<constant name="DC_chamber_radius_min" value="DC_chamber_layer_rbegin-DC_safe_distance"/>
<constant name="DC_chamber_radius_max" value="DC_chamber_layer_rend+DC_safe_distance"/> <constant name="DC_inner_radius" value="DC_chamber_layer_rbegin-SDT_inner_wall_thickness-DC_safe_distance"/>
<constant name="DC_inner_radius" value="799.78*mm"/> <constant name="DC_outer_radius" value="DC_chamber_layer_rend+SDT_outer_wall_thickness+DC_safe_distance"/>
<constant name="DC_outer_radius" value="1803*mm"/>
<constant name="SIT1_inner_radius" value="152.90*mm"/> <constant name="SIT1_inner_radius" value="152.90*mm"/>
<constant name="SIT1_half_length" value="368.00*mm"/> <constant name="SIT1_half_length" value="368.00*mm"/>
......
...@@ -87,6 +87,7 @@ ...@@ -87,6 +87,7 @@
<constant name="SDT_inner_wall_thickness" value="0.2*mm"/> <constant name="SDT_inner_wall_thickness" value="0.2*mm"/>
<constant name="SDT_outer_wall_thickness" value="2.8*mm"/> <constant name="SDT_outer_wall_thickness" value="2.8*mm"/>
<constant name="MainTracker_half_length" value="DC_half_length+DC_Endcap_dz" /> <constant name="MainTracker_half_length" value="DC_half_length+DC_Endcap_dz" />
<constant name="InnerTracker_half_length" value="DC_half_length" /> <constant name="InnerTracker_half_length" value="DC_half_length" />
<constant name="InnerTracker_inner_radius" value="234*mm"/> <constant name="InnerTracker_inner_radius" value="234*mm"/>
<constant name="InnerTracker_outer_radius" value="909*mm"/> <constant name="InnerTracker_outer_radius" value="909*mm"/>
...@@ -97,10 +98,9 @@ ...@@ -97,10 +98,9 @@
<!-- Parameters of single drift chamber --> <!-- Parameters of single drift chamber -->
<constant name="DC_chamber_layer_rbegin" value="800*mm"/> <constant name="DC_chamber_layer_rbegin" value="800*mm"/>
<constant name="DC_chamber_layer_rend" value="1800*mm"/> <constant name="DC_chamber_layer_rend" value="1800*mm"/>
<constant name="DC_chamber_radius_min" value="DC_chamber_layer_rbegin-DC_safe_distance"/>
<constant name="DC_chamber_radius_max" value="DC_chamber_layer_rend+DC_safe_distance"/> <constant name="DC_inner_radius" value="DC_chamber_layer_rbegin-SDT_inner_wall_thickness-DC_safe_distance"/>
<constant name="Tracker_inner_radius" value="799.78*mm"/> <constant name="DC_outer_radius" value="DC_chamber_layer_rend+SDT_outer_wall_thickness+DC_safe_distance"/>
<constant name="Tracker_outer_radius" value="1803*mm"/>
<constant name="SIT1_inner_radius" value="140*mm"/> <constant name="SIT1_inner_radius" value="140*mm"/>
......
...@@ -26,15 +26,6 @@ ...@@ -26,15 +26,6 @@
<!-- SDT --> <!-- SDT -->
<constant name="DetID_DC" value="7"/> <constant name="DetID_DC" value="7"/>
<constant name="SDT_radius_min" value="799.78*mm"/>
<constant name="SDT_radius_max" value="1803*mm"/>
<constant name="DC_Endcap_dz" value="0.1*mm"/>
<constant name="SDT_half_length" value="2225*mm+DC_Endcap_dz"/>
<constant name="DC_half_length" value="2225*mm"/>
<constant name="SDT_length" value="SDT_half_length*2"/>
<constant name="DC_length" value="SDT_length-DC_Endcap_dz*2"/>
<constant name="DC_safe_distance" value="0.02*mm"/> <constant name="DC_safe_distance" value="0.02*mm"/>
...@@ -44,11 +35,18 @@ ...@@ -44,11 +35,18 @@
<constant name="DC_chamber_layer_rbegin" value="800*mm"/> <constant name="DC_chamber_layer_rbegin" value="800*mm"/>
<constant name="DC_chamber_layer_rend" value="1800*mm"/> <constant name="DC_chamber_layer_rend" value="1800*mm"/>
<constant name="DC_chamber_radius_min" value="DC_chamber_layer_rbegin-DC_safe_distance"/> <constant name="SDT_radius_min" value="DC_chamber_layer_rbegin-SDT_inner_wall_thickness-DC_safe_distance"/>
<constant name="DC_chamber_radius_max" value="DC_chamber_layer_rend+DC_safe_distance"/> <constant name="SDT_radius_max" value="DC_chamber_layer_rend+SDT_outer_wall_thickness+DC_safe_distance"/>
<constant name="DC_Endcap_dz" value="0.1*mm"/>
<constant name="SDT_half_length" value="2225*mm+DC_Endcap_dz"/>
<constant name="DC_half_length" value="2225*mm"/>
<constant name="SDT_length" value="SDT_half_length*2"/>
<constant name="DC_length" value="SDT_length-DC_Endcap_dz*2"/>
<constant name="SDT_chamber_radius_min" value="DC_chamber_radius_min"/> <constant name="SDT_chamber_radius_min" value="DC_chamber_layer_rbegin-DC_safe_distance"/>
<constant name="SDT_chamber_radius_max" value="DC_chamber_radius_max"/> <constant name="SDT_chamber_radius_max" value="DC_chamber_layer_rend+DC_safe_distance"/>
<constant name="SDT_chamber_half_length" value="DC_half_length"/> <constant name="SDT_chamber_half_length" value="DC_half_length"/>
<constant name="SDT_chamber_layer_width" value="10*mm"/> <constant name="SDT_chamber_layer_width" value="10*mm"/>
...@@ -87,6 +85,7 @@ ...@@ -87,6 +85,7 @@
<detectors> <detectors>
<detector id="DetID_DC" name="DriftChamber" type="DriftChamber" readout="DriftChamberHitsCollection" vis="VisibleBlue" sensitive="true" region="DriftChamberRegion" limits="DC_limits"> <detector id="DetID_DC" name="DriftChamber" type="DriftChamber" readout="DriftChamberHitsCollection" vis="VisibleBlue" sensitive="true" region="DriftChamberRegion" limits="DC_limits">
<chamber id="0"/>
<envelope vis="SeeThrough"> <envelope vis="SeeThrough">
<shape type="BooleanShape" operation="Union" material="Air"> <shape type="BooleanShape" operation="Union" material="Air">
<shape type="Tube" rmin="SDT_radius_min" rmax="SDT_radius_max" dz="SDT_half_length" /> <shape type="Tube" rmin="SDT_radius_min" rmax="SDT_radius_max" dz="SDT_half_length" />
......
...@@ -35,6 +35,9 @@ static dd4hep::Ref_t create_detector(dd4hep::Detector& theDetector, ...@@ -35,6 +35,9 @@ static dd4hep::Ref_t create_detector(dd4hep::Detector& theDetector,
xml_det_t x_det = e; xml_det_t x_det = e;
xml_coll_t c(x_det,_U(chamber));
xml_comp_t x_chamber = c;
std::string det_name = x_det.nameStr(); std::string det_name = x_det.nameStr();
std::string det_type = x_det.typeStr(); std::string det_type = x_det.typeStr();
...@@ -47,6 +50,7 @@ static dd4hep::Ref_t create_detector(dd4hep::Detector& theDetector, ...@@ -47,6 +50,7 @@ static dd4hep::Ref_t create_detector(dd4hep::Detector& theDetector,
double chamber_radius_min = theDetector.constant<double>("SDT_chamber_radius_min"); double chamber_radius_min = theDetector.constant<double>("SDT_chamber_radius_min");
double chamber_radius_max = theDetector.constant<double>("SDT_chamber_radius_max"); double chamber_radius_max = theDetector.constant<double>("SDT_chamber_radius_max");
double SDT_half_length = theDetector.constant<double>("SDT_chamber_half_length"); double SDT_half_length = theDetector.constant<double>("SDT_chamber_half_length");
int chamberID = x_chamber.id();
// - layer // - layer
double chamber_layer_width = theDetector.constant<double>("SDT_chamber_layer_width"); double chamber_layer_width = theDetector.constant<double>("SDT_chamber_layer_width");
...@@ -181,7 +185,7 @@ static dd4hep::Ref_t create_detector(dd4hep::Detector& theDetector, ...@@ -181,7 +185,7 @@ static dd4hep::Ref_t create_detector(dd4hep::Detector& theDetector,
// | | // | |
// | F0 F1 F2 F3| // | F0 F1 F2 F3|
// ----------------------- // -----------------------
// if(layer_id == 0 || layer_id == 1 || layer_id == 2 || layer_id == 3) { // if(layer_id == 0 || layer_id == 1 || layer_id == 2 || layer_id == 99) {
for(int icell=0; icell< numWire; icell++) { for(int icell=0; icell< numWire; icell++) {
double wire_phi = (icell+0.5)*layer_Phi + offset; double wire_phi = (icell+0.5)*layer_Phi + offset;
// - signal wire // - signal wire
...@@ -213,7 +217,7 @@ static dd4hep::Ref_t create_detector(dd4hep::Detector& theDetector, ...@@ -213,7 +217,7 @@ static dd4hep::Ref_t create_detector(dd4hep::Detector& theDetector,
dd4hep::PlacedVolume det_chamber_phy = det_vol.placeVolume(det_chamber_vol, dd4hep::PlacedVolume det_chamber_phy = det_vol.placeVolume(det_chamber_vol,
transform_chamber); transform_chamber);
det_chamber_phy.addPhysVolID("chamber", 0); det_chamber_phy.addPhysVolID("chamber", chamberID);
// - place in world // - place in world
dd4hep::Transform3D transform(dd4hep::Rotation3D(), dd4hep::Transform3D transform(dd4hep::Rotation3D(),
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment