74 [](
const auto&) {
return 0.0; };
81 :
compute([](const auto&) {
return 0.0; }) {}
111 this->lhaid = mi.
lhaid;
254 std::unordered_set<ParamId> extra_sources,
307 virtual std::shared_ptr<WilsonCoefficient>
clone()
const = 0;
Defines the Parameter class used to store individual physical/model parameters.
std::complex< double > complex_t
Convenience alias for std::complex<double>.
Abstract interface for reading parameters and basic metadata.
Lightweight view over a set of source parameters keyed by ParamId.
Abstract base class representing a Wilson coefficient and its matching information.
std::string get_name() const
Returns the current full name (may include suffixes).
std::string get_base_name() const
Returns the base name of the coefficient without BSM suffixes.
std::unordered_set< ParamId > get_sources(QCDOrder order)
Returns the source ParamIds required at a given QCD order.
virtual std::shared_ptr< WilsonCoefficient > clone() const =0
Virtual clone for polymorphic copy.
void add_matching_patch(QCDOrder order, std::unordered_set< ParamId > extra_sources, std::function< scalar_t(const ParamSrc &)> patch)
Add an extra additive term to the matching function of one QCD order.
void set_contribution_type(ContributionType type)
Sets the contribution type (SM/BSM/…).
ContributionType get_type()
Returns the current contribution type.
bool is_owned
Ownership flag (used by higher-level logic to track "produced" coefficients).
bool operator!=(const WilsonCoefficient &other) const
Inequality convenience.
LhaID get_lhaid_from_name(QCDOrder order)
Computes the LhaID directly from the coefficient base name and mapping conventions.
void set_name(std::string name)
Sets the domain name of the coefficient.
std::function< scalar_t(const ParamSrc &)> get_func(QCDOrder order)
Returns the compute function for a given QCD order.
void set_storage_block(std::string block_name)
Sets the storage block where the coefficient value is stored.
LhaID id(QCDOrder order, ContributionType typ) const
Returns the LHA id for a given order and contribution type.
std::string get_storage_block() const
Returns the storage block name.
WilsonCoefficient()=default
bool operator==(const WilsonCoefficient &other) const
Equality compares name, contribution type, and ownership flag.
std::string coeffName
Domain name of the coefficient (may include suffixes like _THDM/_SUSY).
virtual ~WilsonCoefficient()=default
complex_t get_matching_value(std::string order, ContributionType cont_type, std::shared_ptr< IParameterProxy< std::string, LhaID > > wilson_p) const
Reads the coefficient value from the storage backend for a given order/type.
std::map< QCDOrder, MatchingInfo > matching_info
Matching metadata indexed by QCD order.
void set_owned(bool owned)
Sets the ownership flag.
ContributionType type
Contribution type for this coefficient (SM by default, inferred in constructors).
std::string storage_block
Block name where this coefficient is stored in the Parameters system.
LhaID get_lhaid(QCDOrder order)
Returns the storage LhaID associated with a given QCD order.
Hash specialization for SymbolId<Tag>.
Represents an identifier of a LHA element, possibly containing several sub-ids.
Matching metadata for a Wilson coefficient at a specific QCD order.
MatchingInfo operator=(const MatchingInfo &mi)
Copy assignment operator.
MatchingInfo(std::unordered_set< ParamId > src, std::function< scalar_t(const ParamSrc &)> comp, LhaID id)
Full constructor.
MatchingInfo(MatchingInfo &&mi)=default
std::function< scalar_t(const ParamSrc &)> compute
Computation function for this coefficient/order.
std::unordered_set< ParamId > sources
Set of source parameter identifiers used by compute().
MatchingInfo()
Default ctor: sets compute to a safe no-op (returns 0.0).
LhaID lhaid
LHA identifier used to store the coefficient value in its storage block.
MatchingInfo(const MatchingInfo &mi)=default
MatchingInfo(const LhaID &id)
Constructs a MatchingInfo with only an LHA id.