|
1 / 1 / 0
Регистрация: 30.10.2009
Сообщений: 27
|
|
Нахождение формулы аппроксимации01.05.2012, 19:52. Показов 3699. Ответов 11
Метки нет (Все метки)
Здравствуйте, использовал в своем проекте по примеру с данного сайта код для нахождения аппроксимации МНК, в алгоритме разобрался, всё поподставлял, всё работает, только одна проблема, не могу понять как сделать так, чтобы программа сама находила формулу типа
F(x) = a0 + ax + a2x2 + ... + akxk, где k<N Если бы условие ограничивалось бы десятью вариациями, я бы всё в оператор switch загнал бы, а по условии этих "ak" может быть тысячи. Значения "ak" и "x" известны
0
|
|
| 01.05.2012, 19:52 | |
|
Ответы с готовыми решениями:
11
Эмпирической формулы для аппроксимации экспериментальных данных. Нахождение функции двух переменных методом аппроксимации [Tutorial] формулы для нахождение значения определенного интеграла |
|
|
||
| 02.05.2012, 11:25 | ||
|
На указанной вами страничке есть ответ - текстовый файл с таблицей значений хi уi. Там, конечно, вычисляются коэффициенты полинома по известным значениям функций и переменных, но раз уж
0
|
||
|
Модератор
3409 / 2184 / 354
Регистрация: 13.01.2012
Сообщений: 8,462
|
||||||
| 02.05.2012, 13:21 | ||||||
|
зачем switch? так не подходит
0
|
||||||
|
1 / 1 / 0
Регистрация: 30.10.2009
Сообщений: 27
|
|||||||||||
| 02.05.2012, 16:12 [ТС] | |||||||||||
|
vxg, Что-то не получается по вашему методу. Я нашел на хабре тему, где готовое решение на С# только, подставил в С++, но всё равно какая-то каша получается. В той программе, что на хабре, мы можем получить только одну функцию F(x), а мне надо чтобы сразу все находило, ибо в программе это всё вырисовывается еще в график.
Вот тот участок кода, что на C#
На вход подаю такие значения: x0=1, x1=2, x2=3; y0=1,5, y1=2,5, y2=3,5 На выходе должен получить те же самые значения, что и у игрека, но получаю "0,5, 2,5, 2,5" Добавлено через 16 минут Все данные берутся из StringGrid'a. Выходные значения для проверки записываю в ListBox и вывожу на график соответственно.
0
|
|||||||||||
|
Модератор
3409 / 2184 / 354
Регистрация: 13.01.2012
Сообщений: 8,462
|
||||||
| 02.05.2012, 16:49 | ||||||
|
что то вы не то говорите...
вот, проверяем
F(8)=1+2*8+3*8*8=209 о каких других "всех" значениях речь? вычислите значения по приведенному алгоритму для любого количества иксов... Добавлено через 5 минут ...если вас тревожит незначительные (или очень значительные если формула была выбрана неудачно) отличия получаемых от полинома значений от оригинальных точек, то дело в точности сглаживания, если нужно точное соответствие нужно делать интерполяцию, но это зависит от вашей задачи
0
|
||||||
|
1 / 1 / 0
Регистрация: 30.10.2009
Сообщений: 27
|
|
| 02.05.2012, 17:27 [ТС] | |
|
vxg, может я просто чего-то недопонимаю, математика тяжело даётся. Но данный метод для единичного вывода f(x)? В вашем случае f(8), а мне требуется вывести все f(x) по кол-ву узлов, т.е. если n=3, значит я должен иметь значения f(1), f(2), f(3)
Добавлено через 2 минуты Если значение x является статическим и надо найти только одну функцию от икса, тогда ваш способ работает. Я ж говорю, мне еще график по аппроксимирующей функции надо построить просто.
0
|
|
|
|
||||||
| 02.05.2012, 17:39 | ||||||
0
|
||||||
|
1 / 1 / 0
Регистрация: 30.10.2009
Сообщений: 27
|
|||||||||||
| 02.05.2012, 19:16 [ТС] | |||||||||||
|
BRcr, спасибо, но что-то результаты выдаёт не те или я не там их вывожу..
Может я некорректно излагаю свою задумку. Вобщем мне надо, чтобы вот это было на автомате:
0
|
|||||||||||
|
|
||||||
| 02.05.2012, 23:47 | ||||||
|
Все возможно. Сразу надо было точно просьбу формулировать, а не топтаться вокруг
![]()
Не по теме: Только не злоупотребляйте этим своим "кажется такое вообще невозможно реализовать..", тут, конечно, все любят в спортивных целях подлавливать друг-друга на возможных невозможностях, но все же, все же...:D Вот вывод кода:
1
|
||||||
|
Модератор
3409 / 2184 / 354
Регистрация: 13.01.2012
Сообщений: 8,462
|
||
| 03.05.2012, 12:37 | ||
|
если вам нужно получить значение функции для нескольких точек просто оформите ее как процедуру и вызывайте с теми иксами которые вам нужны - количество коэффициентов в формуле от подаваемого в функцию икса не зависит. мне все же кажется, что вы на самом деле толкуете про что то похожее на реализацию нахождения коэффициентов полинома...
0
|
||
|
1 / 1 / 0
Регистрация: 30.10.2009
Сообщений: 27
|
|
| 03.05.2012, 16:05 [ТС] | |
|
BRcr, спасибо большое.
vxg, коэффициенты аппроксимации находились с помощью МНК, это с помощью того сайта реализовал, всё получилось, теперь передо мной стала задача выводить на график аппроксимирующие функции от всех заданных иксов, как это сделать было, я не понимал. Честно вам сказать, сколько я не провел дней за чтением числовых методов, я всё равно ничего не понял про аппроксимацию.
0
|
|
|
Модератор
3409 / 2184 / 354
Регистрация: 13.01.2012
Сообщений: 8,462
|
|
| 03.05.2012, 16:40 | |
|
аппроксимация от всех заданных иксов если я понимаю правильно русский язык это нахождение приближенного значения по аппроксимирующей формуле для заданных иксов. вид формулы (количество членов полинома) при этом не меняется. сама суть МНК в следующем - мы подбираем коэффициенты аппроксимирующей формулы таким образом что бы целевая функция (т.е. функция по которой мы будем оценивать хорошо или плохо наша формула описывает исходные данные, функция дающая нам некую оценку ошибки приближенных вычислений по нашей формуле в зависимости от подбираемых коэффициентов) имела минимальное значение (т.е. описывала максимально хорошо, с наименьшей ошибкой). в МНК в качестве целевой функции берут корень из суммы квадратов отклонений вычисленных по аппроксимирующей формуле и исходных значений деленный на количество исходных значений (т.е. пытаются вычислить на сколько в среднем будет отличаться вычисленные по аппроксимирующей формуле и исходные значения, для этого мы уходим от знака разницы через возведение в квадрат, усредняем и извлекаем корень возвращаясь к линейной шкале). все это засовываются в матаппарат при помощи которого получается и решается система уравнений дающая нам эти самые оптимальные в данном конкретном случае (т.е. для тех данных которые мы ввели и для того вида формулы которую мы выбрали) коэффициенты.
0
|
|
| 03.05.2012, 16:40 | |
|
Помогаю со студенческими работами здесь
12
Проверить истинность формулы логики предикатов. Формулы логики предикатов. Область истинности формулы Как подставить значение в формулу, из решенной формулы после предыдущей формулы. задачи на множество. вид формулы алгебры логики и упрощение формулы При изменении формулы в ячейке скопировать формулы в ячейки ниже Задача на использование Формулы полной вероятности и формулы Байеса Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2.
Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
|
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
|
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
|
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2.
Данный документ берёт данные из другого нетипового документа. . .
|
|
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
|
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача: реализовать программный контроль на предмет проведения документа. . .
|
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача:
1. Реализовать контроль заполнения реквизита. . .
|
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение:
DISM / Online / Add-Capability / CapabilityName:WMIC~~~~
Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
|