2014 dxdy logo

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

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




Начать новую тему Ответить на тему На страницу Пред.  1, 2
 
 Re: Поиск аппроксимирующей функции
Сообщение22.08.2019, 21:06 


27/08/16
9426
Adventor в сообщении #1411663 писал(а):
Если вариантов нет, то придется интерполировать.
Так аппроксимация с последующим получением промежуточных точек - это и есть интерполяция. Вариантов аппроксимации как раз больше, чем вам хочется. Разложение по какой-нибудь системе ортогональных функций может быть хорошим вариантом для вас. Отразите симметрично (чтобы не было разрывов) и разложите в ряд Фурье, например, оставив только начальные члены ряда с косинусами. Или попробуйте полиномы Лежандра. В любом случае, вам потребуется какой-нибудь критерий качества аппроксимации, например, сумма квадратов отклонений точек, возможно, взвешенная, чтобы лучше разрешить центральную область и не рассматривать поведение в окрестности нуля.

 Профиль  
                  
 
 Re: Поиск аппроксимирующей функции
Сообщение22.08.2019, 21:08 


10/05/09
78
arseniiv в сообщении #1411673 писал(а):
Ну тогда теми же сплайнами. Если брать мало кусков и малые степени, будет мало параметров.

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

 Профиль  
                  
 
 Re: Поиск аппроксимирующей функции
Сообщение22.08.2019, 21:42 
Аватара пользователя


31/10/08
1244
Либо кусочным полиномом (сплайном).
Либо взвешенным сплайном(NURBS) c фиксированным числом точек.
Либо обратным взвешенным расстоянием(IDW).

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

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


21/01/09
3923
Дивногорск
Adventor в сообщении #1411621 писал(а):
нужно подобрать общий вид аппроксимирующей функции для всех наборов

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

 Профиль  
                  
 
 Re: Поиск аппроксимирующей функции
Сообщение22.08.2019, 22:37 
Заслуженный участник


09/05/12
25179
Adventor в сообщении #1411668 писал(а):
Подзадача описать распределение яркости по радиусу примерно такая же как вся эта задача.
Это верно, но пытаться подбирать аппроксимацию без учета того, как выглядит модель потемнения, более-менее бессмысленно.

 Профиль  
                  
 
 Re: Поиск аппроксимирующей функции
Сообщение22.08.2019, 22:38 


10/05/09
78
Александрович в сообщении #1411696 писал(а):
Эту функцию можно считать центрально-симметричной исходя из физики?

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

 Профиль  
                  
 
 Re: Поиск аппроксимирующей функции
Сообщение23.08.2019, 01:52 
Аватара пользователя


21/01/09
3923
Дивногорск
Adventor в сообщении #1411713 писал(а):
что имелось в виду под "центрально-симметричной"

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

 Профиль  
                  
 
 Re: Поиск аппроксимирующей функции
Сообщение23.08.2019, 02:32 
Заслуженный участник


09/05/12
25179
Александрович в сообщении #1411729 писал(а):
Если вашу кривую повернуть на 180 градусов относительно точки $(1000; 0,5)$ она совпадёт с исходной.
Нет, это неверно.

 Профиль  
                  
 
 Re: Поиск аппроксимирующей функции
Сообщение24.08.2019, 20:06 


17/10/08

1313
Ув. физик!

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

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


31/10/08
1244
mserg
В первом посте, после картинке, в офтотопике, лежит ссылка на гугл-диск с данными.

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


17/10/08

1313
Да, точно.

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

Сделав обобщение, получаем дифференциальное уравнение:
$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 


10/05/09
78
Всем спасибо за ответы!

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

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

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

 Профиль  
                  
 
 Re: Поиск аппроксимирующей функции
Сообщение25.08.2019, 21:26 


17/10/08

1313
Ниже приведена аппроксимация диффурами:

(Оффтоп)

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

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

 Профиль  
                  
 
 Re: Поиск аппроксимирующей функции
Сообщение26.08.2019, 10:35 
Аватара пользователя


07/03/16

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

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 29 ]  На страницу Пред.  1, 2

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group