Base class for observable/decay computation modules.
std::complex< double > complex_t
Convenience alias for std::complex<double>.
Typed configuration adapter for DecayParent using std::any.
DecayId id
Unique decay identifier.
WilsonBuildConfig w_config
Wilson build configuration used when enabling this decay (scales, order, groups).
ObservablePortsConfig & ports
Reference to the ports/configuration wiring this decay to the framework.
QCDOrder max_order
Maximum QCD order supported by this decay module (default: LO).
static IdOf< WGroupTag > to_id(WGroup e)
Converts an enum value to an IdOf<Tag>.
"Decay parent" to compute uncertainty on Wilson Coefficients.
std::vector< ObservableValue > compute_observable(Observables) override
Compute an observable given a public observable enum.
void load_params() override
Load and cache parameters needed by this decay.
std::vector< ObservableValue > compute_observable(ObservableId) override
Compute an observable given an internal observable identifier.
WilsonDecay(DecayId id, QCDOrder order, double matching_scale, double hadronic_scale, ObservablePortsConfig &ports)
Dependency container (“ports”) for observable computations.
std::unordered_set< WGroupId > groups
Set of Wilson operator group identifiers to be included in the build.