44 lines
1.2 KiB
Matlab
Executable File
44 lines
1.2 KiB
Matlab
Executable File
% funzione che definisce i dati per la Cella di Pressione, in particolare
|
|
% tempo (TimePL) e Dato
|
|
|
|
function [TimePL,Pressure,ErrPressureLink] = defDatiPL(DatiPressureLink,...
|
|
ErrPressureLink,Ndatidespike,rPrL,FileName)
|
|
|
|
fileID = fopen(FileName,'a');
|
|
fmt = '%s \r';
|
|
text = 'defDatiPL function started';
|
|
fprintf(fileID,fmt,text);
|
|
|
|
[r,c] = size(DatiPressureLink);
|
|
Ncorr = 0;
|
|
% Elimino gli eventuali Not a Number
|
|
for a = 2:r
|
|
for b = 2:c
|
|
check = isnan(DatiPressureLink(a,b));
|
|
if check == 1
|
|
DatiPressureLink(a,b) = DatiPressureLink(a-1,b);
|
|
ErrPressureLink(a,b-1) = 1;
|
|
Ncorr = Ncorr+1;
|
|
end
|
|
end
|
|
end
|
|
|
|
text = ['' num2str(Ncorr) ' NaN of Pressure Link corrected by defDatiPL function'];
|
|
fprintf(fileID,fmt,text);
|
|
|
|
TimePL = DatiPressureLink(:,1); % data
|
|
Pressure = DatiPressureLink(:,2:end);
|
|
|
|
Num_Dati = Ndatidespike; % numero di dati per il despike
|
|
if Num_Dati > r
|
|
Num_Dati = r;
|
|
end
|
|
for i = 1:rPrL
|
|
% despiking
|
|
Pressure(1:end-1,i) = filloutliers(Pressure(1:end-1,i),'linear','movmedian',Num_Dati);
|
|
end
|
|
|
|
text = 'Data of Pressure Link defined correctly. defDatiPL function closed';
|
|
fprintf(fileID,fmt,text);
|
|
fclose(fileID);
|
|
end |