Главная Промышленная автоматика. чальное значение л:0=28395423107. Были получены результаты: 0.50625, 0.48632, 0.50304 и 0.34304, 0.31681, 0.33469. Теоретически ожидаемые результаты: 0.50000 и 0.33333. Свидетельство к алгоритму 1336 Алгоритм 1336 является стереотипным переизданием алгоритма 133а. Данный алгоритм может давать правильные результаты только на электронных машинах, допускающих запись в ячейках оперативной памяти целых чисел из двенадцати цифр десятичной системы счисления. Свидетельство к алгоритму 133а Алгоритм 133а получен в результате исправления и ординарной переработки алгоритма 133 (Behrenz Р. G. «САСМ», 1962, № 11). Замечание к алгоритму 133 П. Беренц (Behrenz Р. G. «САСМ», 1962, № 12) Описания в теле процедуры integer М35,М36,М37; own integer X; нужно заменить на own integer Х,М35,М36.М37; Последовательность из 23 случайных чисел содержит примерно 15 чисел, которые фактически не являются случайными. (Более подробно см. работу Хемминга [17i].) Замечание к алгоритму 133 Д. Лауглин (Laughlin D. L. «САСМ», 1963, № 3) Алгоритм 133 был переведен на язык ФОРТРАН 2 для машины IBM 1620 и прошел успешно. Начальное значение хО было заменено на 21348759609 и получены следующие интересные результаты. Для Л=500 и 1000 выходные значения были: 0.4990157688, 0.4986269653 и 0.3318717863, 0.3290401482. Подтверждение к алгоритму 133 Дж. Пур (Р оог е J. Н. «САСМ», 1963, № 4) . Алгоритм 133 был переведен на язык ФОРТРАН 2 для машины IBM 1620. Ведущая программа выполняла проверку, указанную в алгоритме 133, на тех же числах. Результаты проверки показаны е табл. 18. В ней использованы те же обозначения, что и в алгоритме. Таблица 18
АЛГОРИТМ 1346 Возведение ряда в степень [С1] Процедура seriespwr (сокращение от series - ш, power - степень) вычисляет первые п коэффициентов ЬЩ ряда g{x)l{x){p но данным первым п коэффициентам ряда Параметр р может быть любым вещественным. При р-0 получаются коэффициенты ряда In (/(л:)). Размерность массивов a,b[l:n]. procedure seriespwr (a,p,n) result: (b); value p,n; real p; integer n; array a, b; begin real p2,s; integer i,k; p2:= if p=0 then 1 else p; b[l]:=p2Xa[l]; for i:=2 step 1 until n do begin s:=0; for k:=l step 1 until i-1 do s:=s-l-(pX (i-k)-k) Xb[k] xa[i-k]; bi]:=:p2Xa[i]-l-s/i end i end seriespwr; Свидетельство к алгоритму 1346 Алгоритм 1346 является стереотипным переизданием алгоритма 134а, если не считать того, что в пояснительном тексте последнего была исправлена одна опечатка. АЛГОРИТМ 1356 Метод Краута для решения матричного уравнения ах=Ъ [F4] Процедура linearsystem {linear - линейный, system - .система) использует метод Краута для решения матричного уравнения ах=Ь, где матрицы имеют размерность а[1:п, 1:п], x,b[l:n,l: ifm<then 1 else т]. Если задать параметр тО, то процедура linearsystem будет вычислять только определитель матрицы а, равный detXlOjex. Если т=1, то процедура решает систему из п уравнений с п неизвестными. Если т>1, то процедура решает т таких систем с правыми частями, заданными в виде столбцов матрицы Ь. Если т=п и Ь - единичная матрица, то процедура обращает матрицу а. Если матрица а вырожденная или близка к вырожденной, то происходит выход к глобальной метке signall35. Кроме того, в процедуре linearsystem используются пять глобальных .процедур equilibrate (уравновешенность), crout- (Краут), product (произведение), residuals (разности) и solve (решать), описание которых приводится ниже вслед за описанием процедуры linearsystem. *. Указываются 10 поправок к алгоритмам 134 и 158. Последнее из указанных изменений (исключение оператора 6[1]:=р2Ха[1]) делать нельзя, поскольку тогда при £=й=1 для выполнения процедуры потребуется несуществующее значение а[Ь]. Остальные поправки были учтены в алгоритме 134а. (Прим. ред.) Алгоритм 134а .получен в результате исправления и ординарной переработки алгоритма 134 (Fettis Н. Е. «САСМ», 1962, № 11) и" алгоритма 158 (Fettis Н. Е. «САСМ», 1963, № 3). Алгоритм 134а транслирован с исходными данными: 1) f(x)=l+x+x2/2+x3/-6+x4/24+x5/120+xe/720e=; р=2; 2) f{x)=l + x; р=0, 1/2,3. Получены результаты, совпадающие с контрольными значениями [5,, с. 324 и 327] с точностью до семи значащих цифр. Подтверждение к алгоритмам 134 и 158 Г. Тачер (Thacher Н. С. «САСМ», 1963, № 7) Алгоритмы 134 и 158 были транслированы с помощью транслятора Dartmouth SCALP на машине LGP 30. Кроме изменений, требуемых этим транслятором, оказались нужными следующие поправки... * После того как были сделаны эти изменения с помощью обеих процедур были получены первые 10 коэффициентов ряда ехр (x)f2.5 по 10 первым коэффициентам ряда exp(x). Эти процедуры использовались также для получения биномиальных .коэффициентов путем применения их к ряду {1+х)Р для р=2.0 и 0.5О000000. Алгоритм 158 был также проверен при р=0 для l-fx и для разложений в ряд функций (sinx)/x, COSX, ехр л:. Во всех случаях коэффициенты совпадали с известными значениями в пределах погрешности округлений. 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 [17] 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 0.0024 |