I need to check, but we may need to rerun the recon because the wrong track state might have been used in the track-cluster matching. On Oct 21, 2015 09:48, "Omar Moreno" <[log in to unmask]> wrote: > Like I was saying ... This likely means that the position of the track at > the ECal in the DST is also wrong. We are going to need to rerun the > DST's. > On Oct 21, 2015 09:46, "Omar Moreno" <[log in to unmask]> wrote: > >> I didn't realize that an additional track state was added to a track. >> This likely means that the position >> >> On Oct 21, 2015 08:48, "Sho Uemura" <[log in to unmask]> wrote: >> > >> > Also, I meant to say this: >> > >> > Since the TrackState array index is pretty arbitrary, but each >> TrackState has a location ID, people should not be hard-coding the array >> index in their code, and should use the location ID instead (loop over all >> track states, and pick the one with the correct location). It's less >> convenient but safer. >> > >> > And I'm not picking on Holly's code here - this is something that a lot >> of recon code does. This is our fault. >> > >> > If it helps, there is a utility method that does this for you: >> TrackUtils.getTrackStateAtECal(track). >> > >> > >> > On Wed, 21 Oct 2015, Sho Uemura wrote: >> > >> >> Tim is talking about the track state location ID >> (state.getLocation()). Holly is using the track state array index. >> >> >> >> What happened was that Pelle added an additional track state for GBL >> tracks, which represents the track parameters at the last layer of the SVT >> (this doesn't seem to be working quite right, which is an outstanding bug). >> This shows up at index 1, which used to be where the ECal extrapolation >> went. >> >> >> >> For seed tracks: >> >> getTrackStates(0) = at IP (TrackState.AtIP), ref to origin >> >> getTrackStates(1) = at ECal (TrackState.AtCalorimeter), ref to ECal >> intersection >> >> >> >> For GBL tracks: >> >> getTrackStates(0) = at IP (TrackState.AtIP), ref to origin >> >> getTrackStates(1) = at last layer (TrackState.AtLastHit), ref to origin >> >> getTrackStates(2) = at ECal (TrackState.AtCalorimeter), ref to ECal >> intersection >> >> >> >> I don't know why Holly is seeing a nonzero ref point that's >> centimeters off from the cluster position. Maybe we screwed that up, or >> maybe for GBL tracks the ECal extrapolation is being done from the >> AtLastHit track state (which is bogus), which should not have been turned >> on until it had been checked. I can check if that's what's going on. >> >> >> >> Hope this clears things up. And hopefully I'm not adding any >> misinformation to the mix here, there's enough of it going around. >> >> >> >> On Wed, 21 Oct 2015, Holly Vance wrote: >> >> >> >>> Just in case this was missed- >> >>> >> >>> Ok-after checking this in the DST and when using the FSParticle >> collection, >> >>> the track position at the Ecal is still obtained as it was before and >> >>> works. If I directly iterate over the UnconstrainedMollerCandidate >> >>> collection, and get the tracks associated with a vertex, the track >> >>> positions at the ecal don't really make a lot of sense (as mentioned >> in my >> >>> previous e-mail). I'm not sure why this doesn't work in Pass3, but it >> did >> >>> work in Pass 2. >> >>> >> >>> The getReferencePoint method is working, but I am having different >> results >> >>> in the UnconstrainedMollerCandidateCollection than I did with Pass2. >> >>> Additionally, this method still works for FSParticle collection. >> >>> >> >>> On Wed, Oct 21, 2015 at 10:56 AM, Nelson, Timothy Knight < >> >>> [log in to unmask]> wrote: >> >>> >> >>>> Hi Matt, >> >>>> >> >>>> In LCIO, TrackState 1 is ?at IP?, so this definitely doesn?t seem >> like a >> >>>> good convention. Track state 4 is ?at calorimeter? but, in any case, >> the >> >>>> reference point is meant to be independent of the trajectory itself, >> and I >> >>>> think using to store a track position (simply by our own convention) >> is not >> >>>> a good idea, since there is no way to guarantee this behavior (as is >> now >> >>>> found.) >> >>>> >> >>>> Tim >> >>>> >> >>>>> On Oct 21, 2015, at 7:36 AM, Graham, Mathew Thomas < >> >>>> >> >>>> [log in to unmask]> wrote: >> >>>>> >> >>>>> >> >>>>> >> >>>>> I had put the track position at the ECal as the reference point for >> >>>> >> >>>> track state 1 (and adjusted the track parameters accordingly >> IIRC)?this may >> >>>> have changed though, but not by me. >> >>>>> >> >>>>> >> >>>>>> Hi Holly, >> >>>>>> >> >>>>>> I?m not an expert on finding position at the ECal, but the >> reference >> >>>> >> >>>> point for the track doesn?t have anything to do with the position of >> the >> >>>> track at any position along it?s path (it could be kilometers away >> from the >> >>>> track, in principle), and was probably never really the right way >> even if >> >>>> it did seem to give sensible results. The reference point is simply >> the >> >>>> zero of the coordinate system for the track parameters. This is >> usually >> >>>> the origin of our global coordinates. >> >>>>>> >> >>>>>> >> >>>>>> Can someone else chime in and provide the ?right? answer here? >> >>>>>> >> >>>>>> Tim >> >>>>>> >> >>>>>>> On Oct 21, 2015, at 6:20 AM, Holly Vance <[log in to unmask]> >> wrote: >> >>>>>>> >> >>>>>>> Hello, >> >>>>>>> >> >>>>>>> Can anyone confirm that this is still the correct method to get >> the >> >>>> >> >>>> track position at the Ecal from Pass 3? >> >>>>>>> >> >>>>>>> track->getTrackStates()[1]->getReferencePoint() >> >>>>>>> >> >>>>>>> This same code worked for Pass 2, but now I mostly get 0 for all >> >>>> >> >>>> values. Has anyone else confirmed this works? The few times I get >> something >> >>>> other than 0, the distribution sits 6-10cm away from the matched >> cluster >> >>>> x-y positions. Z position still looks fine. >> >>>>>>> >> >>>>>>> >> >>>>>>> -Holly >> >>>>>>> >> >>>>>>> >> >>>>>>> Use REPLY-ALL to reply to list >> >>>>>>> >> >>>>>>> To unsubscribe from the HPS-SOFTWARE list, click the following >> link: >> >>>>>>> >> https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=HPS-SOFTWARE&A=1 >> >>>>>>> >> >>>>>> >> >>>>>> >> >>>>>> >> ######################################################################## >> >>>>>> Use REPLY-ALL to reply to list >> >>>>>> >> >>>>>> To unsubscribe from the HPS-SOFTWARE list, click the following >> link: >> >>>>>> >> https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=HPS-SOFTWARE&A=1 >> >>>>> >> >>>>> >> >>>> >> >>>> >> >>>> >> >>>> -- >> >>>> BEGIN-ANTISPAM-VOTING-LINKS >> >>>> ------------------------------------------------------ >> >>>> >> >>>> NOTE: This message was trained as non-spam. If this is wrong, >> >>>> please correct the training as soon as possible. >> >>>> >> >>>> Teach CanIt if this mail (ID 01PvOV0rk) is spam: >> >>>> Spam: >> >>>> >> https://www.spamtrap.odu.edu/canit/b.php?i=01PvOV0rk&m=13ee7639fef7&t=20151021&c=s >> >>>> Not spam: >> >>>> >> https://www.spamtrap.odu.edu/canit/b.php?i=01PvOV0rk&m=13ee7639fef7&t=20151021&c=n >> >>>> Forget vote: >> >>>> >> https://www.spamtrap.odu.edu/canit/b.php?i=01PvOV0rk&m=13ee7639fef7&t=20151021&c=f >> >>>> ------------------------------------------------------ >> >>>> END-ANTISPAM-VOTING-LINKS >> >>>> >> >>>> >> >>> >> >>> >> ######################################################################## >> >>> Use REPLY-ALL to reply to list >> >>> >> >>> To unsubscribe from the HPS-SOFTWARE list, click the following link: >> >>> https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=HPS-SOFTWARE&A=1 >> >>> >> >> >> >> >> ######################################################################## >> >> Use REPLY-ALL to reply to list >> >> >> >> To unsubscribe from the HPS-SOFTWARE list, click the following link: >> >> https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=HPS-SOFTWARE&A=1 >> >> >> > >> > ######################################################################## >> > Use REPLY-ALL to reply to list >> > >> > To unsubscribe from the HPS-SOFTWARE list, click the following link: >> > https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=HPS-SOFTWARE&A=1 >> > ######################################################################## Use REPLY-ALL to reply to list To unsubscribe from the HPS-SOFTWARE list, click the following link: https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=HPS-SOFTWARE&A=1