Методи парабол (Сімпсона) і більш високих ступенів (ньютона

У даній статті описується метод обчислення власного інтеграла гладкої функції за допомогою квадратурних формул. Формули Ньютона-Котеса мають наступні особливості:

  • Необхідною умовою збіжності даного методу є існування і обмеженість похідною функції (порядок похідної залежить від обраної формули)
  • Формули Ньютона-Котеса володіють високим порядком точності
  • Формули порядку, "/>

де - задана і інтегрована на відрізку функція. На відрізку вводиться сітка ^ N "/>

де - значення функції у вузлах. де - вагові множники. залежать тільки від вузлів, але не залежать від вибору. Формула (2) називається квадратурної формулою. Завдання чисельного інтегрування за допомогою квадратур полягає у знаходженні таких вузлів "/> і таких ваг" />, щоб похибка квадратурної формули

була мінімальною по модулю для функції з заданого класу (величина залежить від гладкості). Похибка залежить як від розташування вузлів, так і від вибору вагових коефіцієнтів. Введемо на рівномірну сітку з кроком. тобто безліч точок, і уявімо інтеграл (1) у вигляді суми інтегралів по частковим відрізкам:

Для побудови формули чисельного інтегрування на всьому відрізку досить побудувати квадратурної формули для інтеграла

на часткове відрізку, x_i] "/> і скористатися властивістю (3).

Побудова квадратурних формул

В силу вищевикладеного, обчислення наближеного значення інтеграла проводиться за допомогою квадратурної формули

Дану формулу за допомогою заміни можна привести до стандартного вигляду

У загальному випадку вузли і ваги невідомі і як це буде визначено.

Розглянемо випадок, коли вузли задані і потрібно знайти ваги квадратурної формули "/>. Будемо користуватися вимогою: формула (5) повинна бути точною для будь-якого полінома ступеня. Для того щоб поліном ступеня задовольняв даній вимозі, досить зажадати, щоб квадратурная формула була точною для будь-якого одночлена ступеня. З огляду на, що "/>, отримуємо рівняння

Ця система має єдине рішення, так як її визначником є ​​визначник Вандермонда, відмінний від нуля якщо немає співпадаючих вузлів,

так як вона точна для) ^ 3 "/>:

Формули трикутника і трапеції точні для лінійної функції, тобто. для полінома першого ступеня, в чому легко переконатися безпосередньо. У загальному випадку в якості можна вибрати інтерполяційний поліном Лагранжа

де (s) "/> - інтерполяційний коефіцієнт Лагранжа. З рівності

видно, що формула (5) вірна для полінома ступеня, якщо вагові коефіцієнти визначаються за формулою

Формули такого типу називають квадратурними формулами Котеса.

виклад методу

Застосування квадратурних формул

Повернемося до розгляду інтеграла (1). Як було показано вище, даний інтеграл заміною зводиться до інтеграла на одиничному відрізку, а отже легко узагальнити формули для наближеного обчислення інтеграла на одиничному відрізку на довільний. Застосуємо апарат квадратурних формул. Нехай задано рівномірне розбиття відрізка з кроком, де позначимо. Нехай також обрана деяка квадратурная формула Ньютона-Котеса (тобто обрана ступінь полінома, а отже кожен поліном будується по точці сітки). Ми також вважаємо, що даний набір з точки можна розбити на піднабори по точок з однаковими крайнім, тобто

Тоді, підсумовуючи значення квадратур на кожному піднаборі, отримаємо наближене значення шуканого інтеграла. Якщо позначити вагові множники то наближене значення інтеграла можна записати у вигляді подвійної суми

Даний алгоритм природним чином узагальнюється на випадок, коли ^ K "/>, де, а на кожному відрізку задана рівномірна сітка. Тоді шуканий інтеграл дорівнює

а на кожному з часткових відрізків наближене значення інтеграла обчислюється за допомогою квадратурних формул.

Приклади квадратурних формул

Наведемо приклади квадратурних формул Котеса на рівномірній сітці з кроком, де позначимо:

  • для 2 точок (метод трапецій),
h (f_0 + f_1), "/>" />
  • для 3 точок (метод Сімпсона),
h (f_0 + 4f_1 + f_2), "/>" />
  • для 4 точок,
h (f_0 + 3f_1 + 3f_2 + f_3), "/>" />
  • для 5 точок,
h (7f_0 + 32f_1 + 12f_2 + 32f_3 + 7f_4), "/>" />
  • для 6 точок,
h (19f_0 + 75f_1 + 50f_2 + 50f_3 + 75f_4 + 19f_5), "/>" />
  • для 7 точок,
h (41f_0 + 216f_1 + 27f_2 + 272f_3 + 27f_4 + 216f_5 + 41f_6), "/>" />
  • для 8 точок,
h (751f_0 + 3577f_1 + 1323f_2 + 2989f_3 + 2989f_4 + 1323f_5 + 3577f_6 + 751f_7), "/>" />
  • для 9 точок,
h (989f_0 + 5888f_1-928f_2 + 10496f_3-4540f_4 + 10496f_5-928f_6 + 5888f_7 + 989f_8), "/>" />
  • для 10 точок,
h (2857f_0 + 15741f_1 + 1080f_2 + 19344f_3 + 5778f_4 + 5778f_5 + 19344f_6 + 1080f_7 + 15741f_8 + 2857f_9). "/>" />

аналіз методу

Похибка квадратурної формули

Нехай функція має -ю безперервну похідну на відрізку, тобто, - точки, в яких задано значення функції. Нехай використовується квадратурная формула -го порядку. введемо функцію

