ВУЗ:
Составители:
Рубрика:
-30-
ния следует разделить на четное число частей. В этом случае
формула Симпсона имеет вид:
()
⎟
⎠
⎞
⎜
⎝
⎛
+−++=
=+++++≈
∑
∫
−
=
+
−
n
n
i
i
i
nn
b
a
yyy
h
yyyyy
h
dxxf
1
1
1
0
1210
))1(3(
3
4...24
3
)(
О точности вычислений. Оценка погрешности вычисления
определенного интеграла делается по формулам Рунге. Практи-
чески требуется выбор надлежащего шага разбиения h. Тогда ал-
горитм вычисления сводится к следующему. Выбираются шаги
h
1
и
h
2
, причем h
2
<h
1
. Используя эти шаги, по какому-либо методу
вычисляют величины интеграла
A
1
=A(h
1
) и A
2
=A(h
2
), которые
суть приближения к истинному значению
A. Если A
1
и A
2
оказы-
ваются близкими по некоторому критерию точности, то за иско-
мое значение принимается
A
2
. В противном случае выбирается
новый шаг
h
3
<h
2
и снова вычисляется значение A
3
=A(h
3
), которое
сравнивается с
A
2
. Удобно принимать h
i+1
=h
i
/2, (метод двойного
пересчета). Значение
A считается найденным, если выполняется
условие
ε
≤−
+ ii
AA
1
при 1
1
≤
+i
A или
ε
≤
−
+
+
1
1
i
ii
A
AA
при 1
1
>
+i
A
Если эти условия не выполняются, то процесс уменьшения
шага продолжается. Таким образом, реализация указанного мето-
да сводится к вычислению определенного интеграла при задан-
ном шаге
h
1
и при шаге h
2
=h
1
/2, что удобно оформить в виде про-
цедуры или функции. Полученные значения сравниваются и, ес-
ли условия достижения заданной точности не выполняются, то
цикл
Do-Loop продолжается.
Пример: интегрирование методом срединных треугольников.
Public Function IntegrFunc(ByVal Left, Rigth As Dou-
ble, N As Long) As Double
Dim summ, pas As Double
pas = (Rigth - Left) / N
XI = Left + pas / 2
summ = 0
i = 0
-30- ния следует разделить на четное число частей. В этом случае формула Симпсона имеет вид: b h ∫ f ( x ) dx ≈ ( y0 + 4 y1 + 2 y2 + ... + 4 yn −1 + yn ) = a 3 n −1 h⎛ ⎞ = ⎜ y0 + ∑ (3 + (−1)i +1 ) yi + yn ⎟ 3⎝ i =1 ⎠ О точности вычислений. Оценка погрешности вычисления определенного интеграла делается по формулам Рунге. Практи- чески требуется выбор надлежащего шага разбиения h. Тогда ал- горитм вычисления сводится к следующему. Выбираются шаги h1 и h2, причем h21 Ai +1 Если эти условия не выполняются, то процесс уменьшения шага продолжается. Таким образом, реализация указанного мето- да сводится к вычислению определенного интеграла при задан- ном шаге h1 и при шаге h2=h1/2, что удобно оформить в виде про- цедуры или функции. Полученные значения сравниваются и, ес- ли условия достижения заданной точности не выполняются, то цикл Do-Loop продолжается. Пример: интегрирование методом срединных треугольников. Public Function IntegrFunc(ByVal Left, Rigth As Dou- ble, N As Long) As Double Dim summ, pas As Double pas = (Rigth - Left) / N XI = Left + pas / 2 summ = 0 i = 0