GaussianTransferFunctionOnPtEvaluator Class Reference

Evaluate a transfer function on Pt described by a Gaussian distribution. More...

Detailed Description

Evaluate a transfer function on Pt described by a Gaussian distribution.

This module takes as inputs two LorentzVectors: a 'gen-level' particle (which may be computed using for instance a Block or a 'real' transfer function) and a 'reco-level' particle (experimentally reconstructed). Assuming the LorentzVectors differ only by their Pt, this module returns the value of a transfer function (TF) evaluated on their respective Pt.

The TF is a Gaussian distribution that describes the difference between the reconstructed and the generated Pt ( \(P_{T_{rec}}-P_{T_{gen}}\)). The width of the distribution, parametrised as a fraction of \(P_{T_{gen}}\), is set as parameter.

Integration dimension

This module requires 0 phase-space points.

Parameters

Name Type Description
sigma double Fraction of the Pt yielding the width of the Gaussian distribution (with sigma at 0.1, \(\sigma_{gauss} = 0.1 \cdot P_{T_{gen}}\)).

Inputs

Name Type Description
reco_particle LorentzVector Experimentally reconstructed particle.
gen_particle LorentzVector Gen-level particle.

Outputs

Name Type Description
TF double Value of the TF evaluated on the reco and gen Pt.
See also
GaussianTransferFunctionOnPt

Definition at line 173 of file GaussianTransferFunctionOnPt.cc.

Inheritance diagram for GaussianTransferFunctionOnPtEvaluator:

Public Member Functions

 GaussianTransferFunctionOnPtEvaluator (PoolPtr pool, const ParameterSet &parameters)
 
virtual Status work () override
 Main function. More...
 
- Public Member Functions inherited from GaussianTransferFunctionOnPtBase
 GaussianTransferFunctionOnPtBase (PoolPtr pool, const ParameterSet &parameters)
 
- Public Member Functions inherited from Module
 Module (PoolPtr pool, const std::string &name)
 Constructor. More...
 
virtual void configure ()
 Called once at the beginning of the job.
 
virtual void beginIntegration ()
 Called once at the beginning of the integration.
 
virtual void beginPoint ()
 Called once when a new PS point is started. More...
 
virtual void beginLoop ()
 Called once at the beginning of a loop. More...
 
virtual void endLoop ()
 Called once at the end of a loop. More...
 
virtual void endPoint ()
 Called once when a PS point is finished. More...
 
virtual void endIntegration ()
 Called once at the end of the integration.
 
virtual void finish ()
 Called once at the end of the job.
 
virtual std::string name () const final
 

Additional Inherited Members

- Public Types inherited from Module
enum  Status : std::int8_t { OK, NEXT, ABORT }
 
- Static Public Member Functions inherited from Module
static std::string statusToString (const Status &status)
 
static bool is_virtual_module (const std::string &name)
 Test if a given name correspond to a virtual module. More...
 
- Protected Member Functions inherited from Module
template<typename T , typename... Args>
std::shared_ptr< T > produce (const std::string &name, Args... args)
 Add a new output to the module. More...
 
template<typename T >
Value< T > get (const std::string &module, const std::string &name)
 
template<typename T >
Value< T > get (const InputTag &tag)
 
- Protected Attributes inherited from GaussianTransferFunctionOnPtBase
double m_min_Pt
 
double m_sigma
 
double m_sigma_range
 
Value< LorentzVector > m_reco_input
 
- Protected Attributes inherited from Module
PoolPtr m_pool
 

Member Function Documentation

◆ work()

virtual Status GaussianTransferFunctionOnPtEvaluator::work ( )
inlineoverridevirtual

Main function.

This method is called for each integration step. The module's logic and work happen here.

You'll usually want to override this function if you want your module to perform some task.

Reimplemented from Module.

Definition at line 179 of file GaussianTransferFunctionOnPt.cc.


The documentation for this class was generated from the following file: