function [Cm,Tm,gaps]=one_minute_mean_conv(t1,t2,t,c,W);
% Вычисление средневзвешенного минутного значения
%
% Вызов:    [c_mean, t_mean,[gaps]]=one_minute_mean_conv(t1,t2,t,c,W)
%
% t1,t2  - начальное и конечное значения интервала для вычислений (в сек)
%      t - моменты измерения (в сек)
%      c - измеренные значения
%      W - веса для усреднения
%
% c_mean - средневзвешенное значение (=Inf или NaN, если пропущено
%          больше половины данных)
% t_mean - минуты, для которых сделаны вычисления
%   gaps - количество пропусков

T=(t1:t2)';    % равномерный ряд от t1 до t2 в сек.
N0=length(T); NW=length(W)-1;
% генерируем ряд данных с NaN в пропущенных точках
C=zeros(N0,1); C(C==0)=NaN;
[K,k]=ismember_digit(T,t,8);
C(K)=c(k);

% вычисляем свертку для каждого момента T и полном объеме данных
% и отбрасываем лишние на концах
Cc=conv(C,W); Cc=Cc(NW/2+1:length(Cc)-NW/2);

% выбираем минутные значения и для
%kk=rem(T,60)==0 & T>=0;
kk=rem(T,60)==0;
Tm=T(kk); Cm=Cc(kk);

% вычислям средние для неполных данных в ширине W
K=find(isnan(Cm));
gaps=zeros(length(Tm),1);

if length(K)>0,
    for l=1:length(K),
        T0=Tm(K(l));
        tt1=T0-45.5; tt2=T0+45.5;
        k=between(t,tt1,tt2,'11');
        [Cm(K(l)),gaps(K(l))]=one_minute_mean(Tm(K(l))/60,t(k)/60,c(k),W);
    end
end
