This is machine translation

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

Note: This page has been translated by MathWorks. Please click here
To view all translated materals including this page, select Japan from the country navigator on the bottom of this page.


Output and state covariance of system driven by white noise


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


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


given the noise intensity

E(w(t)w(τ)T)=Wδ(tτ)(continuous time)E(w[k]w[l]T)=Wδkl(discrete time)

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


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).


Compute the output response covariance of the discrete SISO system


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 =

You can compare this output of covar to simulation results.

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 = 

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


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

For continuous-time state-space models


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


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


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.


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

See Also


Introduced before R2006a

Was this topic helpful?