Skip to content

Commit

Permalink
Run vertexing in the steering file, with option for unconstrained ver…
Browse files Browse the repository at this point in the history
…texing and jet clustering
  • Loading branch information
eleogran authored and andresailer committed Oct 26, 2018
1 parent 80b359e commit 70ca3ab
Show file tree
Hide file tree
Showing 8 changed files with 237 additions and 12 deletions.
Binary file added Flavour_tagging/vtxprob/d0prob_zpole.root
Binary file not shown.
Binary file added Flavour_tagging/vtxprob/z0prob_zpole.root
Binary file not shown.
1 change: 0 additions & 1 deletion Tracking/src/ClicEfficiencyCalculator.cc
Original file line number Diff line number Diff line change
Expand Up @@ -613,7 +613,6 @@ void ClicEfficiencyCalculator::processEvent( LCEvent* evt ) {
nReconstructable++;
m_thetaPtMCParticle->Fill(mcTheta,mcPt);
std::vector<TrackerHit*> trackHits = particleHits[particle];
int uniqueHits = getUniqueHits(trackHits,m_encoder);
//int nHitsOnTrack(0);

// Check if it was reconstructed
Expand Down
99 changes: 91 additions & 8 deletions clicConfig/clicReconstruction.xml
Original file line number Diff line number Diff line change
Expand Up @@ -95,6 +95,10 @@

<!-- ========== vertexing ========== -->
<processor name="VertexFinder"/>
<if condition="Config.VertexUnconstrainedON">
<processor name="VertexFinderUnconstrained"/>
<processor name="JetClusteringAndRefiner"/>
</if>

<!-- ========== monitoring ========== -->
<processor name="MyClicEfficiencyCalculator"/>
Expand Down Expand Up @@ -148,6 +152,10 @@
<parameter name="Tracking" type="string">Conformal </parameter>
<!--Possible values and conditions for option Tracking-->
<parameter name="TrackingChoices" type="StringVec">Truth Conformal </parameter>
<!--Which option to use for VertexUnconstrained: ON, OFF. Then use, e.g., Config.VertexUnconstrainedOFF in the condition-->
<parameter name="VertexUnconstrained" type="string">OFF </parameter>
<!--Possible values and conditions for option Tracking-->
<parameter name="VertexUnconstrainedChoices" type="StringVec">ON OFF </parameter>
<!--verbosity level of this processor ("DEBUG0-4,MESSAGE0-4,WARNING0-4,ERROR0-4,SILENT")-->
</processor>

Expand Down Expand Up @@ -1166,7 +1174,7 @@
<!--The name of the rootFile which will contain the TEfficiency objects-->
<parameter name="EfficiencyFilename" type="string">TaggingEfficiency.root </parameter>
<!--verbosity level of this processor ("DEBUG0-4,MESSAGE0-4,WARNING0-4,ERROR0-4,SILENT")-->
<parameter name="Verbosity" type="string">DEBUG0 </parameter>
<parameter name="Verbosity" type="string">WARNING </parameter>
<!--Number of Event that should be printed to PDF File-->
<parameter name="PrintThisEvent" type="int">-1 </parameter>
<parameter name="InputFileBackgrounds" type="StringVec"> </parameter>
Expand Down Expand Up @@ -1531,9 +1539,8 @@

</group>

<!-- Primary and Secondary vertex finder ================================================ -->
<processor name="VertexFinder" type="LcfiplusProcessor">
<!-- run primary and secondary vertex finders -->

<group name="Vertexing">
<parameter name="Algorithms" type="stringVec"> PrimaryVertexFinder BuildUpVertex </parameter>
<parameter name="ReadSubdetectorEnergies" type="int" value="0"/> <!-- true for ILD -->
<parameter name="UpdateVertexRPDaughters" type="int" value="0"/> <!-- false for non-updative PandoraPFOs -->
Expand All @@ -1544,9 +1551,6 @@
<parameter name="UseMCP" type="int" value="0" /> <!-- MC info not used -->
<parameter name="MCPCollection" type="string" value="MCParticle" />
<parameter name="MCPFORelation" type="string" value="RecoMCTruthLink" />
<parameter name="PrimaryVertexCollectionName" type="string" value="pVx" />
<parameter name="BuildUpVertexCollectionName" type="string" value="buVx" />
<parameter name="BuildUpVertex.V0VertexCollectionName" type="string" value="buVx_V0" />
<parameter name="MagneticField" type="float" value="4.0"/> <!-- ILC and CLIC detectors have different values -->
<parameter name="BeamSizeX" type="float" value="639.E-6"/> <!-- XYZ need to be checked and corrected to CLIC values -->
<parameter name="BeamSizeY" type="float" value="5.7E-6"/>
Expand All @@ -1557,7 +1561,6 @@
<parameter name="PrimaryVertexFinder.TrackMaxInnermostHitRadius" type="double" value="61" />
<parameter name="PrimaryVertexFinder.TrackMinVtxFtdHits" type="int" value="1" />
<parameter name="PrimaryVertexFinder.Chi2Threshold" type="double" value="25." />
<parameter name="PrimaryVertexFinder.BeamspotConstraint" type="bool">1 </parameter>

<!-- parameters for secondary vertex finder -->
<parameter name="BuildUpVertex.TrackMaxD0" type="double" value="10." />
Expand All @@ -1578,6 +1581,80 @@
<parameter name="BuildUpVertex.AssocIPTracksMinDist" type="double" value="0." />
<parameter name="BuildUpVertex.AssocIPTracksChi2RatioSecToPri" type="double" value="2.0" />
<parameter name="BuildUpVertex.UseV0Selection" type="int" value="1" />

<!-- Primary and Secondary vertex finder ================================================ -->
<processor name="VertexFinder" type="LcfiplusProcessor">
<!-- run primary and secondary vertex finders -->
<parameter name="PrimaryVertexCollectionName" type="string" value="pVx" />
<parameter name="BuildUpVertexCollectionName" type="string" value="buVx" />
<parameter name="BuildUpVertex.V0VertexCollectionName" type="string" value="buVx_V0" />
<parameter name="PrimaryVertexFinder.BeamspotConstraint" type="bool">1 </parameter>
</processor>

<!-- Primary and Secondary vertex finder for resolutions ================================= -->
<processor name="VertexFinderUnconstrained" type="LcfiplusProcessor">
<!-- run primary and secondary vertex finders -->
<parameter name="PrimaryVertexCollectionName" type="string" value="pVx_res" />
<parameter name="BuildUpVertexCollectionName" type="string" value="buVx_res" />
<parameter name="BuildUpVertex.V0VertexCollectionName" type="string" value="buVx_V0_res" />
<parameter name="PrimaryVertexFinder.BeamspotConstraint" type="bool">0 </parameter>
</processor>

</group>


<processor name="JetClusteringAndRefiner" type="LcfiplusProcessor">
<!-- run primary and secondary vertex finders -->
<parameter name="Algorithms" type="stringVec"> JetClustering JetVertexRefiner </parameter>

<!-- general parameters -->
<parameter name="PFOCollection" type="string" value="PandoraPFOs" /> <!-- input PFO collection -->
<parameter name="UseMCP" type="int" value="0" /> <!-- MC info not used -->
<parameter name="MCPCollection" type="string" value="MCParticle" />
<parameter name="MCPFORelation" type="string" value="RecoMCTruthLink" />
<parameter name="ReadSubdetectorEnergies" type="int" value="0"/> <!-- true for ILD -->
<parameter name="UpdateVertexRPDaughters" type="int" value="0"/> <!-- false for non-updative PandoraPFOs -->
<parameter name="TrackHitOrdering" type="int" value="2"/> <!-- Track hit ordering: 0=ILD-LOI (default), 1=ILD-DBD, 2=CLICdet -->
<parameter name="PrintEventNumber" type="int" value="1"/> <!-- 0 for not printing event number, n for printing every n events -->
<parameter name="MagneticField" type="float" value="4.0"/> <!-- ILC and CLIC detectors have different values -->

<!-- jet clustering parameters -->
<parameter name="JetClustering.InputVertexCollectionName" type="string" value="buVx_res" /> <!-- vertex collections to be used in JC -->
<parameter name="JetClustering.OutputJetCollectionName" type="stringVec" value="Vx_res" /> <!-- output collection name, may be multiple -->
<parameter name="JetClustering.NJetsRequested" type="intVec" value="2" /> <!-- Multiple NJets can be specified -->

<parameter name="JetClustering.YCut" type="doubleVec" value="0." /> <!-- specify 0 if not used -->
<parameter name="JetClustering.UseMuonID" type="int" value="1" /> <!-- jet-muon ID for jet clustering -->
<parameter name="JetClustering.VertexSelectionMinimumDistance" type="double" value="0.3" /> <!-- in mm -->
<parameter name="JetClustering.VertexSelectionMaximumDistance" type="double" value="30." /> <!-- in mm -->
<parameter name="JetClustering.VertexSelectionK0MassWidth" type="double" value="0.02" /> <!-- in GeV -->
<parameter name="JetClustering.YAddedForJetVertexVertex" type="double" value="100"/> <!-- add penalty for combining vertices -->
<parameter name="JetClustering.YAddedForJetLeptonVertex" type="double" value="100"/> <!-- add penalty for combining lepton and vertex -->
<parameter name="JetClustering.YAddedForJetLeptonLepton" type="double" value="100"/> <!-- add penalty for combining leptons -->
<parameter name="JetClustering.JetAlgorithm" type="string" value="Durham"/>


<!-- vertex refiner parameters -->
<parameter name="JetVertexRefiner.InputJetCollectionName" type="string" value="Vx_res" />
<parameter name="JetVertexRefiner.OutputJetCollectionName" type="string" value="RefJets_res" />
<parameter name="JetVertexRefiner.PrimaryVertexCollectionName" type="string" value="pVx_res" />
<parameter name="JetVertexRefiner.InputVertexCollectionName" type="string" value="buVx_res" />
<parameter name="JetVertexRefiner.V0VertexCollectionName" type="string" value="buVx_V0_res" />
<parameter name="JetVertexRefiner.OutputVertexCollectionName" type="string" value="RefVx_res" />
<parameter name="JetVertexRefiner.MinPosSingle" type="double" value="0.3" />
<parameter name="JetVertexRefiner.MaxPosSingle" type="double" value="30." />
<parameter name="JetVertexRefiner.MinEnergySingle" type="double" value="1." />
<parameter name="JetVertexRefiner.MaxAngleSingle" type="double" value="0.5" />
<parameter name="JetVertexRefiner.MaxSeparationPerPosSingle" type="double" value="0.1" />
<parameter name="JetVertexRefiner.mind0sigSingle" type="double" value="5." />
<parameter name="JetVertexRefiner.minz0sigSingle" type="double" value="5." />
<parameter name="JetVertexRefiner.OneVertexProbThreshold" type="double" value="0.001" />
<parameter name="JetVertexRefiner.MaxCharmFlightLengthPerJetEnergy" type="double" value="0.1" />

<parameter name="JetVertexRefiner.useBNess" type="bool" value="0" />
<parameter name="JetVertexRefiner.BNessCut" type="double" value="-0.80" />
<parameter name="JetVertexRefiner.BNessCutE1" type="double" value="-0.15" />

</processor>

<processor name="Output_REC" type="LCIOOutputProcessor">
Expand Down Expand Up @@ -1630,11 +1707,17 @@
MergedRecoParticles
MergedClusters
buVx
buVx_res
buVx_RP
buVX_res_RP
buVx_V0
buVX_V0_res
buVx_V0_RP
buVX_V0_res_RP
pVx
pVx_res
pVx_RP
pVx_res_RP
</parameter>
<parameter name="LCIOWriteMode" type="string" value="WRITE_NEW"/>
<parameter name="Verbosity" type="string">WARNING </parameter>
Expand Down
2 changes: 1 addition & 1 deletion clicConfig/clic_steer.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import os

from DDSim.DD4hepSimulation import DD4hepSimulation
from SystemOfUnits import mm, GeV, MeV, m
from SystemOfUnits import mm, GeV, MeV, m, deg
SIM = DD4hepSimulation()

## The compact XML file
Expand Down
Loading

0 comments on commit 70ca3ab

Please sign in to comment.