Форум программистов, компьютерный форум, киберфорум
MS Office Excel
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/189: Рейтинг темы: голосов - 189, средняя оценка - 4.73
62 / 26 / 0
Регистрация: 05.06.2012
Сообщений: 121
1

Интерполяционный многочлен Лагранжа

07.06.2012, 23:22. Показов 39123. Ответов 13
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Как рассчитать коэффициенты?
Вложения
Тип файла: xls Аппроксимирующий полином.xls (57.5 Кб, 1119 просмотров)
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
07.06.2012, 23:22
Ответы с готовыми решениями:

интерполяционный многочлен Лагранжа.
Доброго времени суток.Помогите пожалуйста решить вот это)) Найти приближенное значение функции при...

Интерполяционный многочлен Лагранжа
Доброго времени суток. Не могу решить этот чертов хороший многочлен, весь день почти убил. Вот...

Интерполяционный многочлен Лагранжа
Доброго времени суток! Помогите пожалуйста составить программу, из-за курсовой совершенно ничего не...

Интерполяционный многочлен Лагранжа
1. Во всех вариантах требуется аппроксимировать заданную исходную функцию f(x) многочленом Лагранжа...

13
призрак
3262 / 890 / 119
Регистрация: 11.05.2012
Сообщений: 1,702
Записей в блоге: 2
08.06.2012, 06:13 2
http://www.nsu.ru/education/cmet/node3.html
http://vtit.kuzstu.ru/books/sh... tml#p7.6.1
http://dmilvdv.narod.ru/Speech... range.html
1
62 / 26 / 0
Регистрация: 05.06.2012
Сообщений: 121
08.06.2012, 16:09  [ТС] 3
Первые две(ссылки) с очень смутной информацией. Такое ощущение, что автор писал студентам обучающимся где либо - явно не для простолюдин с образованием в 9 классов, вроде меня
Но все равно спасибо.
0
Змеюка одышечная
9864 / 4595 / 178
Регистрация: 04.01.2011
Сообщений: 8,556
08.06.2012, 18:56 4
asd192, вам именно коэффициенты нужны или всё таки значение многочлена в какой-то точке?
0
6171 / 936 / 310
Регистрация: 25.02.2011
Сообщений: 1,367
Записей в блоге: 1
08.06.2012, 21:38 5
asd192, Вам обязательно Лагранжем интерполировать, может достаточно будет аппроксимации, либо линейной интерполяции по двум точкам с помощью ПРЕДСКАЗ() или ТЕНДЕНЦИЯ(). Можете боллее детально описать задачу?

PS: Лагранжем я бы не советовал интерполировать, т.к может быть значительный разброс данных, к тому же для 102 точек придется рассчитывать полином 101 степени
0
62 / 26 / 0
Регистрация: 05.06.2012
Сообщений: 121
08.06.2012, 22:28  [ТС] 6
Цитата Сообщение от vetvet Посмотреть сообщение
вам именно коэффициенты нужны или всё таки значение многочлена в какой-то точке?
Коэффиценты для этой таблицы(которую выложил в первом сообщении) значений я уже нашел... "выдрал" из чужой программы. Но таких таблиц у меня еще много. Вот и хотелось бы не искать везде и "выдирать", а считать самому. Т.е. нужно, чтобы до меня дошло как их считать. А без посторонней помощи никак не получается

Цитата Сообщение от m-ch Посмотреть сообщение
Можете боллее детально описать задачу?
В первом посте выложил >>>Аппроксимирующий полином.xls <<< . Там есть таблица значений. Вот по ней бы или
Цитата Сообщение от m-ch Посмотреть сообщение
Лагранжем интерполировать
или
Цитата Сообщение от m-ch Посмотреть сообщение
аппроксимировать
чтобы потом по полиному Лагранжа высчитывать значения таблицы между точками которых в таблице нет.
В верхней строке и левом столбце - значения температуры, а в самой таблице - значения милливольт.
Т.е., например, вы меня научите как посчитать коэффициенты, а я потом подставлю их в полином Лагранжа и значение температуры и получу нужное мне значение милливольт.
Т.е. подставил температуру 30,7896 и получил соответствующее значение в милливольтах.

