mirror of
https://github.com/retro-software/B5500-software.git
synced 2026-03-02 17:44:40 +00:00
1. Commit library tape images, directories, and extracted text files. 2. Commit additional utilities under Unisys-Emode-Tools.
116 lines
9.1 KiB
Plaintext
116 lines
9.1 KiB
Plaintext
COMMENT SIXTH ORDER RUNGE-KUTTA-NYSTROM STARTING PROCEDURE TEST0001
|
|
TEST0002
|
|
A. F. PIXLEY AND ANNE G. MACEK TEST0003
|
|
(PROFESSIONAL SERVICES GROUP, BURROUGHS CORPORATION) TEST0004
|
|
TEST0005
|
|
PROCEDURE CARD SEQUENCE BEGINS WITH RKST-0001 TEST0006
|
|
FIRST RELEASE DATE 06-25-63 ; TEST0007
|
|
TEST0008
|
|
BEGIN TEST0009
|
|
TEST0010
|
|
INTEGER K,NF,J,I ; TEST0011
|
|
REAL X1,H ; TEST0012
|
|
ARRAY Y[0:10,0:8] ; TEST0013
|
|
TEST0014
|
|
LIST IN1(X1,H,K,NF), TEST0015
|
|
IN2(FOR J ~ 1 STEP 1 UNTIL K DO Y[0,J]), TEST0016
|
|
OUTH(H), TEST0017
|
|
OUT1(I,I|H+X1,FOR J ~ 1 STEP 1 UNTIL K DO Y[I,J]) ; TEST0018
|
|
TEST0019
|
|
FORMAT IN FORM1(2E20.10,2I10), TEST0020
|
|
FORM2(4E20.10) ; TEST0021
|
|
TEST0022
|
|
FORMAT OUT FOUT1("INCREMENT =",E20.10), TEST0023
|
|
FOUT2("EQ. NO.",X10,"X",X16,"Y[I,1]",X14,"Y[I,2]",X14, TEST0024
|
|
"Y[I,3]",X14,"Y[I,4]"), TEST0025
|
|
FOUT3(I7,5E20.10) ; TEST0026
|
|
TEST0027
|
|
FILE IN RDR(1,10) ; TEST0028
|
|
FILE OUT PRINTER(1,15) ; TEST0029
|
|
TEST0030
|
|
PROCEDURE F(X,Y,DX) ; TEST0031
|
|
TEST0032
|
|
VALUE X ; TEST0033
|
|
REAL X ; TEST0034
|
|
ARRAY Y[0],DX[0] ; TEST0035
|
|
TEST0036
|
|
BEGIN TEST0037
|
|
DX[1] ~ Y[1] | 2.0 - Y[2] - Y[3] - Y[4] ; TEST0038
|
|
DX[2] ~ Y[1] | 3.0 - Y[2] | 2.0 - Y[3] - Y[4] ; TEST0039
|
|
DX[3] ~ Y[1] | 2.0 - Y[3] | 2.0 - Y[4] ; TEST0040
|
|
DX[4] ~ Y[1] | 2.0 - Y[2] - Y[4] | 2.0 TEST0041
|
|
END ; TEST0042
|
|
TEST0043
|
|
PROCEDURE RKSTARTS(K,NF,X1,H,Y,F) ; RKST0001
|
|
RKST0002
|
|
VALUE K,NF,H ; RKST0003
|
|
REAL X1,H ; RKST0004
|
|
INTEGER K,NF ; RKST0005
|
|
ARRAY Y[0,0] ; RKST0006
|
|
PROCEDURE F ; RKST0007
|
|
RKST0008
|
|
BEGIN RKST0009
|
|
INTEGER I,J ; RKST0010
|
|
REAL X ; RKST0011
|
|
ARRAY DX,TEMPY,K1,K2,K3,K4,K5,K6[0:K] ; RKST0012
|
|
RKST0013
|
|
FOR I ~ 0 STEP 1 UNTIL (NF - 1) DO RKST0014
|
|
BEGIN RKST0015
|
|
X ~ H | I + X1 ; RKST0016
|
|
F(X,Y[I,*],DX) ; RKST0017
|
|
RKST0018
|
|
FOR J ~ 1 STEP 1 UNTIL K DO RKST0019
|
|
BEGIN RKST0020
|
|
K1[J] ~ DX[J] | H ; RKST0021
|
|
TEMPY[J] ~ K1[J]/3.0 + Y[I,J] RKST0022
|
|
END ; RKST0023
|
|
F(H/3.0 + X,TEMPY,DX) ; RKST0024
|
|
RKST0025
|
|
FOR J ~ 1 STEP 1 UNTIL K DO RKST0026
|
|
BEGIN RKST0027
|
|
K2[J] ~ DX[J] | H ; RKST0028
|
|
TEMPY[J] ~ (K2[J] | 6.0 + K1[J] | 4.0)/25.0 + Y[I,J] RKST0029
|
|
END ; RKST0030
|
|
F((H | 2.0)/5.0 + X,TEMPY,DX) ; RKST0031
|
|
RKST0032
|
|
FOR J ~ 1 STEP 1 UNTIL K DO RKST0033
|
|
BEGIN RKST0034
|
|
K3[J] ~ DX[J] | H ; RKST0035
|
|
TEMPY[J] ~ (K3[J] | 15.0 - K2[J] | 12.0 + K1[J])/4.0 RKST0036
|
|
+ Y[I,J] RKST0037
|
|
END ; RKST0038
|
|
F(H + X,TEMPY,DX) ; RKST0039
|
|
RKST0040
|
|
FOR J ~ 1 STEP 1 UNTIL K DO RKST0041
|
|
BEGIN RKST0042
|
|
K4[J] ~ DX[J] | H ; RKST0043
|
|
TEMPY[J] ~ (K4[J] | 8.0 - K3[J] | 50.0 + K2[J] | 90.0 + RKST0044
|
|
K1[J] | 6.0)/81.0 + Y[I,J] RKST0045
|
|
END ; RKST0046
|
|
F((H | 2.0)/3.0 + X,TEMPY,DX) ; RKST0047
|
|
RKST0048
|
|
FOR J ~ 1 STEP 1 UNTIL K DO RKST0049
|
|
BEGIN RKST0050
|
|
K5[J] ~ DX[J] | H ; RKST0051
|
|
TEMPY[J] ~ (K4[J] | 8.0 + K3[J] | 10.0 + K2[J] | 36.0 + RKST0052
|
|
K1[J] | 6.0)/75.0 + Y[I,J] RKST0053
|
|
END ; RKST0054
|
|
F((H | 4.0)/5.0 + X,TEMPY,DX) ; RKST0055
|
|
RKST0056
|
|
FOR J ~ 1 STEP 1 UNTIL K DO RKST0057
|
|
BEGIN RKST0058
|
|
K6[J] ~ DX[J] | H ; RKST0059
|
|
Y[I+1,J] ~ (K1[J] | 23.0 + K3[J] | 125.0 - K5[J] | 81.0 + RKST0060
|
|
K6[J] | 125.0)/192.0 + Y[I,J] RKST0061
|
|
END RKST0062
|
|
END RKST0063
|
|
END ; RKST0064
|
|
TEST0044
|
|
READ(RDR,FORM1,IN1) ; READ(RDR,FORM2,IN2) ; TEST0045
|
|
RKSTARTS(K,NF,X1,H,Y,F) ; TEST0046
|
|
WRITE(PRINTER,FOUT1,OUTH) ; WRITE(PRINTER,FOUT2) ; TEST0047
|
|
TEST0048
|
|
FOR I ~ 0 STEP 1 UNTIL NF DO WRITE(PRINTER,FOUT3,OUT1) TEST0049
|
|
TEST0050
|
|
END. TEST0051
|