# Documentation

### This is machine translation

Translated by
Mouseover text to see original. Click the button below to return to the English verison of the page.

To view all translated materals including this page, select Japan from the country navigator on the bottom of this page.

# covar

Output and state covariance of system driven by white noise

## Syntax

```P = covar(sys,W) [P,Q] = covar(sys,W) ```

## Description

`covar` calculates the stationary covariance of the output y of an LTI model `sys` driven by Gaussian white noise inputs w. This function handles both continuous- and discrete-time cases.

`P = covar(sys,W) `returns the steady-state output response covariance

`$P=E\left(y{y}^{T}\right)$`

given the noise intensity

`[P,Q] = covar(sys,W)` also returns the steady-state state covariance

`$Q=E\left(x{x}^{T}\right)$`

when `sys` is a state-space model (otherwise `Q` is set to `[]`).

When applied to an `N`-dimensional LTI array `sys`, `covar` returns multidimensional arrays P, Q such that

`P(:,:,i1,...iN)` and `Q(:,:,i1,...iN)` are the covariance matrices for the model `sys(:,:,i1,...iN)`.

## Examples

Compute the output response covariance of the discrete SISO system

`$\begin{array}{cc}H\left(z\right)=\frac{2z+1}{{z}^{2}+0.2z+0.5},& {T}_{s}\end{array}=0.1$`

due to Gaussian white noise of intensity `W = 5`. Type

```sys = tf([2 1],[1 0.2 0.5],0.1); p = covar(sys,5) ```

These commands produce the following result.

```p = 30.3167 ```

You can compare this output of `covar` to simulation results.

```randn('seed',0) w = sqrt(5)*randn(1,1000); % 1000 samples % Simulate response to w with LSIM: y = lsim(sys,w); % Compute covariance of y values psim = sum(y .* y)/length(w); ```

This yields

```psim = 32.6269 ```

The two covariance values `p` and `psim` do not agree perfectly due to the finite simulation horizon.

## Algorithms

Transfer functions and zero-pole-gain models are first converted to state space with `ss`.

For continuous-time state-space models

`$\begin{array}{l}\stackrel{˙}{x}=Ax+Bw\\ y=Cx+Dw,\end{array}$`

the steady-state state covariance Q is obtained by solving the Lyapunov equation

`$AQ+Q{A}^{T}+BW{B}^{T}=0.$`

In discrete time, the state covariance Q solves the discrete Lyapunov equation

`$AQ{A}^{T}-Q+BW{B}^{T}=0.$`

In both continuous and discrete time, the output response covariance is given by P = CQCT + DWDT. For unstable systems, P and Q are infinite. For continuous-time systems with nonzero feedthrough, `covar` returns `Inf` for the output covariance P.

## References

[1] Bryson, A.E. and Y.C. Ho, Applied Optimal Control, Hemisphere Publishing, 1975, pp. 458-459.