2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




На страницу Пред.  1, 2
 
 Re: Поиск аппроксимирующей функции
Сообщение22.08.2019, 21:06 
Adventor в сообщении #1411663 писал(а):
Если вариантов нет, то придется интерполировать.
Так аппроксимация с последующим получением промежуточных точек - это и есть интерполяция. Вариантов аппроксимации как раз больше, чем вам хочется. Разложение по какой-нибудь системе ортогональных функций может быть хорошим вариантом для вас. Отразите симметрично (чтобы не было разрывов) и разложите в ряд Фурье, например, оставив только начальные члены ряда с косинусами. Или попробуйте полиномы Лежандра. В любом случае, вам потребуется какой-нибудь критерий качества аппроксимации, например, сумма квадратов отклонений точек, возможно, взвешенная, чтобы лучше разрешить центральную область и не рассматривать поведение в окрестности нуля.

 
 
 
 Re: Поиск аппроксимирующей функции
Сообщение22.08.2019, 21:08 
arseniiv в сообщении #1411673 писал(а):
Ну тогда теми же сплайнами. Если брать мало кусков и малые степени, будет мало параметров.

Хорошо, возьму это за точку отсчета.

 
 
 
 Re: Поиск аппроксимирующей функции
Сообщение22.08.2019, 21:42 
Аватара пользователя
Либо кусочным полиномом (сплайном).
Либо взвешенным сплайном(NURBS) c фиксированным числом точек.
Либо обратным взвешенным расстоянием(IDW).

Так как 2 и 3 функции не линейные, то стоит использовать нелинейную минимизацию что-бы найти коэффициенты.

 
 
 
 Re: Поиск аппроксимирующей функции
Сообщение22.08.2019, 22:02 
Аватара пользователя
Adventor в сообщении #1411621 писал(а):
нужно подобрать общий вид аппроксимирующей функции для всех наборов

Эту функцию можно считать центрально-симметричной исходя из физики?

 
 
 
 Re: Поиск аппроксимирующей функции
Сообщение22.08.2019, 22:37 
Adventor в сообщении #1411668 писал(а):
Подзадача описать распределение яркости по радиусу примерно такая же как вся эта задача.
Это верно, но пытаться подбирать аппроксимацию без учета того, как выглядит модель потемнения, более-менее бессмысленно.

 
 
 
 Re: Поиск аппроксимирующей функции
Сообщение22.08.2019, 22:38 
Александрович в сообщении #1411696 писал(а):
Эту функцию можно считать центрально-симметричной исходя из физики?

Я не совсем понимаю что имелось в виду под "центрально-симметричной", но наверно да

 
 
 
 Re: Поиск аппроксимирующей функции
Сообщение23.08.2019, 01:52 
Аватара пользователя
Adventor в сообщении #1411713 писал(а):
что имелось в виду под "центрально-симметричной"

Если вашу кривую повернуть на 180 градусов относительно точки $(1000; 0,5)$ она совпадёт с исходной.

 
 
 
 Re: Поиск аппроксимирующей функции
Сообщение23.08.2019, 02:32 
Александрович в сообщении #1411729 писал(а):
Если вашу кривую повернуть на 180 градусов относительно точки $(1000; 0,5)$ она совпадёт с исходной.
Нет, это неверно.

 
 
 
 Re: Поиск аппроксимирующей функции
Сообщение24.08.2019, 20:06 
Ув. физик!

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

 
 
 
 Re: Поиск аппроксимирующей функции
Сообщение24.08.2019, 20:43 
Аватара пользователя
mserg
В первом посте, после картинке, в офтотопике, лежит ссылка на гугл-диск с данными.

 
 
 
 Re: Поиск аппроксимирующей функции
Сообщение25.08.2019, 17:11 
Да, точно.

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

Сделав обобщение, получаем дифференциальное уравнение:
$y'=-k(y-l)^a(h-y)^b$
Коэффициент $k$ задает резкость спада, $l$ и $h$ - минимум и максимум функции соответственно, параметры $a$ и $b$ дают асимметрию. Как я понимаю, $a$ и $b$ должны быть не меньше 1. Видимо $a \approx 1$, а $b \approx 1.5$.

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

 
 
 
 Re: Поиск аппроксимирующей функции
Сообщение25.08.2019, 20:13 
Всем спасибо за ответы!

Как я понял, подобные задачи -- аппроксимация эмпирических данных в виде гладкой кривой -- решаются (когда не нужен физический закон) именно интерполяцией или аппроксимацией сплайнами, по крайней мере это частный способ.

Я использовал b-spline. Он использует только часть точек из набора данных.
Получилось не совсем гладко -- сплайн описывает погрешности в данных. Но это уже нюансы. Выбором типа сплайна и метода аппроксимации думаю можно добиться лучших результатов.

И насчет симметричности -- полная версия кривой такая:
Изображение

 
 
 
 Re: Поиск аппроксимирующей функции
Сообщение25.08.2019, 21:26 
Ниже приведена аппроксимация диффурами:

(Оффтоп)

Изображение
Изображение
Изображение

Немного задирает около нуля, но может быть исправлено с помощью дополнения критерия.

 
 
 
 Re: Поиск аппроксимирующей функции
Сообщение26.08.2019, 10:35 
Аватара пользователя
Пример аппроксимации кривой Безье из трех точек с ручной подгонкой.
Средняя точка должна лежать в точке перегиба. На глаз это сделать сложно.
Наверняка это не лучший результат, но автоматизировать подгонку я не умею. :(
Изображение

 
 
 [ Сообщений: 29 ]  На страницу Пред.  1, 2


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group