Tomographer  v5.4
Tomographer C++ Framework Documentation
Tomographer::MHRWStepSizeController< MHRWMovingAverageAcceptanceRatioStatsCollectorType_, BaseLoggerType_, StepRealType_, IterCountIntType_ > Class Template Reference

A MHRWController Interface dynamically adjusting the step size to keep a good acceptance ratio. More...

#include <tomographer/mhrwstepsizecontroller.h>

+ Inheritance diagram for Tomographer::MHRWStepSizeController< MHRWMovingAverageAcceptanceRatioStatsCollectorType_, BaseLoggerType_, StepRealType_, IterCountIntType_ >:
+ Collaboration diagram for Tomographer::MHRWStepSizeController< MHRWMovingAverageAcceptanceRatioStatsCollectorType_, BaseLoggerType_, StepRealType_, IterCountIntType_ >:

Public Types

typedef MHRWAcceptRatioWalkerParamsController< MHRWStepSizeController< MHRWMovingAverageAcceptanceRatioStatsCollectorType_, BaseLoggerType_, StepRealType_, IterCountIntType_ >, MHRWMovingAverageAcceptanceRatioStatsCollectorType_, BaseLoggerType_, IterCountIntType_ > Base
 
typedef MHRWMovingAverageAcceptanceRatioStatsCollectorType_ MHRWMovingAverageAcceptanceRatioStatsCollectorType
 
typedef BaseLoggerType_ BaseLoggerType
 
typedef StepRealType_ StepRealType
 
typedef IterCountIntType_ IterCountIntType
 
- Public Types inherited from Tomographer::MHRWAcceptRatioWalkerParamsController< MHRWStepSizeController< MHRWMovingAverageAcceptanceRatioStatsCollectorType_, BaseLoggerType_, StepRealType_, IterCountIntType_ >, MHRWMovingAverageAcceptanceRatioStatsCollectorType_, BaseLoggerType_, IterCountIntType_ >
enum  
 
typedef MHRWStepSizeController< MHRWMovingAverageAcceptanceRatioStatsCollectorType_, BaseLoggerType_, StepRealType_, IterCountIntType_ > MHRWAcceptanceRatioBasedParamsAdjusterType
 
typedef MHRWMovingAverageAcceptanceRatioStatsCollectorType_ MHRWMovingAverageAcceptanceRatioStatsCollectorType
 
typedef BaseLoggerType_ BaseLoggerType
 
typedef IterCountIntType_ IterCountIntType
 

Public Member Functions

 MHRWStepSizeController (const MHRWMovingAverageAcceptanceRatioStatsCollectorType &accept_ratio_stats_collector_, BaseLoggerType &baselogger_, double desired_accept_ratio_min_=MHRWAcceptRatioWalkerParamsControllerDefaults::DesiredAcceptanceRatioMin, double desired_accept_ratio_max_=MHRWAcceptRatioWalkerParamsControllerDefaults::DesiredAcceptanceRatioMax, double acceptable_accept_ratio_min_=MHRWAcceptRatioWalkerParamsControllerDefaults::AcceptableAcceptanceRatioMin, double acceptable_accept_ratio_max_=MHRWAcceptRatioWalkerParamsControllerDefaults::AcceptableAcceptanceRatioMax, double ensure_n_therm_fixed_params_fraction_=MHRWAcceptRatioWalkerParamsControllerDefaults::EnsureNThermFixedParamsFraction)
 
template<typename MHRWParamsType , typename MHWalker , typename MHRandomWalkType >
void initParams (MHRWParamsType &params, const MHWalker &, const MHRandomWalkType &)
 
template<typename MHRWParamsType , typename MeType , typename MHWalker , typename MHRandomWalkType >
void adjustParamsForAcceptRatio (MHRWParamsType &params, double accept_ratio, const MeType &, const MHWalker &, IterCountIntType iter_k, const MHRandomWalkType &)
 
StepRealType getLastSetStepSize () const
 
- Public Member Functions inherited from Tomographer::MHRWAcceptRatioWalkerParamsController< MHRWStepSizeController< MHRWMovingAverageAcceptanceRatioStatsCollectorType_, BaseLoggerType_, StepRealType_, IterCountIntType_ >, MHRWMovingAverageAcceptanceRatioStatsCollectorType_, BaseLoggerType_, IterCountIntType_ >
 MHRWAcceptRatioWalkerParamsController (const MHRWMovingAverageAcceptanceRatioStatsCollectorType &accept_ratio_stats_collector_, BaseLoggerType &baselogger_, MHRWAcceptanceRatioBasedParamsAdjusterType &params_adjuster_, double desired_accept_ratio_min_=MHRWAcceptRatioWalkerParamsControllerDefaults::DesiredAcceptanceRatioMin, double desired_accept_ratio_max_=MHRWAcceptRatioWalkerParamsControllerDefaults::DesiredAcceptanceRatioMax, double acceptable_accept_ratio_min_=MHRWAcceptRatioWalkerParamsControllerDefaults::AcceptableAcceptanceRatioMin, double acceptable_accept_ratio_max_=MHRWAcceptRatioWalkerParamsControllerDefaults::AcceptableAcceptanceRatioMax, double ensure_n_therm_fixed_params_fraction_=MHRWAcceptRatioWalkerParamsControllerDefaults::EnsureNThermFixedParamsFraction)
 
double desiredAcceptRatioMin () const
 
double desiredAcceptRatioMax () const
 
double acceptableAcceptRatioMin () const
 
double acceptableAcceptRatioMax () const
 
double ensureNThermFixedParamsFraction () const
 
IterCountIntType originalNTherm () const
 
void init (MHRWParamsType &params, const MHWalker &mhwalker, const MHRandomWalkType &mhrw)
 
void adjustParams (MHRWParamsType &params, const MHWalker &mhwalker, IterCountIntType iter_k, const MHRandomWalkType &mhrw)
 
bool allowDoneThermalization (const MHRWParamsType &params, const MHWalker &, IterCountIntType iter_k, const MHRandomWalkType &)
 
bool allowDoneRuns (const MHRWParamsType &, const MHWalker &, IterCountIntType, const MHRandomWalkType &)
 
void thermalizingDone (MHRWParamsType &, const MHWalker &, const MHRandomWalkType &) const
 
void done (MHRWParamsType &, const MHWalker &, const MHRandomWalkType &) const
 

Detailed Description

template<typename MHRWMovingAverageAcceptanceRatioStatsCollectorType_, typename BaseLoggerType_ = Logger::VacuumLogger, typename StepRealType_ = double, typename IterCountIntType_ = int>
class Tomographer::MHRWStepSizeController< MHRWMovingAverageAcceptanceRatioStatsCollectorType_, BaseLoggerType_, StepRealType_, IterCountIntType_ >

A MHRWController Interface dynamically adjusting the step size to keep a good acceptance ratio.

This controller is based on Tomographer::MHRWAcceptRatioWalkerParamsController. In case you're wondering, the MHRWAcceptanceRatioBasedParamsAdjusterType we're using is this class itself. This class conforms both to MHRWController Interface and MHRWAcceptanceRatioBasedParamsAdjuster Interface.

Definition at line 72 of file mhrwstepsizecontroller.h.


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