Тоді формула для похибки має такий вигляд

Звідси випливає оцінка для похибки

при (t) | "/>, де> 0" /> 0 "/> - постійна, і при

Якщо (t) "/> не змінює знака на відрізку, то в силу теореми про повну загальну середню маємо

Чисельна стійкість квадратурних формул

Відзначимо, що формули Ньютона-Котеса з рідко використовуються через їх чисельної нестійкості, яка призводить до різкого зростання обчислювальної похибки. Причиною такої нестійкості є те, що коефіцієнти формул Ньютона-Котеса при великих мають різні знаки, а саме при існують як позитивні, так і негативні коефіцієнти.

Розглянемо квадратурну суму

Припустимо, що значення функції, заданої на відрізку, обчислюються з деякою погрішністю, тобто замість точного значення отримуємо наближене значення. Тоді замість отримаємо суму

Оскільки квадратурная формула точна для, маємо

і не залежить від.

Припустимо тепер, що всі коефіцієнти невід'ємні. Тоді з (11) і (12) отримаємо оцінку

яка означає, що при великих похибка в обчисленні квадратурной суми (10) має той же порядок, що і похибка в обчисленні функції. У цьому випадку говорять, що сума (10) обчислюється стійко.

Якщо коефіцієнти мають різні знаки, то може виявитися, що сума ^ n "/> не є рівномірно обмеженою по і, отже похибка в обчисленні необмежено зростає з ростом. У цьому випадку обчислення за формулою (10) будуть нестійкі і користуватися такою формулою при великих не можна.

числовий експеримент

Наведемо приклади обчислення інтегралів з використанням формул Ньютона-Котеса. При реалізації використовувався мова C ++, нижче наведено код функції, що повертає наближене значення інтеграла.

Вихідний код функції

На вхід функція приймає 4 параметра

double a - лівий кінець досліджуваного відрізка

double b - правий кінець досліджуваного відрізка

int Degree - ступінь використовуваного полінома

int Ndivisions - кількість відрізків, на які розбивається вихідний. Збігається зі значенням у формулі (7)

f - інтегрована функція

Обчислимо за формулами Котеса ступенів від 1 до 9 значення інтеграла

Обчислення будемо проводити не розбиваючи відрізок на часткові, тобто використовуючи точку, де-ступінь полінома. Результати наведені нижче в таблиці. Округлення проводилися з точністю 6 знаків після коми.

Наближене значення інтеграла

рекомендації програмісту

Автоматичний вибір кроку інтегрування за допомогою апостеріорної оцінки похибки методом Рунге

Величина похибки чисельного інтегрування залежить як від кроку сітки, так і від гладкості підінтегральної функції. У величину похибки, крім входить також величина (\ xi) "/>, яка може сильно змінюватися на відрізку і заздалегідь невідома. Для зменшення величини похибки, можна подрібнити сітку на заданому відрізку. Але при цьому необхідно апостериорно оцінювати похибка. Таку оцінку похибки можна здійснити методом Рунге. Розглянемо застосування якоїсь квадратурной формули на частковому відрізку, x_i] "/>. Позначимо за значення інтеграла на всьому отреpке, за значення інтеграла на -ом частковому відрізку, за наближене значення інтеграла на всьому відрізку, отримане за допомогою заданої квадратурной формули і рівномірному сітки з кроком, а за "/> наближене значення інтеграла на -ом частковому відрізку . Нехай дана квадратурная формула на даному частковому відрізку має порядок точності, тобто

де с - деяка константа. тоді

Нехай використовується складова квадратурная формула

причому на всіх часткових відрізках використовуються квадратурні формули з одним і тим же порядком точності (або ж, зокрема, одна і та ж формула). Проведемо на кожному частковому відрізку, x_i] "/> обчислення двічі - один раз з кроком, другий раз з кроком" /> і апостериорно оцінимо похибку за правилом Рунге (14). Якщо для заданого 0 "alt =" \ varepsilon> 0 "/> при виконуватимуться нерівності

тобто буде досягнута задана точність.

Якщо ж на якомусь з часткових відрізків оцінка (15) не виконуватиметься, то крок на цьому відрізку треба подрібнити ще в два рази і знову оцінити похибку. Подрібнення сітки на даному відрізку слід проводити до тих пір, поки не буде досягнута оцінка виду (15). Зауважимо, що для деякої функції таке подрібнення може тривати занадто довго. Тому у відповідній програмі слід передбачити обмеження зверху на число подрібнень.

Таким чином, автоматичний вибір кроку інтегрування призводить до того, що інтегрування ведеться з великим кроком на ділянках плавної зміни функції і з дрібним кроком - на ділянках швидкої зміни. Це дозволяє при заданій точності зменшити кількість обчислень значень в порівнянні з розрахунком на сітці з постійним кроком. Підкреслимо, що для знаходження сум не треба перераховувати значення у всіх вузлах, досить обчислювати тільки в нових вузлах.

висновок

Формули Сімпсона і Ньютона-Котеса є хорошим апаратом для обчислення певного інтеграла достатнє число раз безперервно диференціюється. На прикладі формул -го порядку ми бачимо, що при обмеженій похідною -го порядку точність формул є, де - крок сітки, а n "/> n" />. Тобто при виконанні умов застосовності даного методу, формули дають високий порядок збіжності. Однак при великих, зокрема вже при, обчислення наближеного значення інтеграла стає чисельно нестійкий, що робить їх непридатними.

Список літератури