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

Abstract initialization strategy for one parameter namespace. More...

#include <Parameters.h>

Inheritance diagram for ModelStrategy:

Public Member Functions

virtual std::unordered_set< BlockNameinitializeParameters (class Parameters &params)=0
 Initializes the block set for the target parameter repository.
 
virtual void postInitialization (Parameters &params)=0
 Performs additional initialization after raw blocks are loaded.
 
virtual ~ModelStrategy ()=default
 Virtual destructor.
 
void add_absent_block (std::unordered_set< BlockName > _)
 Stores the set of blocks absent during initialization.
 
void remove_absent_block ()
 Clears the list of absent blocks.
 

Protected Attributes

std::unordered_set< BlockNameabsent_blocks
 

Detailed Description

Abstract initialization strategy for one parameter namespace.

A ModelStrategy is responsible for two phases:

  • initializeParameters: load the initial set of blocks for a given parameter type,
  • postInitialization: build extra derived blocks / helper quantities after the raw blocks have been loaded.

It also stores the set of blocks that were absent during initialization.

Definition at line 90 of file Parameters.h.

Constructor & Destructor Documentation

◆ ~ModelStrategy()

virtual ModelStrategy::~ModelStrategy ( )
virtualdefault

Virtual destructor.

Member Function Documentation

◆ add_absent_block()

void ModelStrategy::add_absent_block ( std::unordered_set< BlockName _)
inline

Stores the set of blocks absent during initialization.

Parameters
_Set of missing block names.

Definition at line 125 of file Parameters.h.

◆ initializeParameters()

virtual std::unordered_set< BlockName > ModelStrategy::initializeParameters ( class Parameters params)
pure virtual

Initializes the block set for the target parameter repository.

Typical implementations call Parameters::init_blocks with the appropriate ParameterType and return the set of missing blocks.

Parameters
paramsParameter repository being initialized.
Returns
Set of block names that were expected but absent from the input.

Implemented in SMModelStrategy, BSMModelStrategy, FlavorStrategy, GeneralModelStrategy, WilsonInputStrategy, DecayStrategy, ObservableStrategy, and PassthroughStrategy.

◆ postInitialization()

virtual void ModelStrategy::postInitialization ( Parameters params)
pure virtual

Performs additional initialization after raw blocks are loaded.

This hook is typically used to:

  • initialize helper modules,
  • create derived / dependent blocks,
  • add fallback blocks when some inputs are absent,
  • synchronize scales or helper quantities.
Parameters
paramsParameter repository being post-initialized.

Implemented in FlavorStrategy, GeneralModelStrategy, DecayStrategy, ObservableStrategy, PassthroughStrategy, SMModelStrategy, BSMModelStrategy, and WilsonInputStrategy.

◆ remove_absent_block()

void ModelStrategy::remove_absent_block ( )
inline

Clears the list of absent blocks.

Definition at line 130 of file Parameters.h.

Member Data Documentation

◆ absent_blocks

std::unordered_set<BlockName> ModelStrategy::absent_blocks
protected

Definition at line 132 of file Parameters.h.


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