2014 dxdy logo

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

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




Начать новую тему Ответить на тему
 
 [Mathematica] Получение уравнения по точкам
Сообщение11.02.2017, 14:47 


31/07/16
10
Есть набор точек:
lst = {{100, 0.78927}, {99, 0.79431}, {98, 0.79897}, {97, 0.80334}, {96, 0.80748}, {95, 0.81144}, {94, 0.81526}, {93, 0.81893}, {92, 0.82247}, {91, 0.82590}, {90, 0.82926}, {89, 0.83254}}
Помогите, пож-та, получить уравнение по этим точкам.

 Профиль  
                  
 
 Re: [Mathematica] Получение уравнения по точкам
Сообщение11.02.2017, 15:19 
Заслуженный участник


27/04/09
28128
Ну, поскольку вы ничего не добавили, сойдёт и y == InterpolatingPolynomial[lst, x].

 Профиль  
                  
 
 Re: [Mathematica] Получение уравнения по точкам
Сообщение11.02.2017, 16:48 


31/07/16
10
arseniiv
Я не уверен, что результат:
Код:
0.78927 + (-0.00393364 + (-0.0000796061 + (-4.9798*10^-6 + \
(-1.95286*10^-7 + (-5.22306*10^-8 + (-6.63179*10^-9 + (2.45911*10^-9 \
+ (-2.13444*10^-10 + (-8.19204*10^-11 + (-5.18579*10^-11 +
                    7.06469*10^-11 (-93 + x)) (-98 + x)) (-92 +
                    x)) (-96 + x)) (-90 + x)) (-99 + x)) (-91 +
                x)) (-97 + x)) (-94 + x)) (-89 + x)) (-100 + x)

Является годным. :)
Может есть вариант получить формулу попроще? В каком виде она будет все-равно, но хотелось бы не из 400 символов.

 Профиль  
                  
 
 Re: [Mathematica] Получение уравнения по точкам
Сообщение11.02.2017, 17:07 
Заслуженный участник


27/04/09
28128
Ну примените к ней Expand или что-то такое. Потом, почему так важно именно количество символов? Вы же не в твиттере её будете постить, наверно.

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

 Профиль  
                  
 
 Re: [Mathematica] Получение уравнения по точкам
Сообщение11.02.2017, 19:20 
Заслуженный участник


25/02/11
1797
amsuser в сообщении #1191745 писал(а):
Может есть вариант получить формулу попроще?

Так вы скажите, что вы с формулой делать будете. Если вам опять интерполяция, то команда та же:
Код:
f[x_] = Fit[lst, {1, x, x^2}, x]

дает
Код:
-0.0000812912087912028*x^2 + 0.011472954545453442*x + 0.45515616633371775

Приближает с точностью где-то $2\cdot 10^{-4}$.
arseniiv в сообщении #1191750 писал(а):
Ну примените к ней Expand

Попробовал, там уже такие числа, что двойная точность недостаточна. Лучше не раскрывать, а то вычислительная погрешность пойдет.

 Профиль  
                  
 
 Re: [Mathematica] Получение уравнения по точкам
Сообщение11.02.2017, 19:46 
Заслуженный участник


27/04/09
28128
О, интересно. Спасибо.

 Профиль  
                  
 
 Re: [Mathematica] Получение уравнения по точкам
Сообщение11.02.2017, 20:20 


31/07/16
10
Vince Diesel в сообщении #1191791 писал(а):
Так вы скажите, что вы с формулой делать будете.

В java-код переписывать)
Vince Diesel в сообщении #1191791 писал(а):
Приближает с точностью где-то $2\cdot 10^{-4}$

Отлично. Очередное большое человеческое спасибо!

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

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



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

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


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

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