lcsim/src/org/lcsim/util/step
diff -u -r1.4 -r1.5
--- TrackStepper.java 2 Nov 2005 00:07:11 -0000 1.4
+++ TrackStepper.java 6 Dec 2005 16:33:54 -0000 1.5
@@ -2,6 +2,9 @@
import java.util.*;
import java.text.*;
+import org.lcsim.util.aida.*;
+import org.lcsim.digisim.CalHitMapMgr;
+
/**Given a particle of initial position momentum and charge
* (x,y,z,px,py,pz,and q),calculates its trajectory in a uniform
* magnetic field Bz-in the z direction in between boundaries
@@ -14,10 +17,12 @@
* Particle assumed is a Muon, but can be changed by setting rp[6] at input
* Units are Tesla, cm, GeV/c
* @author C. Milstene.
- * @version $Id: TrackStepper.java,v 1.4 2005/11/02 00:07:11 lima Exp $
+ * @version $Id: TrackStepper.java,v 1.5 2005/12/06 16:33:54 caroline Exp $
*/
public class TrackStepper
{
+ private static AIDA aida = AIDA.defaultInstance();
+ private static CalHitMapMgr evtptr = null;
// constants
private static final double clight = 2.9979e08; // m/s
private static final double halfpi = 0.5 * Math.PI;
@@ -63,6 +68,7 @@
/** Default Constructor */
public TrackStepper()
{
+ evtptr = CalHitMapMgr.getInstance();
}
/** Calculate position rp[0-5]={x,y,z,px,py,pz}at each step
*
@@ -156,8 +162,10 @@
rpn[i+3] = tmpp + dpF[i]; // - dpM[i];
}
//System.out.println("stepBy end: rpn[0..2]=( "+rpn[0]+", "+rpn[1]+", "+rpn[2]+" )");
- // Histogram.find("y vs x").fill(rpn[0],rpn[1]);
- // Histogram.find("py vs px").fill(rpn[3],rpn[4]);
+ String evtnum = Integer.toString( evtptr.getEvent().getEventNumber() );
+ System.out.println("filling cloud2D, rpn: "+rpn[0]+" "+rpn[1]);
+ aida.cloud2D("y vs x, evt "+evtnum).fill(rpn[0],rpn[1]);
+// Histogram.find("py vs px").fill(rpn[3],rpn[4]);
return trakPs.upDateRp(rpn);
}
@@ -183,8 +191,11 @@
alpha = a_q*0.3*(1./a_En)*(clight*dTof);
delta =1.+0.25*alpha*alpha*BField_i*BField_i; mainTerm=alpha/delta;
adjust = 0.5*(1./delta)*alpha*alpha*BField_i*BField_i;
- dpField[0]=mainTerm*rpn[4]*(-BField_i) - adjust*rpn[3];
- dpField[1]=-mainTerm*rpn[3]*(-BField_i) - adjust*rpn[4];
+ // dpField[0]=mainTerm*rpn[4]*(-BField_i) - adjust*rpn[3];
+ // dpField[1]=-mainTerm*rpn[3]*(-BField_i) - adjust*rpn[4];
+ dpField[0]=mainTerm*rpn[4]*(BField_i) - adjust*rpn[3];
+ dpField[1]=-mainTerm*rpn[3]*(BField_i) - adjust*rpn[4];
+
dpField[2]=0.;
return dpField;
}