|
Hyperiso 1.0.3
Modular flavour-physics calculations, Wilson coefficients and statistical inference
|
High-level factory assembling a complete Wilson computation pipeline. More...
#include <WilsonBuilder.h>


Public Member Functions | |
| WilsonBuilder (WilsonBuildConfig config) | |
| Constructs and immediately builds the Wilson pipeline from a config. | |
| WilsonBuilder (std::shared_ptr< CoefficientManager > manager) | |
| Constructs a builder from an existing coefficient manager (advanced usage). | |
| void | build (WilsonBuildConfig config) override |
| Build a new Wilson pipeline from scratch. | |
| void | add (WilsonBuildConfig config) override |
| Add additional Wilson groups to an existing manager. | |
| void | add_custom_group (const CustomWilsonGroupConfig &config) |
| Register and initialize a user-defined Wilson group built from lambdas. | |
| void | add_matching_patch (const WilsonMatchingPatch &patch) |
| Add one additive matching patch to the active Wilson manager. | |
| void | add_matching_patches (const std::vector< WilsonMatchingPatch > &patches) |
| Add several additive matching patches to the active Wilson manager. | |
| std::shared_ptr< WilsonProvider > | get_wilson_provider () |
| Returns a provider facade around this builder. | |
| std::shared_ptr< CoefficientManager > | get_coefficient_manager () |
| Returns the underlying coefficient manager. | |
Public Member Functions inherited from IWilsonBuilder< WilsonBuildConfig, WilsonProvider > | |
| virtual | ~IWilsonBuilder ()=default |
High-level factory assembling a complete Wilson computation pipeline.
WilsonBuilder is responsible for wiring together:
Typical usage:
Notes on Marty:
Definition at line 61 of file WilsonBuilder.h.
| WilsonBuilder::WilsonBuilder | ( | WilsonBuildConfig | config | ) |
Constructs and immediately builds the Wilson pipeline from a config.
Definition at line 8 of file WilsonBuilder.cpp.
| WilsonBuilder::WilsonBuilder | ( | std::shared_ptr< CoefficientManager > | manager | ) |
Constructs a builder from an existing coefficient manager (advanced usage).
Definition at line 28 of file WilsonBuilder.cpp.
|
overridevirtual |
Add additional Wilson groups to an existing manager.
This method:
Notes:
Implements IWilsonBuilder< WilsonBuildConfig, WilsonProvider >.
Definition at line 127 of file WilsonBuilder.cpp.
| void WilsonBuilder::add_custom_group | ( | const CustomWilsonGroupConfig & | config | ) |
Register and initialize a user-defined Wilson group built from lambdas.
The config provides dynamic ids, matching lambdas for coefficients and optional running lambdas for the group. The builder turns it into a CustomCoefficientGroup, registers it in the existing CoefficientManager, then initializes matching and hadronic blocks at the scales/order stored in the config.
| config | Runtime/custom Wilson group configuration. |
Definition at line 215 of file WilsonBuilder.cpp.
| void WilsonBuilder::add_matching_patch | ( | const WilsonMatchingPatch & | patch | ) |
Add one additive matching patch to the active Wilson manager.
Definition at line 239 of file WilsonBuilder.cpp.
| void WilsonBuilder::add_matching_patches | ( | const std::vector< WilsonMatchingPatch > & | patches | ) |
Add several additive matching patches to the active Wilson manager.
Definition at line 246 of file WilsonBuilder.cpp.
|
overridevirtual |
Build a new Wilson pipeline from scratch.
Steps performed (as per implementation):
Implements IWilsonBuilder< WilsonBuildConfig, WilsonProvider >.
Definition at line 30 of file WilsonBuilder.cpp.
| std::shared_ptr< CoefficientManager > WilsonBuilder::get_coefficient_manager | ( | ) |
Returns the underlying coefficient manager.
Definition at line 257 of file WilsonBuilder.cpp.
|
virtual |
Returns a provider facade around this builder.
The provider offers runtime coefficient access using a request/config object.
Implements IWilsonBuilder< WilsonBuildConfig, WilsonProvider >.
Definition at line 253 of file WilsonBuilder.cpp.