Print

Print


Commit in lcsim-contrib/src/main/java/org/lcsim/contrib/onoprien/crux/geom on MAIN
CalGeometry.java+9-121.8 -> 1.9
CalModule.java+2-61.4 -> 1.5
+11-18
2 modified files
Implement intersection of Line with generalized ZCylinder.
Minor changes to calorimeter module/layer classes.

lcsim-contrib/src/main/java/org/lcsim/contrib/onoprien/crux/geom
CalGeometry.java 1.8 -> 1.9
diff -u -r1.8 -r1.9
--- CalGeometry.java	26 Mar 2009 20:58:40 -0000	1.8
+++ CalGeometry.java	27 Mar 2009 04:47:35 -0000	1.9
@@ -39,7 +39,7 @@
  * calorimeters is available - see {@link SiD02Geometry}.
  * 
  * @author D. Onoprienko
- * @version $Id: CalGeometry.java,v 1.8 2009/03/26 20:58:40 onoprien Exp $
+ * @version $Id: CalGeometry.java,v 1.9 2009/03/27 04:47:35 onoprien Exp $
  */
 abstract public class CalGeometry implements JobEventListener {
 
@@ -158,14 +158,14 @@
     double sNext = Double.MAX_VALUE;
     CalLayer nextLayer = null;
     for (CalLayer layer : nextLayers) {
-        Intersection inter = trajectory.intersect(layer.getReferenceSurface());
-        if (inter.hasNext()) {
-          double s = inter.getPathLength();
-          if (s < sNext) {
-            sNext = s;
-            nextLayer = layer;
-          }
+      Intersection inter = trajectory.intersect(layer.getReferenceSurface());
+      if (inter.hasNext()) {
+        double s = inter.getPathLength();
+        if (s < sNext) {
+          sNext = s;
+          nextLayer = layer;
         }
+      }
     }
     if (nextLayer == null) {
       return null;
@@ -185,13 +185,11 @@
    * does not enter calorimeter, <tt>null</tt> is returned and the trajectory is not changed.
    */
   public CalLayer propagateFromTracker(Trajectory trajectory) {
-    System.out.println("Entered propagateFromTracker");
     double sNext = Double.MAX_VALUE;
     CalLayer nextLayer = null;
     for (CalModule module : getModules()) {
       if (module.isEntry()) {
         CalLayer layer = module.firstLayer();
-        System.out.println(" Trying layer "+ layer);
         Intersection inter = trajectory.intersect(layer.getReferenceSurface());
         if (inter.hasNext()) {
           double s = inter.getPathLength();
@@ -202,7 +200,6 @@
         }
       }
     }
-    System.out.println("Exiting propagateFromTracker with "+ nextLayer);
     if (nextLayer == null) {
       return null;
     } else {
@@ -252,7 +249,7 @@
         throw new IllegalArgumentException("Cannot create reference surface for Tube at position "+ pos);
       }
       if (Math.abs(z)  < zHalf) { // barrel cylinder
-        return new ZCylinder((rMin+rMax)/2., z-zHalf, z+zHalf);
+        return new ZCylinder((rMin+rMax)/2., zHalf);
       } else { // endcap disk
         return new ZDisk(z, rMin, rMax);
       }

lcsim-contrib/src/main/java/org/lcsim/contrib/onoprien/crux/geom
CalModule.java 1.4 -> 1.5
diff -u -r1.4 -r1.5
--- CalModule.java	24 Mar 2009 20:12:41 -0000	1.4
+++ CalModule.java	27 Mar 2009 04:47:35 -0000	1.5
@@ -8,7 +8,7 @@
  * Class to represent a part of the calorimeter.
  * 
  * @author D. Onoprienko
- * @version $Id: CalModule.java,v 1.4 2009/03/24 20:12:41 onoprien Exp $
+ * @version $Id: CalModule.java,v 1.5 2009/03/27 04:47:35 onoprien Exp $
  */
 public class CalModule {
   
@@ -97,11 +97,7 @@
    * Throws <tt>IndexOutOfBoundsException</tt> if the specified layer ordinal is out of bounds.
    */
   public CalLayer getLayerByOrdinal(int ordinal) {
-    try {
-      return _layers.get(ordinal);
-    } catch (IndexOutOfBoundsException x) {
-      return null;
-    }
+    return _layers.get(ordinal);
   }
   
   /**
CVSspam 0.2.8