LISTSERV mailing list manager LISTSERV 16.5

Help for HPS-SVN Archives


HPS-SVN Archives

HPS-SVN Archives


HPS-SVN@LISTSERV.SLAC.STANFORD.EDU


View:

Message:

[

First

|

Previous

|

Next

|

Last

]

By Topic:

[

First

|

Previous

|

Next

|

Last

]

By Author:

[

First

|

Previous

|

Next

|

Last

]

Font:

Proportional Font

LISTSERV Archives

LISTSERV Archives

HPS-SVN Home

HPS-SVN Home

HPS-SVN  June 2015

HPS-SVN June 2015

Subject:

r3197 - in /java/trunk/detector-model/src: main/java/org/lcsim/geometry/compact/converter/ test/resources/org/lcsim/geometry/subdetector/

From:

[log in to unmask]

Reply-To:

Notification of commits to the hps svn repository <[log in to unmask]>

Date:

Wed, 24 Jun 2015 23:15:17 -0000

Content-Type:

text/plain

Parts/Attachments:

Parts/Attachments

text/plain (560 lines)

Author: [log in to unmask]
Date: Wed Jun 24 16:15:02 2015
New Revision: 3197

Log:
Added U-channel to box survey

Modified:
    java/trunk/detector-model/src/main/java/org/lcsim/geometry/compact/converter/HPSTestRunTracker2014GeometryDefinition.java
    java/trunk/detector-model/src/main/java/org/lcsim/geometry/compact/converter/HPSTracker2014GeometryDefinition.java
    java/trunk/detector-model/src/main/java/org/lcsim/geometry/compact/converter/HPSTrackerBuilder.java
    java/trunk/detector-model/src/main/java/org/lcsim/geometry/compact/converter/HPSTrackerGeometryDefinition.java
    java/trunk/detector-model/src/main/java/org/lcsim/geometry/compact/converter/SurveyVolume.java
    java/trunk/detector-model/src/test/resources/org/lcsim/geometry/subdetector/HPSTracker2014v1Survey.xml

Modified: java/trunk/detector-model/src/main/java/org/lcsim/geometry/compact/converter/HPSTestRunTracker2014GeometryDefinition.java
 =============================================================================
--- java/trunk/detector-model/src/main/java/org/lcsim/geometry/compact/converter/HPSTestRunTracker2014GeometryDefinition.java	(original)
+++ java/trunk/detector-model/src/main/java/org/lcsim/geometry/compact/converter/HPSTestRunTracker2014GeometryDefinition.java	Wed Jun 24 16:15:02 2015
@@ -69,7 +69,7 @@
         CSupport cSupport = new CSupport("c_support", base);
         surveyVolumes.add(cSupport);        
         
-        AlignmentCorrection alignmentCorrectionSupportBottom = getSupportAlignmentCorrection(false);
+        AlignmentCorrection alignmentCorrectionSupportBottom = getL13UChannelAlignmentCorrection(false);
         SupportBottom supportBottom = new SupportBottom("support_bottom", base, alignmentCorrectionSupportBottom, cSupport);
         surveyVolumes.add(supportBottom);
         // The support survey positions are now with respect to its mother and not the reference coord. system.
@@ -78,7 +78,7 @@
         SupportPlateBottom supportPlateBottom = new SupportPlateBottom("support_plate_bottom", base, supportBottom, "Aluminum");
         surveyVolumes.add(supportPlateBottom);        
         
-        AlignmentCorrection alignmentCorrectionSupportTop = getSupportAlignmentCorrection(true);
+        AlignmentCorrection alignmentCorrectionSupportTop = getL13UChannelAlignmentCorrection(true);
         SupportTop supportTop = new SupportTop("support_top", base, alignmentCorrectionSupportTop, cSupport);
         surveyVolumes.add(supportTop);
         

Modified: java/trunk/detector-model/src/main/java/org/lcsim/geometry/compact/converter/HPSTracker2014GeometryDefinition.java
 =============================================================================
