|
Текст подпрограммы и версий ( Фортран ) qsf2r.zip qsf2d.zip |
Тексты тестовых примеров ( Фортран ) tqsf2r.zip tqsf2d.zip |
|
Текст подпрограммы и версий ( Си ) qsf2r_c.zip qsf2d_c.zip |
Тексты тестовых примеров ( Си ) tqsf2r_c.zip tqsf2d_c.zip |
|
Текст подпрограммы и версий ( Паскаль ) qsf2r_p.zip qsf2e_p.zip |
Тексты тестовых примеров ( Паскаль ) tqsf2r_p.zip tqsf2e_p.zip |
Вычисление интегралов
B
(1) ∫ f (x) sin( ρ x + φ ) dx ,
A
B
(2) ∫ f (x) cos( ρ x + φ ) dx
A
по формулам интерполяционного типа 5 - ой степени точности с автоматическим выбором шага.
QSF2R вычисляет интегралы (1), (2) или один из них с заданной абсолютной погрешностью E по формулам интерполяционного типа для осциллирующих функций с автоматическим выбором шага на конечных отрезках интегрирования.
О.В.Брушлинская, Л.Г.Васильева. Набор стандартных программ приближенного вычисления однократных интегралов с автоматическим выбором шага. Сб. "Численный анализ на ФОРТРАНе", вып.8, Изд-во МГУ, 1974.
SUBROUTINE QSF2R (RINT1, RINT2, A, B, F, RO, FI, E, L1, L2)
Параметры
|
RINT1 - RINT2 | вещественные переменные, содержащие значения интегралов (1) и (2) соответственно; |
| A, B - | заданные нижний и верхний пределы интегрирования (тип: вещественный); |
| F - | имя вещественной подпрограммы - функции вычисления подинтегральной функции f (x); |
| RO - | заданное значение параметра ρ (тип: вещественный); |
| FI - | заданное значение параметра φ (тип: вещественный); |
| E - | заданная абсолютная погрешность вычисления интегралов (тип: вещественный); |
| L1, L2 - | задают режим работы подпрограммы (тип: целый); при этом, если |
|
L1 = 1 и L2 = 0, то вычисляется интеграл (1); L1 = 0 и L2 = 1, то вычисляется интеграл (2); L1 = 1 и L2 = 1, то вычисляются интегралы (1) и (2); |
Версии
| QSF2D - | вычисление с удвоенной точностью интегралов (1) и (2) по формулам интерполяционного типа 5 - ой степени точности с автоматическим выбором шага. |
Вызываемые подпрограммы
| UTQS10 - | подпрограмма выдачи диагностических сообщений при работе подпрограммы QSF2R. |
| UTQS12 - | подпрограмма выдачи диагностических сообщений при работе подпрограммы QSF2D. |
Замечания по использованию
|
Подпрограмма не гарантирует задаваемую погрешность, хотя в большинстве случаев интегралы будут вычислены с требуемой точностью. В подпрограмме QSF2D параметры RINT1, RINT2, A, B, F, RO, FI, E имеют тип DOUBLE PRECISION. |
FUNCTION F(X)
REAL X
F = X**4
RETURN
END
EXTERNAL F
REAL RINT1, RINT2
A = 0.
B = 1.
RO = 10.
FI = 0.
E = 0.0000001
L1 = 1
L2 = 1
CALL QSF2R (RINT1, RINT2, A, B, F, RO, FI, E, L1, L2)
Результаты:
RINT1 = 0.05382478
RINT2 = -0.079553512