Modify unmeasured output disturbance model




setoutdist(MPCobj,'integrators') specifies the default method output disturbance model, based on the specs stored in MPCobj.OutputVariables.Integrator and MPCobj.Weights.OutputVariables. Output integrators are added according to the following rules:

  1. Outputs are ordered by decreasing output weight (in case of time-varying weights, the sum of the absolute values over time is considered for each output channel. In case of equal output weight, the order within the output vector is followed).

  2. By following such order, an output integrator is added per measured outputs, unless one of the following is true:

    • There is a violation of observability

    • The corresponding value in MPCobj.OutputVariables.Integrator is zero

    • The corresponding value in MPCobj.Weights.OutputVariables is zero.

    A warning is issued when an integrator is added to an unmeasured output channel.

setoutdist(MPCobj,'remove',channels) removes integrators from the output channels specified in vector channels. This corresponds to setting MPCobj.OutputVariables(channels).Integrator=0. The default for channels is (1:ny), where ny is the total number of outputs, that is, all output integrators are removed.

setoutdist(MPCobj,'model',model) replaces the array of output integrators designed by default according to MPCobj.OutputVariables.Integrator with the LTI model model. The model must have ny outputs. If no model is specified, then the default model based on the specs stored in MPCobj.OutputVariables.Integrator and MPCobj.Weights.OutputVariables is used (same as setoutdist(MPCobj, 'integrators').

Was this topic helpful?