# hsvdOptions

Create option set for computing Hankel singular values and input/output balancing

## Syntax

`opts = hsvdOptionsopts = hsvdOptions('OptionName', OptionValue)`

## Description

`opts = hsvdOptions` returns the default options for the `hsvd` and `balreal` commands.

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

## Input Arguments

### Name-Value Pair Arguments

 `'AbsTol, RelTol'` Absolute and relative error tolerance for stable/unstable decomposition. Positive scalar values. For an input model G with unstable poles, `hsvd` and `balreal` first extract 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'` 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 `hsvd` and `balreal` reference pages.

## Examples

Compute the Hankel singular values of the system given by:

$sys=\frac{\left(s+0.5\right)}{\left(s+{10}^{-6}\right)\left(s+2\right)}$

Use the `Offset` option to force `hsvd` to exclude the pole at s = 10–6 from the stable term of the stable/unstable decomposition.

```sys = zpk(-.5,[-1e-6 -2],1); opts = hsvdOptions('Offset',.001); % create option set hsvd(sys,opts) % treats -1e-6 as unstable```