8(495)909-90-01
8(964)644-46-00
pro@sio.su
Главная
Системы видеонаблюдения
Охранная сигнализация
Пожарная сигнализация
Система пожаротушения
Система контроля удаленного доступа
Оповещение и эвакуация
Контроль периметра
Система домофонии
Парковочные системы
Проектирование слаботочных сетей
Аварийный
контроль
Раздел: Документация

0 ... 116 117 118 119 120 121 122 ... 177

Вычислив приближения по Сим пеону, можно получить приближения еще на два порядка более точные, если применить рекуррентную формулу Буля:

16S(f,b)-S(f,2b? 15

В общем виде формула уточнения имеет вид:

щ. k?=4kR(J,k-l>-R(j-l,k-l) 4k-l

Проще всего понять ее смысл можно, представив себе соответствующую таблицу приближений. Первый столбец на j элементов будет полностью заполнен приближениями, полученными с помощью рекурренп юЙ формулы трапеций. Приближений по Симлсону будет на одно меньше, поскольку первое приближение алгоритма трапеций не имеет верхней, вычислепной при вдвое большем шаге, пары. Соответствен но в столбце приближений, вычисленных по формуле Буля, не будет двух верхних элементов, в следующем столбце — трех и т. д. В результате будет получена нижняя треугольная матрица, элемент нижнего правого угла которой и является наиболее точным приближением (рис. 10.6).

RCJ.0)

Формула [трапеций

ад и

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

ЩИ) Формула Буля

Щ 3)

Третье приближение

Четвертое приближение

0 1

: з

R(4,0} щ4, 1). "" щ4, 2) К(4,3)К(4, 4)

Рис. 10.в. Схема интегрирования по Ромбергу для пяти приближений

Если отнять полученную при вычислении интефала по Ромбергу матрицу от соразмерной, все ненулевые элементы которой - истинные значения подсчитываемого интеграла, поделить на величину истинного значения и умножить на 100, то в результате получится характеристическая мафица процентных ошибок приблизительно следующего вида:

( 38.7894ОО

21.46018 -4.71976О

5.19406 -0227990.07146

0 О

(1

o

о

о

1.28842

-0.01346 8.4345510 * -2.775x10 4

0.32148 -82955x10 4 1.2375x10 5 -8.15х 10 7 2.7 х 10 7 0

к, 0.08033 -5.167х Ю

,-5

1.9 х 10

„- 7

~5х 10


Из этой матрицы видно, сколь быстро убывают ошибки последовательных приближений, вычисляемых с помощью описанных рекуррентных формул. Самих же вычислений при этом нужно сделать очень немного. Поэтому метод Ромберга нетолько очень точен, но и весьма быстр.

4. В программной реализации алгоритма Ромберга удобно осуществлять одновременное нахождение всех возможных для данного шага приближений (то есть на каждом круге никла white заполняется одна строка приведенной выше матрицы, начиная со второй):

for ke 1..J

4Ч,к-Г Vt.k-l 4k-1

В качестве условия остановки цикла в методе Ромберга обычно используют критерий разности двух последних приближений, лежащих на диагонали матрицы (R, ( и Rj.jj)- В том случае, если разность по модулю окажется MeitbiueTOL, то цикл будет остановлен и в виде ответа будет выдано последнее приближение:

break ii-R

<TOL

Как видите, реализация метода Ромберга, в общем, несложна. Однако все равно стоит привести соответствующую программу в «собранном» виде:

Roraberg(fta,b,TOL) :=

ь - а)

0 г

while 1 J <- J+ 1

J

(fi» + Щ)

2

p=l

for Ice 1..J

4ltRJ,k-l"RJ-].k-]

4k-l

break If IRj-R

<TOL


Проверим, насколько качественно работает написанная программа. Для этого сравним результат расчета интеграла, произведен но го ею, с точным аналитическим значением данного интеграла:

Как видно из приведенных примеров, эффективность написанной программы очень высока и точность результатазначительно превышает точность уровня T0L Кроме того, алгоритм очень быстро сходится и расчет даже с предельной точностью занимает долг секунды. А это означает, что метод Ромберга можно применять для вычисления интегралов любого типа, а также кратных интегралов.

Описывать остальные встроенные в Mathcad методы мы не будем, прежде всего по причине ИХ специфичности. При желании информацию о них вы сможете найти в справочной системе программы или в книге, посвященной численным методам.



0 ... 116 117 118 119 120 121 122 ... 177