Составление программы вычисления определённого интеграла функции. Формула Симпсона, страница 3

Выбор в качестве начального значения x величины a + h/2 обеспечивает сдвиг всех значений x на h/2 относительно концов участков интегрирования. Так же, как и во всех рассмотренных алгоритмах, каждое значение x отличается  от предыдущего на величину шага: x i = xi-1 + h. В формуле (6) суммирование проводится для  i= 0, 1, 2, ..., n-1, в то время как в схеме на рис. 6 параметр цикла i изменяется от 1 до n . Это позволяет упростить запись в блоке модификации, не изменив общего количества сложений (n).

5. Автоматический выбор шага интегрирования

В результате расчетов по формулам (3) - (6) получаем приближенное значение интеграла, которое может отличаться от точного на некоторую величину, называемую погрешностью интегрирования. Ошибка определяется формулой остаточного члена R(h), различной для каждого из методов интегрирования. Если потребуется вычислить значение интеграла с погрешностью, не превышающей E, то необходимо выбрать такой шаг интегрирования h , чтобы выполнялось неравенство R(h) < E. Так как определение остаточного члена нередко приводит к громоздким вычислениям, на практике используют автоматический выбор величины h , обеспечивающей достижение заданной погрешности. Сначала вычисляют значение интеграла Sn , разбивая интервал интегрирования на  n участков, затем число участков удваивают и вычисляют интеграл S2n . Если /Sn  - S2n / < E, то в качестве приближенного значения интеграла принимают значение S2n . Если окажется, что /Sn - S2n / > E, то число участков удваивают и процесс вычислений повторяют.

Алгоритмы вычисления определенного интеграла с автоматическим выбором шага интегрирования приведен на рис. 6.

В схеме алгоритма переменная Z представляет собой предыдущее значение интеграла, вычисленное на n участках интегрирования (Sn ); переменная S - очередное (текущее) значение интеграла, вычисленное на 2n участках (S2n ). Начальное значение n можно принять равным двум для любого метода вычисления интеграла (блок 2 ), начальное значение z принимается равным нулю (блок 3). В блоке 4 для вычисления приближенного значения интеграла S  используется любой из известных  алгоритмов численного интегрирования на заданном числе участков. Если условие сходимости /Z-S/<E не выполняется, то в блоке 6 вычисленное значение интеграла запоминается в переменной Z , число участков интегрирования n  удваивается и процесс вычислений повторяется.

Рис. 6

                                                            ВХОД

                                                           2

                                                    Задание начального значения n

                                                           2

                                                             Z=0

                                                           3

                                                  Вычисление при ближенного зна чения интеграла

S

 


                                                           4

                                                         ôz-s ô<=e       +

                                                           5          -                    6

                                                      z=s                                ВЫХОД

n=2*n

Блок-схема решения задачи

                                                                       1

НАЧАЛО

                                                                       2

                                                             Блок описания пер.

                                                                       3