function [z,f,t]=svan_all(x,Nfft,Step,Tau,Tip);
% Вычисление временных вариаций амплитудного спектра
%
% [z,f,t]=svan_all(x,Nfft,Step,Tau,Tip);
%
%     x - исходный вектор;
%  Nfft - длина подвыборки дл? FFT (в точках);
%  Step - шаг (в точках) между последовательными оценками спектра;
%   Tau - интервал дискретизации;
%   Tip - признак дополнительных преобразований подвыборки перед FFT:
%           0 - без преобразовани? (по умолчанию);
%           1 - вычитаетс? среднее по Nfft точкам;
%           2 - вычитаетс? линейный тренд по Nfft точкам;
%
%     z - матрица размера (length(t),length(f));
%     f - вектор частот (по Tau);
%     t - вектор моментов времени, дл? которых делаетс? оценка z;

if nargin<5,
   Tip=0;
end

Nall=length(x);
[s,f]=a_spectr(x(1:Nfft),Tau);
z=zeros(1,length(s));
count=1;
for k=1:Step:Nall-Nfft+1,
    i1=k;
    i2=i1+Nfft-1;
    if Tip==0,
       s=a_spectr(x(i1:i2),Tau,0);
    elseif Tip==1,
       s=a_spectr(x(i1:i2)-mean(x(i1:i2)),Tau,0);
    else
       s=a_spectr(detrend(x(i1:i2)),Tau,0);
    end
    z(count,:)=s';
    count=count+1;
end
[m,n]=size(z);
t=(0:m-1)'*(Step*Tau);
