POV (20.04.2013 10:47 - 10:51, просмотров: 102) ответил POV на А чем сложно? Обращать матрицу 3х3 не сложно. Все остальные операции тривиальны и не заслуживают никаких опасений. Памяти хоть сколько имеется и какой размер векторов данных?
Впрочем есть проще вариант, если парабола имеет лишь два параметра, т.е. уравнение вида y=k*x^2+b... вот у себя в исходниках нашёл (аппроксимация по МНК сразу параболой безо всяких рядов)
float K, B;
int D;
int i = ind;
D = ind+stepF/2;
float a11 = 0, a12 = 0, n1 = 0,
a21 = 0, a22 = 0, n2 = 0;
for (int k = 0; k < stepF; k++)
{
a11 += pow(k-stepF/2, 4);
a12 += pow(k-stepF/2, 2);
n1 += F[i+k]*pow(k-stepF/2, 2);
a21 += pow(k-stepF/2, 2);
a22 += 1;
n2 += F[i+k];
}
B = (n2-n1*a21/a11) / (a22-a12*a21/a11);
K = (n1-B*a21) / a11;
stepF - ширина аппроксимируемого участка исходных данных большого объема
ind - положение вершины в исходном массиве
Расчет параметров aij и nj написан так, словно сетка равномерная, но несложно это трансформируется