findop(idnlarx) - Compute operating point for nonlinear ARX model

Syntax

[X,U] = findop(SYS,'steady',InputLevel,OutputLevel)
[X,U] = findop(SYS,SPEC)
[X,U] = findop(SYS,'snapshot',T,UIN,X0)
[X,U,REPORT] = findop(...)
findop(SYS,...,PVPairs)

Description

[X,U] = findop(SYS,'steady',InputLevel,OutputLevel) computes operating-point state values, X, and input values, U, from steady-state specifications for an idnlarx model. For more information about the states of an idnlarx model, see Definition of idnlarx States.

[X,U] = findop(SYS,SPEC) computes the equilibrium operating point using the specifications in the object SPEC. Whereas the previous command only lets you specify the input and output level, SPEC provides additional specification for computing the steady-state operating point.

[X,U] = findop(SYS,'snapshot',T,UIN,X0) computes the operating point at a simulation snapshot of time T using the specified input and initial state values.

[X,U,REPORT] = findop(...) creates a structure, REPORT, containing information about the algorithm for computing an operating point.

findop(SYS,...,PVPairs) specifies property-value pairs for setting algorithm options.

Input

Input

Algorithm

findop computes the operating point from steady-state operating point specifications or at a simulation snapshot.

Computing the Operating Point from Steady-State Specifications

You specify to compute the steady-state operating point by calling findop in either of the following ways:

[X,U] = findop(SYS,'steady',InputLevel,OutputLevel)
[X,U] = findop(SYS,SPEC)

When you use the syntax [X,U] = findop(SYS,'steady',InputLevel,OutputLevel), the algorithm assumes the following operating-point specifications:

Using the syntax [X,U] = findop(SYS,SPEC), you can specify additional information, such as the minimum and maximum constraints on the input/output signals and whether certain inputs are known (fixed).

To compute the states, X, and the input, U, of the steady-state operating point, findop uses the algorithm specified in the SearchMethod property of MODEL.Algorithm to minimize the norm of the error e(t) = y(t)-f(x(t), u(t)), where f is the nonlinearity estimator, x(t) are the model states, and u(t) is the input.

The algorithm uses the following independent variables for minimization:

Because the states of a nonlinear ARX (idnlarx) model are delayed samples of the input and output variables, the values of all the states are the constant values of the corresponding steady-state inputs and outputs. For more information about the definition of nonlinear ARX model states, see Definition of idnlarx States.

Computing the Operating Point at a Simulation Snapshot

When you use the syntax [X,U] = findop(SYS,'snapshot',T,UIN,X0), the algorithm simulates the model output until the snapshot time, T. At the snapshot time, the algorithm passes the input and output samples to the data2state command to map these values to the current state vector.

Examples

In this example, you compute the operating point of an idnlarx model for a steady-state input level of 1.

  1. Estimate an idnlarx model from sample data iddata2.

    load iddata2;
    M = nlarx(z2,[4 3 2],'wavenet');
  2. Compute the steady-state operating point for an input level of 1.

    x0 = findop(M,'steady',1,NaN)
    

The resulting operating-point state values are, as follows:

 x0 =

   7.323167529215261
   7.323167529215261
   7.323167529215261
   7.323167529215261
   1.000000000000000
   1.000000000000000
   1.000000000000000
   1.000000000000000

See Also

data2state(idnlarx) 
operspec(idnlarx) 
sim(idnlarx) 

  


 © 1984-2008- The MathWorks, Inc.    -   Site Help   -   Patents   -   Trademarks   -   Privacy Policy   -   Preventing Piracy   -   RSS