필터 지우기
필터 지우기

Question about Covariance matrix from 'SPA' function

조회 수: 3 (최근 30일)
Achille Nicoletti
Achille Nicoletti 2016년 2월 7일
답변: Mayank Dwivedi 2016년 2월 9일
Hello MATLAB geniuses,
So when one identifies the frequency response of a system using the SPA function, we can obtain the covariance matrix. Suppose I have an input 'u' and output 'y' of an experiment, with 'Ts' being the sampling time, 'winSize' being the window size of the identification, and 'freq' being the vector of frequency points to use in obtaining the frequency response. Then the covariance matrix can be obtained as follows:
dat = iddata(y,u,Ts)
G = spa(data,winSize,freq)
Covariance_Matrix = squeeze(G.CovarianceData)
For my case, the covariance matrix (at each frequency) is a 2x2 matrix, where Covariance_Matrix(k,1,1) is the variance in the real part, and Covariance_Matrix(k,2,2) is the variance in the imaginary part (for any positive integer k). My question is, how exactly are these values calculated? Do these values depend on the output noise spectrum? Basically, if I wanted to calculate this covariance matrix myself, how would I do it? The documentation, unfortunately, does not seem to mention anything about this.
Your help is much appreciated!
-Achille

답변 (1개)

Mayank Dwivedi
Mayank Dwivedi 2016년 2월 9일
Hi Achille,
The more about section in documentation page describes about the algorithm used by 'spa' function. Please refer to the link below:
Thanks,
Mayank

카테고리

Help CenterFile Exchange에서 Data Preparation Basics에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by