LQOutputRegulatorGains

LQOutputRegulatorGains[ssm,{q,r}]
gives the optimal state feedback gain matrix for the StateSpaceModel ssm and the quadratic cost function, with output and control weighting matrices q and r.

LQOutputRegulatorGains[ssm,{q,r,p}]
includes the output-control cross-coupling matrix p in the cost function.

LQOutputRegulatorGains[{ssm,sensors},{}]
specifies sensors as the measured outputs of ssm.

LQOutputRegulatorGains[{ssm,sensors,finputs},{}]
specifies finputs as the feedback inputs of ssm.

Details and OptionsDetails and Options

  • The standard state-space model ssm can be given as StateSpaceModel[{a,b,c,d}], where a, b, c, and d represent the state, input, output, and transmission matrices in either a continuous-time or a discrete-time system:
  • continuous-time system
    discrete-time system
  • The descriptor state-space model ssm can be given as StateSpaceModel[{a,b,c,d,e}] in either continuous time or discrete time:
  • continuous-time system
    discrete-time system
  • LQOutputRegulatorGains also accepts nonlinear systems specified by AffineStateSpaceModel and NonlinearStateSpaceModel.
  • For nonlinear systems the operating values of state and input variables are taken into consideration, and the gains are computed based on the approximate Taylor linearization and returned as a vector.
  • The argument sensors is a list of integers specifying the positions of the measured outputs in .
  • Similarly, finputs is a list of integers specifying the positions of the feedback inputs in .
  • LQOutputRegulatorGains[ssm,{}] is equivalent to LQOutputRegulatorGains[{ssm,All,All},{}].
  • The cost function is:
  • continuous-time system
    discrete-time system
  • In LQOutputRegulatorGains[ssm,{q,r}], the cross-coupling matrix p is assumed to be zero.
  • The optimal control is given by , where is the computed feedback gain matrix.
  • For continuous-time systems, the optimal feedback gain is computed as kappa=TemplateBox[{{r, _, 1}}, Inverse].x_1, where and . The matrix is the solution of the continuous Riccati equation a.x_r+x_r.a-x_1.TemplateBox[{{r, _, 1}}, Inverse].x_1+c_s.q.c_s=0.
  • For discrete-time systems, the optimal feedback gain is computed as kappa=TemplateBox[{{r, _, 1}}, Inverse].x_1, where and . The matrix is the solution of the discrete Riccati equation a.x_r.a-x_r-x_1.TemplateBox[{{r, _, 1}}, Inverse].x_1+c_s.q.c_s=0.
  • The subscript denotes the submatrix associated with the feedback inputs , and the subscript denotes the submatrix associated with the sensors .

ExamplesExamplesopen allclose all

Basic Examples  (2)Basic Examples  (2)

A set of optimal output-weighted state feedback gains for a continuous-time system:

In[1]:=
Click for copyable input
Out[1]//MatrixForm=

LQ output regulator gains for a discrete-time system:

In[1]:=
Click for copyable input
Out[1]=
Introduced in 2010
(8.0)
| Updated in 2014
(10.0)