Нарешті, для випадку ділення проміжку на
рівних частин (14).Таким є залишковий член формули трапецій (2). При зростанні
він також зменьшуеться приблизно як . Ми бачемо, що застосування формули трапецій приводить до похибки того ж порядку, що і для формули прямокутників.Залишковий член формули Сімпсона.
Звернемося, нарешті до формули (8). Можно було б, аналогічно тому, як це було зроблено тількі що, знов скористатись формулою Лагранжа з залишковим членом і покласти
(15).Но ми стикаємося тут з таким станом речей, а саме, проінтегрувавши рівність (15), ми не змогли б спростити інтегральний вираз для додаткового члену за допомогою теореми про середне, бо вираз
в підінтегральній функції вже змінює знак на проміжку . Тому ми зробимо інакше.Вираз
,
яким би не було число
Тепер проінтегрувавши цю равність від
до ; ми знайдемо, щотак як
.Якщо припустити похідну
неперервною, то, як і в попередніх випадках, залишковий член формули (8) ,
користуючись тим, що другий множник в підінтергальному виразі не змінює знака, можно підставити в такому вигляді[2]:
Якщо проміжок
розділити на рівних частин, то – для формули Сімпсона (10) – отримаємо залишковий член у вигляді (16).При зростанні
цей вираз зменьшується приблизно як ; таким чином, формула Симпсона дійсно більш вигідна, ніж попередні дві формули.Додаток 1.
Текст программи для автоматичного обчислення інтегралів на мові програмування QBASIC:
'Тут описуються сталі
e = 2.718281828459045#
pi = 3.141592653589793#
'Тут задається від під інтегральної функції
DEF fny# (x#) = e^x# ^2
DEF fncoef# (i#) = (i# MOD 2) * 2 + 2
DEF fnxi# (i#) = a# + i# * h#
DEF fnxis# (i#) = a# + i# * h# / 2
DEF fnxic# (i#) = a# + i# * h# + h# / 2
DEF fnxir# (i#) = a# + i# * h# + h# / 2
CLS
'Тут вводяться межі інтегрування та
'кількість проміжків
INPUT “Введіть нижню межу інтегрування ” a#
INPUT “Введіть верхню межу інтегрування ” b#
INPUT “Введіть кількість проміжків ” n#
'Тут обчислюється крок
h# = (b# - a#) / n#
'Тут обчислюється наближене значення
'інтеграла за методом Сімпсона
integ# = 0
FOR i# = 1 TO ((2 * n#) - 1)
integ# = integ# + fncoef#(i#) * fny#(fnxis#(i#))
NEXT
integ# = integ# + fny#(a#) + fny#(b#)
integ# = integ# * (h# / 6)
PRINT "Simpson = "; integ#
'Тут обчислюється наближене значення
'інтеграла за методом трапецій
integ# = 0
FOR i# = 1 TO (n# - 1)
integ# = integ# + fny#(fnxi#(i#))
NEXT
integ# = integ# + (fny#(a#) + fny#(b#)) / 2
integ# = integ# * h#
PRINT "Trapeze = "; integ#
'Тут обчислюється наближене значення
'інтеграла за методом лівих прямокутників
integ# = 0
FOR i# = 0 TO (n# - 1)
integ# = integ# + fny#(fnxi#(i#))
NEXT
integ# = integ# * h#
PRINT "L Rectangle = "; integ#
'Тут обчислюється наближене значення
'інтеграла за методом центральних прямокутників
integ# = 0
FOR i# = 0 TO n#
integ# = integ# + fny#(fnxic#(i#))
NEXT
integ# = integ# * h#
PRINT "C Rectangle = "; integ#
'Тут обчислюється наближене значення
'інтеграла за методом правих прямокутників
integ# = 0
FOR i# = 1 TO n#
integ# = integ# + fny#(fnxir#(i#))
NEXT
integ# = integ# * h#
PRINT "R Rectangle = "; integ#
Далі подані результати роботи програми, яка викладена в додатку 1.
1)
в межах від 0 доМетод Сімпсона -8.742278155181581D-08
Метод трапецій -8.742270585611512D-08
Метод лівих прямокутників 3.141505318306509D-03
Метод центральних прямокутників -3.14167628761223D-03
Метод правих прямокутників -6.283265152840917D-03
2)
в межах від 0 доМетод Сімпсона 2.000000000000067
Метод трапецій 1.999998355065565
Метод лівих прямокутників 1.999998355202888
Метод центральних прямокутників 1.999995887392223
Метод правих прямокутників 1.999990952591778
в межах від 0 до 1n=1 | n=10 | n=100 | n=1000 | n=10000 | |
М-д Сімпсона | ,33333333333 | ,3333333333333 | ,3333333333333 | ,3333333333 | ,3333333333333 |
М-д трапецій | ,5 | ,335 | ,33335 | ,3333334999999 | ,3333333349999 |
М-д лів. прямокутників | 0 | ,2850000000000001 | ,32835 | ,3328334999999 | ,3332833349999 |
М-д центр. прямокутників | 2,5 | ,44275 | ,34342525 | ,33433425025 | ,3334333425002 |
М-д правих прсмокутників | 2,25 | ,4425000000000001 | ,3434249999999 | ,33433425 | ,3334333424999 |
4)
в межах від 0 до 1n=1000
Метод Сімпсона .7468241385662959
Метод трапецій .7468240772530558
Метод лівих прямокутників .7471401375268841
Метод центральних прямокутників .7471916808878213
Метод правих прямокутників .7461916811378212
5)
в межах від 0 доn=1000
Метод Сімпсона .8323745796964475
Метод трапецій .8323723082182791
Метод лівих прямокутників .8325874590746988
Метод центральних прямокутників .8319367429487694
Метод правих прямокутників .8319318081462942
Висновки.
У данній роботі було розглянуто методи наближених обчислень визначених інтегралів, були виведині формули обчислень, формули додаткових членів. Результати, які наведені в додатку 2 наочно показують, що найбільш вигідним є використання формули Сімпсона.
1. Пискунов Н. С. Дифференциальное и интегральное исчисление для ВТУЗов. Т. 1 М.: 1968.
2. Воробьева Г. Н., Данилова А. Н. Практикум по численным методам.
М.: 1979.
3. Математический практикум. М.: 1960.