30 const std::vector<MeasPoint>& measData);
36 std::vector<double>
optimize(
double limitMinParams,
37 double limitMaxParams,
42 std::uint32_t seed = 0xC0FFEEu);
48 [[nodiscard]]
double dt()
const {
return dt_; }
52 void setStep(
double stepHeight,
double stepTime)
54 step_height_ = stepHeight;
55 step_time_ = stepTime;
59 double evaluate(
const std::vector<double>& params,
64 std::vector<MeasPoint> meas_data_;
66 double step_height_{0};
std::pair< double, double > MeasPoint
ControlPathParamEstimation(ControlPath &controlPath, const std::vector< MeasPoint > &measData)
std::vector< double > optimize(double limitMinParams, double limitMaxParams, bool dither, int maxNumSteps, double stepHeight, double stepTime, std::uint32_t seed=0xC0FFEEu)
Run DE to fit the control path to the measured data.
double rateCandidate(const std::vector< double > ¶mList) override
DE cost callback: squared error of the simulated vs. measured response.
void setStep(double stepHeight, double stepTime)
double dt() const
Mean sample time derived from the measurement timestamps.
Series chain of control elements. Port of ControlPath.ts.
Cost function to minimise. Port of IDifferentialEvolutionRating.