Я пытаюсь исправить сетку с известными узлами (u,v) и наблюдаемыми координатами (x,y) с сигмой для каждой точки, используя Python.
Модель: x,y = f(u,v):
а также остатки, сигма0 и ковариационные матрицы.
Я колебался и пробовал между scipy.optimize.leastsq и Curve_fit. Но, возможно, эта задача наименьших квадратов является линейной, поэтому другие функции были бы более подходящими.
Я пытаюсь исправить сетку с известными узлами (u,v) и наблюдаемыми координатами (x,y) с сигмой для каждой точки, используя Python. Модель: x,y = f(u,v): [code] x = xl + u*c*cos(a) - v*c*sin(a) y = yl + u*c*sin(a) + v*c*cos(a) [/code] Я хочу оценить xl, yl, c и a, используя метод наименьших квадратов Python. Наблюдения (u,v), (x, y, сигма): [code](100,200) (-79055.6, -108720.7, 1.0) (100,220) (-81032.2, -122577.8, 2.7) (100,240) (-83007.5, -136440.7, 0.5) (100,260) (-84980.8, -150304.5, 4.9) (100,280) (-86964.5, -164160.7, 7.2) (150,200) (-113710.4, -103788.9, 8.6) (150,220) (-115682.6, -117643.3, 4.5) (150,240) (-117657.9, -131497.5, 3.7) (150,260) (-119632.2, -145362.1, 2.6) (150,280) (-121610.9, -159218.0, 3.5) [/code] Цель — найти: [code](xl,yl)=(10000.0, 20000.0), c=700.00, a=3.000 [/code] а также остатки, сигма0 и ковариационные матрицы. Я колебался и пробовал между scipy.optimize.leastsq и Curve_fit. Но, возможно, эта задача наименьших квадратов является линейной, поэтому другие функции были бы более подходящими.