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

Default concrete implementation of CoefficientGroup. More...

#include <GenericWilsonGroup.h>

Inheritance diagram for GenericCoefficientGroup:
Collaboration diagram for GenericCoefficientGroup:

Public Member Functions

std::shared_ptr< CoefficientGroupclone () const override
 Polymorphic clone.
 
std::shared_ptr< CoefficientGroupget_sm_group () override
 Returns an SM-only view of this group.
 
 CoefficientGroup (WilsonGroupAdapterConfig adapters)
 Inherit CoefficientGroup constructors (notably the adapters-based constructor).
 
 CoefficientGroup (const CoefficientGroup &)
 Inherit CoefficientGroup constructors (notably the adapters-based constructor).
 
 CoefficientGroup (CoefficientGroup &&)=default
 Inherit CoefficientGroup constructors (notably the adapters-based constructor).
 
 CoefficientGroup (std::map< std::string, std::shared_ptr< WilsonCoefficient > > &coeffs, WilsonGroupAdapterConfig adapters)
 Inherit CoefficientGroup constructors (notably the adapters-based constructor).
 
- Public Member Functions inherited from CoefficientGroup
 CoefficientGroup (WilsonGroupAdapterConfig adapters)
 Constructs an empty group with adapter configuration.
 
 CoefficientGroup (const CoefficientGroup &)
 Deep-copy constructor.
 
 CoefficientGroup (CoefficientGroup &&)=default
 Move construction (default).
 
 CoefficientGroup (std::map< std::string, std::shared_ptr< WilsonCoefficient > > &coeffs, WilsonGroupAdapterConfig adapters)
 Constructs from an existing map of coefficients and initializes up to NNLO.
 
void init (QCDOrder order)
 Registers dependent parameters for matching coefficients up to a maximum order.
 
void init_full_running_block (const std::unordered_map< ParameterType, std::vector< std::string > > &source_names, WilsonBasis basis, bool inter, std::vector< ContributionType > type)
 Initializes sources to build a full running block.
 
complex_t get_matching_coefficient (std::string coeff, std::string order, ContributionType cont_type) const
 Reads a coefficient at the matching scale (mu_W).
 
complex_t get_running_coefficient (std::string coeff, std::string order, ContributionType cont_type, WilsonBasis basis=WilsonBasis::B_STANDARD) const
 Reads a coefficient at the hadronic scale (mu_h) in a given basis.
 
QCDOrder get_order ()
 Returns the maximum initialized QCD order for this group.
 
std::string get_matching_storage_block () const
 Returns the current matching storage block name.
 
void set_matching_storage_block (std::string)
 Sets the matching storage block name (used by claim_coefficients()).
 
ContributionType get_type ()
 Returns the contribution type associated with this group (SM/BSM/TOTAL...).
 
std::unordered_map< ParameterType, std::vector< std::string > > get_sources (QCDOrder ord, WilsonBasis id)
 Returns source blocks for a given basis and order.
 
std::unordered_set< WilsonBasisget_bases () const
 Returns the set of bases configured in sources.
 
std::function< std::unordered_map< WCoefId, scalar_t >(const std::unordered_map< QCDOrder, std::unordered_map< WCoefId, scalar_t > > &, const BlockSrc &)> get_func (QCDOrder ord, WilsonBasis id)
 Returns the computation function for a given basis and order.
 
WGroupId get_group_id () const
 Returns the group identifier.
 
const std::vector< WCoefId > & get_member_ids () const
 Returns the dynamic ids of coefficients owned by this group.
 
void set_member_ids (std::vector< WCoefId > ids)
 Replace the dynamic coefficient membership list.
 
void add_member_id (WCoefId id)
 Add one dynamic coefficient id to the membership list if absent.
 
void set_group_id (WGroupId gid)
 Sets the group identifier (caller must ensure consistency with block naming).
 
void set_wilson_type (ContributionType ct)
 Sets the group contribution type.
 
void add_sources (WilsonBasis basis, const std::map< QCDOrder, CoefficientGroupSources > &m)
 Adds running-block sources for a given basis.
 
virtual ~CoefficientGroup ()=default
 

Additional Inherited Members

- Protected Member Functions inherited from CoefficientGroup
void claim_coefficients ()
 Claims coefficient objects as owned by this group and sets their storage/type.
 
- Protected Attributes inherited from CoefficientGroup
ContributionType wilson_type {ContributionType::SM}
 Contribution type for this group (default SM).
 
QCDOrder current_order = QCDOrder::LO
 Max initialized order (default LO).
 
WGroupId id
 Identifier of this group (used by GroupMapper to build block names).
 
std::string block_name
 Block name for matching-scale storage.
 
std::vector< WCoefIdmember_ids
 Dynamic coefficient ids belonging to this group.
 
std::map< WilsonBasis, std::map< QCDOrder, CoefficientGroupSources > > sources
 Running-block source specification, keyed by (basis -> order).
 
WilsonGroupAdapterConfig adapters
 Adapter configuration bundle (proxies, composers, core APIs, MARTY hooks).
 

Detailed Description

Default concrete implementation of CoefficientGroup.

Inherits all constructors from CoefficientGroup and implements:

Note: The deep copy behavior relies on CoefficientGroup's copy constructor, which clones each stored WilsonCoefficient via its virtual clone() method.

Definition at line 42 of file GenericWilsonGroup.h.

Member Function Documentation

◆ clone()

std::shared_ptr< CoefficientGroup > GenericCoefficientGroup::clone ( ) const
inlineoverridevirtual

Polymorphic clone.

Returns
A heap-allocated deep copy of this group.

Implements CoefficientGroup.

Definition at line 52 of file GenericWilsonGroup.h.

◆ CoefficientGroup() [1/4]

CoefficientGroup::CoefficientGroup ( CoefficientGroup &&  )
default

Inherit CoefficientGroup constructors (notably the adapters-based constructor).

◆ CoefficientGroup() [2/4]

CoefficientGroup::CoefficientGroup ( const CoefficientGroup other)

Inherit CoefficientGroup constructors (notably the adapters-based constructor).

Definition at line 144 of file WilsonGroup.cpp.

◆ CoefficientGroup() [3/4]

CoefficientGroup::CoefficientGroup ( std::map< std::string, std::shared_ptr< WilsonCoefficient > > &  coeffs,
WilsonGroupAdapterConfig  adapters 
)

Inherit CoefficientGroup constructors (notably the adapters-based constructor).

Definition at line 158 of file WilsonGroup.cpp.

◆ CoefficientGroup() [4/4]

CoefficientGroup::CoefficientGroup ( WilsonGroupAdapterConfig  adapters)
inline

Inherit CoefficientGroup constructors (notably the adapters-based constructor).

Definition at line 134 of file WilsonGroup.h.

◆ get_sm_group()

std::shared_ptr< CoefficientGroup > GenericCoefficientGroup::get_sm_group ( )
inlineoverridevirtual

Returns an SM-only view of this group.

Creates a deep copy of the group and forces its contribution type to SM. This is useful when one wants to reuse the same group definition but restrict interpretation of coefficients to SM contributions.

Returns
A deep copy of this group with ContributionType::SM.

Reimplemented from CoefficientGroup.

Definition at line 65 of file GenericWilsonGroup.h.


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