Skip to content

Commit

Permalink
Flip the soft lepton sIP in case the Negative CTagger is used
Browse files Browse the repository at this point in the history
  • Loading branch information
Seth committed Aug 16, 2016
1 parent 92a1f9c commit f8b6d57
Show file tree
Hide file tree
Showing 5 changed files with 18 additions and 4 deletions.
2 changes: 2 additions & 0 deletions RecoBTag/CTagging/python/charmTaggerProducer_cff.py
Expand Up @@ -15,6 +15,7 @@

charmTagsNegativeComputerCvsL.slComputerCfg.vertexFlip = cms.bool(True)
charmTagsNegativeComputerCvsL.slComputerCfg.trackFlip = cms.bool(True)
charmTagsNegativeComputerCvsL.slComputerCfg.SoftLeptonFlip = cms.bool(True)
charmTagsNegativeComputerCvsL.slComputerCfg.trackSelection.sip3dSigMax = 0
charmTagsNegativeComputerCvsL.slComputerCfg.trackPseudoSelection.sip3dSigMax = 0
charmTagsNegativeComputerCvsL.slComputerCfg.trackPseudoSelection.sip2dSigMin = -99999.9
Expand All @@ -24,6 +25,7 @@

charmTagsNegativeComputerCvsB.slComputerCfg.vertexFlip = cms.bool(True)
charmTagsNegativeComputerCvsB.slComputerCfg.trackFlip = cms.bool(True)
charmTagsNegativeComputerCvsB.slComputerCfg.SoftLeptonFlip = cms.bool(True)
charmTagsNegativeComputerCvsB.slComputerCfg.trackSelection.sip3dSigMax = 0
charmTagsNegativeComputerCvsB.slComputerCfg.trackPseudoSelection.sip3dSigMax = 0
charmTagsNegativeComputerCvsB.slComputerCfg.trackPseudoSelection.sip2dSigMin = -99999.9
Expand Down
Expand Up @@ -5,7 +5,7 @@
jetTagComputer = cms.string('charmTagsNegativeComputerCvsL'),
tagInfos = cms.VInputTag(
cms.InputTag("pfImpactParameterTagInfos"),
cms.InputTag("pfInclusiveSecondaryVertexFinderCvsLNegativeTagInfos"),
cms.InputTag("pfInclusiveSecondaryVertexFinderNegativeCvsLTagInfos"),
cms.InputTag("softPFMuonsTagInfos"),
cms.InputTag("softPFElectronsTagInfos")
)
Expand Down
14 changes: 12 additions & 2 deletions RecoBTag/SecondaryVertex/interface/CombinedSVSoftLeptonComputer.h
Expand Up @@ -15,13 +15,23 @@ class CombinedSVSoftLeptonComputer : public CombinedSVComputer {
public:
explicit CombinedSVSoftLeptonComputer(const edm::ParameterSet &params);

double flipSoftLeptonValue(double value) const;

template <class IPTI,class SVTI>
reco::TaggingVariableList
operator () (const IPTI &ipInfo, const SVTI &svInfo,
const reco::CandSoftLeptonTagInfo &muonInfo,
const reco::CandSoftLeptonTagInfo &elecInfo ) const;

private:
bool SoftLeptonFlip;
};

double CombinedSVSoftLeptonComputer::flipSoftLeptonValue(double value) const
{
return SoftLeptonFlip ? -value : value;
}

template <class IPTI,class SVTI>
reco::TaggingVariableList CombinedSVSoftLeptonComputer::operator () (const IPTI &ipInfo, const SVTI &svInfo,
const reco::CandSoftLeptonTagInfo &muonInfo,
Expand All @@ -46,7 +56,7 @@ reco::TaggingVariableList CombinedSVSoftLeptonComputer::operator () (const IPTI
leptonCategory = 1; // muon category
const SoftLeptonProperties & propertiesMuon = muonInfo.properties(i);
vars.insert(btau::leptonPtRel,propertiesMuon.ptRel , true);
vars.insert(btau::leptonSip3d,propertiesMuon.sip3d , true);
vars.insert(btau::leptonSip3d,flipSoftLeptonValue(propertiesMuon.sip3d) , true);
vars.insert(btau::leptonDeltaR,propertiesMuon.deltaR , true);
vars.insert(btau::leptonRatioRel,propertiesMuon.ratioRel , true);
vars.insert(btau::leptonEtaRel,propertiesMuon.etaRel , true);
Expand All @@ -60,7 +70,7 @@ reco::TaggingVariableList CombinedSVSoftLeptonComputer::operator () (const IPTI
leptonCategory = 2; // electron category
const SoftLeptonProperties & propertiesElec = elecInfo.properties(i);
vars.insert(btau::leptonPtRel,propertiesElec.ptRel , true);
vars.insert(btau::leptonSip3d,propertiesElec.sip3d , true);
vars.insert(btau::leptonSip3d,flipSoftLeptonValue(propertiesElec.sip3d) , true);
vars.insert(btau::leptonDeltaR,propertiesElec.deltaR , true);
vars.insert(btau::leptonRatioRel,propertiesElec.ratioRel , true);
vars.insert(btau::leptonEtaRel,propertiesElec.etaRel , true);
Expand Down
Expand Up @@ -8,6 +8,7 @@
trackSelectionBlock,
trackFlip = cms.bool(False),
vertexFlip = cms.bool(False),
SoftLeptonFlip = cms.bool(False),
useTrackWeights = cms.bool(True),
pseudoMultiplicityMin = cms.uint32(2),
correctVertexMass = cms.bool(True),
Expand Down
3 changes: 2 additions & 1 deletion RecoBTag/SecondaryVertex/src/CombinedSVSoftLeptonComputer.cc
Expand Up @@ -5,6 +5,7 @@ using namespace std;


CombinedSVSoftLeptonComputer::CombinedSVSoftLeptonComputer(const edm::ParameterSet &params) :
CombinedSVComputer(params)
CombinedSVComputer(params),
SoftLeptonFlip(params.getParameter<bool>("SoftLeptonFlip"))
{
}

0 comments on commit f8b6d57

Please sign in to comment.