Print

Print


Commit in lcsim/src/org/lcsim/contrib on MAIN
JanStrube/.cvsignore+11.2 -> 1.3
LeiXia/rpc_PFA_np.java+14-61.2 -> 1.3
      /rpc_PFA_np_hmx.java+9-41.2 -> 1.3
      /rpc_PFA_np_hmx_ilc090_g2.java+8-41.3 -> 1.4
+32-14
4 modified files
fixing HelixSwim related code

lcsim/src/org/lcsim/contrib/JanStrube
.cvsignore 1.2 -> 1.3
diff -u -r1.2 -r1.3
--- .cvsignore	28 Jun 2006 04:48:34 -0000	1.2
+++ .cvsignore	17 Aug 2007 16:20:33 -0000	1.3
@@ -2,3 +2,4 @@
 fastmc.aida
 t.aida
 ReconParticleTestDriver.py
+*.class

lcsim/src/org/lcsim/contrib/LeiXia
rpc_PFA_np.java 1.2 -> 1.3
diff -u -r1.2 -r1.3
--- rpc_PFA_np.java	20 Feb 2007 20:42:03 -0000	1.2
+++ rpc_PFA_np.java	17 Aug 2007 16:20:33 -0000	1.3
@@ -5,13 +5,18 @@
 import org.lcsim.event.EventHeader;
 import org.lcsim.event.MCParticle;
 import org.lcsim.event.SimCalorimeterHit;
+import org.lcsim.spacegeom.CartesianPoint;
 import org.lcsim.util.Driver;
 import org.lcsim.util.aida.AIDA;
+import org.lcsim.util.swim.Helix;
+import org.lcsim.util.swim.HelixSwimmer;
+
 import hep.physics.vec.*;
-import org.lcsim.util.swim.HelixSwim;
 
-/*
+/**
  * Reconstruction: SiD study (rpc active medium) - non projective
+ * @author Lei Xia <[log in to unmask]>
+ * @version $Id: rpc_PFA_np.java,v 1.3 2007/08/17 16:20:33 jstrube Exp $
  */
 
 public class rpc_PFA_np extends Driver
@@ -1609,11 +1614,14 @@
        else if (mc.getCharge() < -0.1) trackq = -1;
        else trackq = 0;  // hope this never happens!
 
-       HelixSwim swimmer = new HelixSwim(5., trackp, tracko, trackq);  // swimmer in 5T B field along Z+
-
+       HelixSwimmer swimmer = new HelixSwimmer(5.);  // swimmer in 5T B field along Z+
+       swimmer.setTrack(new CartesianPoint(trackp), new CartesianPoint(tracko), trackq);
+       // , , , 
+       
        List<double[]> TrackPoint = new ArrayList<double[]>();
+      
        double length = 10.;  //  this value should be as small as possible!
-       double R = swimmer.getRc();
+       double R = ((Helix) swimmer.getTrajectory()).getRadius();
 
        int done = 0;
        double[] save = new double[3];
@@ -1623,7 +1631,7 @@
 
          length += 10.;                // real track length in mm
          double alpha = length/R;      // convert to radians
-         tmp = swimmer.swimBy(alpha);  // swimmer uses radians
+         tmp = swimmer.getPointAtDistance(alpha).v();  // swimmer uses radians
 
          if ((Math.sqrt(tmp[0]*tmp[0]+tmp[1]*tmp[1])>1270.)||(Math.abs(tmp[2])>1680.)) TrackPoint.add(tmp);
 

lcsim/src/org/lcsim/contrib/LeiXia
rpc_PFA_np_hmx.java 1.2 -> 1.3
diff -u -r1.2 -r1.3
--- rpc_PFA_np_hmx.java	20 Feb 2007 20:42:03 -0000	1.2
+++ rpc_PFA_np_hmx.java	17 Aug 2007 16:20:33 -0000	1.3
@@ -8,12 +8,16 @@
 import org.lcsim.util.Driver;
 import org.lcsim.util.aida.AIDA;
 import hep.physics.vec.*;
-import org.lcsim.util.swim.HelixSwim;
+
+import org.lcsim.util.swim.Helix;
+import org.lcsim.util.swim.HelixSwimmer;
 import hep.aida.*;
 import org.lcsim.recon.emid.hmatrix.HMatrix;
 import org.lcsim.recon.emid.hmatrix.HMatrixTask;
 import org.lcsim.recon.emid.hmatrix.HMatrixBuilder;
 import org.lcsim.recon.emid.hmatrix.HMatrixConditionsConverter;
