Linear Collider Forum



Home » Analysis and Reconstruction » Reconstruction » Alternative to using org.lcsim "TrackSubdetectorHitNumbers" driver (The driver is specific to sidloi3 )
Alternative to using org.lcsim "TrackSubdetectorHitNumbers" driver [message #2324] Wed, 27 August 2014 06:39 Go to next message
oliverReardonSmith
Messages: 9
Registered: August 2014
Hi all,

Flavour tagging with lfciPlus seems to require the track.subdetector_hits list to be filled (I get crazy results without it). However the only org.lcsim driver I know that fills these lists is

"org.lcsim.recon.util.TrackSubdetectorHitNumbersDriver" (attached).

Unfortunately this driver only works on sidloi3 as rather than reading the geometry given it has a hardcoded length for the vertex barrel.

Does anyone know of an alternate driver or have any advice on rewriting this driver in a better way? I'm tempted to just make a new version that takes the detector barrel length as a parameter in the steering file but it'd be nicer to do this by reading the detector geometry directly.

Many thanks,

Oli

[Updated on: Wed, 27 August 2014 06:40]

Re: Alternative to using org.lcsim "TrackSubdetectorHitNumbers" driver [message #2325 is a reply to message #2324] Wed, 27 August 2014 06:50 Go to previous messageGo to next message
jfstrube
Messages: 64
Registered: September 2004
Location: Tohoku University
LCFIPlus makes track selections based on quality cuts in different subdetectors. In SiD we have the convention that we specify subdetectors by identifier. Unfortunately, there is also the option to use an arbitrary number, which is what LCFIPlus chose to do. This is very fragile, and ILD has different "numbers" than SiD, not to mention that they have a TPC and SiD doesn't.

Feel free to modify the driver such that it works for you.
If you can make it work by reading the detector geometry directly, that would be very helpful.

Ideally, LCFIPlus should be modified to read the detector geometry directly, but since this is currently in flux, any change there is unlikely to live very long, either.
Re: Alternative to using org.lcsim "TrackSubdetectorHitNumbers" driver [message #2326 is a reply to message #2325] Wed, 27 August 2014 06:55 Go to previous messageGo to next message
oliverReardonSmith
Messages: 9
Registered: August 2014
Thanks. I'll look into altering the driver then.
Re: Alternative to using org.lcsim "TrackSubdetectorHitNumbers" driver [message #2327 is a reply to message #2326] Wed, 27 August 2014 07:50 Go to previous messageGo to next message
jfstrube
Messages: 64
Registered: September 2004
Location: Tohoku University
Great, thank you.
If you post it back here, we can check it in for future releases.
Re: Alternative to using org.lcsim "TrackSubdetectorHitNumbers" driver [message #2328 is a reply to message #2325] Wed, 27 August 2014 08:12 Go to previous messageGo to next message
gaede
Messages: 233
Registered: January 2004
Location: DESY, Hamburg
Hi Jan,

Quote:

LCFIPlus makes track selections based on quality cuts in different subdetectors. In SiD we have the convention that we specify subdetectors by identifier. Unfortunately, there is also the option to use an arbitrary number, which is what LCFIPlus chose to do. This is very fragile, and ILD has different "numbers" than SiD, not to mention that they have a TPC and SiD doesn't.


I agree that the way the subdetectorHitNumbers() are currently stored, is not optimal, as it makes assumptions about the order and type of tracking detectors. However, this is a feature of the LCIO EDM and not really of LCFIPlus, which simply uses LCIO.


A possible improvement would be to change the way the subdetectorHitNumbers are stored in LCIO to a map like structure, e.g. a vector of pairs of ints, one being the subDetectorID and one being the number hits from that sub-detector.


This would also have the effect, that no geometry would be needed for filling this information, as it could be done entirely based on the cellID (which has the sub-detectorID)
of the TrackerHit.

-Frank.
Re: Alternative to using org.lcsim "TrackSubdetectorHitNumbers" driver [message #2329 is a reply to message #2328] Wed, 27 August 2014 08:43 Go to previous messageGo to next message
jfstrube
Messages: 64
Registered: September 2004
Location: Tohoku University
In the future, I would anticipate that vertex finding would need track states at different hits. For this, one would probably need the geometry information, unless all of the required track states are stored in LCIO. This might still be possible, but I couldn't say for sure right now.

I would prefer if the track quality cuts, on the other hand, were moved out of LCFIPlus into a "TrackPreparationDriver" or similar. One might want / need to do sophisticated selections. This should not require modifications to the vertex finding code.
Re: Alternative to using org.lcsim "TrackSubdetectorHitNumbers" driver [message #2330 is a reply to message #2327] Thu, 28 August 2014 08:02 Go to previous messageGo to next message
oliverReardonSmith
Messages: 9
Registered: August 2014
I've got a modified version that seems to be working based on the inside method of this class. I'll post it here once I've tested and polished it a bit more.

It depends on the detector having subdetectors named "SiVertexEndcap" and "SiVertexBarrel" in order to work but I don't think theres an easy way around this.

[Updated on: Thu, 28 August 2014 08:03]

Re: Alternative to using org.lcsim "TrackSubdetectorHitNumbers" driver [message #2331 is a reply to message #2327] Fri, 29 August 2014 08:36 Go to previous messageGo to next message
oliverReardonSmith
Messages: 9
Registered: August 2014
This is what I have. It isn't massively elegant but it does do the job.

I was surprised by there being hits in the "SiTrackerForward" detector which come with type == 1 but I've not been able to find any way to translate between the type and the detector so I don't know if this is intended behavior. I've tagged these as tracker hits.

If theres anything you'd like changing then let me know.

[Updated on: Fri, 29 August 2014 08:44]

Re: Alternative to using org.lcsim "TrackSubdetectorHitNumbers" driver [message #2332 is a reply to message #2331] Sun, 31 August 2014 22:30 Go to previous messageGo to next message
jfstrube
Messages: 64
Registered: September 2004
Location: Tohoku University
I've taken a look at this and have no objections, but I have not had the time to test.
If you can confirm that this version does still work with sidloi3 as before, then I will
check it into the repository.
Re: Alternative to using org.lcsim "TrackSubdetectorHitNumbers" driver [message #2333 is a reply to message #2332] Mon, 01 September 2014 01:22 Go to previous messageGo to next message
oliverReardonSmith
Messages: 9
Registered: August 2014
I've only tested its effect on flavour tagging so if the numbers are used anywhere else there may be problems. As far as I can tell it does work correctly with LCFI though.
Re: Alternative to using org.lcsim "TrackSubdetectorHitNumbers" driver [message #2334 is a reply to message #2333] Mon, 01 September 2014 01:50 Go to previous messageGo to next message
jfstrube
Messages: 64
Registered: September 2004
Location: Tohoku University
That's all it's used for. We shouldn't encourage using it for anything else.
Re: Alternative to using org.lcsim "TrackSubdetectorHitNumbers" driver [message #2335 is a reply to message #2334] Mon, 01 September 2014 02:12 Go to previous message
oliverReardonSmith
Messages: 9
Registered: August 2014
In that case the new driver should work fine.
Previous Topic:Problem with Marlin
Next Topic:250 GeV DBD samples
Goto Forum:
  

[ PDF ]

Current Time: Fri Dec 6 01:05:35 Pacific Standard Time 2019
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.1.
Copyright ©2001-2010 FUDforum Bulletin Board Software