# 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 $$y=F(x,\theta )$$, 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
(*x _{k}*,

*y*),

_{k}*k*= 1,...,

*n*, such that

*y*= F(

_{k}*x*).

_{k}*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 *x _{i}*
and

*y*breakpoints. The breakpoints are ordered by ascending

_{i}`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 *x _{k}* = [-2,1,4] and the corresponding nonlinearity values are

*y*= [4,3,5].

_{k}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.

## Properties

## Examples

## Version History

**Introduced in R2007a**