Energy scale shifting and smearing module. More...
#include "PhysicsTools/PatAlgos/interface/ObjectEnergyScale.h"
Public Member Functions | |
ObjectEnergyScale (const edm::ParameterSet &iConfig) | |
~ObjectEnergyScale () | |
Public Member Functions inherited from edm::EDProducer | |
EDProducer () | |
virtual | ~EDProducer () |
Public Member Functions inherited from edm::ProducerBase | |
ProducerBase () | |
void | registerProducts (ProducerBase *, ProductRegistry *, ModuleDescription const &) |
boost::function< void(const BranchDescription &)> | registrationCallback () const |
used by the fwk to register list of products More... | |
virtual | ~ProducerBase () |
Private Member Functions | |
float | getSmearing (T &object) |
virtual void | produce (edm::Event &iEvent, const edm::EventSetup &iSetup) |
void | setScale (T &object) |
Private Attributes | |
float | factor_ |
CLHEP::RandGaussQ * | gaussian_ |
float | iniRes_ |
edm::InputTag | objects_ |
float | shiftFactor_ |
bool | useDefaultIniRes_ |
bool | useFixedMass_ |
bool | useIniResByFraction_ |
bool | useWorsenResByFactor_ |
float | worsenRes_ |
Additional Inherited Members | |
Public Types inherited from edm::EDProducer | |
typedef EDProducer | ModuleType |
typedef WorkerT< EDProducer > | WorkerType |
Public Types inherited from edm::ProducerBase | |
typedef ProductRegistryHelper::TypeLabelList | TypeLabelList |
Static Public Member Functions inherited from edm::EDProducer | |
static const std::string & | baseType () |
static void | fillDescriptions (ConfigurationDescriptions &descriptions) |
Protected Member Functions inherited from edm::EDProducer | |
CurrentProcessingContext const * | currentContext () const |
Protected Member Functions inherited from edm::ProducerBase | |
template<class TProducer , class TMethod > | |
void | callWhenNewProductsRegistered (TProducer *iProd, TMethod iMethod) |
Energy scale shifting and smearing module.
This class provides energy scale shifting & smearing to objects with resolutions for systematic error studies. A detailed documentation is found in PhysicsTools/PatAlgos/data/ObjectEnergyScale.cfi
Definition at line 37 of file ObjectEnergyScale.h.
|
explicit |
Definition at line 70 of file ObjectEnergyScale.h.
References edm::RandomNumberGenerator::getEngine(), and edm::ParameterSet::getParameter().
pat::ObjectEnergyScale< T >::~ObjectEnergyScale | ( | ) |
Definition at line 90 of file ObjectEnergyScale.h.
|
private |
Returns a smearing factor which is multiplied to the initial value then to get it smeared, sets initial resolution to resolution provided by input object if required and converts the 'worsenResolution' parameter to protect from meaningless final resolution values.
Definition at line 120 of file ObjectEnergyScale.h.
References funct::cos(), relval_parameters_module::energy, max(), funct::pow(), funct::sin(), mathSSE::sqrt(), and theta().
|
privatevirtual |
Implements edm::EDProducer.
Definition at line 97 of file ObjectEnergyScale.h.
References edm::Event::getByLabel(), i, and edm::Event::put().
|
private |
Mutliplies the final factor (consisting of shifting and smearing factors) to the object's 4-vector and takes care of preserved masses.
Definition at line 142 of file ObjectEnergyScale.h.
References relval_parameters_module::energy, funct::pow(), and mathSSE::sqrt().
|
private |
Definition at line 52 of file ObjectEnergyScale.h.
|
private |
Definition at line 61 of file ObjectEnergyScale.h.
|
private |
Definition at line 52 of file ObjectEnergyScale.h.
|
private |
Definition at line 51 of file ObjectEnergyScale.h.
|
private |
Definition at line 52 of file ObjectEnergyScale.h.
|
private |
Definition at line 56 of file ObjectEnergyScale.h.
|
private |
Definition at line 56 of file ObjectEnergyScale.h.
|
private |
Definition at line 56 of file ObjectEnergyScale.h.
|
private |
Definition at line 56 of file ObjectEnergyScale.h.
|
private |
Definition at line 52 of file ObjectEnergyScale.h.