--- java/trunk/detector-model/src/main/java/org/lcsim/geometry/compact/converter/HPSTracker2014GeometryDefinition.java	(original)
+++ java/trunk/detector-model/src/main/java/org/lcsim/geometry/compact/converter/HPSTracker2014GeometryDefinition.java	Wed Jun 24 16:15:02 2015
@@ -46,6 +46,18 @@
 
         if(isDebug()) System.out.printf("%s: constructing the geometry objects\n", this.getClass().getSimpleName());
 
+        
+        // Create alignment correction objects
+        // THis is really a ugly approach with MP corrections initialized before and 
+        // the survey corrections based on the XML node
+        // FIX THIS! //TODO
+        AlignmentCorrection alignmentCorrections = new AlignmentCorrection();
+        alignmentCorrections.setNode(node);
+        AlignmentCorrection supBotCorr = getL13UChannelAlignmentCorrection(false);
+        supBotCorr.setNode(node);
+        AlignmentCorrection supTopCorr = this.getL13UChannelAlignmentCorrection(true);
+        supTopCorr.setNode(node);
+        
         // Build the geometry from the basic building blocks in the geometry definition class
         // Keep the order correct.
         // Each item has knowledge of its mother but not its daughters
@@ -60,51 +72,38 @@
 
         SvtBoxBasePlate svtBoxBasePlate = new SvtBoxBasePlate("base_plate",svtBox,null);
         surveyVolumes.add(svtBoxBasePlate);
-        
-        //SupportRing supportRing = new SupportRing("c_support", svtBox, null, svtBoxBasePlate); 
-        //surveyVolumes.add(supportRing);
-       
-//        AlignmentCorrection supBotCorr = this.getSupportAlignmentCorrection(false);
-//        SupportRingL13BottomKinMount supportRingKinL13Bottom = new SupportRingL13BottomKinMount("c_support_kin_L13b", svtBox, supBotCorr, supportRing); 
-//        surveyVolumes.add(supportRingKinL13Bottom);
-        
-        AlignmentCorrection supBotCorr = this.getSupportAlignmentCorrection(false);
+                
+        
+        
         SupportRingL13BottomKinMount supportRingKinL13Bottom = new SupportRingL13BottomKinMount("c_support_kin_L13b", svtBox, supBotCorr); 
         surveyVolumes.add(supportRingKinL13Bottom);
         
         
-        UChannelL13 uChannelL13Bottom = new UChannelL13Bottom("support_bottom_L13", svtBox, null, supportRingKinL13Bottom); 
+        UChannelL13 uChannelL13Bottom = new UChannelL13Bottom("support_bottom_L13", svtBox, alignmentCorrections, supportRingKinL13Bottom); 
         surveyVolumes.add(uChannelL13Bottom);
         
         UChannelL13Plate uChannelL13BottomPlate = new UChannelL13BottomPlate("support_plate_bottom_L13", svtBox, null, uChannelL13Bottom); 
         surveyVolumes.add(uChannelL13BottomPlate);
 
-//        AlignmentCorrection supTopCorr = this.getSupportAlignmentCorrection(true);
-//        SupportRingL13TopKinMount supportRingKinL13Top = new SupportRingL13TopKinMount("c_support_kin_L13t", svtBox, supTopCorr, supportRing); 
-//        surveyVolumes.add(supportRingKinL13Top);
-
-        AlignmentCorrection supTopCorr = this.getSupportAlignmentCorrection(true);
+        
         SupportRingL13TopKinMount supportRingKinL13Top = new SupportRingL13TopKinMount("c_support_kin_L13t", svtBox, supTopCorr); 
         surveyVolumes.add(supportRingKinL13Top);
 
-        // Create an alignment correction object for the U-channels -> this is really ugly. FIX THIS!
-        AlignmentCorrection alignmentCorrectionUChannels = new AlignmentCorrection();
-        alignmentCorrectionUChannels.setNode(node);
-        
-        
-        UChannelL13Top uChannelL13Top = new UChannelL13Top("support_top_L13", svtBox, null, supportRingKinL13Top); 
+        
+        
+        UChannelL13Top uChannelL13Top = new UChannelL13Top("support_top_L13", svtBox, alignmentCorrections, supportRingKinL13Top); 
         surveyVolumes.add(uChannelL13Top);
         
         UChannelL13Plate uChannelL13TopPlate = new UChannelL13TopPlate("support_plate_top_L13", svtBox, null, uChannelL13Top); 
         surveyVolumes.add(uChannelL13TopPlate);
         
