Hammer  1.0.0
Helicity Amplitude Module for Matrix Element Reweighting
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Hammer::FFBLPRBase Class Referenceabstract

Base class for BLPR form factors. More...

#include <FFBLPRBase.hh>

+ Inheritance diagram for Hammer::FFBLPRBase:
+ Collaboration diagram for Hammer::FFBLPRBase:

Public Member Functions

 FFBLPRBase ()
 
 FFBLPRBase (const FFBLPRBase &other)=default
 
FFBLPRBaseoperator= (const FFBLPRBase &other)=delete
 
 FFBLPRBase (FFBLPRBase &&other)=delete
 
FFBLPRBaseoperator= (FFBLPRBase &&other)=delete
 
virtual ~FFBLPRBase ()=default
 
virtual void eval (const Particle &parent, const ParticleList &daughters, const ParticleList &references)
 method to evaluate the object on a specific particle set More...
 
- Public Member Functions inherited from Hammer::FormFactorBase
 FormFactorBase ()
 
 FormFactorBase (const FormFactorBase &other)
 
FormFactorBaseoperator= (const FormFactorBase &other)=delete
 
 FormFactorBase (FormFactorBase &&other)=delete
 
FormFactorBaseoperator= (FormFactorBase &&other)=delete
 
virtual ~FormFactorBase () noexcept=default
 
virtual std::unique_ptr
< FormFactorBase
clone (const std::string &label)=0
 
std::vector< double > getErrVectorFromDict (const std::map< std::string, double > &errDict) const
 
std::vector< double > getErrVectorFromSettings (bool useDefault=false) const
 
void updateFFErrSettings (const std::vector< double > &values)
 
void updateFFErrSettings (const std::map< std::string, double > &values)
 
void updateFFErrTensor (std::vector< double > values, MultiDimensional::SharedTensorData &data) const
 
const FFPrefixGroupgetFFErrPrefixGroup () const
 
std::pair< FFPrefixGroup,
IndexLabel
getFFErrInfo () const
 
void init ()
 initializes the form factor (defines settings associated to this form factor, etc.) More...
 
TensorgetTensor ()
 returns a reference to itself as a Tensor More...
 
const TensorgetTensor () const
 returns a reference to itself as a Tensor More...
 
Tensor getFFPSIntegrand (const EvaluationGrid &intPoints)
 
const std::string & group () const
 
void calcUnits ()
 compute unit rescaling of this class wrt MC units More...
 
- Public Member Functions inherited from Hammer::ParticleData
 ParticleData ()
 default constructor More...
 
 ParticleData (const ParticleData &other)=default
 
ParticleDataoperator= (const ParticleData &other)=default
 
 ParticleData (ParticleData &&other)=default
 
ParticleDataoperator= (ParticleData &&other)=default
 
virtual ~ParticleData ()
 
virtual bool setSignatureIndex (size_t idx=0)
 select a specific signature to be the current signature More...
 
HashId id () const
 returns the unique ID of the current decay signature More...
 
HashId hadronicId () const
 returns the hadronic unique ID (parent + hadronic daughters) of the current decay signature More...
 
const std::vector< double > & masses () const
 returns the particle masses of the current decay signature More...
 
size_t numSignatures () const
 returns the number of available signatures More...
 
- Public Member Functions inherited from Hammer::SettingsConsumer
virtual void setSettingsHandler (SettingsHandler &sh)
 set link to settings repository handler. More...
 
void setSettingsHandler (const SettingsConsumer &other)
 
SettingsHandlergetSettingsHandler () const
 provide the pointer to the repository handler More...
 
WTerm setWeightTerm (WTerm group)
 
 SettingsConsumer ()
 base constructor More...
 
 SettingsConsumer (const SettingsConsumer &)=default
 default copy constructor More...
 
SettingsConsumeroperator= (const SettingsConsumer &)=default
 
virtual ~SettingsConsumer ()
 virtual destructor More...
 

Protected Member Functions

double CS (double w, double z) const
 
double CP (double w, double z) const
 
double CV1 (double w, double z) const
 
double CV2 (double w, double z) const
 
double CV3 (double w, double z) const
 
double CA1 (double w, double z) const
 
double CA2 (double w, double z) const
 
double CA3 (double w, double z) const
 
double CT1 (double w, double z) const
 
double CT2 (double w, double z) const
 
double CT3 (double w, double z) const
 
void initVars (double w, double z) const
 
double DiLog (double z) const
 
virtual void evalAtPSPoint (const std::vector< double > &point, const std::vector< double > &masses={})=0
 
virtual void defineSettings ()=0
 defines new settings for this class More...
 
void addRefs () const
 
