38 INTEGER I, I1M, K, MZ, NZ, IERR, I1MACH
39 REAL CF, CON, FLN, FZ, GLN, RLN, S, TLG, TRM, TST, T1, WDTOL, Z,
40 * zdmy, zinc, zm, zmin, zp, zsq
44 DATA gln(1), gln(2), gln(3), gln(4), gln(5), gln(6), gln(7),
45 1 gln(8), gln(9), gln(10), gln(11), gln(12), gln(13), gln(14),
46 2 gln(15), gln(16), gln(17), gln(18), gln(19), gln(20),
48 4 0.00000000000000000
e+00, 0.00000000000000000
e+00,
49 5 6.93147180559945309
e-01, 1.79175946922805500
e+00,
50 6 3.17805383034794562
e+00, 4.78749174278204599
e+00,
51 7 6.57925121201010100
e+00, 8.52516136106541430
e+00,
52 8 1.06046029027452502
e+01, 1.28018274800814696
e+01,
53 9 1.51044125730755153
e+01, 1.75023078458738858
e+01,
54 a 1.99872144956618861
e+01, 2.25521638531234229
e+01,
55 b 2.51912211827386815
e+01, 2.78992713838408916
e+01,
56 c 3.06718601060806728
e+01, 3.35050734501368889
e+01,
57 d 3.63954452080330536
e+01, 3.93398841871994940
e+01,
58 e 4.23356164607534850
e+01, 4.53801388984769080
e+01/
59 DATA gln(23), gln(24), gln(25), gln(26), gln(27), gln(28),
60 1 gln(29), gln(30), gln(31), gln(32), gln(33), gln(34),
61 2 gln(35), gln(36), gln(37), gln(38), gln(39), gln(40),
62 3 gln(41), gln(42), gln(43), gln(44)/
63 4 4.84711813518352239
e+01, 5.16066755677643736
e+01,
64 5 5.47847293981123192
e+01, 5.80036052229805199
e+01,
65 6 6.12617017610020020
e+01, 6.45575386270063311
e+01,
66 7 6.78897431371815350
e+01, 7.12570389671680090
e+01,
67 8 7.46582363488301644
e+01, 7.80922235533153106
e+01,
68 9 8.15579594561150372
e+01, 8.50544670175815174
e+01,
69 a 8.85808275421976788
e+01, 9.21361756036870925
e+01,
70 b 9.57196945421432025
e+01, 9.93306124547874269
e+01,
71 c 1.02968198614513813
e+02, 1.06631760260643459
e+02,
72 d 1.10320639714757395
e+02, 1.14034211781461703
e+02,
73 e 1.17771881399745072
e+02, 1.21533081515438634
e+02/
74 DATA gln(45), gln(46), gln(47), gln(48), gln(49), gln(50),
75 1 gln(51), gln(52), gln(53), gln(54), gln(55), gln(56),
76 2 gln(57), gln(58), gln(59), gln(60), gln(61), gln(62),
77 3 gln(63), gln(64), gln(65), gln(66)/
78 4 1.25317271149356895
e+02, 1.29123933639127215
e+02,
79 5 1.32952575035616310
e+02, 1.36802722637326368
e+02,
80 6 1.40673923648234259
e+02, 1.44565743946344886
e+02,
81 7 1.48477766951773032
e+02, 1.52409592584497358
e+02,
82 8 1.56360836303078785
e+02, 1.60331128216630907
e+02,
83 9 1.64320112263195181
e+02, 1.68327445448427652
e+02,
84 a 1.72352797139162802
e+02, 1.76395848406997352
e+02,
85 b 1.80456291417543771
e+02, 1.84533828861449491
e+02,
86 c 1.88628173423671591
e+02, 1.92739047287844902
e+02,
87 d 1.96866181672889994
e+02, 2.01009316399281527
e+02,
88 e 2.05168199482641199
e+02, 2.09342586752536836
e+02/
89 DATA gln(67), gln(68), gln(69), gln(70), gln(71), gln(72),
90 1 gln(73), gln(74), gln(75), gln(76), gln(77), gln(78),
91 2 gln(79), gln(80), gln(81), gln(82), gln(83), gln(84),
92 3 gln(85), gln(86), gln(87), gln(88)/
93 4 2.13532241494563261
e+02, 2.17736934113954227
e+02,
94 5 2.21956441819130334
e+02, 2.26190548323727593
e+02,
95 6 2.30439043565776952
e+02, 2.34701723442818268
e+02,
96 7 2.38978389561834323
e+02, 2.43268849002982714
e+02,
97 8 2.47572914096186884
e+02, 2.51890402209723194
e+02,
98 9 2.56221135550009525
e+02, 2.60564940971863209
e+02,
99 a 2.64921649798552801
e+02, 2.69291097651019823
e+02,
100 b 2.73673124285693704
e+02, 2.78067573440366143
e+02,
101 c 2.82474292687630396
e+02, 2.86893133295426994
e+02,
102 d 2.91323950094270308
e+02, 2.95766601350760624
e+02,
103 e 3.00220948647014132
e+02, 3.04686856765668715
e+02/
104 DATA gln(89), gln(90), gln(91), gln(92), gln(93), gln(94),
105 1 gln(95), gln(96), gln(97), gln(98), gln(99), gln(100)/
106 2 3.09164193580146922
e+02, 3.13652829949879062
e+02,
107 3 3.18152639620209327
e+02, 3.22663499126726177
e+02,
108 4 3.27185287703775217
e+02, 3.31717887196928473
e+02,
109 5 3.36261181979198477
e+02, 3.40815058870799018
e+02,
110 6 3.45379407062266854
e+02, 3.49954118040770237
e+02,
111 7 3.54539085519440809
e+02, 3.59134205369575399
e+02/
113 DATA cf(1), cf(2), cf(3), cf(4), cf(5), cf(6), cf(7), cf(8),
114 1 cf(9), cf(10), cf(11), cf(12), cf(13), cf(14), cf(15),
115 2 cf(16), cf(17), cf(18), cf(19), cf(20), cf(21), cf(22)/
116 3 8.33333333333333333
e-02, -2.77777777777777778
e-03,
117 4 7.93650793650793651
e-04, -5.95238095238095238
e-04,
118 5 8.41750841750841751
e-04, -1.91752691752691753
e-03,
119 6 6.41025641025641026
e-03, -2.95506535947712418
e-02,
120 7 1.79644372368830573
e-01, -1.39243221690590112
e+00,
121 8 1.34028640441683920
e+01, -1.56848284626002017
e+02,
122 9 2.19310333333333333
e+03, -3.61087712537249894
e+04,
123 a 6.91472268851313067
e+05, -1.52382215394074162
e+07,
124 b 3.82900751391414141
e+08, -1.08822660357843911
e+10,
125 c 3.47320283765002252
e+11, -1.23696021422692745
e+13,
126 d 4.88788064793079335
e+14, -2.13203339609193739
e+16/
129 DATA con / 1.83787706640934548
e+00/
133 IF (z.LE.0.0e0) go
to 70
134 IF (z.GT.101.0e0) go
to 10
137 IF (fz.GT.0.0e0) go
to 10
138 IF (nz.GT.100) go
to 10
143 wdtol = amax1(wdtol,0.5
e-18)
145 rln = r1mach(5)*float(i1m)
146 fln = amin1(rln,20.0e0)
147 fln = amax1(fln,3.0e0)
149 zm = 1.8000e0 + 0.3875e0*fln
154 IF (z.GE.zmin) go
to 20
155 zinc = zmin - float(nz)
161 IF (zp.LT.wdtol) go
to 40
167 IF (
abs(trm).LT.tst) go
to 40
171 IF (zinc.NE.0.0e0) go
to 50
173 gamln = z*(tlg-1.0e0) + 0.5e0*(con-tlg) + s
179 zp = zp*(z+float(i-1))
182 gamln = zdmy*(tlg-1.0e0) - alog(zp) + 0.5e0*(con-tlg) + s
F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T const F77_REAL const F77_REAL F77_REAL &F77_RET_T const F77_DBLE const F77_DBLE F77_DBLE &F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T F77_DBLE &F77_RET_T F77_REAL &F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T const F77_DBLE F77_DBLE &F77_RET_T const F77_REAL F77_REAL &F77_RET_T F77_REAL F77_REAL &F77_RET_T F77_DBLE F77_DBLE &F77_RET_T const F77_DBLE const F77_DBLE F77_DBLE * d
calling an anonymous function involves an overhead quite comparable to the overhead of an m file function Passing a handle to a built in function is because the interpreter is not involved in the internal loop For a
may be zero for pure relative error test tem the relative tolerance must be greater than or equal to
OCTAVE_EXPORT octave_value_list etc The functions then dimension(columns)
OCTAVE_EXPORT octave_value_list return the value of the option it must match the dimension of the state and the relative tolerance must also be a vector of the same length tem it must match the dimension of the state and the absolute tolerance must also be a vector of the same length The local error test applied at each integration step is xample roup abs(local error in x(i))<