Main Content

getoutdist

Retrieve unmeasured output disturbance model

Description

outdist = getoutdist(mpcobj) returns the output disturbance model, outdist, used by the model predictive controller, mpcobj.

example

[outdist,channels] = getoutdist(mpcobj) also returns the output channels to which integrated white noise has been added by default. For more information on the default model, see MPC Prediction Models.

example

Examples

collapse all

Define a plant model with no direct feedthrough, and create an MPC controller for that plant.

plant = rss(3,2,2);
plant.D = 0;
mpcobj = mpc(plant,0.1);
-->"PredictionHorizon" is empty. Assuming default 10.
-->"ControlHorizon" is empty. Assuming default 2.
-->"Weights.ManipulatedVariables" is empty. Assuming default 0.00000.
-->"Weights.ManipulatedVariablesRate" is empty. Assuming default 0.10000.
-->"Weights.OutputVariables" is empty. Assuming default 1.00000.

Extract the output disturbance model.

outdist = getoutdist(mpcobj);
-->Converting model to discrete time.
-->Assuming output disturbance added to measured output #1 is integrated white noise.
-->Assuming output disturbance added to measured output #2 is integrated white noise.
-->"Model.Noise" is empty. Assuming white noise on each measured output.

Define a plant model with no direct feedthrough, and create an MPC controller for that plant.

plant = rss(3,3,3);
plant.d = 0;
mpcobj = mpc(plant,0.1);
-->"PredictionHorizon" is empty. Assuming default 10.
-->"ControlHorizon" is empty. Assuming default 2.
-->"Weights.ManipulatedVariables" is empty. Assuming default 0.00000.
-->"Weights.ManipulatedVariablesRate" is empty. Assuming default 0.10000.
-->"Weights.OutputVariables" is empty. Assuming default 1.00000.

Extract the default output disturbance model.

[outdist,channels] = getoutdist(mpcobj);
-->Converting model to discrete time.
-->Assuming output disturbance added to measured output #1 is integrated white noise.
-->Assuming output disturbance added to measured output #2 is integrated white noise.
-->Assuming output disturbance added to measured output #3 is integrated white noise.
-->"Model.Noise" is empty. Assuming white noise on each measured output.

Check which channels have default integrated white noise disturbances.

channels
channels = 1×3

     1     2     3

Integrators have been added to all three output channels.

Input Arguments

collapse all

Model predictive controller, specified as an MPC controller object. To create an MPC controller, use mpc.

Output Arguments

collapse all

Output disturbance model used by the model predictive controller, mpcobj, returned as a discrete-time, delay-free, state-space model.

The output disturbance model has:

  • ny outputs, where ny is the number of plant outputs defined in mpcobj.Model.Plant. Each disturbance model output is added to the corresponding plant output. By default, disturbance models corresponding to unmeasured output channels are zero.

  • Unit-variance white noise input signals. By default, the number of inputs is equal to the number of default integrators added.

This model, in combination with the input disturbance model (if any), governs how well the controller compensates for unmeasured disturbances and modeling errors. For more information on the disturbance modeling in MPC and about the model used during state estimation, see MPC Prediction Models and Controller State Estimation.

Output channels with integrated white noise added by default, returned as a vector of output indices. If you set outdist to a custom output disturbance model using setoutdist, channels is empty.

Tips

  • To specify a custom output disturbance model, use the setoutdist command.

Version History

Introduced before R2006a