Hyperiso 1.0.3
Modular flavour-physics calculations, Wilson coefficients and statistical inference
Loading...
Searching...
No Matches
WilsonProvider Class Reference

Thin query layer: converts user requests into CoefficientManager calls. More...

#include <WilsonProvider.h>

Inheritance diagram for WilsonProvider:
Collaboration diagram for WilsonProvider:

Public Member Functions

 WilsonProvider (std::shared_ptr< WilsonBuilder > builder)
 Constructs a provider from an existing builder.
 
scalar_t get (std::shared_ptr< AbstractConfig > config) override
 Returns the requested Wilson coefficient as scalar_t (complex).
 
std::shared_ptr< WilsonBuilderget_builder () override
 Returns the underlying builder.
 
std::unordered_set< WilsonBasisget_bases (WGroupId group) override
 Returns the set of bases supported by a Wilson group.
 
- Public Member Functions inherited from IWilsonProvider< WilsonBuilder >
virtual ~IWilsonProvider ()=default
 

Detailed Description

Thin query layer: converts user requests into CoefficientManager calls.

WilsonProvider is an execution/query façade:

  • It keeps a reference to the WilsonBuilder and the built CoefficientManager.
  • It exposes a single entry point get(AbstractConfig) used by the framework interfaces.

The provider interprets WilsonRequest:

  • selects scale type (matching or hadronic),
  • optionally sums QCD orders up to the requested order,
  • selects basis for hadronic coefficients.

MARTY compatibility:

  • If MARTY is enabled and an order > LO is requested, the provider logs a warning and downgrades the request to LO (as per current backend limitation/policy).
See also
WilsonInterface
WilsonBuilder
CoefficientManager
WilsonRequest

Definition at line 36 of file WilsonProvider.h.

Constructor & Destructor Documentation

◆ WilsonProvider()

WilsonProvider::WilsonProvider ( std::shared_ptr< WilsonBuilder builder)

Constructs a provider from an existing builder.

Parameters
builderNon-null WilsonBuilder. The provider will also obtain the builder's coefficient manager.

Definition at line 4 of file WilsonProvider.cpp.

Member Function Documentation

◆ get()

scalar_t WilsonProvider::get ( std::shared_ptr< AbstractConfig config)
overridevirtual

Returns the requested Wilson coefficient as scalar_t (complex).

The config is expected to be a WilsonRequest wrapped as AbstractConfig. Depending on request fields:

  • scale_type == MATCHING -> getMatchingCoefficient or getFullMatchingCoefficient
  • scale_type == HADRONIC -> getRunCoefficient or getFullRunCoefficient

If Marty is enabled and request.order > LO, access is downgraded to LO with a warning.

Parameters
configAbstract configuration (must contain a WilsonRequest).
Returns
The requested coefficient value.

Implements IWilsonProvider< WilsonBuilder >.

Definition at line 14 of file WilsonProvider.cpp.

◆ get_bases()

std::unordered_set< WilsonBasis > WilsonProvider::get_bases ( WGroupId  group)
overridevirtual

Returns the set of bases supported by a Wilson group.

Implements IWilsonProvider< WilsonBuilder >.

Definition at line 55 of file WilsonProvider.cpp.

◆ get_builder()

std::shared_ptr< WilsonBuilder > WilsonProvider::get_builder ( )
overridevirtual

Returns the underlying builder.

Implements IWilsonProvider< WilsonBuilder >.

Definition at line 51 of file WilsonProvider.cpp.


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