Create option set for model order reduction


opts = balredOptions
opts = balredOptions('OptionName', OptionValue)


opts = balredOptions returns the default option set for the balred command.

opts = balredOptions('OptionName', OptionValue) accepts one or more comma-separated name/value pairs. Specify OptionName inside single quotes.

Input Arguments

Name-Value Pair Arguments


State elimination method. Specifies how to eliminate the weakly coupled states (states with smallest Hankel singular values). Specified as one of the following values:

'MatchDC'Discards the specified states and alters the remaining states to preserve the DC gain.
'Truncate'Discards the specified states without altering the remaining states. This method tends to product a better approximation in the frequency domain, but the DC gains are not guaranteed to match.

Default: 'MatchDC'

'AbsTol, RelTol'

Absolute and relative error tolerance for stable/unstable decomposition. Positive scalar values. For an input model G with unstable poles, balred first extracts the stable dynamics by computing the stable/unstable decomposition G → GS + GU. The AbsTol and RelTol tolerances control the accuracy of this decomposition by ensuring that the frequency responses of G and GS + GU differ by no more than AbsTol + RelTol*abs(G). Increasing these tolerances helps separate nearby stable and unstable modes at the expense of accuracy. See stabsep for more information.

Default: AbsTol = 0; RelTol = 1e-8


Offset for the stable/unstable boundary. Positive scalar value. In the stable/unstable decomposition, the stable term includes only poles satisfying

  • Re(s) < -Offset * max(1,|Im(s)|) (Continuous time)

  • |z| < 1 - Offset (Discrete time)

Increase the value of Offset to treat poles close to the stability boundary as unstable.

Default: 1e-8

For additional information on the options and how to use them, see the balred reference page.


collapse all

Reduced-Order Approximation with Offset Option

Compute a reduced-order approximation of the system given by:

$$G\left( s \right) = \frac{{\left( {s + 0.5} \right)\left( {s + 1.1}&#xA;\right)\left( {s + 2.9} \right)}}{{\left( {s + {{10}^{ - 6}}}&#xA;\right)\left( {s + 1} \right)\left( {s + 2} \right)\left( {s + 3}&#xA;\right)}}.$$

Use the Offset option to exclude the pole at $s = 10^{-6}$ from the stable term of the stable/unstable decomposition.

sys = zpk([-.5 -1.1 -2.9],[-1e-6 -2 -1 -3],1);
% Create balredOptions
opt = balredOptions('Offset',.001,'StateElimMethod','Truncate');
% Compute second-order approximation
rsys = balred(sys,2,opt);

Compare the responses of the original and reduced-order models.


See Also


Was this topic helpful?