Студопедия

Главная страница Случайная страница

КАТЕГОРИИ:

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Формула Симпсона




Применяя интерполяционную формулу Лагранжа при n = 2, получим значения коэффициентов:

.

(6.15)

Геометрический смысл формулы Симпсона (6.15) заключается в том, что кривая y = y(x) заменяется частью параболы, проходящей через три точки
(x0, y0), (x1, y1) и (x2, y2).

Формула Симпсона точна не только для полинома второй степени, но и для полинома третьей степени в силу симметрии, показанной на рис. 6.4б.

Рис.6.4

Остаточный член формулы (6.15) имеет порядок O(h5).

Общая формула Симпсона строится для четного n = 2m, ; при этом применяя формулуа (6.15) применяется для каждого из отрезков [x0, x2], [x2, x4], …, [xn–2, xn]:

. (6.16)

Поменять местами второе и третье; h/3 вынести за знак суммы

Остаточный член общей формулы Симпсона (6.16) имеет порядок O(h4).

Пример 6.2. Вычислить по формуле Симпсона (6.16) интеграл

,

используя разбиение отрезка на n = 10 частей.

Решение.Проведем вычисления в программе Excel. В столбце A и B запишем значения индекса i и переменной x. В ячейку B2 вводим формулу =sin(B2)/B2 и маркером заполнения копируем в ячейки B3:B12. В ячейках D2:D12 вводим коэффициенты при yi общей формулы Симпсона (6.16). В ячейку D13 вводим формулу =СУММПРОИЗВ(C2:C12;D2:D12)*0,1/3. Результаты вычислений приведены в таблице 6.2.

Табл. 6.2

  A B C D
i xi yi Коэффициенты
1,1 0,909091
1,2 0,833333
1,3 0,769231
1,4 0,714286
1,5 0,666667
1,6 0,625
1,7 0,588235
1,8 0,555556
1,9 0,526316
0,5
  Интеграл=   0,693150231

Найдем относительную погрешность

Как видим, формула Симпсона дает более высокую точность по сравнению с методом трапеций.

Создадим в файле программы Excel для решения примера 6.2 макрос — функцию для вычисления интеграла по формуле Симпсона (6.16).

С помощью меню «Сервис — Макроc — Редактор Visual Basic» откроем окно редактора, выполним команду «InsertModule» и введем программы

Function f(x): f = 1 / x: End Function

Function Int_Simpson(a, b, n)

s = 0: h = (b - a) / n: h2 = h * 2: x = a

For i = 0 To n - 2 Step 2

s = s + f(x) + 4 * f(x + h) + f(x + h2): x = x + h2

Next i

Int_Simpson = h * s / 3: End Function

Теперь, если в ячейку D14 введем формулу =Int_Simpson(1;2;10), получим приближенное значение 0,693150231.


mylektsii.ru - Мои Лекции - 2015-2019 год. (0.007 сек.)Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав Пожаловаться на материал