Текст подпрограммы и версий ( Фортран ) qsk2r.zip qsk2d.zip |
Тексты тестовых примеров ( Фортран ) tqsk2r.zip tqsk2d.zip |
Текст подпрограммы и версий ( Си ) qsk2r_c.zip qsk2d_c.zip |
Тексты тестовых примеров ( Си ) tqsk2r_c.zip tqsk2d_c.zip |
Текст подпрограммы и версий ( Паскаль ) qsk2r_p.zip qsk2e_p.zip |
Тексты тестовых примеров ( Паскаль ) tqsk2r_p.zip tqsk2e_p.zip |
Вычисление определенного интеграла по обобщенной квадратурной формуле Ньютона - Котеса, точной для многочленов девятой степени.
Подпрограмма QSK2R вычисляет интеграл B ∫ f (x) dx A
по обобщенной формуле Ньютона - Котеса с автоматическим выбором шага.
G.E.Forsythe, M.A.Malkolm, C.B.Moler. Computer Methods for Mathematical Computations. 1977 by Prentice - hall, INC.
SUBROUTINE QSK2R (FUN, A, B, ABSERR, RELERR, RESULT, ERREST, NOFUN, FLAG)
Параметры
FUN - | имя вещественной подпрограммы - функции, вычисляющей подинтегральную функцию f (x); |
A, B - | заданные нижний и верхний пределы интегрирования (тип: вещественный); |
ABSERR - | заданная абсолютная погрешность вычисления интеграла (тип: вещественный); |
RELERR - | заданная относительная погрешность вычисления интеграла (тип: вещественный); |
RESULT - | вещественная переменная, содержащая вычисленное значение интеграла; |
ERREST - | вещественная переменная, содержащая оценку погрешности вычисленного значения интеграла; |
NOFUN - | целая переменная, содержащая число вычисленных значений подинтегральной функции, потребовавшихся для получения результата; |
FLAG - |
вещественная переменная, служащая для
хаpактеристики надежности вычисленного результата;
при этом: если FLAG = 0., то полученный результат с большой вероятностью удовлетворяет заданной погрешности; если FLAG = XXX.YYY, то XXX - число интервалов, на которых не удалось достигнуть заданной точности, а 0.YYY = (B - X0)/(B - A), где X0 - граница отрезка [A, X0], на котоpом был израсходован лимит обращений к подпрограмме - функции. |
Версии
QSK2D - | вычисление определенного интеграла по обобщенной формуле Ньютона - Котеса, точной для многочленов девятой степени от функции, заданной с удвоенной точностью. |
Вызываемые подпрограммы: нет
Замечания по использованию
B подпрограмме QSK2D параметры FUN, A, B, ABSERR, RELERR, RESULT, ERREST, FLAG имеют тип DOUBLE PRECISION. |
REAL FUNCTION FUN(X) REAL X IF (X .EQ. 0.0) FUN = 1.0 IF (X .NE. 0.0) FUN = SIN(X)/X RETURN END A = 0.0 B = 2.0 RELERR = 1.0E-10 ABSERR = 0.0 CALL QSK2R (FUN, A, B, ABSERR, RELERR, RESULT, * ERREST, NOFUN, FLAG) Результаты: RESULT = 1.6054 ERREST = 0. NOFUN = 33 FLAG = 0.