Составители:
Если проводить вычислении «в лоб», т. е. находить значения каждого члена и суммировать их, то при
больших n потребуется выполнить большое число операций(
2/
2
nn +
умножений и n сложений). Кроме
того, это может привести к потере точности за счет погрешностей округления. В некоторых частных случаях,
как это сделано при вычислении синуса, удается выразить каждый последующий член через предыдущий и
таким образом значительно сократить объем вычислений.
Анализ многочлена (6.13) в общем случае приводит к тому, что для исключения
возведения х в степень в
каждом члене многочлен целесообразно переписать в виде
...)).)(...(()(
1210
+
+
+
+
+
+
=
− nn
xaaxaxaxaxP (6.13)
Прием, с помощью которого многочлен представляется в таком виде, называется схемой Горнера. Этот метод
требует n умножений на n сложении. Использование схемы Горнера для вычисления значений многочленов
не только экономит машинное время, но и повышает точность вычислений за счет уменьшения погрешностей
округления.
2.3 Рациональные приближения.
Рассмотрим другой вид аппроксимации функций — с помощью дробно- рационального выражения.
Функцию представим в виде отношения двух многочленов некоторой степени. Пусть, например, это будут
многочлены третьей степени, т. е. представим функцию f(х) d виде дробно- рационального выражения:
3
3
2
21
3
3
2
210
1
)(
xcxcxc
xbxbxbb
xf
+++
+++
=
(6.14)
Значение свободного члена в знаменателе с
0
= 1 не нарушает общности этого выражения, поскольку при
1
0
≠с числитель и знаменатель можно разделить на с
0
. Перепишем выражение (6.13) в виде
).()1(
3
3
2
21
3
3
2
210
xfxcxcxcxbxbxbb +++=+++
Используя разложение функции f(x) в ряд Тейлора:
...)(
2
210
+++= xaxaaxf
(6.15)
и учитывая члены до шестой степени включительно, получаем
)()1(
6
6
5
5
4
4
3
3
2
210
3
3
2
21
3
3
2
210
xaxaxaxaxaxaaxcxcxcxbxbxbb ++++++×+++=+++
Преобразуем правую часть этого равенства, записав ее разложение по степеням х:
).()()(
)()()(
3324156
6
3223145
5
3122134
4
3021123
3
20112
2
1010
3
3
2
210
cacacaaxcacacaaxcacacaax
cacacaaxcacaaxcaaxaхbxbxbb
++++++++++++
++++++++++=+++
Приравнивая коэффициенты при одинаковых степенях x левой и правой частях, получаем следующую
систему уравнений:
00
ab
=
,
1011
caab
+
=
,
201122
cacaab
+
+
=
,
30211233
cacacaab
+
+
+
=
,
3122134
0 cacacaa
+
+
+
=
,
3223145
0 cacacaa
+
+
+
=
,
3324156
0 cacacaa
+
+
+
=
.
Решив эту систему, найдем коэффициенты
0
b ,
1
b
,
2
b
,
3
b ,
1
c
,
2
c
,
3
c , необходимо для аппроксимации (6.13).
Пример.
Рассмотрим рациональное приближение для функции
)
2
sin()(
x
xf
π
=
. Воспользуемся представлением
(6.13), которое в данном случае упрощается, поскольку функция sin x нечетная. В частности в частности, в
числителе можем оставить только члены с нечетными степенями л, а в знаменателе — с четными;
коэффициенты при других степенях x равны нулю:
1
b
=
2
b
=
1
c
==
3
c =0,
Коэффициенты
1
b
,
2
b
,
2
c
, найдем из системы уравнении (6.13), причем значения коэффициентов
0
a ,
1
a
, …,
6
a разложения функции в ряд Тейлора (6.12)
n
n
xaxaxaaxP ++++= ...)(
2
210
(6.12)можем взять из
выражения (6.4), т. е.
Страницы
- « первая
- ‹ предыдущая
- …
- 79
- 80
- 81
- 82
- 83
- …
- следующая ›
- последняя »
