mnkpoly

Функция вычисления аппроксимирующего полинома таблично-заданной функции, с заданным среднеквадратичным отклонением для каждой точки.

Синтаксис:

P = mnkpoly(X, Y, S, n);

Аргументы:

X – входной массив координат х для таблично-заданной функции Y(X),

Y – входной массив координат y для таблично-заданной функции Y(X),

S – входной массив среднеквадратичных отклонений для каждой координаты таблично-заданной функции Y(X),

n – степень апроксимирующего полинома, целое число.

Описание:

mnkpoly(A, B) – функция возвращает массив коэффициентов полинома степени n, полученного в результате аппроксимации таблично-заданной функции Y(X), с заданным среднеквадратичным отклонением S для каждой точки. Вычисление производится при помощи сингулярного матричного преобразования (SVD). Если значения среднеквадратического отклонения не известны, их можно задавать равными единице.

Входные массивы X, Y, S могут задаваться:

  • как переменные типа массив, определенные ранее:

P = mnkpoly (X, Y, S, n);

  • как массивы, состоящие из переменных, определенных ранее:

P = mnkpoly ([x1,x2,x3,x4],[x1,x2,x3,x4], [s1,s2,s3,s4], n);

  • как постоянные массивы:

P = mnkpoly ([0, 1, 6, 9],[-1, 5, 0, 4], [0.1, 0.5, 0.7, 0.4], 2);

Результат:

P – выходной массив, содержащий коэффициенты полинома, полученного в результате аппроксимации таблично-заданной функции:

p(t) = p0+p1t+p2t2+…+pntn

Выходной массив имеет размерность n+1.

Пример:

initialization
X = [0, 1 , 6, 9];
Y = [-1, 5, 0, 4];
S = [0.1, 0.5 0.7 0.4];
P = mnkpoly(X,Y,S,2);
end;
Z = polyval(P, X);

В результате элементам массива P будут присвоены значения [-0.86580269 , 1.4435988 , -0.10695525], являющиеся коэффициентами полинома 2-й степени

p(t) = -0.86580269+1.4435988 t+0.10695525t2,

полученного в результате аппроксимации, элементам массива Z будут присвоены значения [-0.86580269 , 0.47084084 , 3.9454009 , 3.4632108], являющиеся значениями вычисленного полинома p(t) от аргументов, заданных массивом X.