idPiecewiseLinear
Create a piecewise-linear nonlinearity estimator object
Description
idPiecewiseLinear
is an object that stores the
piecewise-linear nonlinearity estimator for estimating Hammerstein-Wiener
models.
Use idPiecewiseLinear
to define a nonlinear function , where y and x are scalars, and
θ represents the parameters specifying the number of break points and the
value of nonlinearity at the break points.
The nonlinearity function, F, is a piecewise-linear (affine) function
of x. There are n
breakpoints
(xk,yk),
k = 1,...,n, such that yk =
F(xk). F is linearly interpolated between the
breakpoints.
F is also linear to the left and right of the extreme breakpoints.
The slope of these extensions is a function of xi
and yi breakpoints. The breakpoints are ordered by
ascending x
-values, which is important when you set a specific breakpoint
to a different value.
There are minor difference between the breakpoint values you set and the values stored in the object because the toolbox has a different internal representation of breakpoints.
For example, in the following plot, the breakpoints are xk = [-2,1,4] and the corresponding nonlinearity values are yk = [4,3,5].
The value F(x)
is computed by evaluate(NL,x)
, where
NL
is the idPiecewiseLinear
object. When using
evaluate
, the break points have to be initialized manually.
For idPiecewiseLinear
object properties, see Properties.
Creation
Description
creates a default
piecewise-linear nonlinearity estimator object with 10 break points for estimating
Hammerstein-Wiener models. The value of the nonlinearity at the break points are set to
NL
= idPiecewiseLinear[]
. The initial value of the nonlinearity is determined from the
estimation data range during estimation using nlhw
. Use dot notation to customize the object properties, if needed.
creates a piecewise-linear nonlinearity estimator object with properties specified by one
or more NL
= idPiecewiseLinear(Name,Value
)Name,Value
pair arguments. The properties that you do not
specify retain their default value.