Print

Print


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