Вот посмотрите http://www.gosthelp.ru/text/GO... opary.html там почти в самом низу находится куча полиномов. Вот я хочу такие же делать

(Все графики у меня нелинейные)

Добавлено через 18 минут
Цитата Сообщение от m-ch Посмотреть сообщение
к тому же для 102 точек придется рассчитывать полином 101 степени
Это не страшно - процессор посчитает
0
6171 / 936 / 310
Регистрация: 25.02.2011
Сообщений: 1,367
Записей в блоге: 1
09.06.2012, 07:38 7
Лучший ответ Сообщение было отмечено как решение

Решение

Посмотрите вот такое решение, 4 различных варианта интерполяции/аппроксимации
Вложения
Тип файла: rar Аппроксимация.rar (27.5 Кб, 1222 просмотров)
4
62 / 26 / 0
Регистрация: 05.06.2012
Сообщений: 121
09.06.2012, 15:32  [ТС] 8
Спасибо. Именно то что нужно. Пошел разбираться.:cofee2:
1
6171 / 936 / 310
Регистрация: 25.02.2011
Сообщений: 1,367
Записей в блоге: 1
09.06.2012, 19:56 9
Все таки, я бы не рекомендовал бы использовать полином Лагранжа для нахождения промежуточных точек, для этих целей лучше подойдет интерполяция кубическим сплайном (дополнил в файле)

Лагранж дает большой разброс данных на концах интервала, очень показательно в приложенном файле
Вложения
Тип файла: rar Интерполяция.rar (32.7 Кб, 1117 просмотров)
2
62 / 26 / 0
Регистрация: 05.06.2012
Сообщений: 121
09.06.2012, 20:27  [ТС] 10
Цитата Сообщение от m-ch Посмотреть сообщение
Лагранж дает большой разброс данных на концах интервала
А это, как я думаю, из за того -что вы сразу всю шкалу берете от -200 до 800.
Я еще подробно не посмотрел, если четсно. Детишки занимают машинокатательной физикой
Там кусками, скорее, нужно.
-200 до 0
0 до 400
400 до 800

На этих кусках ровно должно быть.
0
6171 / 936 / 310
Регистрация: 25.02.2011
Сообщений: 1,367
Записей в блоге: 1
09.06.2012, 20:41 11
Цитата Сообщение от asd192 Посмотреть сообщение
А это, как я думаю, из за того -что вы сразу всю шкалу берете от -200 до 800.
Какой размер интервала - не важно, в примере использовано всего 8 точек, и чем больше точек будет, тем сильнее интерполяция Лагранжа будет давать разброс,

К примеру у Вас есть линейный график, и одна точка отклонена, Лагранж при этом ведет себя очень нестабильно
Миниатюры
Интерполяционный многочлен Лагранжа  
0
62 / 26 / 0
Регистрация: 05.06.2012
Сообщений: 121
12.06.2012, 20:33  [ТС] 12
X Y
-200 30
-50 15
50 5
200 30
400 20
500 30
670 55
800 60

Лагранж повел себя не стабильно - потому, что вы в точках 200, 400, 500 на оси Y туда-сюда сделали (30, 20, 30).
В таблицах ТЭДС такого практически быть не может из за свойств металлов.

При значениях Y
-30
-15
5
30
50
80
90
100
Интерполяция кубическим сплайном и Лагранж показали худшие показатели.
0
6171 / 936 / 310
Регистрация: 25.02.2011
Сообщений: 1,367
Записей в блоге: 1
12.06.2012, 23:43 13
asd192, для Ваших исходных данных можно использовать интерполяцию линейным сплайном, для этого даже не нужно VBA, можно все на формулах сделать, отклонения от других видов интерполяции в 3-4 знаке после запятой.
Лагранжем не удалось проинтерполировать весь диапазон (102 точки), ерунда получается, необходимо интерполировать кусками.

