апроксимация экспериментальных данных

Форум для обсуждения вопросов математики

Модератор: Admin

Askold
Сообщения: 11
Зарегистрирован: Вс фев 28, 2010 1:05 pm

апроксимация экспериментальных данных

Сообщение Askold » Чт апр 05, 2012 4:20 pm

Здравствуйте!

Не поможете с одной проблемой? Есть набор экспериментальных данных и есть трансцендентное уравнение, при помощи которого предполагается получить зависимость апроксимирующую данные эксперимента.

Проблема в том, что явной функции нет, а необходимо апроксимировать используя метод наименьших квадратов.

Можно ли это сделать в Mathematica?

Korobov V I
Сообщения: 1609
Зарегистрирован: Вт янв 21, 2003 5:12 pm

Re: апроксимация экспериментальных данных

Сообщение Korobov V I » Чт апр 05, 2012 5:17 pm

Askold писал(а):Здравствуйте!

Не поможете с одной проблемой? Есть набор экспериментальных данных и есть трансцендентное уравнение, при помощи которого предполагается получить зависимость апроксимирующую данные эксперимента.

Проблема в том, что явной функции нет, а необходимо апроксимировать используя метод наименьших квадратов.

Можно ли это сделать в Mathematica?

С Mathematica не работал, а в Mathcad, думаю, что это вполне возможно.

Markiyan Hirnyk
Сообщения: 1366
Зарегистрирован: Вс дек 04, 2011 11:07 pm

Ответ с Maple

Сообщение Markiyan Hirnyk » Чт апр 05, 2012 5:38 pm

Как Вам Этот пример?
restart; L := [[.241, 0.2e-2], [.241, 0.3e-2], [.242, 0.], [.243, 0.5e-2], [.246, -0.3e-2], [.246, 0.6e-2], [.247, 0.6e-2], [.248, -0.4e-2], [.248, 0.6e-2], [.25, -0.5e-2], [.252, -0.6e-2], [.253, 0.6e-2], [.254, 0.6e-2], [.255, 0.6e-2], [.261, -0.9e-2], [.261, 0.5e-2], [.265, -0.1e-1], [.266, 0.4e-2], [.269, 0.3e-2], [.271, -0.11e-1], [.272, -0.11e-1], [.272, 0.2e-2], [.278, -0.11e-1], [.279, -0.11e-1], [.28, -0.11e-1], [.28, -0.2e-2], [.283, -0.1e-1], [.284, -0.9e-2], [.284, -0.6e-2]]:
P1 := plot(L, style = point, color = black):
K := Statistics:-Fit(a*(x-x0)^2-b*(x-x0)*(y-y0)+c*(y-y0)^2-1, Matrix(L), Vector(nops(L)), [x, y], initialvalues = [a = 0, b = 0, c = 0, x0 = .26, y0 = 0]);

3163.59634684427102*(x-.262991041730829267)^2+(9227.98709575456269*(x-.262991041730829267))*(y+0.246191128098791284e-2)+19957.6913974776434*(y+0.246191128098791284e-2)^2-1
ellK := plots:-implicitplot(K, x = .24 .. .3, y = -0.2e-1 .. 0.2e-1):
plots:-display(P1, ellK);

Изображение