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, Супермодераторы



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

Сейчас этот форум просматривают: gris


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

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