Можете потестировать различные виды сплайновой интерполяции (Сплайн Эрмита, Сплайн Катмулла-Рома, Кубический сплайн, Сплайн Акимы)
Вложения
Тип файла: rar Сплайны.rar (228.1 Кб, 405 просмотров)
2
62 / 26 / 0
Регистрация: 05.06.2012
Сообщений: 121
13.06.2012, 11:42  [ТС] 14
Я еще то не успел толком просмотреть - вы уже новое набросали
Ничего не успеваю. Еще жена рожать собралась (уже как час в роддоме). Эмоции прут, ничего не понимаю
На скоряк набросал формулы типа вот этой(для расчета сигнала всех видов первичных датчиков для приборов ИРТ59ХХ)... на первое время сгодится.

=ЕСЛИОШИБКА(ЕСЛИ(ИЛИ($J$4="i05";$J$4="i020";$J$4="i420");(A10-$R$4)/($U$4-$R$4)*($G$4-$E$4)+$E$4;ЕСЛИ(И($J$4="R";$J$4>=-50;A10<=1064,18);РЯД.СУММ(A10;0;1;КоэффТП!B4:$B$13);ЕСЛИ(И($J$4="R";A10>1064,18; A10<1664,5);РЯД.СУММ(A10;0;1;КоэффТП!$C$4:$C$9);ЕСЛИ(И($J$4="R";A10>1664,5;A10<= 1768,1);РЯД.СУММ(A10;0;1;КоэффТП!$D$4:$D$8);ЕСЛИ(И($J$4="S";A10>=-50;A10<=1064,18);РЯД.СУММ(A10;0;1;КоэффТП!$B$17:$B$25);ЕСЛИ(И($J$4="S";A10>1064, 18;A10<1664,5);РЯД.СУММ(A10;0;1;КоэффТП!$C$17:$C$21);ЕСЛИ(И($J$4="S";A10>1664,5; A10<=1768,1);РЯД.СУММ(A10;0;1;КоэффТП!$D$17:$D$21);ЕСЛИ(И($J$4="B";A10>=0;A10<63 0,15);РЯД.СУММ(A10;0;1;КоэффТП!$B$29:$B$35);ЕСЛИ(И($J$4="B";A10>=630,15;A10<1820 );РЯД.СУММ(A10;0;1;КоэффТП!$C$29:$C$37);ЕСЛИ(И($J$4="J";A10>=-210;A10<760);РЯД.СУММ(A10;0;1;КоэффТП!$B$41:$B$49);ЕСЛИ(И($J$4="J";A10>=760;A10< 1200);РЯД.СУММ(A10;0;1;КоэффТП!$C$41:$C$46);ЕСЛИ(И($J$4="T";A10>=-270;A10<0);РЯД.СУММ(A10;0;1;КоэффТП!$B$53:$B$67);ЕСЛИ(И($J$4="T";A10>=0;A10<400) ;РЯД.СУММ(A10;0;1;КоэффТП!$C$53:$C$61);ЕСЛИ(И($J$4="E";A10>=-270;A10<0);РЯД.СУММ(A10;0;1;КоэффТП!$B$71:$B$84);ЕСЛИ(И($J$4="E";A10>=0;A10<1000 );РЯД.СУММ(A10;0;1;КоэффТП!$C$71:$C$81);ЕСЛИ(И($J$4="K";A10>=-270;A10<0);РЯД.СУММ(A10;0;1;КоэффТП!$B$88:$B$98)+0,1185976*EXP(-0,0001183432*(A10-126,9686)^2);ЕСЛИ(И($J$4="K";A10>=0;A10<1372);РЯД.СУММ(A10;0;1;КоэффТП!$C$88:$C$ 97)+0,1185976*EXP(-0,0001183432*(A10-126,9686)^2);ЕСЛИ(И($J$4="N";A10>=-270;A10<0);РЯД.СУММ(A10;0;1;КоэффТП!$B$102:$B$110);ЕСЛИ(И($J$4="N";A10>=0;A10<13 00);РЯД.СУММ(A10;0;1;КоэффТП!$C$102:$C$112);ЕСЛИ(И($J$4="A-1";A10>=0;A10<=2500);РЯД.СУММ(A10;0;1;КоэффТП!$B$116:$B$124);ЕСЛИ(И($J$4="A-2";A10>=0;A10<=1800);РЯД.СУММ(A10;0;1;КоэффТП!$B$128:$B$136);ЕСЛИ(И($J$4="A-3";A10>=0;A10<=1800);РЯД.СУММ(A10;0;1;КоэффТП!$B$140:$B$148);ЕСЛИ(И($J$4="L";A10 >=-200;A10<=800);РЯД.СУММ(A10;0;1;КоэффТП!$B$152:$B$160);ЕСЛИ(И($J$4="M";A10>=-200;A10<=100);РЯД.СУММ(A10;0;1;КоэффТП!$B$164:$B$167);ЕСЛИ($J$4="Ptb1";(ЕСЛИ(И(A 10<0;A10>=-200);$M$4*(1+(3,9083*10^-3*A10)+((-5,775*10^-7)*A10^2)+((-4,183*10^-12)*(A10-100)*A10^3));ЕСЛИ(И(A10>=0;A10<=850);$M$4*(1+3,9083*10^-3*A10+(-5,775*10^-7)*A10^2)))); ЕСЛИ(ИЛИ($J$4="PtH5";$J$4="Pt$J$5";$J$4="Gr21");(ЕСЛИ(И(A10<0;A10>=-200);$M$4*(1+(3,969*10^-3*A10)+((-5,841*10^-7)*A10^2)+((-4,33*10^-12)*(A10-100)*A10^3));ЕСЛИ(И(A10>=0;A10<=850);$M$4*(1+3,969*10^-3*A10+(-5,841*10^-7)*A10^2);"")));ЕСЛИ(ИЛИ($J$4="Cu85";$J$4="Cu81";$J$4="Cu83");(ЕСЛИ(И(A10<0;A10> =-180);$M$4*(1+4,28*10^-3*A10+(-6,2032*10^-7)*A10*(A10+6,7)+8,5154*10^-10*A10^3);ЕСЛИ(И(A10>=0;A10<=200);$M$4*(1+4,28*10^-3*A10);"")));ЕСЛИ($J$4="ni1";(ЕСЛИ(И(A10>=-60;A10<100);$M$4*(1+5,4963*10^-3*A10+6,7556*10^-6*A10^2);ЕСЛИ(И(A10>=100;A10<=180);$M$4*(1+(5,4963*10^-3*A10)+(6,7556*10^-6*A10^2)+(9,2004*10^-9*(A10-100)*A10^2));"")));ЕСЛИ(ИЛИ($J$4="PtH5";$J$4="Pt$J$5";$J$4="Gr21";$J$4="Gr21");$ M$4*(1+4,26*10^-3*A10);"")))))))))))))))))))))))))))));"")

Это для рацухи сокращающей временные трудозатраты.
Оптимизацией начну заниматься когда дома все уляжется
Еще раз спасибо за помощь
0
13.06.2012, 11:42
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.06.2012, 11:42
Помогаю со студенческими работами здесь

Интерполяционный многочлен Лагранжа
Добрый вечер!Хотелось бы посмотреть как выполняется такое задание в maple. Нужны примеры решений.

Интерполяционный многочлен Лагранжа
X=0,15,30,45,60,75,90 f(x)=0,000;0,259;0,500;0,7 07;0,866;0,966;1,000 Найти по три значения...

Интерполяционный многочлен Лагранжа
Нарисовать график функции |x| на , а также найти его интерполяционный многочлен Лагранжа, где...

Интерполяционный многочлен Лагранжа
Программа должна выдать два графика: функции и интерполяционного многочлена Лагранжа. Как...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru