Иллюстрированный самоучитель по Mathematica 3/4

Преобразование полиномов в схему Горнера(Horner)

Подпакет Horner в системе Mathematica 4 реализует хорошо известную схему вычисления полиномов – схему Горнера. При ней операции возведения в степень заменяются операциями умножения. Для этого служит функция Horner:

  • Horner [poly] – устанавливает полином poly в форму Горнера;
  • Horner [poly, vars] – устанавливает полином ряда переменных vars в форму Горнера.

Примеры преобразования полиномов в схему Горнера:

<<NumericalMath`Horner`
  
Horner[ 11 x^3-4 x^2 + 7 x + 2 ]
2+ x (7 + x (-4 + 11x))
  
Horner[ a x^3 + bx^2 + c x + d, x ]
d+ x (c + x (b + ax))
  
Horner[ x^(1/3) + x + x^(3/2) ]

Схема Горнера может использоваться и для отношения полиномов:

Horner [poly1/poly2] и Horner [poly1/poly2, vars1,vars2]

Эти функции можно использовать для улучшенного представления аппроксимации Паде, что демонстрирует следующий пример:

<<Calculus`Fade`
approx = Padef Exp[Log[x] -x], {x, 0, 3, 2}]]
Horner[ approx ]

Переход к схеме Горнера дает ряд преимуществ перед обычным вычислением полиномов: уменьшается время вычислений, повышается их точность, уменьшается вероятность расхождения численных методов, в которых используются полиномы. В системе Mathematica 3 подпакет Corner находился в пакете расширения NumberMath, что было не вполне логично.

Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.