Author: [log in to unmask] Date: Mon Nov 16 16:41:28 2015 New Revision: 3963 Log: Add option to create truth helix from specified MC particle origin. Modified: java/trunk/tracking/src/main/java/org/hps/recon/tracking/TrackUtils.java Modified: java/trunk/tracking/src/main/java/org/hps/recon/tracking/TrackUtils.java ============================================================================= --- java/trunk/tracking/src/main/java/org/hps/recon/tracking/TrackUtils.java (original) +++ java/trunk/tracking/src/main/java/org/hps/recon/tracking/TrackUtils.java Mon Nov 16 16:41:28 2015 @@ -785,19 +785,34 @@ return !isTopTrack(htf); } + /** * Transform MCParticle into a Helix object. Note that it produces the helix * parameters at nominal x=0 and assumes that there is no field at x<0 * * @param mcp MC particle to be transformed - * @return helix object based on the MC particle + * @return {@link HelicalTrackFit} object based on the MC particle */ public static HelicalTrackFit getHTF(MCParticle mcp, double Bz) { + return getHTF(mcp,mcp.getOrigin(),Bz); + } + + + + /** + * Transform MCParticle into a Helix object. Note that it produces the helix + * parameters at nominal x=0 and assumes that there is no field at x<0 + * + * @param mcp MC particle to be transformed + * @param org origin to be used for the track + * @return {@link HelicalTrackFit} object based on the MC particle + */ + public static HelicalTrackFit getHTF(MCParticle mcp, Hep3Vector origin, double Bz) { boolean debug = false; - if (debug) System.out.printf("getHTF\nmcp org %s mc p %s\n", mcp.getOrigin().toString(), mcp.getMomentum().toString()); + if (debug) System.out.printf("getHTF\nmcp org %s origin used %s mc p %s\n", mcp.getOrigin().toString(),origin.toString(), mcp.getMomentum().toString()); - Hep3Vector org = CoordinateTransformations.transformVectorToTracking(mcp.getOrigin()); + Hep3Vector org = CoordinateTransformations.transformVectorToTracking(origin); Hep3Vector p = CoordinateTransformations.transformVectorToTracking(mcp.getMomentum()); if (debug) System.out.printf("mcp org %s mc p %s (trans)\n", org.toString(), p.toString());