8 #ifndef ADAPTIVETIMESCALEPROBE_HPP_ 9 #define ADAPTIVETIMESCALEPROBE_HPP_ 11 #include "BaseProbe.hpp" 12 #include "ColProbe.hpp" 13 #include "components/AdaptiveTimeScaleController.hpp" 14 #include "layers/HyPerLayer.hpp" 82 virtual Response::Status respond(std::shared_ptr<BaseMessage const> message)
override;
83 virtual Response::Status
85 virtual Response::Status allocateDataStructures()
override;
86 virtual Response::Status
outputState(
double timeValue)
override;
90 int initialize(
char const *name,
HyPerCol *hc);
93 Response::Status respondAdaptTimestep(std::shared_ptr<AdaptTimestepMessage const> message);
98 virtual void calcValues(
double timeValue)
override;
99 virtual bool needUpdate(
double timeValue,
double dt)
override {
return true; }
100 virtual void allocateTimeScaleController();
103 double mBaseMax = 1.0;
104 double mBaseMin = 1.0;
105 double tauFactor = 1.0;
106 double mGrowthFactor = 1.0;
107 bool mWriteTimeScaleFieldnames =
true;
int ioParamsFillGroup(enum ParamsIOFlag ioFlag) override
double referenceUpdateTime() const override
virtual void ioParam_baseMin(enum ParamsIOFlag ioFlag)
baseMin: Specifies the minimum timescale allowed.
double getLastUpdateTime()
virtual void ioParam_tauFactor(enum ParamsIOFlag ioFlag)
tauFactor: If Specifies the coefficient on the effective decay rate used to compute the timescale...
virtual bool needUpdate(double timeValue, double dt) override
virtual void calcValues(double timeValue) override
virtual void ioParam_baseMax(enum ParamsIOFlag ioFlag)
baseMax: Specifies the initial maximum timescale allowed. The maximum timescale is allowed to increas...
bool needRecalc(double timeValue) override
virtual void ioParam_targetName(enum ParamsIOFlag ioFlag) override
targetName: the name of the probe that this probe attaches to. The target probe's values are used as ...
virtual void ioParam_growthFactor(enum ParamsIOFlag ioFlag)
dtChangeMin: Specifies the percentage by which the maximum timescale increases when the timescale rea...
virtual void ioParam_writeTimeScaleFieldnames(enum ParamsIOFlag ioFlag)
writeTimeScaleFieldnames: A flag to determine if fieldnames are written to the HyPerCol_timescales fi...
virtual Response::Status communicateInitInfo(std::shared_ptr< CommunicateInitInfoMessage const > message) override
virtual Response::Status registerData(Checkpointer *checkpointer) override
virtual Response::Status outputState(double timeValue) override
virtual void ioParam_writeTimeScales(enum ParamsIOFlag ioFlag)
writeTimeScales is obsolete, as it is redundant with textOutputFlag.