Текст подпрограммы и версий ( Фортран ) qtt9r.zip qtt9d.zip |
Тексты тестовых примеров ( Фортран ) tqtt9r.zip tqtt9d.zip |
Текст подпрограммы и версий ( Си ) qtt9r_c.zip qtt9d_c.zip |
Тексты тестовых примеров ( Си ) tqtt9r_c.zip tqtt9d_c.zip |
Текст подпрограммы и версий ( Паскаль ) qtt9r_p.zip qtt9e_p.zip |
Тексты тестовых примеров ( Паскаль ) tqtt9r_p.zip tqtt9e_p.zip |
Вычисление определенного трехкратного интеграла от табличной функции, заданной на неравномерной сетке, по формуле трапеций.
По формуле трапеций вычисляется значение определенного тройного интеграла от табличной функции f (x, y, z), заданной на неравномерной сетке (xi, yj, zk), i = 1, ..., N, j = 1, ..., M, k = 1, ..., L .
Н.С.Бахвалов. Численные методы, "Hаука", M., 1975.
SUBROUTINE QTT9R (RINT, X1, X2, X3, F, N, M, L)
Параметры
RINT - | вещественная переменная, содержащая вычисленное значение интеграла; |
X1 - | вещественный вектоp длины N, содержащий узлы неравномерной сетки по x; |
X2 - | вещественный вектоp длины M, содержащий узлы неравномерной сетки по y; |
X3 - | вещественный вектоp длины L, содержащий узлы неравномерной сетки по z; |
F - | вещественный трехмерный массив размера N на M на L, содержащий значения функции f (x, y, z); |
N - | заданное число узлов сетки по x (тип: целый); |
M - | заданное число узлов сетки по y (тип: целый); |
L - | заданное число узлов сетки по z (тип: целый). |
Версии
QTT9D - | вычисление с удвоенной точностью определенного трехкратного интеграла от табличной функции, заданной на неравномерной сетке, по формуле трапеций. |
Вызываемые подпрограммы: нет
Замечания по использованию
Требуется, чтобы xi > xi - 1, i = 2, ..., N, yj > yj - 1, j = 2, ..., M, zk > zk - 1, k = 2, ..., L; N ≥ 2, M ≥ 2, L ≥ 2. В подпрограмме QTT9D параметры RINT, X1, X2, X3, F имеют тип DOUBLE PRECISION. |
DIMENSION X1(11), X2(11), X3(11), F(11, 11, 11) H1 = 0.1 H2 = 0.1 H3 = 0.1 N = 11 M = 11 L = 11 X1(1) = 0. X2(1) = 0. X3(1) = 0. DO 1 I = 2, N 1 X1(I) = X1(I - 1) + H1 DO 2 J = 2, M 2 X2(J) = X2(J - 1) + H2 DO 3 K = 2, L 3 X3(K) = X3(K - 1) + H3 DO 4 I = 1, N DO 4 I = 1, M DO 4 K = 1, L 4 F(I, J, K) = X1(I) + X2(J) + X3(K) CALL QTT9R (RINT, X1, X2, X3, F, N, M, L) Результат: RINT = 1.50000