function y=miss_l(x,y,miss);
%Заполнение пропусков во временном р?де Y=Y(X), заданном на равномерной
%сетке, линейно интерполированными значени?ми между двум? точками,
%сто?щими вокруг областей пропусков. Перва? и последн?? точки р?да Y(X)
%не должны быть пропусками.
%
%Вызов:     y=miss_l(x,y,miss);
%
%       x - вектор абсцисс (не измен?етс? на выходе);
%       y - вектор ординат (на выходе пропуски заменены
%           интерполированными значени?ми;
%    miss - число-признак пропуска (т.е. при пропуске y=miss);
%

if nargin<3
   error ('!!!  Не все аргументы заданы  !!!')
end

k=find(y~=miss);
kd=[1;diff(k)];
kk=kd~=1;
i1=k(kk)-kd(kk); i2=k(kk);
for l=1:sum(kk),
   xx=[x(i1(l));x(i2(l))];
   yy=[y(i1(l));y(i2(l))];
   V=polyfit(xx,yy,1);
   y(i1(l)+1:i2(l)-1)=polyval(V,x(i1(l)+1:i2(l)-1));
end