- Protected Member Functions inherited from Hammer::FormFactorBase
void setGroup (const std::string &name)
 Sets the FF parametrization scheme label. More...
 
void setPrefix (const std::string &name)
 Sets the XtoY formal process label. More...
 
void setUnits (const std::string &name)
 set units for the FF class parameters More...
 
void addTensor (Tensor &&tensor)
 adds the index labels for the form factor tensor for a specific signature to the index labels signature list. More...
 
void addProcessSignature (PdgId parent, const std::vector< PdgId > &daughters)
 derived from ParticleData::addProcessSignature, also populates _FFInfoList More...
 
LoggetLog () const
 logging facility More...
 
- Protected Member Functions inherited from Hammer::ParticleData
void addProcessSignature (PdgId parent, const std::vector< PdgId > &daughters, const std::vector< PdgId > &subDaughters={})
 adds a signature to the list by specifying the particles PDG codes. More...
 
- Protected Member Functions inherited from Hammer::SettingsConsumer
LoggetLog () const
 logging facility More...
 
void initSettings ()
 
void setPath (const std::string &path)
 provide the basic path for the settings defined by this class, as in "<path>:<setting>" More...
 
template<typename T >
void addSetting (const std::string &name, const T &defaultValue)
 template method to add a new setting More...
 
void removeSetting (const std::string &name)
 
template<typename T >
T * getSetting (const std::string &name) const
 template method to return a setting defined by this class More...
 
template<typename T >
T * getSetting (const std::string &otherPath, const std::string &name) const
 template method to return a setting defined by this class More...
 
bool isOn (const std::string &name) const
 method to check a boolean setting defined by this class More...
 
bool isOn (const std::string &otherPath, const std::string &name) const
 method to check a boolean setting by its name and path More...
 
template<typename T >
void updateVectorOfSettings (const std::vector< T > &values, const std::vector< std::string > &names, const std::string &path="", WTerm group=WTerm::COMMON)
 
template<typename T >
void updateVectorOfSettings (const std::map< std::string, T > &values, const std::string &path="", WTerm group=WTerm::COMMON)
 

Private Attributes

double _wSq
 
double _sqrt1wSq
 
double _zSq
 
double _zCu
 
double _zm1Sq
 
double _zp1Sq
 
double _lnz
 
double _wZ
 
double _wP
 
double _wM
 
double _wmwZSq
 
double _lnwP
 
double _rW
 
double _Omega
 

Additional Inherited Members

- Protected Attributes inherited from Hammer::FormFactorBase
FFPrefixGroup _errPrefixGroup
 
IndexLabel _FFErrLabel
 
std::vector< std::pair
< FFPrefixGroup, IndexLabel > > 
_FFInfoList
 list of {prefix/group struct, uncertainty label} (one for each signature) More...
 
std::vector< std::string > _FFErrNames
 
std::vector< Tensor_tensorList
 list of (list of) labels for the tensor indices (one for each signature) More...
 
double _units
 
bool _unitsinit = false
 
- Protected Attributes inherited from Hammer::ParticleData
std::vector< Signature_signatures
 the list of signatures More...
 
size_t _signatureIndex
 the index of the current signature More...
 
- Protected Attributes inherited from Hammer::SettingsConsumer
SettingsHandler_settingHandler
 pointer to the settings repository handler. More...
 
std::string _settingPath
 path of the settings defined by this class More...
 
WTerm _group
 
std::set< std::string > _ownedSettings
 

Detailed Description

Base class for BLPR form factors.

Definition at line 22 of file FFBLPRBase.hh.

Constructor & Destructor Documentation

Hammer::FFBLPRBase::FFBLPRBase ( )

Definition at line 21 of file FFBLPRBase.cc.

Hammer::FFBLPRBase::FFBLPRBase ( const FFBLPRBase other)
default
Hammer::FFBLPRBase::FFBLPRBase ( FFBLPRBase &&  other)
delete
virtual Hammer::FFBLPRBase::~FFBLPRBase ( )
virtualdefault

Member Function Documentation

void Hammer::FFBLPRBase::addRefs ( ) const
protectedvirtual

Reimplemented from Hammer::SettingsConsumer.

Reimplemented in Hammer::FFBLRBase, Hammer::FFBLRSBase, and Hammer::FFLLSWBase.

Definition at line 199 of file FFBLPRBase.cc.

double Hammer::FFBLPRBase::CA1 ( double  w,
double  z 
) const
protected
Parameters
[in]w
[in]z
Returns

Definition at line 89 of file FFBLPRBase.cc.

double Hammer::FFBLPRBase::CA2 ( double  w,
double  z 
) const
protected
Parameters
[in]w
[in]z
Returns

Definition at line 95 of file FFBLPRBase.cc.

