lcsim/src/org/lcsim/recon/pfa/identifier
diff -u -r1.4 -r1.5
--- MIPChargedParticleMaker.java 11 Feb 2007 17:12:51 -0000 1.4
+++ MIPChargedParticleMaker.java 4 Apr 2007 17:18:57 -0000 1.5
@@ -32,7 +32,7 @@
* then the entire cluster is added to the ReconstructedParticle instead.
* The parent must be unique.
*
- * @version $Id: MIPChargedParticleMaker.java,v 1.4 2007/02/11 17:12:51 cassell Exp $
+ * @version $Id: MIPChargedParticleMaker.java,v 1.5 2007/04/04 17:18:57 mcharles Exp $
*/
public class MIPChargedParticleMaker extends Driver
@@ -265,6 +265,10 @@
}
public void recomputeKinematics() {
double energy = 0.0;
+ int charge = 0;
+ double px = 0.0;
+ double py = 0.0;
+ double pz = 0.0;
for (Track tr : this.getTracks()) {
double[] trackMomentum = tr.getMomentum();
double trackMomentumMagSq = (trackMomentum[0]*trackMomentum[0] + trackMomentum[1]*trackMomentum[1] + trackMomentum[2]*trackMomentum[2]);
@@ -280,8 +284,14 @@
}
double trackEnergy = Math.sqrt(trackMomentumMagSq + mass*mass);
energy += trackEnergy;
+ charge += tr.getCharge();
+ px += trackMomentum[0];
+ py += trackMomentum[1];
+ pz += trackMomentum[2];
}
this.setEnergy(energy);
+ this.setCharge(charge);
+ this.setMomentum(new BasicHep3Vector(px,py,pz));
}
}
lcsim/src/org/lcsim/recon/pfa/identifier
diff -u -r1.8 -r1.9
--- SimpleChargedParticleMaker.java 11 Feb 2007 17:12:52 -0000 1.8
+++ SimpleChargedParticleMaker.java 4 Apr 2007 17:18:57 -0000 1.9
@@ -25,7 +25,7 @@
*
* Currently, PID is done by cheating.
*
- * @version $Id: SimpleChargedParticleMaker.java,v 1.8 2007/02/11 17:12:52 cassell Exp $
+ * @version $Id: SimpleChargedParticleMaker.java,v 1.9 2007/04/04 17:18:57 mcharles Exp $
*/
public class SimpleChargedParticleMaker extends Driver
@@ -123,6 +123,9 @@
public void recomputeKinematics() {
double energy = 0.0;
int charge = 0;
+ double px = 0.0;
+ double py = 0.0;
+ double pz = 0.0;
for (Track tr : this.getTracks()) {
double[] trackMomentum = tr.getMomentum();
double trackMomentumMagSq = (trackMomentum[0]*trackMomentum[0] + trackMomentum[1]*trackMomentum[1] + trackMomentum[2]*trackMomentum[2]);
@@ -139,9 +142,13 @@
double trackEnergy = Math.sqrt(trackMomentumMagSq + mass*mass);
energy += trackEnergy;
charge += tr.getCharge();
+ px += trackMomentum[0];
+ py += trackMomentum[1];
+ pz += trackMomentum[2];
}
this.setEnergy(energy);
this.setCharge(charge);
+ this.setMomentum(new BasicHep3Vector(px,py,pz));
}
}
}