Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migration of unmigrated content due to installation of a new plugin

LCFIPlus

LCFIPlus is a reconstruction software which performs part of iLCSoft - software packages developed for the International Linear Collider (ILC). It is designed to perform vertex finding, jet finding, and flavor tagging in one package.  It is implemented as a Marlin processor configurable with flexible configuration via the XML steering file.

...

JIRA issue tracker: https://jira.slac.stanford.edu/browse/LCFI

How to obtain LCFIPlus

The LCFIPlus package is included in the ILCSoft release.

The latest version can be downloaded from the DESY SVN repository:

No Format
svn co https://svnsrv.desy.de/public/marlinreco/LCFIPlus/trunk

...

Discussions about the package happen on the mailing list lcfi-vertex AT desy DOT de

Algorithms

LCFIPlus contains the following algorithms:

  • PrimaryVertexFinder - searches for the primary vertex
  • BuildUpVertex - searches secondary vertices
  • JetClustering - jet clustering using vertex information
  • FlavorTag - prepares of flavor tagging input variables
  • MakeNtuple - produces ROOT files containing ntuples for training 
  • TrainMVA - performs TMVA training
  • ReadMVA - applies result of training
Example of PrimaryVertexFinder + BuildUpVertex
Code Block

<processor name="MyLcfiplusProcessor" type="LcfiplusProcessor">

<!-- run primary and secondary vertex finders -->
<parameter name="Algorithms" type="stringVec"> PrimaryVertexFinder BuildUpVertex </parameter>

<!-- specify input collection names -->
<parameter name="PFOCollection" type="string" value="PandoraPFOs" />
<parameter name="PrimaryVertexCollectionName" type="string" value="PrimaryVertex" />
<parameter name="BuildUpVertexCollectionName" type="string" value="BuildUpVertex" />

<!-- parameters for primary vertex finder -->
<parameter name="PrimaryVertexFinder.TrackMaxD0" type="double" value="20." />
<parameter name="PrimaryVertexFinder.TrackMaxZ0" type="double" value="20." />
<parameter name="PrimaryVertexFinder.TrackMaxInnermostHitRadius" type="double" value="20." />
<parameter name="PrimaryVertexFinder.TrackMinVtxFtdHits" type="int" value="5" />
<parameter name="PrimaryVertexFinder.Chi2Threshold" type="double" value="25." />

<!-- parameters for secondary vertex finder -->
<parameter name="BuildUpVertex.TrackMaxD0" type="double" value="10." />
<parameter name="BuildUpVertex.TrackMaxZ0" type="double" value="20." />
<parameter name="BuildUpVertex.TrackMinPt" type="double" value="0.1" />
<parameter name="BuildUpVertex.TrackMaxD0Err" type="double" value="0.1" />
<parameter name="BuildUpVertex.TrackMaxZ0Err" type="double" value="0.1" />
<parameter name="BuildUpVertex.TrackMinTpcHits" type="int" value="20" />
<parameter name="BuildUpVertex.TrackMinFtdHits" type="int" value="3" />
<parameter name="BuildUpVertex.TrackMinVxdHits" type="int" value="3" />
<parameter name="BuildUpVertex.TrackMinVxdFtdHits" type="int" value="0" />
<parameter name="BuildUpVertex.PrimaryChi2Threshold" type="double" value="25." />
<parameter name="BuildUpVertex.SecondaryChi2Threshold" type="double" value="9." />
<parameter name="BuildUpVertex.MassThreshold" type="double" value="10." />
<parameter name="BuildUpVertex.MinDistFromIP" type="double" value="0.3" />
<parameter name="BuildUpVertex.MaxChi2ForDistOrder" type="double" value="1.0" />
<parameter name="BuildUpVertex.AssocIPTracks" type="int" value="1" />
<parameter name="BuildUpVertex.AssocIPTracksMinDist" type="double" value="0." />
<parameter name="BuildUpVertex.AssocIPTracksChi2RatioSecToPri" type="double" value="2.0" />

</processor> <processor name="MyLcfiplusProcessor" type="LcfiplusProcessor">
</processor>

Input variables for flavor tagging

Variables are computed for each jet.

name

description

trk1d0sig

d0 significance of track with highest d0 significance

trk2d0sig

d0 significance of track with second highest d0 significance

trk1z0sig

z0 significance of track with highest d0 significance (ordering by d0, not z0)

trk2z0sig

z0 significance of track with second highest d0 significance (ordering by d0, not z0)

trk1pt

transverse momentum of track with highest d0 significance

trk2pt

transverse momentum of track with second highest d0 significance

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Using training results

Example of getting flavor tagging information inside a Marlin processor:

...

 LCFIPlus

June 8, 2012: The latest tag is available:

No Format
https://svnsrv.desy.de/public/marlinreco/LCFIPlus/branches/v00-05-pre-02

To use flavor tagging with LCFIPlus, one needs to use weight files and Marlin steer files with matching information.

Weights files created with ILD simulation and the corresponding steer file examples can be downloaded from the LCFIPlusConfig package. The README file is the starting point and can be browsed online.

To obtain weight files with SiD simulation, please contact Jan Strube.

Reporting issues

The recommended way to report bugs and issues is through the JIRA issue tracker. A confluence account will be needed for this.

https://jira.slac.stanford.edu/browse/LCFI

The contact persons for the detector groups are:

  • ILD: Tomohiko Tanabe (tomohiko AT icepp.s.u-tokyo.ac DOT jp), Taikan Suehara (suehara AT epx.phys.tohoku.ac DOT jp)
  • SiD and CLIC: Jan Strube (jan.strube AT pnnl DOT gov)

Discussions about the package happen on the mailing list lcfi-vertex AT desy DOT de. To subscribe, follow this link: https://lists.desy.de/sympa/info/lcfi-vertex

Build Instructions

This is a basic configuration for building LCFIPlus using the ilcinstall tool.

No Format
ilcsoft.install( MarlinPKG( "LCFIPlus", LCFIPlus_version ))
ilcsoft.module("LCFIPlus").download.root="marlinreco"
ilcsoft.module("LCFIPlus").addDependency( [ 'LCIO', 'GEAR', 'ROOT', 'Marlin', 'MarlinUtil', 'LCFIVertex'] )
Warning
titleFIXME: Dependencies

Proper way to install all the package's ROOT-based dependencies???

No Format
Minuit2 TMVA TreePlayer Gui Geom Eve Minuit XMLIO RGL Ged EG MLP

Algorithms

LCFIPlus contains the following algorithms:

  • PrimaryVertexFinder - searches for the primary vertex
  • BuildUpVertex - searches secondary vertices
  • JetClustering - jet clustering using vertex information
  • JetVertexRefiner - performs refitting and re-association of vertex tracks
  • FlavorTag - prepares of flavor tagging input variables
  • MakeNtuple - produces ROOT files containing ntuples for training 
  • TrainMVA - performs TMVA training
  • ReadMVA - applies result of training

LCFIPlus Examples
LCFIPlus Variables