|
4 / 4 / 3
Регистрация: 24.07.2015
Сообщений: 75
|
|||||||||||
Приближение полиномами Чебышева21.05.2016, 13:01. Показов 7674. Ответов 42
Метки нет (Все метки)
Нужно програмно реализовать приближения (интерполяцию) функции полинонами Чебышева. Т.е. у нас есть n-ое количество пар x,y, и нужно по заданному x получить приблизительный y.
Приближающая функция ищется в виде суммы многочленов Чебышева, формулы во вложениях. Пробовал реализовать, пока безуспешно:
Возможно, я не до конца понял этот метод. Ведь я так и не понял, для чего формула, которая вычисляет Xj. И не знаю, правильно ли я считаю полиномы. Заранее спасибо.
0
|
|||||||||||
| 21.05.2016, 13:01 | |
|
Ответы с готовыми решениями:
42
Аппроксимация полиномами Интерполяция полиномами Лагранжа |
|
4 / 4 / 3
Регистрация: 24.07.2015
Сообщений: 75
|
||||||
| 21.05.2016, 15:02 [ТС] | ||||||
|
Работает, но неправильно считает. Знающие люди, подскажите, пожалуйста, где ошибка.
0
|
||||||
|
1498 / 1213 / 821
Регистрация: 29.02.2016
Сообщений: 3,631
|
|
| 21.05.2016, 15:47 | |
|
Пример на c#
https://code.msdn.microsoft.co... d-b10563c8
1
|
|
|
4 / 4 / 3
Регистрация: 24.07.2015
Сообщений: 75
|
|
| 21.05.2016, 16:50 [ТС] | |
|
afront, Cпасибо, но в том коде сложно разобраться.
Как я понял, там интерполируется заданная функция. Но что значит массив коэффициентов (ChebyshevCalculateCoefficients) ? Как их использовать для нахождения значения функции при заданном Х?
0
|
|
|
1498 / 1213 / 821
Регистрация: 29.02.2016
Сообщений: 3,631
|
||||||
| 21.05.2016, 17:28 | ||||||
|
мне кажется там находятся коэффициенты разложения для заданной функции
вот в этом куске, из баттонт1_клик
0
|
||||||
|
4 / 4 / 3
Регистрация: 24.07.2015
Сообщений: 75
|
||||||
| 21.05.2016, 17:37 [ТС] | ||||||
|
afront, Ну вот, я о них и говорю. Это, значит, коэффициенты возле многочленов Чебышева в разложении?
Я подставил этот метод поиска коэффициентов в свою формулу. Считает по-другому, но все равно, неправильно.
0
|
||||||
|
1498 / 1213 / 821
Регистрация: 29.02.2016
Сообщений: 3,631
|
|
| 21.05.2016, 17:42 | |
|
а какую функцию вам нужно интерполировать вы не написали?
0
|
|
|
4 / 4 / 3
Регистрация: 24.07.2015
Сообщений: 75
|
|
| 21.05.2016, 17:50 [ТС] | |
|
afront, У меня нет функции. Есть просто дискретный набор пар точек: X и F(X). Их n штук.
0
|
|
|
1498 / 1213 / 821
Регистрация: 29.02.2016
Сообщений: 3,631
|
|
| 21.05.2016, 18:06 | |
|
хотите на fortrane рабочий код?
там есть и С и С++ http://people.sc.fsu.edu/~jbur... yshev.html Добавлено через 7 минут единственно там функция задается аналитически а не таблично может в этом дело, сделайте тест - задайте известную функцию аналитически и таблично и проверьте
1
|
|
|
4 / 4 / 3
Регистрация: 24.07.2015
Сообщений: 75
|
|
| 21.05.2016, 18:10 [ТС] | |
|
afront, спасибо еще раз.
Но и это не совсем то, что мне нужно. Интерполяция там происходит не по заданным точкам. Вместо этого, алгоритм использует "свои" узлы (нули полинома). К тому же мне придется очень долго изучать весь код этой библиотеки.
0
|
|
|
1498 / 1213 / 821
Регистрация: 29.02.2016
Сообщений: 3,631
|
|
| 21.05.2016, 18:12 | |
|
Milkho, код там элементарный, хотите переведу на c#? с известной функцией?
0
|
|
|
4 / 4 / 3
Регистрация: 24.07.2015
Сообщений: 75
|
|||
| 21.05.2016, 18:14 [ТС] | |||
Добавлено через 1 минуту
0
|
|||
|
1498 / 1213 / 821
Регистрация: 29.02.2016
Сообщений: 3,631
|
|
| 21.05.2016, 18:21 | |
|
потребуется время))
0
|
|
|
4 / 4 / 3
Регистрация: 24.07.2015
Сообщений: 75
|
|
| 21.05.2016, 18:26 [ТС] | |
|
afront, я подожду, спасибо огромное вам за помощь.
0
|
|
|
1498 / 1213 / 821
Регистрация: 29.02.2016
Сообщений: 3,631
|
||||||
| 21.05.2016, 19:55 | ||||||
|
вот что то получилось
это для функции заданной аналитически - cos(x)
1
|
||||||
|
4 / 4 / 3
Регистрация: 24.07.2015
Сообщений: 75
|
|
| 21.05.2016, 23:35 [ТС] | |
|
Спасибо. Сейчас буду разбираться.
Добавлено через 3 часа 3 минуты В общем, мне не удалось переделать код под интерполяцию по заданым точкам.
0
|
|
|
1498 / 1213 / 821
Регистрация: 29.02.2016
Сообщений: 3,631
|
|
| 22.05.2016, 08:40 | |
|
Мне кажется, что интерполяция Чебышева может проводиться исключительно по точкам, являющихся корнями полинома
Чебышева, см. стр . 21 (внизу) http://www.apmath.spbu.ru/ru/s... numet6.pdf Добавлено через 12 минут Для функции заданной таблично этот метод не подходит
0
|
|
|
4 / 4 / 3
Регистрация: 24.07.2015
Сообщений: 75
|
|
| 22.05.2016, 09:31 [ТС] | |
|
afront, да, интерполяционный полином должен быть разложен по n точкам - набору корней полинома n-го порядка.
Но где эти корни использовать и как по них строить интерполянт я не могу понять. https://youtu.be/KpCJutTQ4WE?t=1h6m10s
0
|
|
|
1498 / 1213 / 821
Регистрация: 29.02.2016
Сообщений: 3,631
|
|||||||||||||||||||||
| 22.05.2016, 09:47 | |||||||||||||||||||||
Добавлено через 4 минуты вам нужно сразу было написать чему должно быть равно N, А, В и что у вас за фунция
0
|
|||||||||||||||||||||
|
4 / 4 / 3
Регистрация: 24.07.2015
Сообщений: 75
|
|
| 22.05.2016, 09:58 [ТС] | |
|
Так ведь функции нет. Значения функции вводятся с клавиатуры А = X.Min(), B = X.Max(), N = X.Length;
Добавлено через 6 минут У меня есть, допустим, два массива - один со значениями x, другой со значениями y. Стоит задача: пользователь вводит с клавиатуры какое-то значение х, программа должна вывести приблизительный y.
0
|
|
| 22.05.2016, 09:58 | |
|
Помогаю со студенческими работами здесь
20
Интерполяция тригонометрическими полиномами Интерполяция полиномами Лагранжа Операции над полиномами Интерполяция полиномами Лагранжа Кривая Безье с полиномами Берштейна Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
|
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога
Финальные проекты на Си и на C++:
hello-sdl3-c. zip
hello-sdl3-cpp. zip
Результат:
|
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога
MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
|
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд.
Даже если у вас. . .
|
|
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает
монорепозиторий в котором находятся все исходники.
При создании нового решения, мы просто добавляем нужные проекты
и имеем. . .
|
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение:
В этой книге («Подход, основанный на вариантах использования») Ивар утверждает,
что архитектура программного обеспечения — это
структуры,. . .
|
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога
Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
|
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip
На первой гифке отладочные линии отключены, а на второй включены:. . .
|