53 lines
1.6 KiB
Matlab
Executable File
53 lines
1.6 KiB
Matlab
Executable File
% Questa routine calcola le medie (giornaliere o per intervalli definiti)
|
|
% necessarie per le elaborazioni successive per i Tunnel Link
|
|
% ACCdef contiene le medie per l'intervallo definito delle accelerazioni
|
|
% ARRAYdate contiene le date e il tempo per ogni dato (per media
|
|
% giornaliera, la data di quel giorno)
|
|
|
|
function [ARRAYdate_TuL,accTuL,ACCdefRis_TuL,TempDef_TuL,ay_TuL,ay_TuL_AC] = ...
|
|
MediaDati_TuL(accTuL,TimeTuL,ris_acc_TuL,ay_TuL,ay_TuL_AC,NdatiMedia,...
|
|
T_TuL,NuovoZeroTuL,FileName)
|
|
|
|
fileID = fopen(FileName,'a');
|
|
fmt = '%s \r';
|
|
text = 'MediaDati_TuL function started';
|
|
fprintf(fileID,fmt,text);
|
|
|
|
%% Accelerazione
|
|
[r,~]=size(accTuL);
|
|
if NdatiMedia > r
|
|
NdatiMedia = r;
|
|
end
|
|
accTuL = smoothdata(accTuL,'gaussian',NdatiMedia);
|
|
|
|
%% Matrice date
|
|
ARRAYdate_TuL = TimeTuL;
|
|
|
|
%% Risultante acc
|
|
ACCdefRis_TuL = ris_acc_TuL; % Non faccio la media, mi serve il dato come è per applicare i filtri
|
|
|
|
%% Temperatura
|
|
TempDef_TuL = T_TuL; % Non faccio la media, mi serve il dato come è per applicare i filtri
|
|
|
|
%% Dati di riferimento ay
|
|
if NuovoZeroTuL == 1
|
|
[r,~] = size(ay_TuL);
|
|
if r > NdatiMedia
|
|
ay_TuL = smoothdata(ay_TuL,'gaussian',NdatiMedia);
|
|
else
|
|
ay_TuL = smoothdata(ay_TuL,'gaussian',r);
|
|
end
|
|
|
|
%% Dati di riferimento ay Arco rovescio
|
|
[r,~] = size(ay_TuL_AC);
|
|
if r > NdatiMedia
|
|
ay_TuL_AC = smoothdata(ay_TuL_AC,'gaussian',NdatiMedia);
|
|
else
|
|
ay_TuL_AC = smoothdata(ay_TuL_AC,'gaussian',r);
|
|
end
|
|
end
|
|
|
|
text = 'Average values for Tunnel Link have been processed';
|
|
fprintf(fileID,fmt,text);
|
|
fclose(fileID);
|
|
end |