|
ATLAS Offline Software
|
Go to the documentation of this file.
14 #ifndef TRIGMUCOMB_MUCOMB_H
15 #define TRIGMUCOMB_MUCOMB_H
22 #include "GaudiKernel/ToolHandle.h"
23 #include "GaudiKernel/SystemOfUnits.h"
57 muComb(
const std::string&, ISvcLocator*);
68 "TrackParticlesContainerName",
69 "InDetTrigTrackingxAODCnv_Muon_FTF",
70 "input TrackParticle container name"};
73 "L2StandAloneMuonContainerName",
74 "xAOD::L2StandAloneMuonContainer",
75 "input L2StandAloneMuon Container name"};
79 "L2CombinedMuonContainerName",
81 "output CB Muon container name"};
83 ToolHandle<GenericMonitoringTool>
m_monTool{
this,
"MonTool",
"",
"Monitoring tool"};
88 "Trk::Extrapolator/AtlasExtrapolator",
89 "Tool to backextrapolate muon from MS to IP (G4 based)"};
95 double,
double,
double,
int,
96 double&,
double&,
double&,
double&,
double&)
const;
99 double,
double,
double,
int,
100 double&,
double&,
double&,
double&,
double&)
const;
103 double,
double,
double,
double,
104 double&,
double&,
double&,
double&,
double&,
int&)
const;
107 double,
double,
double,
double,
double,
double,
double,
108 double&,
double&,
double&,
double&,
double&,
int&)
const;
120 Gaudi::Property<bool>
m_assumeToroidOff {
this,
"AssumeToroidOff",
false,
"Force assumption toroid off"};
122 Gaudi::Property<bool>
m_assumeSolenoidOff {
this,
"AssumeSolenoidOff",
false,
"Force assumption solenoid off"};
129 Gaudi::Property<int>
m_AlgoStrategy {
this,
"MuCombStrategy", 0,
"Algoritgm strategy [0=auto select best option,1=simple angular match]"};
136 Gaudi::Property<int>
m_ChargeStrategy {
this,
"ChargeStrategy", 0,
"Charge assignement strategy [0=muFast,1=ID,2=resolution based]"};
139 Gaudi::Property<std::string>
m_ID_algo_to_use {
this,
"IDalgo",
"InDetTrigTrackingxAODCnv_Muon_FTF",
"ID trk xAOD collection to use"};
144 Gaudi::Property<double>
m_EtaMaxTrk {
this,
"MaxAbsEtaTRK", 2.5,
"ID tracks max |eta|"};
149 Gaudi::Property<int>
m_NdofMin {
this,
"NdofMin", 9999,
"matching parameter: min ndof"};
151 Gaudi::Property<bool>
m_UseAbsPt {
this,
"UseAbsPt",
false,
"matching parameter: use absolute pT"};
155 Gaudi::Property<double>
m_WinEta {
this,
"WinEtaSigma", 4.0,
"matching parameter: LUT-based"};
157 Gaudi::Property<double>
m_WinPhi {
this,
"WinPhiSigma", 4.0,
"matching parameter: LUT-based"};
159 Gaudi::Property<double>
m_Chi2Max {
this,
"Chi2Max", 1.e33,
"matching parameter: LUT-based"};
161 Gaudi::Property<double>
m_WinEta_EC {
this,
"WinEtaSigmaEndCaps", 4.0,
"matching parameter: LUT-based"};
163 Gaudi::Property<double>
m_WinPhi_EC {
this,
"WinPhiSigmaEndCaps", 10.,
"matching parameter: LUT-based"};
165 Gaudi::Property<double>
m_Chi2Max_EC {
this,
"Chi2MaxEndCaps", 1.e33,
"matching parameter: LUT-based"};
167 Gaudi::Property<double>
m_WinEta_TS {
this,
"WinEtaSigmaTS", 5.0,
"matching parameter: LUT-based"};
169 Gaudi::Property<double>
m_WinPhi_TS {
this,
"WinPhiSigmaTS", 5.0,
"matching parameter: LUT-based"};
171 Gaudi::Property<double>
m_Chi2Max_TS {
this,
"Chi2MaxTS", 1.e33,
"matching parameter: LUT-based"};
173 Gaudi::Property<double>
m_WinEta_FE {
this,
"WinEtaSigmaFE", 10.0,
"matching parameter: LUT-based"};
175 Gaudi::Property<double>
m_WinPhi_FE {
this,
"WinPhiSigmaFE", 10.0,
"matching parameter: LUT-based"};
177 Gaudi::Property<double>
m_Chi2Max_FE {
this,
"Chi2MaxFE", 1.e33,
"matching parameter: LUT-based"};
179 Gaudi::Property<double>
m_WeightEta {
this,
"WeightEta", 2.0,
"matching parameter: LUT-based"};
181 Gaudi::Property<double>
m_WeightPhi {
this,
"WeightPhi", 2.0,
"matching parameter: LUT-based"};
185 Gaudi::Property<double>
m_WinEta_g4 {
this,
"WinEtaSigma_g4", 7.0,
"matching parameter: G4-based"};
187 Gaudi::Property<double>
m_WinPhi_g4 {
this,
"WinPhiSigma_g4", 7.0,
"matching parameter: G4-based"};
189 Gaudi::Property<double>
m_Chi2Max_g4 {
this,
"Chi2Max_g4", 1.e33,
"matching parameter: G4-based"};
191 Gaudi::Property<double>
m_WinEta_EC_g4 {
this,
"WinEtaSigmaEndCaps_g4",7.0,
"matching parameter: G4-based"};
193 Gaudi::Property<double>
m_WinPhi_EC_g4 {
this,
"WinPhiSigmaEndCaps_g4",7.0,
"matching parameter: G4-based"};
195 Gaudi::Property<double>
m_Chi2Max_EC_g4 {
this,
"Chi2MaxEndCaps_g4", 1.e33,
"matching parameter: G4-based"};
197 Gaudi::Property<double>
m_WeightEta_g4 {
this,
"WeightEta_g4", 2.0,
"matching parameter: G4-based"};
199 Gaudi::Property<double>
m_WeightPhi_g4 {
this,
"WeightPhi_g4", 2.0,
"matching parameter: G4-based"};
201 Gaudi::Property<double>
m_Chi2Weight_g4 {
this,
"Chi2Weight_g4", 2.0,
"matching parameter: G4-based"};
205 Gaudi::Property<double>
m_winPt {
this,
"WinPt", -1.0*
Gaudi::Units::GeV,
"matching parameter (simplifed): pT windows in geV (disabled if < 0)"};
207 Gaudi::Property<double>
m_winDR {
this,
"WinDelta", 0.2,
"matching parameter (simplifed): strategy dependent"};
210 Gaudi::Property<std::vector<double>>
m_IDSCANRes_barrel {
this,
"IDSCANBarrelRes", {0.017, 0.000000418},
"ID parametrized rsolution for matching (barrel)"};
211 Gaudi::Property<std::vector<double>>
m_IDSCANRes_endcap1 {
this,
"IDSCANEndcap1Res",{0.025, 0.0000002},
"ID parametrized rsolution for matching (ec1)"};
212 Gaudi::Property<std::vector<double>>
m_IDSCANRes_endcap2 {
this,
"IDSCANEndcap2Res",{0.030, 0.0000002},
"ID parametrized rsolution for matching (ec2)"};
213 Gaudi::Property<std::vector<double>>
m_IDSCANRes_endcap3 {
this,
"IDSCANEndcap3Res",{0.036, 0.0000004},
"ID parametrized rsolution for matching (ec3)"};
214 Gaudi::Property<std::vector<double>>
m_IDSCANRes_endcap4 {
this,
"IDSCANEndcap4Res",{0.046, 0.0000002},
"ID parametrized rsolution for matching (ec4)"};
Property holding a SG store/key/clid from which a ReadHandle is made.
Gaudi::Property< double > m_WinEta_EC
Number of sigmas for the Eta matching window LUT backextrapolator (EndCaps)
Gaudi::Property< double > m_WeightEta
Scale factor for the Eta matching window in LUT backextrapolator.
Gaudi::Property< bool > m_assumeToroidOff
flag to assume B_Toroid=0 anyway
SG::ReadCondHandleKey< AtlasFieldCacheCondObj > m_fieldCacheCondObjInputKey
muComb(const std::string &, ISvcLocator *)
Constructor.
Gaudi::Property< double > m_WinPhi_EC_g4
Number of sigmas for the Phi matching window LUT backextrapolator (EndCaps)
Gaudi::Property< double > m_PtMinTrk
Min Pt to select the ID track for matching.
Gaudi::Property< double > m_Chi2Max
Max Chi2 for the combined muon in LUT backextrapolator (Barrel)
Class describing standalone muons reconstructed in the LVL2 trigger.
Gaudi::Property< double > m_WeightPhi
Scale factor for the Phi matching window in LUT backextrapolator.
Gaudi::Property< double > m_Chi2Max_TS
Max Chi2 for the combined muon in LUT backextrapolator (Trigger Stations)
Gaudi::Property< std::vector< double > > m_IDSCANRes_endcap4
Gaudi::Property< double > m_Chi2Max_g4
Max Chi2 for the combined muon in LUT backextrapolator (Barrel)
int mfMatch(const xAOD::L2StandAloneMuon *feature, double, double, double, double, double &, double &, double &, double &, double &, int &) const
Gaudi::Property< double > m_Chi2Weight_g4
Scale factor for the Chi2 1/pt resolutions (MS and ID) (Barrel)
ExtrapolationResult getExtrapolatedMuon(const xAOD::L2StandAloneMuon *feature) const
Gaudi::Property< std::vector< double > > m_IDSCANRes_endcap2
Gaudi::Property< int > m_ChargeStrategy
muComb charge assignment strategy: 0: useMuFast 1: use ID 2: use resolution model
Gaudi::Property< double > m_winPt
max deltaPt for simpified matching
int drptMatch(double, double, double, double, double, double, int, double &, double &, double &, double &, double &) const
Gaudi::Property< double > m_winDR
max deltaR for simplified matching
An algorithm that can be simultaneously executed in multiple threads.
Gaudi::Property< double > m_Chi2Max_EC_g4
Max Chi2 for the combined muon in LUT backextrapolator (EndCaps)
Property holding a SG store/key/clid from which a WriteHandle is made.
SG::WriteHandleKey< xAOD::L2CombinedMuonContainer > m_outputCBmuonCollKey
Gaudi::Property< double > m_WinEta_EC_g4
Number of sigmas for the Eta matching window LUT backextrapolator (EndCaps)
virtual StatusCode execute(const EventContext &ctx) const override
execute execute the combined muon FEX.
::StatusCode StatusCode
StatusCode definition for legacy code.
Gaudi::Property< double > m_WinEta_FE
Number of sigmas for the Eta matching window LUT backextrapolator (MS Feet region)
Gaudi::Property< double > m_WinPhi_EC
Number of sigmas for the Phi matching window LUT backextrapolator (EndCaps)
Gaudi::Property< double > m_WinPhi
Number of sigmas for the Phi matching window LUT backextrapolator (Barrel)
Gaudi::Property< std::string > m_ID_algo_to_use
ID Track collection used for matching.
Gaudi::Property< int > m_AlgoStrategy
muComb matching strategy: 0: auto select best option 1: simplified R,(Pt) matching
Gaudi::Property< std::vector< double > > m_IDSCANRes_endcap3
Gaudi::Property< double > m_WinPhi_g4
Number of sigmas for the Phi matching window LUT backextrapolator (Barrel)
Gaudi::Property< double > m_EtaMaxTrk
Max abs(eta) to select the ID track for matching.
int g4Match(const ExtrapolationResult &extr, double, double, double, double, double, double, double, double &, double &, double &, double &, double &, int &) const
Property holding a SG store/key/clid from which a WriteHandle is made.
Gaudi::Property< bool > m_assumeSolenoidOff
flag to assume B_Solenoid=0 anyway
SG::ReadHandleKey< xAOD::TrackParticleContainer > m_TrackParticleContainerKey
Gaudi::Property< double > m_WinEta_g4
Number of sigmas for the Eta matching window LUT backextrapolator (Barrel)
Gaudi::Property< double > m_Chi2Max_EC
Max Chi2 for the combined muon in LUT backextrapolator (EndCaps)
Gaudi::Property< bool > m_useBackExtrapolatorG4
flag to switch between G4 and LUT based back-extrapolation
Gaudi::Property< double > m_WinPhi_FE
Number of sigmas for the Phi matching window LUT backextrapolator (MS Feet region)
Gaudi::Property< bool > m_UseAbsPt
Use Absolute value of the Pt in chi2 calculation (i.e.
Gaudi::Property< double > m_Chi2Max_FE
Max Chi2 for the combined muon in LUT backextrapolator (MS Feet region)
virtual StatusCode initialize() override
initialize.
Gaudi::Property< std::vector< double > > m_IDSCANRes_endcap1
Gaudi::Property< double > m_WinPhi_TS
Number of sigmas for the Phi matching window LUT backextrapolator (Trigger Stations)
Gaudi::Property< double > m_WinEta_TS
Number of sigmas for the Eta matching window LUT backextrapolator (Trigger Stations)
Gaudi::Property< std::vector< double > > m_IDSCANRes_barrel
Gaudi::Property< int > m_NdofMin
Min Number of DOF to apply the chi2 cut on macthing based on LUT and G4 backextrapolators.
Gaudi::Property< double > m_WeightPhi_g4
Scale factor for the Phi matching window in LUT backextrapolator.
ToolHandle< GenericMonitoringTool > m_monTool
ToolHandle< Trk::IExtrapolator > m_backExtrapolatorG4
Handle to the G4 backExtrapolator tool.
Gaudi::Property< double > m_WeightEta_g4
Scale factor for the Eta matching window in LUT backextrapolator.
SG::ReadHandleKey< xAOD::L2StandAloneMuonContainer > m_muonCollKey
Gaudi::Property< double > m_WinEta
Number of sigmas for the Eta matching window LUT backextrapolator (Barrel)