A MoMEMta instance. More...

#include <MoMEMta.h>

Detailed Description

A MoMEMta instance.

Compute weights for a particular event using the Matrix Element Method. See the documentation for more details about this method.

Definition at line 44 of file MoMEMta.h.

Public Types

enum  IntegrationStatus {
  IntegrationStatus::SUCCESS, IntegrationStatus::ACCURACY_NOT_REACHED, IntegrationStatus::FAILED, IntegrationStatus::ABORTED,
  IntegrationStatus::DIM_OUT_OF_RANGE, IntegrationStatus::NONE
}
 Status of the integration. More...
 

Public Member Functions

 MoMEMta (const Configuration &configuration)
 Create a new MoMEMta instance. More...
 
virtual ~MoMEMta ()
 Destructor.
 
std::vector< std::pair< double, double > > computeWeights (const std::vector< momemta::Particle > &particles, const LorentzVector &met=LorentzVector())
 Compute the weights in the current configuration. More...
 
void setEvent (const std::vector< momemta::Particle > &particles, const LorentzVector &met=LorentzVector())
 Set the event particles' momenta. More...
 
std::vector< double > evaluateIntegrand (const std::vector< double > &psPoints)
 Evaluate the integrand on a single phase-space point. More...
 
IntegrationStatus getIntegrationStatus () const
 Return the status of the integration. More...
 
const PoolgetPool () const
 Read-only access to the global memory pool. More...
 

Member Enumeration Documentation

◆ IntegrationStatus

Status of the integration.

Enumerator
SUCCESS 

Integration was successful.

ACCURACY_NOT_REACHED 

Integration was stopped before desired accuracy was reached.

FAILED 

Integration failed.

ABORTED 

Integration aborted.

DIM_OUT_OF_RANGE 

Dimensions out of range.

NONE 

No integration was performed.

Definition at line 47 of file MoMEMta.h.

Constructor & Destructor Documentation

◆ MoMEMta()

MoMEMta::MoMEMta ( const Configuration configuration)

Create a new MoMEMta instance.

Parameters
configurationA frozen snapshot of the configuration, usually obtained by ConfigurationReader::freeze
Note
A single instance of MoMEMta is able to compute weights for any numbers of events. However, if you want to change the configuration, you need to create a new instance.

Definition at line 85 of file MoMEMta.cc.

Member Function Documentation

◆ computeWeights()

std::vector< std::pair< double, double > > MoMEMta::computeWeights ( const std::vector< momemta::Particle > &  particles,
const LorentzVector &  met = LorentzVector() 
)

Compute the weights in the current configuration.

This function is traditionally called from the main event loop.

Parameters
particlesList of Particle representing the final state particles.
metMissing transverse energy of the event. This parameter is optional.
Returns
A vector of weights. Each weight is represented by a pair of double, the first element being the value of the weight and the second the associated absolute error.

Definition at line 192 of file MoMEMta.cc.

◆ evaluateIntegrand()

std::vector< double > MoMEMta::evaluateIntegrand ( const std::vector< double > &  psPoints)

Evaluate the integrand on a single phase-space point.

Mostly for debugging purposes – for regular usage see the computeWeights function.

Warning: return value is undefined until setEvent() has been called.

Parameters
psPointsPhase-space point the integrand will be computed on. It has to lie within the unit hypercube, with the right dimensionality.
Returns
The (possibly multi-dimensional) integrand.

Definition at line 414 of file MoMEMta.cc.

◆ getIntegrationStatus()

MoMEMta::IntegrationStatus MoMEMta::getIntegrationStatus ( ) const

Return the status of the integration.

Returns
The status of the integration

Definition at line 485 of file MoMEMta.cc.

◆ getPool()

const Pool & MoMEMta::getPool ( ) const

Read-only access to the global memory pool.

Use the pool to retrieve outputs from special modules, like DMEM.

Returns
A read-only instance of the global memory pool

Definition at line 154 of file MoMEMta.cc.

◆ setEvent()

void MoMEMta::setEvent ( const std::vector< momemta::Particle > &  particles,
const LorentzVector &  met = LorentzVector() 
)

Set the event particles' momenta.

In public interface mostly for debugging purposes – for regular usage see the computeWeights() function.

Parameters
particlesList of Particle representing the final state particles.
metMissing transverse energy of the event. This parameter is optional.

Definition at line 159 of file MoMEMta.cc.

Referenced by computeWeights().


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