-        UChannelL46 uChannelL46Bottom = new UChannelL46Bottom("support_bottom_L46", svtBox, alignmentCorrectionUChannels);
+        UChannelL46 uChannelL46Bottom = new UChannelL46Bottom("support_bottom_L46", svtBox, alignmentCorrections);
         surveyVolumes.add(uChannelL46Bottom);
         
         UChannelL46Plate uChannelL46BottomPlate = new UChannelL46BottomPlate("support_plate_bottom_L46", svtBox, null, uChannelL46Bottom);
         surveyVolumes.add(uChannelL46BottomPlate);
 
-        UChannelL46 uChannelL46Top = new UChannelL46Top("support_top_L46", svtBox, alignmentCorrectionUChannels);
+        UChannelL46 uChannelL46Top = new UChannelL46Top("support_top_L46", svtBox, alignmentCorrections);
         surveyVolumes.add(uChannelL46Top);
         
         UChannelL46Plate uChannelL46TopPlate = new UChannelL46TopPlate("support_plate_top_L46", svtBox, null, uChannelL46Top);
@@ -356,9 +355,9 @@
     
     /**
      * {@link SurveyVolume} volume defining a coordinate system from the kinematic mount positions for support channels
-     *  Reference: {@SvtBox} coordinate system
+     *  Reference: {@link SvtBox} coordinate system
      *  Origin: cone mount (it's on the electron side)
-     *  Orientation: ball is cone mount, slot mount is vee position and flat is along beamline pointing upstream
+     *  Orientation: ball is cone mount, slot mount is vee position and flat is along beam line pointing upstream
      *  
      * @author Per Hansson Adrian <[log in to unmask]>
      *
@@ -376,23 +375,6 @@
         protected double getKinMountVerticalPos() {
             return kin_mount_pos_z;
         }
-
-//        protected void setPos() {
-//            final double ball_pos_x = (7.0 - 5.444) *inch;
-//            final double ball_pos_y = 0.574*inch;
-//            final double ball_pos_z = SupportRing.plateThickness + kin_mount_offset_vertically;
-//            ballPos = new BasicHep3Vector(ball_pos_x, ball_pos_y, ball_pos_z);
-//            
-//            final double vee_pos_x = (2*7.0)*inch;
-//            final double vee_pos_y = ball_pos_y;
-//            final double vee_pos_z = ball_pos_z;
-//            veePos = new BasicHep3Vector(vee_pos_x, vee_pos_y, vee_pos_z);
-//            
-//            final double flat_pos_x = ball_pos_x;
-//            final double flat_pos_y = ball_pos_y + 1.0; // random distance
-//            final double flat_pos_z = ball_pos_z;
-//            flatPos = new BasicHep3Vector(flat_pos_x,flat_pos_y,flat_pos_z);
-//        }
         
     }
     
@@ -470,7 +452,7 @@
     
     /**
      * {@link SurveyVolume} volume defining the coordinate system of the bottom L1-3 u-channel 
-     *  Reference: SupportRingL13BottomKinMount coordinate system
+     *  Reference: {@link SupportRingL13BottomKinMount} coordinate system
      *  Origin: midpoint between upstream survey cones
      *  Orientation: u - width pointing towards electron side, v - pointing along the U-channel in the beam direction
      *  

Modified: java/trunk/detector-model/src/main/java/org/lcsim/geometry/compact/converter/HPSTrackerBuilder.java
 =============================================================================
--- java/trunk/detector-model/src/main/java/org/lcsim/geometry/compact/converter/HPSTrackerBuilder.java	(original)
+++ java/trunk/detector-model/src/main/java/org/lcsim/geometry/compact/converter/HPSTrackerBuilder.java	Wed Jun 24 16:15:02 2015
@@ -174,7 +174,7 @@
      * @param isTopLayer - top or bottom layer
      * @return the alignment correction
      */
