5839
.pdf30 |
|
|
|
|
и их линейные комбинации, логарифмические функции y = ln x + b , |
пока- |
|||
зательные функции y = aex + b , дробно-линейные функции |
y = |
1 |
|
+ c |
|
|
ax + b
и некоторые другие.
y
y = p(x)
O x0 x1 x2 x3 x4 x5 x
Рис. 1. Квадратичное приближение табличной функции
На рис. 1 вблизи точек таблицы проведена линия y = p(x), напоми-
нающая часть квадратной параболы. В этом случае искомой эмпирической формулой будет y = ax2 + bx + c при некоторых значениях коэффициентов a , b , c . Как видно из рисунка, для данной таблицы можно выбрать и более простое приближение в виде линейной функции y = ax + b .
Пусть тип эмпирической формулы y = p(x) выбран, причем, как мы заметили, функция p(x) на самом деле зависит от одного или нескольких числовых параметров. Чтобы найти функцию из выбранного класса, график которой в каком-либо смысле ближе всех расположен к табличным точкам, надо определить соответствующие значения этих параметров.
Есть несколько способов поиска. Мы рассмотрим следующий: возьмем в качестве меры близости функций p(x) и f (x) на отрезке
31
[x0 , xn ] «расстояние» ρ ( p, f ) между ними и наилучшей функцией p(x)
будем считать ту, для которой ρ ( p, f ) имеет наименьшее значение.
При определении «расстояния» ρ будем пользоваться евклидовым
расстоянием между векторами-значениями ( y0 ,..., yn ) и ( p(x0 ),..., p(xn )) :
|
|
|
|
n |
|
|
|
ρ |
( p, f ) = ∑ ( p(xi ) − yi ) 2 . |
(2.11) |
|||
|
|
|
|
i=0 |
|
|
Числа |
υi = p(xi ) − yi называют |
уклонениями, а вычисленное по |
||||
формуле (4.11) «расстояние» |
ρ |
( p, f ) – |
среднеквадратичным уклонением |
|||
функции p(x) |
от табличной функции |
f (x) на отрезке [x0 , xn ]. Абсолют- |
ные величины уклонений равны длинам отрезков между точками (xi , yi ) и
соответствующими точками графика y = p(x) (на рис. 1 эти отрезки отме-
чены сплошными вертикальными линиями).
Ясно, что задача минимизации «расстояния» (2.11) сводится к минимизации подкоренного выражения.
Теперь, после всех уточнений, можно сформулировать задачу приближения по методу наименьших квадратов.
Пусть связь между аргументами x i , и значениями yi приближенно описывается формулой y = (x, a1 ,..., ak ) с числовыми параметрами a1,..., ak .
Требуется определить такие значения этих параметров, при которых сумма квадратов уклонений
|
|
|
|
n |
n |
|
|
||||
|
|
|
|
∑υi2 |
= ∑ ( p(xi , ai ,..., ak ) − yi ) 2 |
|
(2.12) |
||||
|
|
|
|
i=0 |
i=0 |
|
|
||||
будет наименьшей. |
|
|
|
|
|
|
|
||||
Если |
|
|
|
|
|
|
|
|
|||
a1,..., ak – искомые значения параметров, то их называют наи- |
|||||||||||
лучшими параметрами, соотношение y = p(x, |
|
|
|
|
– |
наилучшей эмпи- |
|||||
a1,..., ak ) |
|||||||||||
рической формулой данного класса, а функцию p(x) |
– |
наилучшей функ- |
|||||||||
цией из данного класса функций. |
|
|
32
Здесь не ставится задача оценки погрешностей приближенного равенства f (x) ≈ p(x, a1,..., ak ) во всех точках между x0 и xn . При интерпо-
лировании для этого были получены соответствующие формулы, но там предполагалось, что функция f (x) имеет достаточно хорошее аналитиче-
ское выражение. В случае эмпирических таблиц, с которыми имеем дело в данном разделе, никакой информации об f (x), кроме ее значений в точках x i , может не оказаться.
По этой причине ограничимся выбором наилучшей функции p(x)
из некоторого класса функций и нахождением модулей погрешностей ее значений в точках x i равных υi , а также глобальной характеристики бли-
зости p(x) к табличной функции – среднеквадратичного уклонения
ρ ( f , p) .
Если для таблицы можно указать несколько классов эмпирических функций, то сначала из каждого класса отыскивается наилучшая функция, а затем из них выбирается та, которая дает наименьшее среднеквадратичное уклонение.
2.6.Полиномиальное приближение по методу наименьших квадратов
Рассмотрим поиск наилучших эмпирических функций на примере многочленов.
Итак, возьмем многочлен k − й степени
Pk (x) = ak xk + ... + a1x + a0
и выведем правило нахождения его наилучших коэффициентов. Отметим также, что значение k степени многочлена (2.13)
ет на способ решения задачи.
(2.13)
не влия-
33 |
|
|
|
|
|
|
Если взять k ³ n , то наименьшее значение |
ρ |
( f , Pk ) = 0 дают ин- |
||||
|
Pk (xi ) = yi , |
при всех i = |
|
. |
||
терполяционные многочлены, ибо для них |
1, n |
|||||
При k = n такой многочлен единственный, |
а при |
k > n |
их бесконечное |
множество, поэтому будем считать k < n . Независимо от количества табличных данных на практике обычно ограничиваются многочленами степени не выше трех.
Сумма квадратов уклонений для многочлена (2.13) представляет собой неотрицательную функцию от переменных a0 ,...ak . Обозначим ее
F :
n |
+ ... + a1 xi + a0 − yi ) 2 . |
|
F (a0 ,..., ak ) = ∑ (ak xik |
(2.14) |
i=0
Требующиеся нам наилучшие коэффициенты многочлена должны давать минимум функции F . Из курса математического анализа известно, что необходимым условием экстремума дифференцируемой функции многих переменных является равенство нулю ее частных производных по всем переменным. Вычислим их и приравняем к нулю:
Fa′0 |
= 2∑ (ak xik + ... + a1xi |
+ a0 − yi ) = 0, |
||
|
|
|
|
|
Fa′ |
= 2∑ (ak xik + ... + a1xi |
+ a0 − yi )xi |
= 0, |
|
|
1 |
|
|
(2.15) |
|
|
|
|
|
........................................................ |
|
|||
|
|
= 2∑ (ak xik + ... + a1xi |
+ a0 − yi )xik |
= 0. |
Fa′ |
||||
|
k |
|
|
|
Проведя суммирование, собрав коэффициенты при a0 ,..., ak . и пере-
неся не содержащие их суммы в правую часть, получим систему линейных
уравнений относительно неизвестных a0 ,..., ak |
|
|
|
ak ∑ xik + ... + a1∑ xi + a0 (n + 1) |
= ∑ yi |
|
|
|
= ∑ yi xi |
|
|
ak ∑ xik +1 + ... + a1∑ xi2 + a0 ∑ xi |
. |
(2.16) |
|
|
|
.............................................
ak ∑ xi2k + ... + a1∑ xik +1 + a0 ∑ xik = ∑ yi xik .
34
Обозначим
|
|
n |
|
|
|
n |
|
|
|
|
|
n |
|
|
|
|
M y |
= ∑ yi , M |
m |
= ∑ xim , M |
|
m = ∑ yi xim (m ³ 1) |
(2.17) |
||||||||||
|
|
i =0 |
x |
|
|
i =0 |
|
yx |
|
|
i =0 |
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
и перепишем систему (1.16) в виде: |
|
|
|
|
|
|
|
|
|
|||||||
M |
k ak + ... + M xa1 + (n + 1)a0 = M y , |
|
|
|
||||||||||||
|
x |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
+ ... + M x 2 a1 + M x a0 |
= M yx , |
|
|
||||||||||
M x k +1 ak |
|
|
||||||||||||||
........................................ |
|
|
|
|
|
|
|
(2.18) |
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
M 2k a |
k |
+ ... + M |
|
k +1 a + M |
|
k a |
0 |
= M |
|
k . |
|
|||||
|
x |
|
|
|
x |
|
1 |
x |
|
|
|
yx |
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
Пусть решением системы (2.18) является вектор (a0 ,..., ak ) . Он дей-
ствительно дает наименьшее значение для суммы (2.14), т.е. является точкой минимума функции F . Это означает, что из всех многочленов k − й
степени многочлен Pk (x) = ak xk + ... + a1x + a0 будет самым хорошим при-
ближением к рассматриваемой нами табличной функции (по методу наименьших квадратов).
В случае линейной функции y = ax + b система (2.18) и ее коэффи-
циенты запишутся так:
M
M
|
n |
|
|
n |
где M x |
= ∑ xi |
, M |
2 |
= ∑ xi2 , M |
|
i=0 |
x |
|
i =0 |
|
|
|
xa + (n +1)b = M y ,
|
|
(2.19) |
x |
2 a + M xb = M yx , |
|
|
|
|
|
n |
n |
y = ∑ yi , M yx |
= ∑ yi xi . |
|
|
i =0 |
i =0 |
35
3. Численное интегрирование
3.1. Простейшие квадратурные формулы
Пусть необходимо вычислить значение определенного интеграла
b |
|
I = ∫ f (x)dx. |
(3.1) |
a
Обычно для вычисления значения определенного интеграла применяют специальные численные методы. Широко используются квадратурные формулы. В этих случаях применяется приближенное равенство вида:
b |
n |
|
∫ f (x)dx ≈ ∑ci f (xi ), |
(3.2) |
|
a |
i =0 |
|
где ci – числовые коэффициенты (веса квадратурной формулы), xi – |
точки |
|
из отрезка [a,b] (узлы квадратурной формулы); n ³ 0 – целое число. |
|
Сумма в правой части приближенного равенства называется квадратурной суммой. Разность между левой и правой частями приближенного равенства называется остаточным членом квадратурной формулы.
Квадратурная формула (2.2) точна для многочлена Pm (x) степени m
, если для любого многочлена степени m и выше формула дает точное значение интеграла. Последнее можно записать следующим образом:
b |
n |
∫ Pm (x)dx = ∑ci Pm (xi ). |
|
a |
i =0 |
Замечание. Среди двух квадратурных формул, вычисляющих интеграл с заданной точностью, как правило, более эффективной считается та, в которой используется меньшее число узлов.
Традиционно интеграл (3.1) интерпретируют как площадь криволинейной трапеции, ограниченной кривой y = f (x) , осью x и прямыми x = a, x = b . Разобьем отрезок [a,b] на элементарные отрезки [xi−1, xi ] точ-
36
ками x = x0 < x1 < ... < xn = b . Интеграл (3.1) можно представить тогда в ви-
де следующей суммы
n |
xi |
|
|
|
|
|
|
I = ∑ Ii , Ii = |
∫ f (x)dx. |
|
|
|
|
|
|
i=1 |
xi −1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Введем обозначения: fi = f (xi ), |
fi −1/ 2 = f (xi−1/ 2 ) = |
x |
i−1 |
+ x |
i |
|
|
f |
|
|
. |
||||
|
2 |
|
|||||
|
|
|
|
|
Пусть шаг h = xi − xi−1 постоянная величина.
3.1.1.Формула прямоугольников
Заменим приближенно элементарную площадь под кривой площадью элементарного прямоугольника.
Элементарная квадратурная формула прямоугольников выглядит следующим образом:
Ii ≈ hfi −1/ 2 .
y = f (x)
a = x0 x1 |
xn = b |
|
|
Рис. 2. Метод прямоугольников (центральный).
37
Составная квадратурная формула прямоугольников выглядит следующим образом:
|
n |
I ≈ Iпрh |
= h( f1/ 2 + f3/ 2 + ... + fn−1/ 2 ) = h∑ fi−1/ 2 , |
|
i=1 |
где h = (b − a) / n, xk |
= a + kh (k = 0,1,2,..., n) . |
Формула соответствует приближенной замене исходной площади площадью ступенчатой фигуры, изображенной на рис. 2.
Иногда используют формулы:
n−1 |
n |
I ≈ h∑ fi , I ≈ h∑ fi , |
|
i =0 |
i =1 |
называемые соответственно составными квадратурными формулами левых и правых прямоугольников.
Геометрические иллюстрации приведены на рис. 3, 4.
y = f (x)
a = x0 x1 |
xn = b |
|
|
Рис. 3. Метод прямоугольников (левый)
38
y = f ( x)
|
|
|
|
|
a = x0 |
|
x1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
xn |
= b |
|
|
|
|
|
|
|||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||||||||||||||||||||||
|
|
|
|
|
|
Рис. 4. Метод прямоугольников (правый) |
|
|
|
|
|
|
|||||||||||||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
8 |
|
dx |
|
|
Пример. По формулам прямоугольников, прияв n=4, вычислить ∫ |
|
. |
|||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0 |
2x + 1 |
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
Решение. В данном случае |
f (x) = 1 (x + 3) , |
a = 0 , |
|
b = 8 . С помощью фор- |
|||||||||||||||||||||||||||||||||||||||||||||
мул находим: |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
h = 2 , x0 = 0 , x1 = 2 , x2 = 4 , x3 = 6 , x4 = 8 ( x0 = a = 0 , x4 = b = 8 ); |
|||||||||||||||||||||||||||||||||||||||||||||||||
y |
|
= f (x |
|
) = |
|
1 |
|
|
= |
1 |
|
= 1, y = f (x ) = |
|
1 |
|
|
= |
|
1 |
= |
1 |
, |
|
||||||||||||||||||||||||||
0 |
0 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||||||||||||||
|
|
|
|
2x0 |
|
+ 1 0 + 1 |
1 |
|
|
|
|
|
|
|
1 |
|
|
|
|
2x1 + 1 4 + 1 5 |
|||||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||||||||||||||
|
|
y |
|
|
= f (x |
|
) = |
1 |
, y |
|
= f (x ) = |
1 |
|
, y |
|
|
|
= f (x |
|
) = |
1 |
. |
|
|
|
|
|
||||||||||||||||||||||
|
|
2 |
2 |
|
|
3 |
|
|
4 |
4 |
|
|
|
|
|
|
|||||||||||||||||||||||||||||||||
|
|
|
|
|
|
9 |
|
|
|
|
3 |
|
|
13 |
|
|
|
|
|
|
|
|
|
|
|
19 |
|
|
|
|
|
|
|||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||
Получаем: I Л = h( y0 + y1 + y2 + y3 ) = |
|
+ |
|
1 |
|
+ |
1 |
|
+ |
|
1 |
= 2,7761, |
|
|
|
|
|
||||||||||||||||||||||||||||||||
2 1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||||||||||||||||||
5 |
|
9 |
|
|
|
|
|
|
|
|
|
||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
13 |
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
1 |
|
|
1 |
|
|
|
1 |
|
|
|
|
|
|
|
|
|
|
|
|
||||||||
|
|
I П = h( y1 + y2 |
+ y3 |
+ y4 ) = 2 |
|
|
+ |
|
|
|
+ |
|
|
|
|
|
+ |
|
|
|
|
|
= 0,88133. |
|
|
|
|
||||||||||||||||||||||
|
|
|
|
9 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5 |
|
|
|
|
|
13 |
|
19 |
|
|
|
|
|
|
|
|
|
|
3.1.2.Формула трапеций
Суть метода в том, что подинтегральная функция на частичных отрезках заменяется на соответствующий полином, найденный с помощью
39
линейной интерполяции. Геометрически это означает замену криволинейной трапеции ступенчатой фигурой, состоящей из прямоугольных трапеций. Приближенное значение интеграла – сумма площадей полученных трапеций (рис. 5):
b |
y |
|
+ y |
|
|
|
|
|
∫ f (x)dx » I n |
0 |
n |
|
|
||||
= h |
|
|
+ y1 |
+ ... + yn−1 |
. |
|||
|
|
2 |
|
|||||
a |
|
|
|
|
|
|
Оценка погрешности осуществляется по формулам:
I - I n |
|
= |
|
Rn |
|
£ Vn , Vn |
= M 2 |
× |
(b - a)3 |
, M 2 |
= max |
|
′′ |
|
. |
|
|
|
|
|
|
||||||||||||
|
|
|
|
|
|
f (x) |
|
|||||||||
|
|
|
|
|
|
|
|
|
12n |
2 |
|
[a;b] |
|
|
|
|
y = f ( x)
|
a = x0 x1 |
|
|
|
xn |
= b |
||
|
|
|
|
|
|
|
|
|
|
Рис. 5. Метод трапеций |
|
|
|
|
|
||
1 |
|
|
dx |
|
|
|||
Пример. Вычислить приближенно интеграл ∫ |
|
|
по формуле |
|||||
1 |
+ x |
|||||||
0 |
|
|||||||
|
|
|
|
|
||||
трапеций, приняв n = 5 . |
|
|
|
|
|
|||
Решение. |
|
|
|
|
|
|||
В данном случае по расчетной формуле |
|
|
|
|
|
xk = x0 + kh (k = 1,2,...,5) , где h = (1 − 0) / 5 = 0,2 ,
получаем x1 = 0 + 1 × 0,2 = 0,2; x2 = 0,4; x3 = 0,6; x4 = 0,8; x5 =1. Так как y = 1/(1 + x) , то yk = 1/(1 + xk ) (k = 0,1,...,5) .