lcsim/src/org/lcsim/contrib/JanStrube
diff -N FastMCTrackTester.py
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ FastMCTrackTester.py 20 Jun 2006 22:44:57 -0000 1.1
@@ -0,0 +1,39 @@
+from hep.aida import IAnalysisFactory
+from org.lcsim.mc.fast.tracking import MCFastTrackFactory
+from org.lcsim.spacegeom import CartesianPoint
+from java.lang import Boolean
+
+
+af = IAnalysisFactory.create()
+tf = af.createTreeFactory()
+tree = tf.create('t.aida', 'xml', False, True)
+hf = af.createHistogramFactory(tree)
+
+x = hf.createCloud1D("trackX", "trackX")
+y = hf.createCloud1D('trackY', 'trackY')
+z = hf.createCloud1D('trackZ', 'trackZ')
+
+px = hf.createCloud1D('trackPX', 'trackPX')
+py = hf.createCloud1D('trackPY', 'trackPY')
+pz = hf.createCloud1D('trackPZ', 'trackPZ')
+
+fac = MCFastTrackFactory()
+point = CartesianPoint(0, 0, 0)
+momentum = CartesianPoint(1, 2, 3)
+for iev in range(10000):
+ track = fac.getMCTrack(momentum, point, 1)
+ x.fill(track.getReferencePointX())
+ y.fill(track.getReferencePointY())
+ z.fill(track.getReferencePointZ())
+ px.fill(track.getPX())
+ py.fill(track.getPY())
+ pz.fill(track.getPZ())
+
+tree.commit()
+tree.close()
+
+
+
+
+
+
lcsim/src/org/lcsim/contrib/JanStrube
diff -u -r1.4 -r1.5
--- VertexFitterDriver.java 28 Mar 2006 23:48:38 -0000 1.4
+++ VertexFitterDriver.java 20 Jun 2006 22:44:57 -0000 1.5
@@ -3,7 +3,7 @@
*
* Created on March 25, 2006, 3:15 PM
*
- *@version $Id: VertexFitterDriver.java,v 1.4 2006/03/28 23:48:38 jstrube Exp $
+ *@version $Id: VertexFitterDriver.java,v 1.5 2006/06/20 22:44:57 jstrube Exp $
*/
import hep.aida.IAnalysisFactory;
@@ -21,6 +21,7 @@
import org.lcsim.spacegeom.SpacePoint;
import org.lcsim.util.Driver;
import org.lcsim.util.aida.AIDA;
+import static java.lang.Math.sqrt;
/**
*
@@ -43,7 +44,7 @@
", float unsmeared_phi" +
", float unsmeared_omega" +
", float smeared_theta, float smeared_theta_error" +
- ", float smeared_phi, float smeared phi_error" +
+ ", float smeared_phi, float smeared_phi_error" +
", float smeared_omega, float smeared_omega_error" +
", float fitted_theta, float fitted_theta_error" +
", float fitted_phi, float fitted_phi_error" +
@@ -64,16 +65,16 @@
primaryVertex = new SpacePoint(iPart.getEndPoint());
}
Vertex vertex = fitter.fit(tracks, new CartesianPoint(0, 0, 0), false);
- tuple.fill(0, (float)vertex._chi2);
- tuple.fill(1, (float)vertex._xyzf[0]);
- tuple.fill(2, (float)vertex._xyzf[1]);
- tuple.fill(3, (float)vertex._xyzf[2]);
- tuple.fill(4, (float)vertex._vcov[0]);
- tuple.fill(5, (float)vertex._vcov[2]);
- tuple.fill(6, (float)vertex._vcov[5]);
- tuple.fill(7, (float)primaryVertex.x());
- tuple.fill(8, (float)primaryVertex.y());
- tuple.fill(9, (float)primaryVertex.z());
+ tuple.fill(0, (float) vertex._chi2);
+ tuple.fill(1, (float) vertex._xyzf[0]);
+ tuple.fill(2, (float) vertex._xyzf[1]);
+ tuple.fill(3, (float) vertex._xyzf[2]);
+ tuple.fill(4, (float) sqrt(vertex._vcov[0]));
+ tuple.fill(5, (float) sqrt(vertex._vcov[2]));
+ tuple.fill(6, (float) sqrt(vertex._vcov[5]));
+ tuple.fill(7, (float) primaryVertex.x());
+ tuple.fill(8, (float) primaryVertex.y());
+ tuple.fill(9, (float) primaryVertex.z());
ITuple trackTuple = tuple.getTuple(10);
for (int i=0; i<2; ++i) {
@@ -93,11 +94,11 @@
trackTuple.fill(8, (float) iTrack.getTrackParameter(2));
trackTuple.fill(9, (float) iTrack.getErrorMatrixElement(2, 2));
trackTuple.fill(10, (float) vertex._parf[0][i]);
- trackTuple.fill(11, (float) vertex._tcov[0][i]);
+ trackTuple.fill(11, (float) sqrt(vertex._tcov[0][i]));
trackTuple.fill(12, (float) vertex._parf[1][i]);
- trackTuple.fill(13, (float) vertex._tcov[2][i]);
+ trackTuple.fill(13, (float) sqrt(vertex._tcov[2][i]));
trackTuple.fill(14, (float) vertex._parf[2][i]);
- trackTuple.fill(15, (float) vertex._tcov[5][i]);
+ trackTuple.fill(15, (float) sqrt(vertex._tcov[5][i]));
trackTuple.addRow();
}
tuple.addRow();