2014 dxdy logo

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

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




Начать новую тему Ответить на тему
 
 Mathematica - интерполяция функции по набору значений.
Сообщение13.05.2011, 15:15 


07/05/11
40
Итак, есть список точек вида {{x1,y1},{x2,y2},{x3,y3}, итд} Функция ListPlot вполне успешно строит график по этим данным, соединяет точки полиномами. Подскажите, какой командой вольфрам математика надо воспользоваться чтобы найти функцию, соответствующую этому графику(то есть получить выражение вроде f=rx+b(если такая возможность вообще имеется))?

Код:
spisok := {{0, 10}, {30, 18}, {45, 23}, {60, 18}, {90, 13}}
ListPlot[spisok, Joined -> True, InterpolationOrder -> 2]
f[x_] := InterpolatingPolynomial[spisok, x]
Plot[f[x], {x, 0, 90}]


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

 Профиль  
                  
 
 Re: Mathematica - интерполяция функции по набору значений.
Сообщение14.05.2011, 08:59 
Аватара пользователя


15/01/06
200
Так все-таки чего вы хотите? f=rx+b какое имеет ко всему этому отношение? График-то явно нелинейный на картинке.

 Профиль  
                  
 
 Re: Mathematica - интерполяция функции по набору значений.
Сообщение14.05.2011, 09:34 


17/04/11
70
Не обижайте Wolfram'а.
По точкам видно (Leierkastenmann), что линейна никуда не годится.
Пробовал кубическую, но и она плохая.
Заострённость графика требует что-то типа астроиды.

 Профиль  
                  
 
 Re: Mathematica - интерполяция функции по набору значений.
Сообщение14.05.2011, 13:35 


07/05/11
40
естественно линейная только пример) не смог подобрать слова вроде:"получить функцию в аналитическом виде".

 Профиль  
                  
 
 Re: Mathematica - интерполяция функции по набору значений.
Сообщение14.05.2011, 13:55 
Заслуженный участник


25/02/11
1786
Точки на графике математика соединяет с помощью сплайнов или что-то типа того. Вряд ли можно из нее выковырять их явный вид. A f[x] это многочлен, дающий верные значения функции в тех точках, по которым строится.

 Профиль  
                  
 
 Re: Mathematica - интерполяция функции по набору значений.
Сообщение14.05.2011, 14:01 


17/04/11
70
Многочлен 4-го порядка пройдёт через все 5 точек.
Потом можна посмотреть визуально насколько это хорошо.

 Профиль  
                  
 
 Re: Mathematica - интерполяция функции по набору значений.
Сообщение14.05.2011, 19:13 
Аватара пользователя


15/01/06
200
VerdenZ7 в сообщении #445738 писал(а):
естественно линейная только пример) не смог подобрать слова вроде:"получить функцию в аналитическом виде".


То есть вам нужна функция, которая пройдет по всем этим точкам и которая будет выглядеть подобно изображению ListPlot[spisok, Joined -> True, InterpolationOrder -> 2]? И откуда такие задачи... :D

 Профиль  
                  
 
 Re: Mathematica - интерполяция функции по набору значений.
Сообщение15.05.2011, 11:08 


07/05/11
40
y=rx+b это потому что не смог подобрать что-то вроде "найти функцию соответствующую этим точкам".
Цитата:
будет выглядеть подобно изображению


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

проблема во многом решилась добавлением дополнительных значений, но все равно не очень..

 Профиль  
                  
 
 Re: Mathematica - интерполяция функции по набору значений.
Сообщение15.05.2011, 15:58 
Аватара пользователя


15/01/06
200
Ну тогда может быть так подойдет?
Код:
spisok = {{0, 10}, {30, 18}, {45, 23}, {60, 18}, {90, 13}};
f = Interpolation[spisok, Method -> "Spline", InterpolationOrder -> 2];
Plot[f[x], {x, 0, 90}, Epilog -> Map[Point, spisok]]

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 9 ] 

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



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

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


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

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