1
0
mirror of https://github.com/retro-software/B5500-software.git synced 2026-03-02 17:44:40 +00:00
Files
Paul Kimpel 2c72f7fd1d Commit CUBE Library version 13 of February 1972.
1. Commit library tape images, directories, and extracted text files.
2. Commit additional utilities under Unisys-Emode-Tools.
2018-05-27 11:24:23 -07:00

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