Смекни!
smekni.com

Наближене обчислення визначених інтегралів, що не беруться через елементарні функції /Укр./ (стр. 3 из 3)

Нарешті, для випадку ділення проміжку на

рівних частин

(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#

Додаток 2.

Далі подані результати роботи програми, яка викладена в додатку 1.

1)

в межах від 0 до

n=1000

Метод Сімпсона -8.742278155181581D-08

Метод трапецій -8.742270585611512D-08

Метод лівих прямокутників 3.141505318306509D-03

Метод центральних прямокутників -3.14167628761223D-03

Метод правих прямокутників -6.283265152840917D-03

2)

в межах від 0 до

n=1000

Метод Сімпсона 2.000000000000067

Метод трапецій 1.999998355065565

Метод лівих прямокутників 1.999998355202888

Метод центральних прямокутників 1.999995887392223

Метод правих прямокутників 1.999990952591778

3)

в межах від 0 до 1
n=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 до 1

n=1000

Метод Сімпсона .7468241385662959

Метод трапецій .7468240772530558

Метод лівих прямокутників .7471401375268841

Метод центральних прямокутників .7471916808878213

Метод правих прямокутників .7461916811378212

5)

в межах від 0 до

n=1000

Метод Сімпсона .8323745796964475

Метод трапецій .8323723082182791

Метод лівих прямокутників .8325874590746988

Метод центральних прямокутників .8319367429487694

Метод правих прямокутників .8319318081462942

Висновки.

У данній роботі було розглянуто методи наближених обчислень визначених інтегралів, були виведині формули обчислень, формули додаткових членів. Результати, які наведені в додатку 2 наочно показують, що найбільш вигідним є використання формули Сімпсона.

Література.

1. Пискунов Н. С. Дифференциальное и интегральное исчисление для ВТУЗов. Т. 1 М.: 1968.

2. Воробьева Г. Н., Данилова А. Н. Практикум по численным методам.
М.: 1979.

3. Математический практикум. М.: 1960.