Hammer
1.0.0
Helicity Amplitude Module for Matrix Element Reweighting
|
Base class for form factors. More...
#include <FormFactorBase.hh>
Public Member Functions | |
FormFactorBase () | |
FormFactorBase (const FormFactorBase &other) | |
FormFactorBase & | operator= (const FormFactorBase &other)=delete |
FormFactorBase (FormFactorBase &&other)=delete | |
FormFactorBase & | operator= (FormFactorBase &&other)=delete |
virtual | ~FormFactorBase () noexcept=default |
virtual void | eval (const Particle &parent, const ParticleList &daughters, const ParticleList &references)=0 |
method to evaluate the object on a specific particle set More... | |
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 FFPrefixGroup & | getFFErrPrefixGroup () const |
std::pair< FFPrefixGroup, IndexLabel > | getFFErrInfo () const |
void | init () |
initializes the form factor (defines settings associated to this form factor, etc.) More... | |
Tensor & | getTensor () |
returns a reference to itself as a Tensor More... | |
const Tensor & | getTensor () 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 | |
ParticleData & | operator= (const ParticleData &other)=default |
ParticleData (ParticleData &&other)=default | |
ParticleData & | operator= (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) |
SettingsHandler * | getSettingsHandler () const |
provide the pointer to the repository handler More... | |
WTerm | setWeightTerm (WTerm group) |
virtual void | addRefs () const |
SettingsConsumer () | |
base constructor More... | |
SettingsConsumer (const SettingsConsumer &)=default | |
default copy constructor More... | |
SettingsConsumer & | operator= (const SettingsConsumer &)=default |
virtual | ~SettingsConsumer () |
virtual destructor More... | |
Protected Member Functions | |
virtual void | defineSettings ()=0 |
defines new settings for this class More... | |
virtual void | evalAtPSPoint (const std::vector< double > &point, const std::vector< double > &masses={})=0 |
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... | |
Log & | getLog () 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 | |
Log & | getLog () 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) |
Protected Attributes | |
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 |
Base class for form factors.
Provides the form factor contents as tensor...
Definition at line 36 of file FormFactorBase.hh.
Hammer::FormFactorBase::FormFactorBase | ( | ) |
Definition at line 27 of file FormFactorBase.cc.
Hammer::FormFactorBase::FormFactorBase | ( | const FormFactorBase & | other | ) |
Definition at line 36 of file FormFactorBase.cc.
|
delete |
|
virtualdefaultnoexcept |
|
protected |
derived from ParticleData::addProcessSignature, also populates _FFInfoList
[in] | parent | the parent PDG code |
[in] | daughters | the list of daughter PDG codes |
Definition at line 194 of file FormFactorBase.cc.
|
protected |
adds the index labels for the form factor tensor for a specific signature to the index labels signature list.
It will be selected by calling setSignatureIndex
[in] | tensor | the tensor indices labels |
Definition at line 190 of file FormFactorBase.cc.
void Hammer::FormFactorBase::calcUnits | ( | ) |
compute unit rescaling of this class wrt MC units
Definition at line 153 of file FormFactorBase.cc.
|
pure virtual |
[in] | label |
Implemented in Hammer::FFTauto3PiRCT, Hammer::FFLbtoLcBLRS, Hammer::FFLbtoLcBLRSVar, Hammer::FFLbtoLcPCR, Hammer::FFBtoD0starISGW2, Hammer::FFBtoD1ISGW2, Hammer::FFBtoD1starISGW2, Hammer::FFBtoD2starISGW2, Hammer::FFBtoDCLN, Hammer::FFBtoDISGW2, Hammer::FFBtoDstarBGL, Hammer::FFBtoDstarBGLVar, Hammer::FFBtoDstarCLN, Hammer::FFBtoDstarISGW2, Hammer::FFBtoD0starBLR, Hammer::FFBtoD0starBLRVar, Hammer::FFBtoD0starLLSW, Hammer::FFBtoD1BLR, Hammer::FFBtoD1BLRVar, Hammer::FFBtoD1LLSW, Hammer::FFBtoD1starBLR, Hammer::FFBtoD1starBLRVar, Hammer::FFBtoD1starLLSW, Hammer::FFBtoD2starBLR, Hammer::FFBtoD2starBLRVar, Hammer::FFBtoD2starLLSW, Hammer::FFBtoDBGL, Hammer::FFBtoDBGLVar, Hammer::FFBtoDBLPR, Hammer::FFBtoDBLPRVar, Hammer::FFBtoDstarBLPR, Hammer::FFBtoDstarBLPRVar, and Hammer::FFBtoDstarCLNVar.
|
protectedpure virtual |
defines new settings for this class
Implements Hammer::SettingsConsumer.
Implemented in Hammer::FFBLPRBase, Hammer::FFISGW2Base, Hammer::FFBGLBase, Hammer::FFCLNBase, Hammer::FFPCRBase, Hammer::FFRCTBase, Hammer::FFBLRBase, Hammer::FFBLRSBase, Hammer::FFLLSWBase, Hammer::FFTauto3PiRCT, Hammer::FFLbtoLcBLRS, Hammer::FFLbtoLcBLRSVar, Hammer::FFLbtoLcPCR, Hammer::FFBtoD0starISGW2, Hammer::FFBtoD1ISGW2, Hammer::FFBtoD1starISGW2, Hammer::FFBtoD2starISGW2, Hammer::FFBtoDCLN, Hammer::FFBtoDISGW2, Hammer::FFBtoDstarBGL, Hammer::FFBtoDstarBGLVar, Hammer::FFBtoDstarCLN, Hammer::FFBtoDstarISGW2, Hammer::FFBtoD0starBLR, Hammer::FFBtoD0starBLRVar, Hammer::FFBtoD0starLLSW, Hammer::FFBtoD1BLR, Hammer::FFBtoD1BLRVar, Hammer::FFBtoD1LLSW, Hammer::FFBtoD1starBLR, Hammer::FFBtoD1starBLRVar, Hammer::FFBtoD1starLLSW, Hammer::FFBtoD2starBLR, Hammer::FFBtoD2starBLRVar, Hammer::FFBtoD2starLLSW, Hammer::FFBtoDBGL, Hammer::FFBtoDBGLVar, Hammer::FFBtoDBLPR, Hammer::FFBtoDBLPRVar, Hammer::FFBtoDstarBLPR, Hammer::FFBtoDstarBLPRVar, and Hammer::FFBtoDstarCLNVar.
|
pure virtual |
method to evaluate the object on a specific particle set
[in] | parent | the parent Particle |
[in] | daughters | the daughters (and grand-daughters, if necessary) Particle list |
[in] | references | the parent Particle siblings (necessary e.g. for helicity amplitude phase conventions) |
Implements Hammer::ParticleData.
Implemented in Hammer::FFISGW2Base, Hammer::FFBGLBase, Hammer::FFBLPRBase, Hammer::FFCLNBase, Hammer::FFTauto3PiRCT, Hammer::FFLbtoLcBLRS, Hammer::FFLbtoLcBLRSVar, and Hammer::FFLbtoLcPCR.
|
protectedpure virtual |
[in] | point | other invariant masses |
[in] | masses |
Implemented in Hammer::FFBLPRBase, Hammer::FFISGW2Base, Hammer::FFBGLBase, Hammer::FFCLNBase, Hammer::FFPCRBase, Hammer::FFRCTBase, Hammer::FFTauto3PiRCT, Hammer::FFBLRBase, Hammer::FFBLRSBase, Hammer::FFLbtoLcBLRS, Hammer::FFLbtoLcBLRSVar, Hammer::FFLbtoLcPCR, Hammer::FFLLSWBase, Hammer::FFBtoD0starISGW2, Hammer::FFBtoD1ISGW2, Hammer::FFBtoD1starISGW2, Hammer::FFBtoD2starISGW2, Hammer::FFBtoDCLN, Hammer::FFBtoDISGW2, Hammer::FFBtoDstarBGL, Hammer::FFBtoDstarBGLVar, Hammer::FFBtoDstarCLN, Hammer::FFBtoDstarISGW2, Hammer::FFBtoD0starBLR, Hammer::FFBtoD0starBLRVar, Hammer::FFBtoD0starLLSW, Hammer::FFBtoD1BLR, Hammer::FFBtoD1BLRVar, Hammer::FFBtoD1LLSW, Hammer::FFBtoD1starBLR, Hammer::FFBtoD1starBLRVar, Hammer::FFBtoD1starLLSW, Hammer::FFBtoD2starBLR, Hammer::FFBtoD2starBLRVar, Hammer::FFBtoD2starLLSW, Hammer::FFBtoDBGL, Hammer::FFBtoDBGLVar, Hammer::FFBtoDBLPR, Hammer::FFBtoDBLPRVar, Hammer::FFBtoDstarBLPR, Hammer::FFBtoDstarBLPRVar, and Hammer::FFBtoDstarCLNVar.
vector< double > Hammer::FormFactorBase::getErrVectorFromDict | ( | const std::map< std::string, double > & | errDict | ) | const |
Definition at line 66 of file FormFactorBase.cc.
vector< double > Hammer::FormFactorBase::getErrVectorFromSettings | ( | bool | useDefault = false | ) | const |
Definition at line 78 of file FormFactorBase.cc.
std::pair< FFPrefixGroup, IndexLabel > Hammer::FormFactorBase::getFFErrInfo | ( | ) | const |
Definition at line 113 of file FormFactorBase.cc.
const FFPrefixGroup & Hammer::FormFactorBase::getFFErrPrefixGroup | ( | ) | const |
Definition at line 109 of file FormFactorBase.cc.
Tensor Hammer::FormFactorBase::getFFPSIntegrand | ( | const EvaluationGrid & | intPoints | ) |
|
protected |
logging facility
Definition at line 186 of file FormFactorBase.cc.
Tensor & Hammer::FormFactorBase::getTensor | ( | ) |
returns a reference to itself as a Tensor
Definition at line 122 of file FormFactorBase.cc.
const Tensor & Hammer::FormFactorBase::getTensor | ( | ) | const |
returns a reference to itself as a Tensor
Definition at line 126 of file FormFactorBase.cc.
const std::string & Hammer::FormFactorBase::group | ( | ) | const |
Definition at line 145 of file FormFactorBase.cc.
void Hammer::FormFactorBase::init | ( | ) |
initializes the form factor (defines settings associated to this form factor, etc.)
Definition at line 117 of file FormFactorBase.cc.
|
delete |
|
delete |
|
protected |
Sets the FF parametrization scheme label.
Enforced to be same over the set of signatures.
[in] | name |
Definition at line 130 of file FormFactorBase.cc.
|
protected |
Sets the XtoY formal process label.
May vary over the set of signatures.
[in] | name |
Definition at line 141 of file FormFactorBase.cc.
|
protected |
set units for the FF class parameters
[in] | name |
Definition at line 149 of file FormFactorBase.cc.
void Hammer::FormFactorBase::updateFFErrSettings | ( | const std::vector< double > & | values | ) |
Definition at line 89 of file FormFactorBase.cc.
void Hammer::FormFactorBase::updateFFErrSettings | ( | const std::map< std::string, double > & | values | ) |
Definition at line 94 of file FormFactorBase.cc.
void Hammer::FormFactorBase::updateFFErrTensor | ( | std::vector< double > | values, |
MultiDimensional::SharedTensorData & | data | ||
) | const |
Definition at line 98 of file FormFactorBase.cc.
|
protected |
Definition at line 138 of file FormFactorBase.hh.
|
protected |
Definition at line 139 of file FormFactorBase.hh.
|
protected |
Definition at line 141 of file FormFactorBase.hh.
|
protected |
list of {prefix/group struct, uncertainty label} (one for each signature)
Definition at line 140 of file FormFactorBase.hh.
|
protected |
list of (list of) labels for the tensor indices (one for each signature)
Definition at line 142 of file FormFactorBase.hh.
|
protected |
Definition at line 143 of file FormFactorBase.hh.
|
protected |
Definition at line 144 of file FormFactorBase.hh.