2011-01-17 3 views
1

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

Poly[5] 

для получения значения полинома в точке х = 5? Я знаю, что можешь использовать

Poly /. x->5 

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

ответ

0

Узнал, это было на самом деле очень просто:

fPoly = Function[k, Poly /. x -> k]; 
0

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

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

Тогда

poly[x_] := k /. u -> x 
1

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

fPoly = Function[x, Evaluate[Poly]] 

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

fPoly = Function @@ {x, Poly} 

В этом последнем подходе голова Функция не применяется до тех пор, пока не примет значение Poly.

Смежные вопросы