Hopsan
IntegratorLimited Class Reference

The IntegratorLimited class implements a integrator using bilinear transform which integrates a variable with limited output signal and wind-up protection. More...

Public Member Functions

void initialize (double timestep, double u0=0.0, double y0=0.0, double min=-1.5E+300, double max=1.5E+300)
 
void initializeValues (double u0, double y0)
 
void setMinMax (double min, double max)
 
double update (double u)
 
double value ()
 

Detailed Description

The IntegratorLimited class implements a integrator using bilinear transform which integrates a variable with limited output signal and wind-up protection.

The class implements

\[ y = \int_{0}^{t} \left\{ \begin{array}{ll} 0 & \mbox{if } \int u \, dt + y_0 < y_{min} \\ 0 & \mbox{if } \int u \, dt + y_0 > y_{max} \\ u & \mbox{otherwise} \end{array} \right. \, dt + y_0\]

Member Function Documentation

◆ value()

double value ( )

Observe that a call to this method has to be followed by another call to update(double u)

Returns
The integrated actual value.
See also
value(double u)