Текст подпрограммы и версий ( Фортран )
qtsvr.zip  qtsvd.zip 
Тексты тестовых примеров ( Фортран )
tqtsvr.zip  tqtsvd.zip 
Текст подпрограммы и версий ( Си )
qtsvr_c.zip  qtsvd_c.zip 
Тексты тестовых примеров ( Си )
tqtsvr_c.zip  tqtsvd_c.zip 
Текст подпрограммы и версий ( Паскаль )
qtsvr_p.zip  qtsve_p.zip 
Тексты тестовых примеров ( Паскаль )
tqtsvr_p.zip  tqtsve_p.zip 

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

Назначение

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

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

Вычисляются значения неопределенного интеграла на отрезках [x1, xi] i = 1, ..., N, от табличной функции f (x), заданной на неравномерной сетке xi,  i = 1, ..., N, по квадратурной формуле, точной для многочленов второй степени.

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

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

    SUBROUTINE  QTSVR (RINT, X, F, N) 

Параметры

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

Версии

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

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

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

 

Требуется, чтобы  xi > xi - 1,   i = 2, ..., N;   N ≥ 3 .

В подпрограмме QTSVD параметры RINT, X, F имеют тип DOUBLE PRECISION.

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

         DIMENSION  F(50), X(50), RINT(50)
          H = 3.14159 / 49.
          N = 50
          X(1) = 0.
          X(2) = H / 4.
          DO 1 I = 3, N
       1 X(I) = X(I - 2) + 2.*H
          DO 2 I = 1, N
          X1 = X(I)
       2 F(I) = SIN(X1)
          CALL  QTSVR (RINT, X, F, N)

Результаты:

       RINT(1)    =  0.00000
       RINT(2)    =  0.00012
       RINT(49)  =  1.99794
       RINT(50)  =  1.99884