GeomConverter/src/org/lcsim/detector/tracker/silicon
diff -u -r1.1 -r1.2
--- GaussianDistribution2D.java 14 Oct 2007 06:13:10 -0000 1.1
+++ GaussianDistribution2D.java 11 Jan 2008 02:06:20 -0000 1.2
@@ -11,10 +11,10 @@
import org.lcsim.detector.ITransform3D;
import hep.physics.vec.Hep3Vector;
-import hep.physics.vec.BasicHep3Vector;
import hep.physics.vec.VecOp;
import org.apache.commons.math.MathException;
import org.apache.commons.math.special.Erf;
+import org.lcsim.detector.solids.GeomOp3D;
/**
*
@@ -31,11 +31,19 @@
public GaussianDistribution2D(double normalization, Hep3Vector mean, Hep3Vector major_axis, Hep3Vector minor_axis)
{
// System.out.println("Constructing GaussianDistribution2D");
+//
+// System.out.println("normalization: "+normalization);
+// System.out.println("mean: "+mean);
+// System.out.println("major axis: "+major_axis);
+// System.out.println("minor axis: "+minor_axis);
+//
+// System.out.println("VecOp.dot(major_axis,minor_axis): "+VecOp.dot(major_axis,minor_axis));
_normalization = normalization;
_mean = mean;
-
- if (VecOp.dot(major_axis,minor_axis) == 0.0)
+
+// if (VecOp.dot(major_axis,minor_axis) == 0.0)
+ if (Math.abs(VecOp.dot(major_axis,minor_axis)) < GeomOp3D.DISTANCE_TOLERANCE) // must have a tolerance on this
{
_major_axis = major_axis;
_minor_axis = minor_axis;
@@ -45,12 +53,6 @@
throw new RuntimeException("Axes not perpendicular!");
}
-
-// System.out.println("normalization: "+_normalization);
-// System.out.println("mean: "+_mean);
-// System.out.println("major axis: "+_major_axis);
-// System.out.println("minor axis: "+_minor_axis);
-
}
public void transform(ITransform3D transform)