% Questa routine calcola le medie (giornaliere o per intervalli definiti)
% necessarie per le elaborazioni successive per gli Analog Link
% DatiAnalogLink contiene le medie per l'intervallo definito 
% ARRAYdate contiene le date e il tempo per ogni dato (per media
% giornaliera, la data di quel giorno)

function [ARRAYdate_AL,DatiAnalog] = MediaDati_AL(DatiAnalog,TimeAL,NdatiMedia,FileName)

fileID = fopen(FileName,'a');
fmt = '%s \r';
text = 'MediaDati_AL function started';
fprintf(fileID,fmt,text);

[r,~]=size(DatiAnalog);
if NdatiMedia > r
    NdatiMedia = r;
end

%% Dati
DatiAnalog = smoothdata(DatiAnalog,'gaussian',NdatiMedia);

%% Matrice date
ARRAYdate_AL = TimeAL;

text = 'Average values for Analog Link processed. MediaDati_AL function closed';
fprintf(fileID,fmt,text);
fclose(fileID);
end