Использовать полином как функцию - PullRequest
1 голос
/ 17 января 2011

Я довольно новичок в Mathematica, но я почти уверен, что есть простой способ сделать это, но я не могу понять это: если я создаю полином с использованием InterpolatingPolynomial или аналогичных функций и назначаю его переменной (давайте назовем это Poly), как я могу преобразовать его в функцию, вызываемую через

Poly[5]

, чтобы получить значение многочлена при x = 5?Я знаю, что могу использовать

Poly /. x->5 

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

Ответы [ 3 ]

1 голос
/ 17 января 2011

Вот еще один способ:

fPoly = Function[x, Evaluate[Poly]]

Требуется оценка [...], поскольку функция [...] «содержит» свои аргументы.В качестве альтернативы вы можете использовать

fPoly = Function @@ {x, Poly}

. В этом последнем подходе функция head не применяется до тех пор, пока Poly не выполнит оценку.

0 голосов
/ 17 января 2011

Если у вас есть:

k = InterpolatingPolynomial[{{-1, 4}, {0, 2}, {1, 6}}, u]  

Тогда

poly[x_] := k /. u -> x
0 голосов
/ 17 января 2011

Выяснилось, что на самом деле это было действительно легко:

fPoly = Function[k, Poly /. x -> k];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...