Note: This page has been translated by MathWorks. Click here to see

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

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

Cross power spectral density

`pxy = cpsd(x,y)`

`pxy = cpsd(x,y,window)`

`pxy = cpsd(x,y,window,noverlap)`

`pxy = cpsd(x,y,window,noverlap,nfft)`

`pxy = cpsd(___,'mimo')`

`[pxy,w] = cpsd(___)`

`[pxy,f] = cpsd(___,fs)`

`[pxy,w] = cpsd(x,y,window,noverlap,w)`

`[pxy,f] = cpsd(x,y,window,noverlap,f,fs)`

`[___] = cpsd(x,y,___,freqrange)`

`cpsd(___)`

estimates
the cross power spectral density (CPSD) of two discrete-time signals, `pxy`

= cpsd(`x`

,`y`

)`x`

and `y`

,
using Welch’s averaged, modified periodogram method of spectral
estimation.

If

`x`

and`y`

are both vectors, they must have the same length.If one of the signals is a matrix and the other is a vector, then the length of the vector must equal the number of rows in the matrix. The function expands the vector and returns a matrix of column-by-column cross power spectral density estimates.

If

`x`

and`y`

are matrices with the same number of rows but different numbers of columns, then`cpsd`

returns a three-dimensional array,`pxy`

, containing cross power spectral density estimates for all combinations of input columns. Each column of`pxy`

corresponds to a column of`x`

, and each page corresponds to a column of`y`

:`pxy(:,m,n) = cpsd(x(:,m),y(:,n))`

.If

`x`

and`y`

are matrices of equal size, then`cpsd`

operates column-wise:`pxy(:,n) = cpsd(x(:,n),y(:,n))`

. To obtain a multi-input/multi-output array, append`'mimo'`

to the argument list.

For real `x`

and `y`

, `cpsd`

returns
a one-sided CPSD. For complex `x`

or `y`

, `cpsd`

returns
a two-sided CPSD.

`[`

returns
a vector of frequencies, `pxy`

,`f`

] = cpsd(___,`fs`

)`f`

, expressed in terms
of the sample rate, `fs`

, at which the cross power
spectral density is estimated. `fs`

must be the
sixth numeric input to `cpsd`

. To input a sample
rate and still use the default values of the preceding optional arguments,
specify these arguments as empty, `[]`

.

`cpsd(___)`

with
no output arguments plots the cross power spectral density estimate
in the current figure window.

`cpsd`

uses Welch’s averaged, modified
periodogram method of spectral estimation.

[1] Rabiner, Lawrence R., and B. Gold. *Theory
and Application of Digital Signal Processing*. Englewood
Cliffs, NJ: Prentice-Hall, 1975, pp. 414–419.

[2] Welch, Peter D. “The Use of the
Fast Fourier Transform for the Estimation of Power Spectra: A Method
Based on Time Averaging Over Short, Modified Periodograms.” *IEEE ^{®} Transactions
on Audio and Electroacoustics,* Vol. AU-15, June 1967,
pp. 70–73.

[3] Oppenheim, Alan V., Ronald W. Schafer,
and John R. Buck. *Discrete-Time Signal Processing*.
2nd Ed. Upper Saddle River, NJ: Prentice Hall, 1999.

`mscohere`

| `pburg`

| `pcov`

| `peig`

| `periodogram`

| `pmcov`

| `pmtm`

| `pmusic`

| `pwelch`

| `pyulear`

| `tfestimate`