function [ dist ] = GeoDistance ( Dii, entQt, diaI, diaF )
%
% Funcao que calcula a matriz das distancias 'dist', para um certo
% intervalo de tempo. Retorna a matriz quadrada das distancias.
%
% Dii    -> Matriz contendo os dados:
%             Linhas: dias (tempos)
%             Colunas: companhias
% entQt  -> Numero de empresas
% diaI   -> Primeira data
% diaF   -> Ultima data
%

%global padrao;
ndiv = entQt * (entQt - 1);

ret = Dii (diaI:diaF, 1:entQt);       %disp([diaI diaF]);
dist = zeros (entQt);
di = size (ret,1);
umdi = ones (di,1);
a1 = mean (ret);                      %padrao=std(sum(ret'));    %' 
a2 = mean (ret.^2); 
nor = sqrt (di * (a2 - a1.^2)); 
nor = 1 - sign (nor) + nor; 
norm = diag (1./nor);   
ret = ret - umdi * a1;
ret = ret * norm; 
for k1=1:entQt-1
    for k2=k1+1:entQt
        dist(k1,k2) = sqrt (sum((ret(:, k1) - ret(:,k2)).^2));
        dist(k2,k1) = dist(k1,k2); 
    end;
end;                                  %disp(sum(abs(Dii(ini:fim,:))'));

end