double Hammer::FFBLPRBase::CA3 ( double  w,
double  z 
) const
protected
Parameters
[in]w
[in]z
Returns

Definition at line 101 of file FFBLPRBase.cc.

double Hammer::FFBLPRBase::CP ( double  w,
double  z 
) const
protected
Parameters
[in]w
[in]z
Returns

Definition at line 65 of file FFBLPRBase.cc.

double Hammer::FFBLPRBase::CS ( double  w,
double  z 
) const
protected
Parameters
[in]w
[in]z
Returns

Definition at line 59 of file FFBLPRBase.cc.

double Hammer::FFBLPRBase::CT1 ( double  w,
double  z 
) const
protected
Parameters
[in]w
[in]z
Returns

Definition at line 107 of file FFBLPRBase.cc.

double Hammer::FFBLPRBase::CT2 ( double  w,
double  z 
) const
protected
Parameters
[in]w
[in]z
Returns

Definition at line 113 of file FFBLPRBase.cc.

double Hammer::FFBLPRBase::CT3 ( double  w,
double  z 
) const
protected
Parameters
[in]w
[in]z
Returns

Definition at line 119 of file FFBLPRBase.cc.

double Hammer::FFBLPRBase::CV1 ( double  w,
double  z 
) const
protected
Parameters
[in]w
[in]z
Returns

Definition at line 71 of file FFBLPRBase.cc.

double Hammer::FFBLPRBase::CV2 ( double  w,
double  z 
) const
protected
Parameters
[in]w
[in]z
Returns

Definition at line 77 of file FFBLPRBase.cc.

double Hammer::FFBLPRBase::CV3 ( double  w,
double  z 
) const
protected
Parameters
[in]w
[in]z
Returns

Definition at line 83 of file FFBLPRBase.cc.

double Hammer::FFBLPRBase::DiLog ( double  z) const
protected

Definition at line 125 of file FFBLPRBase.cc.

void Hammer::FFBLPRBase::eval ( const Particle parent,
const ParticleList daughters,
const ParticleList references 
)
virtual

method to evaluate the object on a specific particle set

Parameters
[in]parentthe parent Particle
[in]daughtersthe daughters (and grand-daughters, if necessary) Particle list
[in]referencesthe parent Particle siblings (necessary e.g. for helicity amplitude phase conventions)

Implements Hammer::FormFactorBase.

Reimplemented in Hammer::FFLbtoLcBLRS, and Hammer::FFLbtoLcBLRSVar.

Definition at line 25 of file FFBLPRBase.cc.

void Hammer::FFBLPRBase::initVars ( double  w,
double  z 
) const
protected

Definition at line 42 of file FFBLPRBase.cc.

FFBLPRBase& Hammer::FFBLPRBase::operator= ( const FFBLPRBase other)
delete
FFBLPRBase& Hammer::FFBLPRBase::operator= ( FFBLPRBase &&  other)
delete

Member Data Documentation

double Hammer::FFBLPRBase::_lnwP
mutableprivate

Definition at line 138 of file FFBLPRBase.hh.

double Hammer::FFBLPRBase::_lnz
mutableprivate

Definition at line 133 of file FFBLPRBase.hh.

double Hammer::FFBLPRBase::_Omega
mutableprivate

Definition at line 140 of file FFBLPRBase.hh.

double Hammer::FFBLPRBase::_rW
mutableprivate

Definition at line 139 of file FFBLPRBase.hh.

double Hammer::FFBLPRBase::_sqrt1wSq
mutableprivate

Definition at line 128 of file FFBLPRBase.hh.

double Hammer::FFBLPRBase::_wM
mutableprivate

Definition at line 136 of file FFBLPRBase.hh.

double Hammer::FFBLPRBase::_wmwZSq
mutableprivate

Definition at line 137 of file FFBLPRBase.hh.

double Hammer::FFBLPRBase::_wP
mutableprivate

Definition at line 135 of file FFBLPRBase.hh.

double Hammer::FFBLPRBase::_wSq
mutableprivate

Definition at line 127 of file FFBLPRBase.hh.

double Hammer::FFBLPRBase::_wZ
mutableprivate

Definition at line 134 of file FFBLPRBase.hh.

double Hammer::FFBLPRBase::_zCu
mutableprivate

Definition at line 130 of file FFBLPRBase.hh.

double Hammer::FFBLPRBase::_zm1Sq
mutableprivate

Definition at line 131 of file FFBLPRBase.hh.

double Hammer::FFBLPRBase::_zp1Sq
mutableprivate

Definition at line 132 of file FFBLPRBase.hh.

double Hammer::FFBLPRBase::_zSq
mutableprivate

Definition at line 129 of file FFBLPRBase.hh.


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