LINUX.ORG.RU

История изменений

Исправление dikiy, (текущая версия) :

там нечего изобретать. Все что тебе надо - решенить систему уравнений.

допустим будешь приближать полиномами n степени:

дано k точек в виде вектора x и вектора y, и пусть k>n.

берем матрицу A_{ij}=(x_i)^j, i=1..k, j=0..n

имеем систему Ac=y, где c - вектор коэффициентов полинома.

Очевидно, что она в общем случае не имеет решений. Но имеет наилучшее квадратическое приближение, которое можно посчитать решив уравнение

A^t*A*c=A^t*y, где A^t - транспонированная матрица.

все. Вместо полиновом можешь взять любые линейные комбинации других функций.

Исходная версия dikiy, :

там нечего изобретать. Все что тебе надо - решенить систему уравнений.

допустим будешь приближать полиномами n степени:

дано k точек в виде вектора x и вектора y, и пусть k>n.

берем матрицу A_{ij}=(x_i)^j, i=1..k, j=0..n

имеем систему Ac=y, где c - вектор коэффициентов полинома.

Очевидно, что она в общем случае не имеет решений. Но имеет наилучшее квадратическое приближение, которое можно посчитать решив уравнение

A^t*A*c=y, где A^t - транспонированная матрица.

все. Вместо полиновом можешь взять любые линейные комбинации других функций.