Статья опубликована в рамках: XLI Международной научно-практической конференции «Научное сообщество студентов XXI столетия. ТЕХНИЧЕСКИЕ НАУКИ» (Россия, г. Новосибирск, 26 апреля 2016 г.)
Наука: Математика
Скачать книгу(-и): Сборник статей конференции
дипломов
СХЕМА ГОРНЕРА НА MATHCAD 15
Схе́ма Го́рнера – алгоритм вычисления значения многочлена, записанного в виде суммы одночленов, при заданном значении переменной. Метод назван в честь Уильяма Джорджа Горнера [2].
Схема Горнера позволяет:
- отыскивать корни многочлена;
- вычислять значение многочлена и его производной в заданной точке;
- производить деление многочлена на бином .
Рассмотрим как «работает» схема Горнера на примере. Пусть необходимо найти корни уравнения
|
. |
(1) |
Сначала методом подбора определим один корень. По теореме Виета его следует искать среди делителей свободного члена. В данном случае целыми делителями числа 120 являются: ±1, ±2, ±3, ±4, ±5, ±6, ±8, ±10, ±12, ±15, ±20, ±24, ±30, ±40, ±60, ±120.
Далее, используя схему Горнера, определим корень и осуществим деление многочлена на одночлен . Для этого многочлен переписывается в виде
|
. |
(2) |
Таким образом, многочлен приобретает вид «матрёшки» а вычисления следует проводить, начиная с внутренней «самой маленькой матрёшки».
Деление многочленов удобно выполнять с использованием таблицы, в которую вносятся все коэффициенты данного многочлена (табл. 1). При этом также находятся значения многочлена при подбираемом значении возможного корня.
Таблица 1.
Перебор возможных корней для уравнения четвёртой степени.
Коэффициенты
Возможный корень |
|||||
2 |
– 5 |
– 41 |
146 |
– 120 |
|
1 |
2 |
– 3 |
– 44 |
102 |
– 18 |
– 1 |
2 |
– 7 |
– 34 |
180 |
– 300 |
2 |
2 |
– 1 |
– 43 |
60 |
0 |
В верхней строке прописываются коэффициенты исходного многочлена. В первой ячейке второй строки ставится возможный корень из ранее определённого списка. Далее в этой строке пишутся коэффициенты многочлена, вычисленные по принципу «матрёшек» (2). Значение в последнем столбце – это остаток от деления. Если остаток равен нулю, то проверяемое число является корнем уравнения. В противном случае – число не является корнем. При этом получены значения функции:
, , .
В нашем примере числа 1 и – 1 не являются корнями, а число 2 – корень. При этом значения, полученные в последней строке, являются коэффициентами многочленами, представляющего собой частное от деления данного многочлена на одночлен. Таким образом, , а исходный многочлен может быть разложен на множители:
.
Далее будем искать корни уравнения
.
Список возможных целых корней: ±1, ±2, ±3, ±4, ±5, ±6, ±10, ±12, ±15, ±20, ±30, ±60. Но т.к. ±1 не являлись корнями исходного уравнения, то они исключатся из нашего списка. Далее заполняем таблицу 2.
Таблица 2.
Перебор возможных корней для уравнения третьей степени.
Коэффициенты
Возможный корень |
||||
2 |
– 1 |
– 43 |
60 |
|
2 |
2 |
3 |
– 37 |
– 14 |
– 2 |
2 |
– 5 |
– 33 |
126 |
3 |
2 |
5 |
– 28 |
– 24 |
– 3 |
2 |
– 7 |
– 22 |
126 |
4 |
2 |
7 |
– 15 |
0 |
Таким образом, , а исходный многочлен может быть разложен на множители:
.
Далее будем искать корни уравнения
|
. |
(3) |
Список возможных целых корней: ±1, ±3, ±5, , ±15. Значения ±1 и ±3 исключаем, остаются только ±15. Далее заполняем таблицу 3.
Таблица 3.
Перебор возможных корней для уравнения второй степени.
Коэффициенты
Возможный корень |
|||
2 |
7 |
– 15 |
|
5 |
2 |
17 |
60 |
– 5 |
2 |
– 3 |
0 |
Таким образом, и , а исходный многочлен может быть разложен на множители:
.
Замечание: корни уравнения (3) можно искать как корни квадратного уравнения, используя дискриминант.
Как видно из рассмотренного примера процесс отыскания корней «вручную» довольно затруднителен. Он становится тем сложнее, чем выше степень многочлена. В этом случае целесообразно использовать ЭВМ. Использование схемы Горнера для вычисления значений многочленов не только экономит машинное время (требуется 2п вычислительных операций), но и увеличивает точность вычислительного процесса за счёт уменьшения машинных (компьютерных) погрешностей [1, 3].
Блок-схема вычислительного алгоритма представлена в работе [1].
Рассмотрим реализацию схемы Горнера на MathCAD 15.
Для того, чтобы вычислить корни многочлена, следует записать коэффициенты при х в матрицу-столбец.
Функция, осуществляющая перебор корней, возвращает число, кратное свободному члену многочлена, чередуя положительные и отрицательные возможные корни:
Функция подсчёта новых коэффициентов, возвращающая массив, который содержит коэффициенты многочлена, получившегося в результате деления начального многочлена на .
Функция, редактирующая матрицу (убирает последний 0). Нужна для того случая, когда свободный член многочлена равен 0.
Основной фрагмент программы:
Список литературы:
- Зубехин А.А., Бородавченко Д.В., Агишева Д.К., Светличная В.Б., Матвеева Т.А. ВЫЧИСЛЕНИЕ ЗНАЧЕНИЙ ПОЛИНОМА С ПОМОЩЬЮ СХЕМЫ ГОРНЕРА // Материалы VIII Международной студенческой электронной научной конференции «Студенческий научный форум» [электронный ресурс] — Режим доступа. — URL: http://www.scienceforum.ru/2016/1762/20652 (дата обращения: 12.04.2016).
- Материал из Википедии – свободной энциклопедии: Схема Горнера. – Режим доступа: https://ru.wikipedia.org/wiki/Схема_Горнера (дата обращения: 12.04.16)
- Турчак Л.И. Основы численных методов: Учеб. пособие. – М.: Наука. Гл. ред. физ.-мат. лит., 1987. – 320 с.
дипломов
Оставить комментарий