-    protected AlignmentCorrection getSupportAlignmentCorrection(boolean isTopLayer) {
+    protected AlignmentCorrection getL13UChannelAlignmentCorrection(boolean isTopLayer) {
         double r[] = {0, 0, 0};
         double t[] = {0, 0, 0};
         for (MilleParameter p_loop : milleparameters) {
@@ -278,18 +278,13 @@
         }
         // check for other signatures
         if (half.isEmpty()) {
-            // 6 layers is arbitrary here
-            for (int layer = 1; layer <= 6; ++layer) {
-                if (name.contains(String.format("L%db", layer))) {
+            Pattern pattern = Pattern.compile(".*_L[1-6][1-6]?([a-z]).*");
+            Matcher matcher = pattern.matcher(name);
+            if(matcher.matches()) {
+                if(matcher.group(1).equals("t")) {
+                    half = "top";
+                } else if(matcher.group(1).equals("b")) {
                     half = "bottom";
-                    break;
-                }
-                if (name.contains(String.format("L%dt", layer))) {
-                    if (half.equals("bottom")) {
-                        throw new RuntimeException("found both halfs from name  " + name);
-                    }
-                    half = "top";
-                    break;
                 }
             }
         }
@@ -336,25 +331,41 @@
         Pattern pattern = Pattern.compile("module_L[1-6][bt]$");
         Matcher matcher = pattern.matcher(name);
         boolean found = false;
-        while(matcher.find()) {
+        while(matcher.matches()) {
             //System.out.printf("isModule: found %s\n", matcher.group());
             found = true;
         }
         return found?true:false;
     }
     
+    public static int getUChannelSupportLayer(String name) {
+        if(isUChannelSupport(name)) {
+            Pattern patter = Pattern.compile("^support_[a-z]*_L([1-6])[1-6]$");
+            Matcher matcher = patter.matcher(name);
+            if(matcher.matches() ) {
+                int layer = Integer.parseInt(matcher.group(1));
+                return layer;
+            } else {
+                throw new RuntimeException("this is not a valid u-channel name: " + name);
+            }
+        } else {
+            throw new RuntimeException("this is not a valid u-channel name: " + name);
+        }
+    }
+    
+    
     public static boolean isUChannelSupport(String name) {
-        Pattern patter = Pattern.compile("^support_[a-z]+_L1|3$4|6");
+        Pattern patter = Pattern.compile("^support_[a-z]*_L(4|1)(6|3)$");
         Matcher matcher = patter.matcher(name);
-        boolean found = false;
-        if(matcher.find() ) {
-            found = true;
-            System.out.printf("isUChannelSupport: found U-channel: %s\n", name);
-        } else {
-           System.out.printf("isUChannelSupport: this is not a U-channel: %s\n", name);
-        }
-        return found;
-    }
+        return matcher.matches();
+    }
+
+    public static boolean isSupportRingKinMount(String name) {
+        Pattern patter = Pattern.compile("^c_support_kin_L13(b|t)$");
+        Matcher matcher = patter.matcher(name);
+        return matcher.matches();
+    }    
+    
     
     public static boolean isSensor(String name) {
         if (name.endsWith("sensor")) {

Modified: java/trunk/detector-model/src/main/java/org/lcsim/geometry/compact/converter/HPSTrackerGeometryDefinition.java
 =============================================================================
--- java/trunk/detector-model/src/main/java/org/lcsim/geometry/compact/converter/HPSTrackerGeometryDefinition.java	(original)
+++ java/trunk/detector-model/src/main/java/org/lcsim/geometry/compact/converter/HPSTrackerGeometryDefinition.java	Wed Jun 24 16:15:02 2015
@@ -36,7 +36,7 @@
 
 
     //General
-    static final double inch = 25.4; //mm
+    protected static final double inch = 25.4; //mm
     protected static final boolean useSiStripsConvention = true;
     protected static final boolean use30mradRotation = true;
     protected static final boolean useFakeHalfModuleAxialPos = false;

Modified: java/trunk/detector-model/src/main/java/org/lcsim/geometry/compact/converter/SurveyVolume.java
 =============================================================================
--- java/trunk/detector-model/src/main/java/org/lcsim/geometry/compact/converter/SurveyVolume.java	(original)
+++ java/trunk/detector-model/src/main/java/org/lcsim/geometry/compact/converter/SurveyVolume.java	Wed Jun 24 16:15:02 2015
@@ -171,44 +171,143 @@
 
                     if(debug) System.out.printf("%s: updated found survey results: \n%s \n", this.getClass().getSimpleName(), surveyResult.toString());
                 
-                } else if(HPSTrackerBuilder.isUChannelSupport(name)) {
-
-                    if(debug) System.out.printf("%s: treating it as a U-channel\n", this.getClass().getSimpleName());
-                   
-                    // Survey coordinates at upstream end of box need to be translated to the center of the Svt Box used here
+                    
+                    
+                    
+                    
+                } else if(HPSTrackerBuilder.isSupportRingKinMount(name)) {
+
+                    if(debug) System.out.printf("%s: treating it as support ring kinematic mount\n", this.getClass().getSimpleName());
+
+
+
+                    // Survey SVT box origin  translated to the edge of the SVT box
+                    surveyResult.setOrigin(VecOp.sub(surveyResult.getOrigin(), new BasicHep3Vector(0, 0, -0.375*HPSTrackerGeometryDefinition.inch)));
+
+                    if(debug) System.out.printf("%s: UPDATE1 found survey results: \n%s \n", this.getClass().getSimpleName(), surveyResult.toString());
+
+
+                    // Survey SVT box origin translated to the center of the Svt Box used in the geometry
                     surveyResult.setOrigin(VecOp.sub(surveyResult.getOrigin(),new BasicHep3Vector(0, 0, SvtBox.length/2.0)));
 
-                    if(debug) System.out.printf("%s: UPDATE1 found survey results: \n%s \n", this.getClass().getSimpleName(), surveyResult.toString());
-                    
+
+                    if(debug) System.out.printf("%s: UPDATE2 found survey results: \n%s \n", this.getClass().getSimpleName(), surveyResult.toString());
+
                     // rotate origin into the SVT box coordinates
                     Rotation r1 = new Rotation(new Vector3D(1, 0, 0), Math.PI/2.0);
                     surveyResult.rotateOrigin(r1);
                     surveyResult.rotateUnitVectors(r1);
-                    
-                    if(debug) System.out.printf("%s: UPDATE2 found survey results: \n%s \n", this.getClass().getSimpleName(), surveyResult.toString());
-                   
+
+                    if(debug) System.out.printf("%s: UPDATE3 found survey results: \n%s \n", this.getClass().getSimpleName(), surveyResult.toString());
+
+
+
                     // Swap definition of unit axis to the one used in the U-channels
                     if(HPSTrackerBuilder.isTopFromName(name)) {
-                     
-                        Hep3Vector y = new BasicHep3Vector( surveyResult.getZ().v() );
-                        Hep3Vector z = new BasicHep3Vector( VecOp.mult(-1, surveyResult.getY()).v() );
+
+                      //Hep3Vector x = new BasicHep3Vector( VecOp.mult(-1,surveyResult.getX()).v() );
+                        Hep3Vector y = new BasicHep3Vector( VecOp.mult(-1,surveyResult.getZ()).v() );
+                        Hep3Vector z = new BasicHep3Vector( surveyResult.getY().v() );
+                        //surveyResult.setX(x);
                         surveyResult.setY(y);
                         surveyResult.setZ(z);
-                    
+
                     } else {
-                        
-                        Hep3Vector x = new BasicHep3Vector( VecOp.mult(-1,surveyResult.getX()).v() );
-                        Hep3Vector y = new BasicHep3Vector( surveyResult.getZ().v() );
+
+                        //Hep3Vector x = new BasicHep3Vector( VecOp.mult(-1,surveyResult.getX()).v() );
+                        Hep3Vector y = new BasicHep3Vector( VecOp.mult(-1,surveyResult.getZ()).v() );
                         Hep3Vector z = new BasicHep3Vector( surveyResult.getY().v() );
-                        surveyResult.setX(x);
+                        //surveyResult.setX(x);
                         surveyResult.setY(y);
                         surveyResult.setZ(z);
-                        
+
                     }
-                    
-                    
-                    if(debug) System.out.printf("%s: UPDATE3 found survey results: \n%s \n", this.getClass().getSimpleName(), surveyResult.toString());
-                    
+
+
+
+
+                } else if(HPSTrackerBuilder.isUChannelSupport(name) ) {
+
+                   
+                    
+                    int layer = HPSTrackerBuilder.getUChannelSupportLayer(name);
+
+                    if(layer >= 4 ) {
+                        if(debug) System.out.printf("%s: treating it as a L4-6 U-channel (%d)\n", this.getClass().getSimpleName(), layer);
+
+
+                        // Survey SVT box origin  translated to the edge of the SVT box
+                        surveyResult.setOrigin(VecOp.sub(surveyResult.getOrigin(), new BasicHep3Vector(0, 0, -0.375*HPSTrackerGeometryDefinition.inch)));
+
+                        if(debug) System.out.printf("%s: UPDATE1 found survey results: \n%s \n", this.getClass().getSimpleName(), surveyResult.toString());
+
+                        // Survey SVT box origin translated to the center of the Svt Box used in the geometry
+                        surveyResult.setOrigin(VecOp.sub(surveyResult.getOrigin(),new BasicHep3Vector(0, 0, SvtBox.length/2.0)));
+
+
+                        if(debug) System.out.printf("%s: UPDATE2 found survey results: \n%s \n", this.getClass().getSimpleName(), surveyResult.toString());
+
+                        // rotate origin into the SVT box coordinates
+                        Rotation r1 = new Rotation(new Vector3D(1, 0, 0), Math.PI/2.0);
+                        surveyResult.rotateOrigin(r1);
+                        surveyResult.rotateUnitVectors(r1);
+
+                        if(debug) System.out.printf("%s: UPDATE3 found survey results: \n%s \n", this.getClass().getSimpleName(), surveyResult.toString());
+
+                        // Swap definition of unit axis to the one used in the U-channels
+                        if(HPSTrackerBuilder.isTopFromName(name)) {
+
+                            Hep3Vector y = new BasicHep3Vector( surveyResult.getZ().v() );
+                            Hep3Vector z = new BasicHep3Vector( VecOp.mult(-1, surveyResult.getY()).v() );
+                            surveyResult.setY(y);
+                            surveyResult.setZ(z);
+
+                        } else {
+
+                            Hep3Vector x = new BasicHep3Vector( VecOp.mult(-1,surveyResult.getX()).v() );
+                            Hep3Vector y = new BasicHep3Vector( surveyResult.getZ().v() );
+                            Hep3Vector z = new BasicHep3Vector( surveyResult.getY().v() );
+                            surveyResult.setX(x);
+                            surveyResult.setY(y);
+                            surveyResult.setZ(z);
+
+                        }
+                        
+
+                    } else {
+                        
+                        if(debug) System.out.printf("%s: treating it as a L1-3 U-channel (%d)\n", this.getClass().getSimpleName(), layer);
+                        
+                        // Rotate the survey origin into the kinematic mount coordinate frame used here
+                        Rotation r = new Rotation(new Vector3D(1,0,0), Math.PI/2.0);
+                        surveyResult.rotateOrigin(r);
+                        surveyResult.rotateUnitVectors(r);
+                        
+                        if(debug) System.out.printf("%s: UPDATE1 found survey results: \n%s \n", this.getClass().getSimpleName(), surveyResult.toString());
+
+                        
+                        // Swap definition of unit axis to the one used in the U-channels
+                        if(HPSTrackerBuilder.isTopFromName(name)) {
+
+                            Hep3Vector y = new BasicHep3Vector( surveyResult.getZ().v() );
+                            Hep3Vector z = new BasicHep3Vector( VecOp.mult(-1, surveyResult.getY()).v() );
+                            surveyResult.setY(y);
+                            surveyResult.setZ(z);
+
+                        } else {
+
+                            Hep3Vector y = new BasicHep3Vector( surveyResult.getZ().v() );
+                            Hep3Vector z = new BasicHep3Vector( surveyResult.getY().v() );
+                            Hep3Vector x = new BasicHep3Vector( VecOp.mult(-1,surveyResult.getX()).v() );
+                            surveyResult.setX(x);
+                            surveyResult.setY(y);
+                            surveyResult.setZ(z);
+
+                        }
+                        
+                    }
+
+
                     
                     
                 } else {
@@ -216,6 +315,10 @@
                     throw new RuntimeException("I don't think there is a surveyresult defined for this type from " + name);
                     
                 }
+                
+                if(debug) System.out.printf("%s:  survey results after corrections: \n%s \n", this.getClass().getSimpleName(), surveyResult.toString());
+
+                
                 
                 // Need to go through the reference/ghost geometries if they exist
                 

Modified: java/trunk/detector-model/src/test/resources/org/lcsim/geometry/subdetector/HPSTracker2014v1Survey.xml
 =============================================================================
--- java/trunk/detector-model/src/test/resources/org/lcsim/geometry/subdetector/HPSTracker2014v1Survey.xml	(original)
+++ java/trunk/detector-model/src/test/resources/org/lcsim/geometry/subdetector/HPSTracker2014v1Survey.xml	Wed Jun 24 16:15:02 2015
@@ -57,56 +57,46 @@
 
         <SurveyVolumes>
  
-  <!-- Module support surface survey  -->
- <SurveyVolume name="support_bottom_L46" desc="B46 ball basis in box fiducial frame:">
-    <origin x="-5.9779" y="-8.4112" z="789.6352"/>
-    <unitvec name="X" x="9.9955e-01" y="-7.7349e-05" z="-3.0082e-02"/>
-    <unitvec name="Y" x="7.6453e-05" y="1.0000e+00" z="-3.0945e-05"/>
-    <unitvec name="Z" x="3.0082e-02" y="2.8631e-05" z="9.9955e-01"/>
-</SurveyVolume>
-
-<SurveyVolume name="support_top_L46" desc="T46 ball basis in box fiducial frame:">
-    <origin x="-6.3106" y="8.462" z="773.7906"/>
-    <unitvec name="X" x="9.9954e-01" y="7.3687e-05" z="-3.0209e-02"/>
-    <unitvec name="Y" x="-7.2695e-05" y="1.0000e+00" z="3.3946e-05"/>
-    <unitvec name="Z" x="3.0209e-02" y="-3.1734e-05" z="9.9954e-01"/>
-</SurveyVolume>
-
-<!-- 
-<SurveyVolume name="" desc="B13 ball basis in pivot frame:">
-    <origin x="0." y="59.9476" z="-304.9173"/>
-    <unitvec name="X" x="1." y="0." z="0."/>
-    <unitvec name="Y" x="0." y="1." z="0."/>
-    <unitvec name="Z" x="0." y="0." z="1."/>
-</SurveyVolume>
-
-<SurveyVolume name="" desc="B13 pivot basis in box frame:">
-    <origin x="-37.3429" y="-68.3632" z="695.2994"/>
-    <unitvec name="X" x="9.9954e-01" y="1.3427e-04" z="-3.0350e-02"/>
-    <unitvec name="Y" x="-1.3440e-04" y="1.0000e+00" z="-2.1271e-06"/>
-    <unitvec name="Z" x="3.0350e-02" y="6.2051e-06" z="9.9954e-01"/>
-</SurveyVolume>
-
-<SurveyVolume name="" desc="T13 ball basis in pivot frame:">
-    <origin x="0." y="-50.9272" z="-319.7481"/>
-    <unitvec name="X" x="1." y="0." z="0."/>
-    <unitvec name="Y" x="0." y="1." z="0."/>
-    <unitvec name="Z" x="0." y="0." z="1."/>
-</SurveyVolume>
-
-<SurveyVolume name="" desc="T13 pivot basis in box frame:">
-    <origin x="-36.9837" y="59.4777" z="694.2924"/>
-    <unitvec name="X" x="9.9952e-01" y="4.2882e-05" z="-3.1132e-02"/>
-    <unitvec name="Y" x="-5.2348e-05" y="1.0000e+00" z="-3.0325e-04"/>
-    <unitvec name="Z" x="3.1132e-02" y="3.0473e-04" z="9.9952e-01"/>
-</SurveyVolume>
--->
- 
- 
- 
- 
- 
- 
+                 <!-- U-channel in Svt box survey survey  -->
+                <SurveyVolume name="support_bottom_L46" desc="B46 ball basis in box fiducial frame:">
+                    <origin x="-5.9779" y="-8.4112" z="789.6352"/>
+                    <unitvec name="X" x="9.9955e-01" y="-7.7349e-05" z="-3.0082e-02"/>
+                    <unitvec name="Y" x="7.6453e-05" y="1.0000e+00" z="-3.0945e-05"/>
+                    <unitvec name="Z" x="3.0082e-02" y="2.8631e-05" z="9.9955e-01"/>
+                </SurveyVolume>
+                <SurveyVolume name="support_top_L46" desc="T46 ball basis in box fiducial frame:">
+                    <origin x="-6.3106" y="8.462" z="773.7906"/>
+                    <unitvec name="X" x="9.9954e-01" y="7.3687e-05" z="-3.0209e-02"/>
+                    <unitvec name="Y" x="-7.2695e-05" y="1.0000e+00" z="3.3946e-05"/>
+                    <unitvec name="Z" x="3.0209e-02" y="-3.1734e-05" z="9.9954e-01"/>
+                </SurveyVolume>
+                <SurveyVolume name="support_bottom_L13" desc="B13 ball basis in pivot frame:">
+                    <origin x="0." y="59.9476" z="-304.9173"/>
+                    <unitvec name="X" x="1." y="0." z="0."/>
+                    <unitvec name="Y" x="0." y="1." z="0."/>
+                    <unitvec name="Z" x="0." y="0." z="1."/>
+                </SurveyVolume>
+                <SurveyVolume name="c_support_kin_L13b" desc="B13 pivot basis in box frame:">
+                    <origin x="-37.3429" y="-68.3632" z="695.2994"/>
+                    <unitvec name="X" x="9.9954e-01" y="1.3427e-04" z="-3.0350e-02"/>
+                    <unitvec name="Y" x="-1.3440e-04" y="1.0000e+00" z="-2.1271e-06"/>
+                    <unitvec name="Z" x="3.0350e-02" y="6.2051e-06" z="9.9954e-01"/>
+                </SurveyVolume>
+                <SurveyVolume name="support_top_L13" desc="T13 ball basis in pivot frame:">
+                    <origin x="0." y="-50.9272" z="-319.7481"/>
+                    <unitvec name="X" x="1." y="0." z="0."/>
+                    <unitvec name="Y" x="0." y="1." z="0."/>
+                    <unitvec name="Z" x="0." y="0." z="1."/>
+                </SurveyVolume>
+                <SurveyVolume name="c_support_kin_L13t" desc="T13 pivot basis in box frame:">
+                    <origin x="-36.9837" y="59.4777" z="694.2924"/>
+                    <unitvec name="X" x="9.9952e-01" y="4.2882e-05" z="-3.1132e-02"/>
+                    <unitvec name="Y" x="-5.2348e-05" y="1.0000e+00" z="-3.0325e-04"/>
+                    <unitvec name="Z" x="3.1132e-02" y="3.0473e-04" z="9.9952e-01"/>
+                </SurveyVolume>
+
+
+
  
                 <!-- Module support surface survey  -->
                 <!-- 

Top of Message | Previous Page | Permalink

Advanced Options


Options

Log In

Log In

Get Password

Get Password


Search Archives

Search Archives


Subscribe or Unsubscribe

Subscribe or Unsubscribe


Archives

November 2017
August 2017
July 2017
January 2017
December 2016
November 2016
October 2016
September 2016
August 2016
July 2016
June 2016
May 2016
April 2016
March 2016
February 2016
January 2016
December 2015
November 2015
October 2015
September 2015
August 2015
July 2015
June 2015
May 2015
April 2015
March 2015
February 2015
January 2015
December 2014
November 2014
October 2014
September 2014
August 2014
July 2014
June 2014
May 2014
April 2014
March 2014
February 2014
January 2014
December 2013
November 2013

ATOM RSS1 RSS2



LISTSERV.SLAC.STANFORD.EDU

Secured by F-Secure Anti-Virus CataList Email List Search Powered by the LISTSERV Email List Manager

Privacy Notice, Security Notice and Terms of Use