- The CPSD output changes with `fs` because it affects the frequency resolution and scaling. If you use `fs = 1/64`, the output should scale proportionally to this factor. The output should scale inversely with the sampling frequency.
cpsd, amplitude normalization and frecuency of samplig
조회 수: 6 (최근 30일)
이전 댓글 표시
I would extract from cpsd the amplitude of a signal, i.e. the variance of a noise or in other cases the amplitude of sinusoidal wave.
I'm using as a sample a white noise. I would obtain from the mean performed over cpsd power spectrum sigma=1 (the original value of the signal).
Which is the right normalization of the output?
cpsd(S(:),S(:),w'*l_tot/sum(w),1,2*floor(l_tot/2)+1)'
possible options:
mean( sqrt(S(:)) );
sqrt( mean(S(:)) );
sqrt( mean(S(:))/length(S(:)) );
I am a bit confused. Moreover I notice that introducing the frecuency samplig fs in the arguments of the function, output changes, and I cannot find the proportional constant among
cpsd(S(:),S(:),w'*l_tot/sum(w),1,2*floor(l_tot/2)+1)
cpsd(S(:),S(:),w'*l_tot/sum(w),1,2*floor(l_tot/2)+1,1/64)
which in principle has to be proportional to 1/64, but I cannot find this relationship.
Thanks in advance!
댓글 수: 0
채택된 답변
Sugandhi
2024년 9월 13일
편집: Sugandhi
2024년 9월 13일
Hello Sebastiano,
To extract the amplitude or variance from the CPSD of a white noise signal, you should use the normalization:
sqrt(mean(S(:))/length(S(:)))
This helps you get the average power per sample, which is what you need to reflect the original variance of the signal.
This approach helps you relate the CPSD output to the original variance of the signal.
Regarding the sampling frequency (`fs`):
CPSD output scales with the sampling frequency. If you change `fs`, expect the CPSD values to adjust accordingly.
댓글 수: 0
추가 답변 (0개)
참고 항목
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!