Commit in lcsim-contrib/src/main/java/org/lcsim/contrib/SteveMagill on MAIN | |||
TrkXPosDriver.java | +31 | -13 | 1.1.1.1 -> 1.2 |
diff -u -r1.1.1.1 -r1.2 --- TrkXPosDriver.java 10 Dec 2008 22:03:06 -0000 1.1.1.1 +++ TrkXPosDriver.java 14 Feb 2012 19:21:32 -0000 1.2 @@ -59,10 +59,15 @@
// private double[] _fieldStrength; private double zField; private String _trklist;
+ private int _shmaxlayer; + private String _tename; + private String _thname; + private String _tshname;
- public TrkXPosDriver()
+ public TrkXPosDriver(int shmaxlayer)
{ // add arguments if needed
+ _shmaxlayer = shmaxlayer; // layer number for shower max - or any layer you want up to max of ECAL + HCAL
} protected void process(EventHeader event)
@@ -146,23 +151,24 @@
tror[0] = -trpar[0]*Math.sin(trpar[1])+trrp[0]; tror[1] = trpar[0]*Math.cos(trpar[1])+trrp[1]; tror[2] = trpar[3]+trrp[2];
- Hep3Vector tror3 = new BasicHep3Vector(tror);
+ Hep3Vector tror3 = new BasicHep3Vector(tror); + SpacePoint trorsp = new SpacePoint(tror3); // old swimmer was deprecated, uses SP now
int trq = itr.getCharge(); // System.out.println("Track Charge " + trq + " Track P " + trp3 + " Origin " + tror3); double TrP = Math.sqrt(itr.getPX()*itr.getPX()+itr.getPY()*itr.getPY()+itr.getPZ()*itr.getPZ()); HelixSwimmer tswim = new HelixSwimmer(zField); // assume z-component only // swim track to positions, arguments are momentum, origin, and charge
- tswim.setTrack(trp3, tror3, trq); -
+// tswim.setTrack(trp3, tror3, trq); // deprecated + tswim.setTrack(trp3, trorsp, trq);
// get swim distances to selected points (hard coded for now) double tobrad0 = tswim.getDistanceToRadius(BRadii[0]); // layer 0 of ECAL Barrel double toecz0 = 0.; if (trp[2]>0) toecz0 = tswim.getDistanceToZ(ECZs[0]); if (trp[2]<0) toecz0 = tswim.getDistanceToZ(-ECZs[0]);
- double tobrad7 = tswim.getDistanceToRadius(BRadii[7]); // layer 7 of ECAL Barrel
+ double tobrad7 = tswim.getDistanceToRadius(BRadii[_shmaxlayer]); // layer 7 of ECAL Barrel
double toecz7 = 0.;
- if (trp[2]>0) toecz7 = tswim.getDistanceToZ(ECZs[7]); // layer 7 of ECAL Endcap - if (trp[2]<0) toecz7 = tswim.getDistanceToZ(-ECZs[7]); // layer 7 of ECAL in other endcap
+ if (trp[2]>0) toecz7 = tswim.getDistanceToZ(ECZs[_shmaxlayer]); // layer 7 of ECAL Endcap + if (trp[2]<0) toecz7 = tswim.getDistanceToZ(-ECZs[_shmaxlayer]); // layer 7 of ECAL in other endcap
double tobrad30 = tswim.getDistanceToRadius(BRadii[_numbemlayers]); // layer 0 of HCAL Barrel double toecz30 = 0.; if (trp[2]>0) toecz30 = tswim.getDistanceToZ(ECZs[_numecemlayers]); // layer 0 of HCAL Endcap
@@ -183,7 +189,7 @@
trkE0map.put(itr, trSP); }
- // make map for ECAL layer 7
+ // make map for Shower Max
if (tobrad7<Math.abs(toecz7)) // in barrel { SpacePoint trSP = tswim.getPointAtLength(tobrad7);
@@ -203,14 +209,14 @@
} else // in endcap {
- SpacePoint trSP = tswim.getPointAtLength(toecz30); - trkH0map.put(itr, trSP);
+ SpacePoint trSP = tswim.getPointAtLength(toecz30); + trkH0map.put(itr, trSP);
} }
- event.put("TrackXE0Map",trkE0map); - event.put("TrackXEShMaxMap",trkEsmmap); - event.put("TrackXH0Map",trkH0map);
+ event.put(_tename,trkE0map); + event.put(_tshname,trkEsmmap); + event.put(_thname,trkH0map);
}
@@ -218,6 +224,18 @@
{ _trklist = name; }
+ public void setTrackECAL0Map(String tename) + { + _tename = tename; + } + public void setTrackShMaxMap(String tshname) + { + _tshname = tshname; + } + public void setTrackHCAL0Map(String thname) + { + _thname = thname; + }
}
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