Текст подпрограммы и версий sf85r_p.zip , sf85e_p.zip |
Тексты тестовых примеров tsf85r_p.zip , tsf85e_p.zip |
Вычисление эллиптических функций Якоби sn (u, kc2), cn (u, kc2) и dn (u, kc2) .
Подпрограмма SF85R вычисляет значения эллиптических функций Якоби sn (u, kc2), cn (u, kc2) и dn (u, kc2), которые удовлетворяют следующим уравнениям:
sn u = ∫ dt / [ 1 - (1 - kc2) sin2 t ] 1/2 0 sn2 + cn2 = 1 , (1 - kc2) sn2 + dn2 = 1 .
Аргументы u и kc принимают вещественные значения.
Справочник по специальным функциям. Под ред. Абрамовица М. и Стиган И., Изд - во "Наука", 1979.
procedure SF85R(var U :Real; RKC2 :Real; var SN :Real; var CN :Real; var DN :Real);
Параметры
U - RKC2 | заданные значения аргументов u и kc2 соответственно (тип: вещественный); |
SN, CN - DN |
вещественные переменные, значения которых полагаются равными
значениям функций
sn (u, kc2),
cn (u, kc2) и
dn (u, kc |
Версии
SF85E - | вычисление эллиптических функций Якоби sn (u, kc2), cn (u, kc2) и dn (u, kc2) в режиме расширенной (Extended) точности; при этом все параметры должны иметь тип Extended. |
Вызываемые подпрограммы: нет
Замечания по использованию: нет
Unit tsf85r_p; interface uses SysUtils, Math, { Delphi } Lstruct, Lfunc, UtRes_p, SF85R_p; function tsf85r: String; implementation function tsf85r: String; var U,RKC2,SN,CN,DN :Real; begin Result := ''; { результат функции } U := 0.61802; RKC2 := 0.5; SF85R(U,RKC2,SN,CN,DN); Result := Result + Format(' %16.7f %16.7f %16.7f ',[SN,CN,DN]) + #$0D#$0A; UtRes('tsf85r',Result); { вывод результатов в файл tsf85r.res } exit; end; end. Результаты: SN = 0.564576 CN = 0.825381 DN = 0.916857