Controlpp
Loading...
Searching...
No Matches
Estimators.hpp File Reference
#include <cassert>
#include <fstream>
#include <Eigen/Core>
#include <Eigen/Dense>
#include <tl/expected.hpp>
#include <controlpp/DiscreteTransferFunction.hpp>
#include <controlpp/algorithm.hpp>

Go to the source code of this file.

Classes

class  controlpp::ReccursiveLeastSquares< T, NParams, NMeasurements >
 Calculates the recursive least square for online parameter estimation. More...
 
class  controlpp::ReccursiveLeastSquares< T, NParams, 1 >
 Calculates the recursive least square for online parameter estimation. More...
 
class  controlpp::DtfEstimator< T, NumOrder, DenOrder, Measurements >
 Estimates a discrete transfer function from online data points. More...
 

Namespaces

namespace  controlpp
 The main namespace for the Control++ library.
 

Enumerations

enum class  controlpp::dft_estimate_error { controlpp::data_ranges_different_lenth , controlpp::data_range_too_small }
 

Functions

template<class T , int XRows, int XCols, int XOpt, int XMaxRows, int XMaxCols>
requires ((XRows >= XCols) || (XRows == Eigen::Dynamic) || (XCols == Eigen::Dynamic))
Eigen::Vector< T, XCols > controlpp::least_squares (const Eigen::Matrix< T, XRows, XCols, XOpt, XMaxRows, XMaxCols > &X, const Eigen::Vector< T, XRows > &y)
 Solves the overdefined system \(y = X p\) for p.
 
std::string_view controlpp::to_string (dft_estimate_error err)
 
std::ostream & controlpp::operator<< (std::ostream &stream, dft_estimate_error err)
 
template<class T , int NumOrder, int DenOrder>
requires ((NumOrder != Eigen::Dynamic) && (DenOrder != Eigen::Dynamic))
tl::expected< DiscreteTransferFunction< T, NumOrder, DenOrder >, dft_estimate_errorcontrolpp::dft_estimate (const Eigen::Vector< T, Eigen::Dynamic > &u, const Eigen::Vector< T, Eigen::Dynamic > &y, const T &regularization=T(0), const DiscreteTransferFunction< T, NumOrder, DenOrder > &hint=DiscreteTransferFunction< T, NumOrder, DenOrder >({T(0)}, {T(1)}))
 Estimates a discrete time transfer function of a specific order for the input (u) and output (y) data pairs.