Hammer
1.0.0
Helicity Amplitude Module for Matrix Element Reweighting
|
Main class. More...
#include <ExternalData.hh>
Public Member Functions | |
ExternalData (const ProvidersRepo *provs) | |
ExternalData (const ExternalData &other)=delete | |
ExternalData & | operator= (const ExternalData &other)=delete |
ExternalData (ExternalData &&other)=delete | |
ExternalData & | operator= (ExternalData &&other)=delete |
virtual | ~ExternalData () noexcept |
virtual const Tensor & | getExternalVectors (std::string schemeName, LabelsList labels) const |
virtual MultiDimensional::SharedTensorData | getWilsonCoefficients (PdgId parent, const std::vector< PdgId > &daughters, const std::vector< PdgId > &granddaughters={}, WTerm what=WTerm::NUMERATOR) const |
virtual MultiDimensional::SharedTensorData | getWilsonCoefficients (AmplitudeBase *amp, WTerm what=WTerm::NUMERATOR) const |
virtual MultiDimensional::SharedTensorData | getSpecializedWilsonCoefficients (AmplitudeBase *amp) const |
void | specializeWCInWeights (const std::string &prefixName, const std::map< std::string, std::complex< double >> &settings) |
void | specializeWCInWeights (const std::string &prefixName, const std::vector< std::complex< double >> &values) |
void | resetSpecializeWCInWeights (const std::string &prefixName) |
bool | isWCSpecialized (AmplitudeBase *ampl) const |
void | setWilsonCoefficients (const std::string &prefixName, const std::vector< std::complex< double >> &values, WTerm what=WTerm::NUMERATOR) |
void | setWilsonCoefficients (const std::string &prefixName, const std::map< std::string, std::complex< double >> &values, WTerm what=WTerm::NUMERATOR) |
void | setWilsonCoefficientsLocal (const std::string &prefixName, const std::vector< std::complex< double >> &values) |
void | setWilsonCoefficientsLocal (const std::string &prefixName, const std::map< std::string, std::complex< double >> &values) |
void | resetWilsonCoefficients (const std::string &prefixName, WTerm what=WTerm::NUMERATOR) |
MultiDimensional::SharedTensorData | getTempWilsonCoefficients (const std::string &prefixName, const std::vector< std::complex< double >> &values) const |
MultiDimensional::SharedTensorData | getTempWilsonCoefficients (const std::string &prefixName, const std::map< std::string, std::complex< double >> &values) const |
virtual MultiDimensional::SharedTensorData | getFFEigenVectors (FormFactorBase *ff, const std::string &schemeName) const |
void | setFFEigenVectors (const FFPrefixGroup &process, const std::vector< double > &values) |
void | setFFEigenVectors (const FFPrefixGroup &process, const std::map< std::string, double > &values) |
void | setFFEigenVectorsLocal (const FFPrefixGroup &process, const std::vector< double > &values) |
void | setFFEigenVectorsLocal (const FFPrefixGroup &process, const std::map< std::string, double > &values) |
void | resetFFEigenVectors (const FFPrefixGroup &process) |
MultiDimensional::SharedTensorData | getTempFFEigenVectors (const FFPrefixGroup &process, const std::vector< double > &values) const |
MultiDimensional::SharedTensorData | getTempFFEigenVectors (const FFPrefixGroup &process, const std::map< std::string, double > &values) const |
void | init (std::vector< std::string > schemeNames) |
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... | |
Private Types | |
using | externalVectorsType = std::unordered_map< std::string, UMap< LabelsList, Tensor >> |
using | processWilsonCoefficientsType = std::map< IndexLabel, std::array< MultiDimensional::SharedTensorData, 2 >> |
using | processFFEigenVectorsType = std::map< IndexLabel, SchemeDict< MultiDimensional::SharedTensorData >> |
Private Member Functions | |
void | initWilsonCoefficients () |
void | initFormFactorErrors () |
void | initExternalVectors () |
virtual void | defineSettings () |
purely virtual function for a class to define new settings More... | |
Log & | getLog () const |
Private Attributes | |
boost::thread_specific_ptr < processWilsonCoefficientsType > | _processWilsonCoefficients |
boost::thread_specific_ptr < processFFEigenVectorsType > | _processFFEigenVectors |
boost::thread_specific_ptr < externalVectorsType > | _externalVectors |
std::vector< std::string > | _schemes |
std::map< IndexLabel, MultiDimensional::SharedTensorData > | _processSpecializedWilsonCoefficients |
std::map< std::string, bool > | _isWCSpecializedDict {} |
const ProvidersRepo * | _providers |
Additional Inherited Members | |
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 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 |
|
private |
Definition at line 186 of file ExternalData.hh.
|
private |
Definition at line 188 of file ExternalData.hh.
|
private |
Definition at line 187 of file ExternalData.hh.
Hammer::ExternalData::ExternalData | ( | const ProvidersRepo * | provs | ) |
Definition at line 35 of file ExternalData.cc.
|
delete |
|
delete |
|
virtualnoexcept |
Definition at line 40 of file ExternalData.cc.
|
privatevirtual |
purely virtual function for a class to define new settings
Implements Hammer::SettingsConsumer.
Definition at line 54 of file ExternalData.cc.
|
virtual |
|
virtual |
|
private |
Definition at line 502 of file ExternalData.cc.
|
virtual |
MD::SharedTensorData Hammer::ExternalData::getTempFFEigenVectors | ( | const FFPrefixGroup & | process, |
const std::vector< double > & | values | ||
) | const |
Definition at line 426 of file ExternalData.cc.
MD::SharedTensorData Hammer::ExternalData::getTempFFEigenVectors | ( | const FFPrefixGroup & | process, |
const std::map< std::string, double > & | values | ||
) | const |
Definition at line 436 of file ExternalData.cc.
MD::SharedTensorData Hammer::ExternalData::getTempWilsonCoefficients | ( | const std::string & | prefixName, |
const std::vector< std::complex< double >> & | values | ||
) | const |
Definition at line 282 of file ExternalData.cc.
MD::SharedTensorData Hammer::ExternalData::getTempWilsonCoefficients | ( | const std::string & | prefixName, |
const std::map< std::string, std::complex< double >> & | values | ||
) | const |
Definition at line 292 of file ExternalData.cc.
|
virtual |
[in] | parent | |
[in] | daughters | |
[in] | granddaughters | |
[in] | what |
Definition at line 99 of file ExternalData.cc.
|
virtual |
void Hammer::ExternalData::init | ( | std::vector< std::string > | schemeNames | ) |
Definition at line 491 of file ExternalData.cc.
|
private |
Definition at line 482 of file ExternalData.cc.
|
private |
Definition at line 465 of file ExternalData.cc.
|
private |
Definition at line 448 of file ExternalData.cc.
bool Hammer::ExternalData::isWCSpecialized | ( | AmplitudeBase * | ampl | ) | const |
|
delete |
|
delete |
void Hammer::ExternalData::resetFFEigenVectors | ( | const FFPrefixGroup & | process | ) |
Definition at line 404 of file ExternalData.cc.
void Hammer::ExternalData::resetSpecializeWCInWeights | ( | const std::string & | prefixName | ) |
[in] | prefixName |
Definition at line 157 of file ExternalData.cc.
void Hammer::ExternalData::resetWilsonCoefficients | ( | const std::string & | prefixName, |
WTerm | what = WTerm::NUMERATOR |
||
) |
Definition at line 254 of file ExternalData.cc.
void Hammer::ExternalData::setFFEigenVectors | ( | const FFPrefixGroup & | process, |
const std::vector< double > & | values | ||
) |
[in] | process | |
[in] | values |
Definition at line 316 of file ExternalData.cc.
void Hammer::ExternalData::setFFEigenVectors | ( | const FFPrefixGroup & | process, |
const std::map< std::string, double > & | values | ||
) |
[in] | process | |
[in] | values |
Definition at line 339 of file ExternalData.cc.
void Hammer::ExternalData::setFFEigenVectorsLocal | ( | const FFPrefixGroup & | process, |
const std::vector< double > & | values | ||
) |
[in] | process | |
[in] | values |
Definition at line 358 of file ExternalData.cc.
void Hammer::ExternalData::setFFEigenVectorsLocal | ( | const FFPrefixGroup & | process, |
const std::map< std::string, double > & | values | ||
) |
[in] | process | |
[in] | values |
Definition at line 382 of file ExternalData.cc.
void Hammer::ExternalData::setWilsonCoefficients | ( | const std::string & | prefixName, |
const std::vector< std::complex< double >> & | values, | ||
WTerm | what = WTerm::NUMERATOR |
||
) |
[in] | prefixName | |
[in] | values | |
[in] | what |
Definition at line 174 of file ExternalData.cc.
void Hammer::ExternalData::setWilsonCoefficients | ( | const std::string & | prefixName, |
const std::map< std::string, std::complex< double >> & | values, | ||
WTerm | what = WTerm::NUMERATOR |
||
) |
Definition at line 198 of file ExternalData.cc.
void Hammer::ExternalData::setWilsonCoefficientsLocal | ( | const std::string & | prefixName, |
const std::vector< std::complex< double >> & | values | ||
) |
[in] | prefixName | |
[in] | values |
Definition at line 222 of file ExternalData.cc.
void Hammer::ExternalData::setWilsonCoefficientsLocal | ( | const std::string & | prefixName, |
const std::map< std::string, std::complex< double >> & | values | ||
) |
Definition at line 237 of file ExternalData.cc.
void Hammer::ExternalData::specializeWCInWeights | ( | const std::string & | prefixName, |
const std::map< std::string, std::complex< double >> & | settings | ||
) |
[in] | prefixName | |
[in] | settings |
Definition at line 130 of file ExternalData.cc.
void Hammer::ExternalData::specializeWCInWeights | ( | const std::string & | prefixName, |
const std::vector< std::complex< double >> & | values | ||
) |
[in] | prefixName | |
[in] | values |
Definition at line 141 of file ExternalData.cc.
|
mutableprivate |
Definition at line 193 of file ExternalData.hh.
|
private |
Definition at line 197 of file ExternalData.hh.
|
mutableprivate |
Definition at line 192 of file ExternalData.hh.
|
private |
Definition at line 196 of file ExternalData.hh.
|
mutableprivate |
Definition at line 191 of file ExternalData.hh.
|
private |
Definition at line 198 of file ExternalData.hh.
|
private |
Definition at line 195 of file ExternalData.hh.