function [sigA2,tau]=avar(Y,tau0,k0)
%
% Calcule la variance d'Allan
%
% [sigA2,tau]=avar(Y,tau0,k0)
%
% Entrées: 
%   Y    : le signal à analyser un vecteur à pas de temps constants
%   tau0 : le pas de temps
%   k0   : un vecteur des nombres de pas de temps où calculer
%          la variance d'Allan
% 
% Sorties:
%  sigA2 : un vecteur de variances d'Allan aux échelles de temps demandées
%  tau   : un vecteur des échelles de temps où l'on a calculé
%
N=length(Y);
for j=1:length(k0)
    k=k0(j);
    tau(j)=k*tau0;
    Xbar=zeros(1,N-k+1);
    for i=1:N-k+1
        Yi=Y(i:i+k-1);
        Xbar(i)=mean(Yi);
    end
    Xbart=Xbar(k+1:N-k+1);
    Xbart_k=Xbar(1:N-2*k+1);
    sigA2(j)=sum((Xbart-Xbart_k).^2)/(2*length(Xbart));
    end
end
