function [a,b]=MinSquare(X,Y)
% [a,b]=MinSquare(X,Y)
% Находит коэффициенты прямой, аппроксимирующей точки, методом наименьших
%     квадратов
% Аргументы : X - матрица абсцисс точек
%             Y - матрциа ординат точек (size(X)==size(Y))
% Результат : a,b - коэффициенты прямой y=ax+b

% задаем начальные значения
sx=0; sy=0; xy=0; xx=0;
% количество обработанных точек
count=0;
[m,n]=size(X);
% обработка точек
for i=1:n
    rX=isfinite(X);
    rY=isfinite(Y);
    if (rX(1,i)==1) && (rY(1,i)==1)
        sx=sx+X(1,i);
        sy=sy+Y(1,i);
        xy=xy+X(1,i)*Y(1,i);
        xx=xx+X(1,i)*X(1,i);
        count=count+1;
    end
end
% вычисление коэффициентов с использованием полученных значений
a=(xy*count-sy*sx)/(count*xx-sx*sx);
b=(sy-a*sx)/count;
%b=(sy*xx-xy*sx)/(count*xx-sx*sx);
%a=(sy-count*b)/sx;