|
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"
58 muComb(
const std::string&, ISvcLocator*);
69 "TrackParticlesContainerName",
70 "InDetTrigTrackingxAODCnv_Muon_FTF",
71 "input TrackParticle container name"};
74 "L2StandAloneMuonContainerName",
75 "xAOD::L2StandAloneMuonContainer",
76 "input L2StandAloneMuon Container name"};
80 "L2CombinedMuonContainerName",
82 "output CB Muon container name"};
84 ToolHandle<GenericMonitoringTool>
m_monTool{
this,
"MonTool",
"",
"Monitoring tool"};
89 "Trk::Extrapolator/AtlasExtrapolator",
90 "Tool to backextrapolate muon from MS to IP (G4 based)"};
96 double,
double,
double,
int,
97 double&,
double&,
double&,
double&,
double&)
const;
100 double,
double,
double,
int,
101 double&,
double&,
double&,
double&,
double&)
const;
104 double,
double,
double,
double,
105 double&,
double&,
double&,
double&,
double&,
int&)
const;
108 double,
double,
double,
double,
double,
double,
double,
109 double&,
double&,
double&,
double&,
double&,
int&)
const;
121 Gaudi::Property<bool>
m_assumeToroidOff {
this,
"AssumeToroidOff",
false,
"Force assumption toroid off"};
123 Gaudi::Property<bool>
m_assumeSolenoidOff {
this,
"AssumeSolenoidOff",
false,
"Force assumption solenoid off"};
130 Gaudi::Property<int>
m_AlgoStrategy {
this,
"MuCombStrategy", 0,
"Algoritgm strategy [0=auto select best option,1=simple angular match]"};
137 Gaudi::Property<int>
m_ChargeStrategy {
this,
"ChargeStrategy", 0,
"Charge assignement strategy [0=muFast,1=ID,2=resolution based]"};
140 Gaudi::Property<std::string>
m_ID_algo_to_use {
this,
"IDalgo",
"InDetTrigTrackingxAODCnv_Muon_FTF",
"ID trk xAOD collection to use"};
145 Gaudi::Property<double>
m_EtaMaxTrk {
this,
"MaxAbsEtaTRK", 2.5,
"ID tracks max |eta|"};
150 Gaudi::Property<int>
m_NdofMin {
this,
"NdofMin", 9999,
"matching parameter: min ndof"};
152 Gaudi::Property<bool>
m_UseAbsPt {
this,
"UseAbsPt",
false,
"matching parameter: use absolute pT"};
156 Gaudi::Property<double>
m_WinEta {
this,
"WinEtaSigma", 4.0,
"matching parameter: LUT-based"};
158 Gaudi::Property<double>
m_WinPhi {
this,
"WinPhiSigma", 4.0,
"matching parameter: LUT-based"};
160 Gaudi::Property<double>
m_Chi2Max {
this,
"Chi2Max", 1.e33,
"matching parameter: LUT-based"};
162 Gaudi::Property<double>
m_WinEta_EC {
this,
"WinEtaSigmaEndCaps", 4.0,
"matching parameter: LUT-based"};
164 Gaudi::Property<double>
m_WinPhi_EC {
this,
"WinPhiSigmaEndCaps", 10.,
"matching parameter: LUT-based"};
166 Gaudi::Property<double>
m_Chi2Max_EC {
this,
"Chi2MaxEndCaps", 1.e33,
"matching parameter: LUT-based"};
168 Gaudi::Property<double>
m_WinEta_TS {
this,
"WinEtaSigmaTS", 5.0,
"matching parameter: LUT-based"};
170 Gaudi::Property<double>
m_WinPhi_TS {
this,
"WinPhiSigmaTS", 5.0,
"matching parameter: LUT-based"};
172 Gaudi::Property<double>
m_Chi2Max_TS {
this,
"Chi2MaxTS", 1.e33,
"matching parameter: LUT-based"};
174 Gaudi::Property<double>
m_WinEta_FE {
this,
"WinEtaSigmaFE", 10.0,
"matching parameter: LUT-based"};
176 Gaudi::Property<double>
m_WinPhi_FE {
this,
"WinPhiSigmaFE", 10.0,
"matching parameter: LUT-based"};
178 Gaudi::Property<double>
m_Chi2Max_FE {
this,
"Chi2MaxFE", 1.e33,
"matching parameter: LUT-based"};
180 Gaudi::Property<double>
m_WeightEta {
this,
"WeightEta", 2.0,
"matching parameter: LUT-based"};
182 Gaudi::Property<double>
m_WeightPhi {
this,
"WeightPhi", 2.0,
"matching parameter: LUT-based"};
186 Gaudi::Property<double>
m_WinEta_g4 {
this,
"WinEtaSigma_g4", 7.0,
"matching parameter: G4-based"};
188 Gaudi::Property<double>
m_WinPhi_g4 {
this,
"WinPhiSigma_g4", 7.0,
"matching parameter: G4-based"};
190 Gaudi::Property<double>
m_Chi2Max_g4 {
this,
"Chi2Max_g4", 1.e33,
"matching parameter: G4-based"};
192 Gaudi::Property<double>
m_WinEta_EC_g4 {
this,
"WinEtaSigmaEndCaps_g4",7.0,
"matching parameter: G4-based"};
194 Gaudi::Property<double>
m_WinPhi_EC_g4 {
this,
"WinPhiSigmaEndCaps_g4",7.0,
"matching parameter: G4-based"};
196 Gaudi::Property<double>
m_Chi2Max_EC_g4 {
this,
"Chi2MaxEndCaps_g4", 1.e33,
"matching parameter: G4-based"};
198 Gaudi::Property<double>
m_WeightEta_g4 {
this,
"WeightEta_g4", 2.0,
"matching parameter: G4-based"};
200 Gaudi::Property<double>
m_WeightPhi_g4 {
this,
"WeightPhi_g4", 2.0,
"matching parameter: G4-based"};
202 Gaudi::Property<double>
m_Chi2Weight_g4 {
this,
"Chi2Weight_g4", 2.0,
"matching parameter: G4-based"};
206 Gaudi::Property<double>
m_winPt {
this,
"WinPt", -1.0*
Gaudi::Units::GeV,
"matching parameter (simplifed): pT windows in geV (disabled if < 0)"};
208 Gaudi::Property<double>
m_winDR {
this,
"WinDelta", 0.2,
"matching parameter (simplifed): strategy dependent"};
211 Gaudi::Property<std::vector<double>>
m_IDSCANRes_barrel {
this,
"IDSCANBarrelRes", {0.017, 0.000000418},
"ID parametrized rsolution for matching (barrel)"};
212 Gaudi::Property<std::vector<double>>
m_IDSCANRes_endcap1 {
this,
"IDSCANEndcap1Res",{0.025, 0.0000002},
"ID parametrized rsolution for matching (ec1)"};
213 Gaudi::Property<std::vector<double>>
m_IDSCANRes_endcap2 {
this,
"IDSCANEndcap2Res",{0.030, 0.0000002},
"ID parametrized rsolution for matching (ec2)"};
214 Gaudi::Property<std::vector<double>>
m_IDSCANRes_endcap3 {
this,
"IDSCANEndcap3Res",{0.036, 0.0000004},
"ID parametrized rsolution for matching (ec3)"};
215 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)