Lazily builds reconstructed missing pt. More...
#include <PtMissBuilder.h>
Public Member Functions | |
PtMissBuilder (Dataset &dataset, Options const &options) | |
PtMiss const & | Get () const |
Returns missing pt in the current event. | |
void | PullCalibration (std::initializer_list< CollectionBuilderBase const * > builders) |
Requests that changes in the total momentum produced by the given builders are propagated into missing pt. | |
Private Types | |
enum | Syst { None, UnclEnergyUp, UnclEnergyDown } |
Supported systematic variations. | |
Private Member Functions | |
void | Build () const |
Constructs ptmiss in the current event. | |
Private Attributes | |
Syst | syst_ |
Systematic variation to be applied. | |
bool | applyEeNoiseMitigation_ |
Whether to apply the EE noise mitigation. | |
EventCache | cache_ |
An object to facilitate caching. | |
std::vector < CollectionBuilderBase const * > | calibratingBuilders_ |
Objects registered with PullCalibration. | |
PtMiss | ptMiss_ |
Object representing ptmiss in the current event. | |
TTreeReaderValue< float > | srcPt_ |
TTreeReaderValue< float > | srcPhi_ |
std::optional < TTreeReaderValue< float > > | srcSignificance_ |
std::optional < TTreeReaderValue< float > > | srcUnclEnergyUpDeltaX_ |
std::optional < TTreeReaderValue< float > > | srcUnclEnergyUpDeltaY_ |
std::optional < TTreeReaderValue< float > > | srcDefaultPt_ |
Type 1 corrected default ptmiss and ptmiss with EE noise mitigation. | |
std::optional < TTreeReaderValue< float > > | srcDefaultPhi_ |
std::optional < TTreeReaderValue< float > > | srcFixedPt_ |
std::optional < TTreeReaderValue< float > > | srcFixedPhi_ |
Lazily builds reconstructed missing pt.
Starts from raw missing pt. Type 1 correction, i.e. changes caused by corrections applied to other objects, such as jets, can be included using method PullCalibration. Variations in "unclustered" momentum are applied if requested via the syst
option.
If the master configuration contains field fix_ee_2017
in section ptmiss
and it is set to true, applies the EE noise mitigation.
void PtMissBuilder::PullCalibration | ( | std::initializer_list< CollectionBuilderBase const * > | builders | ) |
Requests that changes in the total momentum produced by the given builders are propagated into missing pt.
For example, changes in jet momenta due to variations in their corrections can be included this way. If this method is called multiple times, new builders are added to the list of already registered builders.
std::optional<TTreeReaderValue<float> > PtMissBuilder::srcDefaultPt_ [mutable, private] |
Type 1 corrected default ptmiss and ptmiss with EE noise mitigation.
Used when applyEeNoiseMitigation_ is set.