How to calculate the PSD and noise voltage of a recorded signal?
24 views (last 30 days)
Show older comments
I have a matrix of data (32x900000). This is for 32 different channels of recordings. I want to find the noise voltage spectral density for each signal. I think the way to do this is to is to start with FFT and then PSD and then calculate the noise voltage (and plot). I have come across several different ways to find PSD (spectrogram, periodogram, pwelch) so I am also not sure which is the best method to use when ultimately I am trying to get to the noise voltage (nv/sqrt(Hz)) plot. I do have the signal processing toolbox if there are more helpful tools available with that.
So far, I have tried the following code (from Matlab Help Center):
Y = fft(X);
P2 = abs(Y/L);
P1 = P2(1:L/2+1);
P1(2:end-1) = 2*P1(2:end-1);
f = Fs*(0:(L/2))/L;
plot(f,P1)
title('Single-Sided Amplitude Spectrum of X(t)')
xlabel('f (Hz)')
ylabel('|P1(f)|')
Am I correct in assuming that the y axis is actually (V^2/Hz)? Or is this not the correct plot? And once I have this power spectrum and want to find the noise voltage (V/sqrt(Hz)), is it as simple as taking the square root of the power spectrum or am I missing something?
Thank you.
1 Comment
Mathieu NOE
on 27 Jan 2021
hello Elizabeth
I would recommend pwelch
use the 'psd' option (not 'power')
pxx is the power / psd value of your time data;
see the documentation
Output Arguments
pxx — PSD estimate
PSD estimate, returned as a real-valued, nonnegative column vector or matrix. Each column of pxx is the PSD estimate of the corresponding column of x. The units of the PSD estimate are in squared magnitude units of the time series data per unit frequency. For example, if the input data is in volts, the PSD estimate is in units of squared volts per unit frequency. For a time series in volts, if you assume a resistance of 1 Ω and specify the sample rate in hertz, the PSD estimate is in watts per hertz.
and yes if you need the value in (V/sqrt(Hz)) it's simply the square root of pxx
Answers (0)
See Also
Categories
Find more on Parametric Spectral Estimation in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!