+import org.lcsim.spacegeom.CartesianPoint;
+import org.lcsim.spacegeom.CartesianVector;
 import org.lcsim.math.chisq.ChisqProb;
 
 /*
@@ -1751,11 +1755,12 @@
        else if (mc.getCharge() < -0.1) trackq = -1;
        else trackq = 0;  // hope this never happens!
 
-       HelixSwim swimmer = new HelixSwim(5., trackp, tracko, trackq);  // swimmer in 5T B field along Z+
+       HelixSwimmer swimmer = new HelixSwimmer(5.);
+       swimmer.setTrack(new CartesianVector(trackp), new CartesianPoint(tracko), trackq);  // swimmer in 5T B field along Z+
 
        List<double[]> TrackPoint = new ArrayList<double[]>();
        double length = 10.;  //  this value should be as small as possible!
-       double R = swimmer.getRc();
+       double R = ((Helix)swimmer.getTrajectory()).getRadius();
 
        int done = 0;
        double[] save = new double[3];
@@ -1765,7 +1770,7 @@
 
          length += 10.;                // real track length in mm
          double alpha = length/R;      // convert to radians
-         tmp = swimmer.swimBy(alpha);  // swimmer uses radians
+         tmp = swimmer.getPointAtDistance(alpha).v();  // swimmer uses radians
          tmp[2] = tracko[2] + length*trackp[2]/Math.sqrt(trackp[0]*trackp[0]+trackp[1]*trackp[1]);  // this is to fix a bug in org.lcsim new release, which always gives tmp[2] = 0
 
          if ((Math.sqrt(tmp[0]*tmp[0]+tmp[1]*tmp[1])>1270.)||(Math.abs(tmp[2])>1680.)) TrackPoint.add(tmp);

lcsim/src/org/lcsim/contrib/LeiXia
rpc_PFA_np_hmx_ilc090_g2.java 1.3 -> 1.4
diff -u -r1.3 -r1.4
--- rpc_PFA_np_hmx_ilc090_g2.java	20 Feb 2007 20:42:03 -0000	1.3
+++ rpc_PFA_np_hmx_ilc090_g2.java	17 Aug 2007 16:20:33 -0000	1.4
@@ -8,12 +8,15 @@
 import org.lcsim.util.Driver;
 import org.lcsim.util.aida.AIDA;
 import hep.physics.vec.*;
-import org.lcsim.util.swim.HelixSwim;
+
+import org.lcsim.util.swim.Helix;
+import org.lcsim.util.swim.HelixSwimmer;
 import hep.aida.*;
 import org.lcsim.recon.emid.hmatrix.HMatrix;
 import org.lcsim.recon.emid.hmatrix.HMatrixTask;
 import org.lcsim.recon.emid.hmatrix.HMatrixBuilder;
 import org.lcsim.recon.emid.hmatrix.HMatrixConditionsConverter;
+import org.lcsim.spacegeom.CartesianPoint;
 import org.lcsim.math.chisq.ChisqProb;
 
 /*
@@ -1855,11 +1858,12 @@
        else if (mc.getCharge() < -0.1) trackq = -1;
        else trackq = 0;  // hope this never happens!
 
-       HelixSwim swimmer = new HelixSwim(5., trackp, tracko, trackq);  // swimmer in 5T B field along Z+
+       HelixSwimmer swimmer = new HelixSwimmer(5);
+       swimmer.setTrack(new CartesianPoint(trackp), new CartesianPoint(tracko), trackq);  // swimmer in 5T B field along Z+
 
        List<double[]> TrackPoint = new ArrayList<double[]>();
        double length = 10.;  //  this value should be as small as possible!
-       double R = swimmer.getRc();
+       double R = ((Helix)swimmer.getTrajectory()).getRadius();
 
        int done = 0;
        double[] save = new double[3];
@@ -1869,7 +1873,7 @@
 
          length += 10.;                // real track length in mm
          double alpha = length/R;      // convert to radians
-         tmp = swimmer.swimBy(alpha);  // swimmer uses radians
+         tmp = swimmer.getPointAtDistance(alpha).v();  // swimmer uses radians
          tmp[2] = tracko[2] + length*trackp[2]/Math.sqrt(trackp[0]*trackp[0]+trackp[1]*trackp[1]);  // this is to fix a bug in org.lcsim new release, which always gives tmp[2] = 0
 
          if ((Math.sqrt(tmp[0]*tmp[0]+tmp[1]*tmp[1])>1270.)||(Math.abs(tmp[2])>1680.)) TrackPoint.add(tmp);
CVSspam 0.2.8