lcsim/src/org/lcsim/util/heprep
diff -u -r1.3 -r1.4
--- VertexConverter.java 2 Oct 2007 20:08:27 -0000 1.3
+++ VertexConverter.java 3 Oct 2007 06:36:44 -0000 1.4
@@ -23,7 +23,7 @@
* Representation of the Candidate vertices before fitting
*
* @author jstrube
- * @version $Id: VertexConverter.java,v 1.3 2007/10/02 20:08:27 jstrube Exp $
+ * @version $Id: VertexConverter.java,v 1.4 2007/10/03 06:36:44 jstrube Exp $
*
*/
public class VertexConverter implements HepRepCollectionConverter {
@@ -89,11 +89,11 @@
instanceV.addAttValue("Radius3", nSigma*Math.sqrt(eigenVals.get(2, 2)));
Matrix eigenVecs = vtxEigen.getV();
- double[] zAxis = eigenVecs.times(new double[] {0, 0, 1});
- double[] xAxis = eigenVecs.times(new double[] {1, 0, 0});
- double theta = Math.asin(zAxis[1]);
- double phi = -Math.atan2(zAxis[0], zAxis[2]);
- double omega = -Math.acos(xAxis[1]/Math.cos(theta));
+ assert eigenVecs.getRowDimension() == 3;
+ assert eigenVecs.getColumnDimension() == 3;
+ double theta = -Math.asin(eigenVecs.get(1, 2));
+ double phi = Math.atan2(eigenVecs.get(0, 2),eigenVecs.get(2, 2));
+ double omega = Math.atan2(eigenVecs.get(0, 1), eigenVecs.get(1,1));
instanceV.addAttValue("Phi", phi);
instanceV.addAttValue("Theta", theta);