Текст подпрограммы и версий sf45r_p.zip |
Тексты тестовых примеров tsf45r_p.zip |
Вычисление значений интегралов Френеля S(x) и C(x).
Подпрограма SF45R вычисляет значения интегралов Френеля
x S(x) = 1/(2π)1/2 ∫ sin t / √t dt 0 x C(x) = 1/(2π)1/2 ∫ cos t / √t dt 0
для вещественных значений аргумента x.
G.Nemeth, Chebyshev Expansions for Fresnel Integrals, Numer. Math., 7, 4, 1965.
procedure SF45R(X :Real; var C :Real; var S :Real);
Параметры
X - | заданное значение аргумента x (тип: вещественный); |
C, S - | вещественные переменные, которым в результате pаботы подпрограммы присваиваются значения C (x) и S (x) соответственно. |
Версии: нет
Вызываемые подпрограммы: нет
Замечания по использованию
B результате работы подпрограмы SF45R для X < 0 переменным C и S присваиваются значения C ( | x | ) и S ( | x | ) соответственно. |
Unit tsf45r_p; interface uses SysUtils, Math, { Delphi } Lstruct, Lfunc, UtRes_p, SF45R_p; function tsf45r: String; implementation function tsf45r: String; var X,S,Y :Real; begin Result := ''; { результат функции } X := 13.0; SF45R(X,Y,S); Result := Result + Format(' %20.16f %20.16f %20.16f ', [X,Y,S]) + #$0D#$0A; UtRes('tsf45r',Result); { вывод результатов в файл tsf45r.res } exit; end; end. Результаты: Y = 0.542510411403 S = 0.39826772111