PetaVision  Alpha
LogTimeScaleController.hpp
1 #ifndef _LOGTIMESCALECONTROLLER_HPP_
2 #define _LOGTIMESCALECONTROLLER_HPP_
3 
4 #include "AdaptiveTimeScaleController.hpp"
5 #include <cfloat>
6 
7 namespace PV {
8 
10  public:
12  char const *name,
13  int batchWidth,
14  double baseMax,
15  double baseMin,
16  double tauFactor,
17  double growthFactor,
18  bool writeTimeScaleFieldnames,
19  Communicator *comm,
20  double logThresh,
21  double logSlope);
22 
23  virtual std::vector<double>
24  calcTimesteps(double timeValue, std::vector<double> const &rawTimeScales) override;
25 
26  protected:
27  double mLogThresh = DBL_MAX_EXP;
28  double mLogSlope = 1.0;
29 };
30 }
31 
32 #endif