Commit in hps-java/src/main/java/org/lcsim/hps/users/phansson on MAIN | |||
ParticleHelixProducer.java | +23 | -5 | 1.5 -> 1.6 |
Create HpsHelicalTrackFits instead; Temporary solution until HelicalTrackFit can be modified
diff -u -r1.5 -r1.6 --- ParticleHelixProducer.java 17 Oct 2012 22:52:29 -0000 1.5 +++ ParticleHelixProducer.java 20 Oct 2012 10:07:04 -0000 1.6 @@ -2,20 +2,25 @@
import hep.aida.ICloud1D; import hep.aida.IPlotter;
+import hep.physics.matrix.SymmetricMatrix;
import hep.physics.vec.BasicHep3Vector; import hep.physics.vec.Hep3Matrix; import hep.physics.vec.Hep3Vector; import hep.physics.vec.VecOp; import java.util.ArrayList;
+import java.util.HashMap;
import java.util.List; import org.lcsim.constants.Constants; import org.lcsim.event.EventHeader; import org.lcsim.event.MCParticle; import org.lcsim.event.util.ParticleTypeClassifier; import org.lcsim.fit.helicaltrack.HelicalTrackFit;
+import org.lcsim.fit.helicaltrack.HelicalTrackHit;
import org.lcsim.fit.helicaltrack.HelixParamCalculator;
+import org.lcsim.fit.helicaltrack.MultipleScatter;
import org.lcsim.geometry.Detector; import org.lcsim.hps.analysis.ecal.HPSMCParticlePlotsDriver;
+import org.lcsim.hps.recon.tracking.HpsHelicalTrackFit;
import org.lcsim.hps.recon.tracking.SvtTrackExtrapolator; import org.lcsim.hps.recon.tracking.TrackUtils; import org.lcsim.hps.recon.tracking.TrackerHitUtils;
@@ -133,7 +138,9 @@
//Make new tracks based on the MC particles
- List<HelicalTrackFit> tracks = new ArrayList<HelicalTrackFit>();
+ //List<HelicalTrackFit> tracks = new ArrayList<HelicalTrackFit>();
+ List<HpsHelicalTrackFit> tracks = new ArrayList<HpsHelicalTrackFit>();
+
if(event.hasCollection(MCParticle.class)) { List<MCParticle> mcparticles = event.get(MCParticle.class).get(0); if(debug) System.out.println(this.getClass().getSimpleName() + ": Number of MC particles = " + mcparticles.size());
@@ -211,7 +218,8 @@
pars[2] = 1/hpc.getRadius(); pars[3] = hpc.getZ0(); pars[4] = hpc.getSlopeSZPlane();
- HelicalTrackFit htf = this.trackUtils.makeHelicalTrackFit(pars);
+ //HelicalTrackFit htf = this.trackUtils.makeHelicalTrackFit(pars);
+ HpsHelicalTrackFit htf = this.makeHpsHelicalTrackFit(pars, part);
tracks.add(htf); if(debug) { System.out.println(this.getClass().getSimpleName() + ": MC particle created HelicalTrackFit " + htf.toString());
@@ -237,15 +245,25 @@
if(debug) System.out.println(this.getClass().getSimpleName() + ": created " + tracks.size() + " MC particle helix tracks");
- event.put(this.trackOutputCollectionName, tracks, HelicalTrackFit.class, 0);
+ // event.put(this.trackOutputCollectionName, tracks, HelicalTrackFit.class, 0);
+ event.put(this.trackOutputCollectionName, tracks, HpsHelicalTrackFit.class, 0);
_totalTracks += tracks.size(); }
- -
+ /** + * Create an HpsHelicalTrackFit + * + * @param helixParameters : an array of helix parameters + * @param mcParticle : MC particle associated to this HelicalTrackFit + * @return HpsHelicalTrackFit : + */ + public HpsHelicalTrackFit makeHpsHelicalTrackFit(double[] helixParameters, MCParticle mcParticle){ + return new HpsHelicalTrackFit(helixParameters, new SymmetricMatrix(5), new double[2], new int[2], + new HashMap<HelicalTrackHit, Double>(), new HashMap<HelicalTrackHit, MultipleScatter>(), mcParticle); + }
@Override
Use REPLY-ALL to reply to list
To unsubscribe from the LCD-CVS list, click the following link:
https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=LCD-CVS&A=1