Текст подпрограммы и версий ( Фортран )
qtshr.zip  qtshd.zip 
Тексты тестовых примеров ( Фортран )
tqtshr.zip  tqtshd.zip 
Текст подпрограммы и версий ( Си )
qtshr_c.zip  qtshd_c.zip 
Тексты тестовых примеров ( Си )
tqtshr_c.zip  tqtshd_c.zip 
Текст подпрограммы и версий ( Паскаль )
qtshr_p.zip  qtshe_p.zip 
Тексты тестовых примеров ( Паскаль )
tqtshr_p.zip  tqtshe_p.zip 

Подпрограмма:  QTSHR

Назначение

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

Математическое описание

Вычисляются значения неопределенного двойного интеграла по прямоугольникам x1 ≤ x ≤ xi,  y1 ≤ y ≤ yj,   i = 1, 2, ..., N,  j = 1, 2, ..., M от табличной функции f (x, y), заданной на равномерной сетке xi = x1 + (i - 1) h1,   yj = y1 + (j - 1) h2, по формуле Симпсона.

Н.С.Бахвалов. Численные методы, "Hаука", M.: 1975.

Использование

    SUBROUTINE  QTSHR (RINT, H1, H2, F, N, M) 

Параметры

RINT - вещественный двумерный массив размера N на M, содержащий вычисленные значения неопределенного интеграла;
H1 - заданный шаг равномерной сетки по x (тип: вещественный);
H2 - заданный шаг равномерной сетки по y (тип: вещественный);
F - вещественный двумерный массив размера N на M, содержащий значения подинтегральной функции f (x, y);
N - заданное число узлов сетки по x (тип: целый);
M - заданное число узлов сетки по y (тип: целый).

Версии

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

Вызываемые подпрограммы: нет

Замечания по использованию

 

Требуется, чтобы  N ≥ 4  и  M ≥ 4.

В подпрограмме QTSHD параметры RINT, H1, H2, F имеют тип DOUBLE PRECISION.

Пример использования

          H1 = 3.14159 / 49.
          H2 = 3.14159 / 39.
          N = 50
          M = 40
          Y = 0.
          DO 2 J = 1, 40
          X = Y
          DO 1 I = 1, 50
          F(I, J) = SIN(X)
       1 X = X + H1
       2 Y = Y + H2
          CALL  QTSHR (RINT, H1, H2, F, N, M)

Результаты:

       RINT(1, 1)         =  0.00000
       RINT(2, 2)         =  0.00037
       RINT (N-1, M)  =  0.12815
       RINT (N, M)      =  0.00001