Я анализирую большой набор данных гирофона в MATLAB, используя набор инструментов для обработки сигналов, и обнаруживаю, что когда я делаю уровни частоты PSD или третьей октавной полосы, их уровни в дБ смещаются более чем на 30 или 40 дБ.Может кто-то предложить, какие основные или основные параметры необходимо проверить для этого.Я ввел все контрольные значения давления воды, чувствительность системы от начала до конца и все правильно.Если я что-то упустил, я хотел бы знать.пожалуйста, найдите ниже часть кода
xgrid = buffer(xbit,N,ceil(N*r),'nodelay').'; %buffer function breaks data into segments or frames as set by user
%grid whose rows are each (overlapped)
% segment for analysis
if xgrid(length(xgrid(:,1)),N) == 0 %remove final segment if not full
xgrid = xgrid(1:length(xgrid(:,1))-1,:);
end
M = length(xgrid(:,1)); %total number of data segments
xgrid = xgrid.*repmat(w/alpha,M,1);%multiply segments by Hann window function
%%computing DFT
X = abs(fft(xgrid.')).'; %DFT of each segment
%%computing power spectrum which is square of the amplitude
P = (X./N).^2;
%%Compute single-sided power spectrum
Pss = 2*P(:,2:floor(N/2)+1); %
f = floor(fs/2)*linspace(1/(N/2),1,N/2);
%calculate frequencies of DFT bins
flow = find(single(f) >= lcut,1,'first'); %low-frequency cut-off
fhigh = find(single(f) <= hcut,1,'last'); %high-frequency cut-off
f = f(flow:fhigh); %frequency bins in user-defined range
nf = length(f); %number of frequency bins
%% Compute noise power bandwidth and delta(f)
B = (1/N).*(sum((w/alpha).^2)); %noise power bandwidth
delf = fs/N;
%% Converting to dB
%for PSD calculation
APSD = 10*log10((1/(delf*B))*Pss(:,flow:fhigh)./(pref^2))-S;
Спасибо,