00001 SUBROUTINE CUNHJ(Z, FNU, IPMTR, TOL, PHI, ARG, ZETA1, ZETA2,
00002 * ASUM, BSUM)
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034 COMPLEX ARG, ASUM, BSUM, CFNU, CONE, CR, CZERO, DR, P, PHI,
00035 * PRZTH, PTFN, RFN13, RTZTA, RZTH, SUMA, SUMB, TFN, T2, UP, W, W2,
00036 * Z, ZA, ZB, ZC, ZETA, ZETA1, ZETA2, ZTH
00037 REAL ALFA, ANG, AP, AR, ATOL, AW2, AZTH, BETA, BR, BTOL, C, EX1,
00038 * EX2, FNU, FN13, FN23, GAMA, HPI, PI, PP, RFNU, RFNU2, THPI, TOL,
00039 * WI, WR, ZCI, ZCR, ZETAI, ZETAR, ZTHI, ZTHR, ASUMR, ASUMI, BSUMR,
00040 * BSUMI, TEST, TSTR, TSTI, AC
00041 INTEGER IAS, IBS, IPMTR, IS, J, JR, JU, K, KMAX, KP1, KS, L, LR,
00042 * LRP1, L1, L2, M
00043 DIMENSION AR(14), BR(14), C(105), ALFA(180), BETA(210), GAMA(30),
00044 * AP(30), P(30), UP(14), CR(14), DR(14)
00045 DATA AR(1), AR(2), AR(3), AR(4), AR(5), AR(6), AR(7), AR(8),
00046 1 AR(9), AR(10), AR(11), AR(12), AR(13), AR(14)/
00047 2 1.00000000000000000E+00, 1.04166666666666667E-01,
00048 3 8.35503472222222222E-02, 1.28226574556327160E-01,
00049 4 2.91849026464140464E-01, 8.81627267443757652E-01,
00050 5 3.32140828186276754E+00, 1.49957629868625547E+01,
00051 6 7.89230130115865181E+01, 4.74451538868264323E+02,
00052 7 3.20749009089066193E+03, 2.40865496408740049E+04,
00053 8 1.98923119169509794E+05, 1.79190200777534383E+06/
00054 DATA BR(1), BR(2), BR(3), BR(4), BR(5), BR(6), BR(7), BR(8),
00055 1 BR(9), BR(10), BR(11), BR(12), BR(13), BR(14)/
00056 2 1.00000000000000000E+00, -1.45833333333333333E-01,
00057 3 -9.87413194444444444E-02, -1.43312053915895062E-01,
00058 4 -3.17227202678413548E-01, -9.42429147957120249E-01,
00059 5 -3.51120304082635426E+00, -1.57272636203680451E+01,
00060 6 -8.22814390971859444E+01, -4.92355370523670524E+02,
00061 7 -3.31621856854797251E+03, -2.48276742452085896E+04,
00062 8 -2.04526587315129788E+05, -1.83844491706820990E+06/
00063 DATA C(1), C(2), C(3), C(4), C(5), C(6), C(7), C(8), C(9), C(10),
00064 1 C(11), C(12), C(13), C(14), C(15), C(16), C(17), C(18),
00065 2 C(19), C(20), C(21), C(22), C(23), C(24)/
00066 3 1.00000000000000000E+00, -2.08333333333333333E-01,
00067 4 1.25000000000000000E-01, 3.34201388888888889E-01,
00068 5 -4.01041666666666667E-01, 7.03125000000000000E-02,
00069 6 -1.02581259645061728E+00, 1.84646267361111111E+00,
00070 7 -8.91210937500000000E-01, 7.32421875000000000E-02,
00071 8 4.66958442342624743E+00, -1.12070026162229938E+01,
00072 9 8.78912353515625000E+00, -2.36408691406250000E+00,
00073 A 1.12152099609375000E-01, -2.82120725582002449E+01,
00074 B 8.46362176746007346E+01, -9.18182415432400174E+01,
00075 C 4.25349987453884549E+01, -7.36879435947963170E+00,
00076 D 2.27108001708984375E-01, 2.12570130039217123E+02,
00077 E -7.65252468141181642E+02, 1.05999045252799988E+03/
00078 DATA C(25), C(26), C(27), C(28), C(29), C(30), C(31), C(32),
00079 1 C(33), C(34), C(35), C(36), C(37), C(38), C(39), C(40),
00080 2 C(41), C(42), C(43), C(44), C(45), C(46), C(47), C(48)/
00081 3 -6.99579627376132541E+02, 2.18190511744211590E+02,
00082 4 -2.64914304869515555E+01, 5.72501420974731445E-01,
00083 5 -1.91945766231840700E+03, 8.06172218173730938E+03,
00084 6 -1.35865500064341374E+04, 1.16553933368645332E+04,
00085 7 -5.30564697861340311E+03, 1.20090291321635246E+03,
00086 8 -1.08090919788394656E+02, 1.72772750258445740E+00,
00087 9 2.02042913309661486E+04, -9.69805983886375135E+04,
00088 A 1.92547001232531532E+05, -2.03400177280415534E+05,
00089 B 1.22200464983017460E+05, -4.11926549688975513E+04,
00090 C 7.10951430248936372E+03, -4.93915304773088012E+02,
00091 D 6.07404200127348304E+00, -2.42919187900551333E+05,
00092 E 1.31176361466297720E+06, -2.99801591853810675E+06/
00093 DATA C(49), C(50), C(51), C(52), C(53), C(54), C(55), C(56),
00094 1 C(57), C(58), C(59), C(60), C(61), C(62), C(63), C(64),
00095 2 C(65), C(66), C(67), C(68), C(69), C(70), C(71), C(72)/
00096 3 3.76327129765640400E+06, -2.81356322658653411E+06,
00097 4 1.26836527332162478E+06, -3.31645172484563578E+05,
00098 5 4.52187689813627263E+04, -2.49983048181120962E+03,
00099 6 2.43805296995560639E+01, 3.28446985307203782E+06,
00100 7 -1.97068191184322269E+07, 5.09526024926646422E+07,
00101 8 -7.41051482115326577E+07, 6.63445122747290267E+07,
00102 9 -3.75671766607633513E+07, 1.32887671664218183E+07,
00103 A -2.78561812808645469E+06, 3.08186404612662398E+05,
00104 B -1.38860897537170405E+04, 1.10017140269246738E+02,
00105 C -4.93292536645099620E+07, 3.25573074185765749E+08,
00106 D -9.39462359681578403E+08, 1.55359689957058006E+09,
00107 E -1.62108055210833708E+09, 1.10684281682301447E+09/
00108 DATA C(73), C(74), C(75), C(76), C(77), C(78), C(79), C(80),
00109 1 C(81), C(82), C(83), C(84), C(85), C(86), C(87), C(88),
00110 2 C(89), C(90), C(91), C(92), C(93), C(94), C(95), C(96)/
00111 3 -4.95889784275030309E+08, 1.42062907797533095E+08,
00112 4 -2.44740627257387285E+07, 2.24376817792244943E+06,
00113 5 -8.40054336030240853E+04, 5.51335896122020586E+02,
00114 6 8.14789096118312115E+08, -5.86648149205184723E+09,
00115 7 1.86882075092958249E+10, -3.46320433881587779E+10,
00116 8 4.12801855797539740E+10, -3.30265997498007231E+10,
00117 9 1.79542137311556001E+10, -6.56329379261928433E+09,
00118 A 1.55927986487925751E+09, -2.25105661889415278E+08,
00119 B 1.73951075539781645E+07, -5.49842327572288687E+05,
00120 C 3.03809051092238427E+03, -1.46792612476956167E+10,
00121 D 1.14498237732025810E+11, -3.99096175224466498E+11,
00122 E 8.19218669548577329E+11, -1.09837515608122331E+12/
00123 DATA C(97), C(98), C(99), C(100), C(101), C(102), C(103), C(104),
00124 1 C(105)/
00125 2 1.00815810686538209E+12, -6.45364869245376503E+11,
00126 3 2.87900649906150589E+11, -8.78670721780232657E+10,
00127 4 1.76347306068349694E+10, -2.16716498322379509E+09,
00128 5 1.43157876718888981E+08, -3.87183344257261262E+06,
00129 6 1.82577554742931747E+04/
00130 DATA ALFA(1), ALFA(2), ALFA(3), ALFA(4), ALFA(5), ALFA(6),
00131 1 ALFA(7), ALFA(8), ALFA(9), ALFA(10), ALFA(11), ALFA(12),
00132 2 ALFA(13), ALFA(14), ALFA(15), ALFA(16), ALFA(17), ALFA(18),
00133 3 ALFA(19), ALFA(20), ALFA(21), ALFA(22)/
00134 4 -4.44444444444444444E-03, -9.22077922077922078E-04,
00135 5 -8.84892884892884893E-05, 1.65927687832449737E-04,
00136 6 2.46691372741792910E-04, 2.65995589346254780E-04,
00137 7 2.61824297061500945E-04, 2.48730437344655609E-04,
00138 8 2.32721040083232098E-04, 2.16362485712365082E-04,
00139 9 2.00738858762752355E-04, 1.86267636637545172E-04,
00140 A 1.73060775917876493E-04, 1.61091705929015752E-04,
00141 B 1.50274774160908134E-04, 1.40503497391269794E-04,
00142 C 1.31668816545922806E-04, 1.23667445598253261E-04,
00143 D 1.16405271474737902E-04, 1.09798298372713369E-04,
00144 E 1.03772410422992823E-04, 9.82626078369363448E-05/
00145 DATA ALFA(23), ALFA(24), ALFA(25), ALFA(26), ALFA(27), ALFA(28),
00146 1 ALFA(29), ALFA(30), ALFA(31), ALFA(32), ALFA(33), ALFA(34),
00147 2 ALFA(35), ALFA(36), ALFA(37), ALFA(38), ALFA(39), ALFA(40),
00148 3 ALFA(41), ALFA(42), ALFA(43), ALFA(44)/
00149 4 9.32120517249503256E-05, 8.85710852478711718E-05,
00150 5 8.42963105715700223E-05, 8.03497548407791151E-05,
00151 6 7.66981345359207388E-05, 7.33122157481777809E-05,
00152 7 7.01662625163141333E-05, 6.72375633790160292E-05,
00153 8 6.93735541354588974E-04, 2.32241745182921654E-04,
00154 9 -1.41986273556691197E-05, -1.16444931672048640E-04,
00155 A -1.50803558053048762E-04, -1.55121924918096223E-04,
00156 B -1.46809756646465549E-04, -1.33815503867491367E-04,
00157 C -1.19744975684254051E-04, -1.06184319207974020E-04,
00158 D -9.37699549891194492E-05, -8.26923045588193274E-05,
00159 E -7.29374348155221211E-05, -6.44042357721016283E-05/
00160 DATA ALFA(45), ALFA(46), ALFA(47), ALFA(48), ALFA(49), ALFA(50),
00161 1 ALFA(51), ALFA(52), ALFA(53), ALFA(54), ALFA(55), ALFA(56),
00162 2 ALFA(57), ALFA(58), ALFA(59), ALFA(60), ALFA(61), ALFA(62),
00163 3 ALFA(63), ALFA(64), ALFA(65), ALFA(66)/
00164 4 -5.69611566009369048E-05, -5.04731044303561628E-05,
00165 5 -4.48134868008882786E-05, -3.98688727717598864E-05,
00166 6 -3.55400532972042498E-05, -3.17414256609022480E-05,
00167 7 -2.83996793904174811E-05, -2.54522720634870566E-05,
00168 8 -2.28459297164724555E-05, -2.05352753106480604E-05,
00169 9 -1.84816217627666085E-05, -1.66519330021393806E-05,
00170 A -1.50179412980119482E-05, -1.35554031379040526E-05,
00171 B -1.22434746473858131E-05, -1.10641884811308169E-05,
00172 C -3.54211971457743841E-04, -1.56161263945159416E-04,
00173 D 3.04465503594936410E-05, 1.30198655773242693E-04,
00174 E 1.67471106699712269E-04, 1.70222587683592569E-04/
00175 DATA ALFA(67), ALFA(68), ALFA(69), ALFA(70), ALFA(71), ALFA(72),
00176 1 ALFA(73), ALFA(74), ALFA(75), ALFA(76), ALFA(77), ALFA(78),
00177 2 ALFA(79), ALFA(80), ALFA(81), ALFA(82), ALFA(83), ALFA(84),
00178 3 ALFA(85), ALFA(86), ALFA(87), ALFA(88)/
00179 4 1.56501427608594704E-04, 1.36339170977445120E-04,
00180 5 1.14886692029825128E-04, 9.45869093034688111E-05,
00181 6 7.64498419250898258E-05, 6.07570334965197354E-05,
00182 7 4.74394299290508799E-05, 3.62757512005344297E-05,
00183 8 2.69939714979224901E-05, 1.93210938247939253E-05,
00184 9 1.30056674793963203E-05, 7.82620866744496661E-06,
00185 A 3.59257485819351583E-06, 1.44040049814251817E-07,
00186 B -2.65396769697939116E-06, -4.91346867098485910E-06,
00187 C -6.72739296091248287E-06, -8.17269379678657923E-06,
00188 D -9.31304715093561232E-06, -1.02011418798016441E-05,
00189 E -1.08805962510592880E-05, -1.13875481509603555E-05/
00190 DATA ALFA(89), ALFA(90), ALFA(91), ALFA(92), ALFA(93), ALFA(94),
00191 1 ALFA(95), ALFA(96), ALFA(97), ALFA(98), ALFA(99), ALFA(100),
00192 2 ALFA(101), ALFA(102), ALFA(103), ALFA(104), ALFA(105),
00193 3 ALFA(106), ALFA(107), ALFA(108), ALFA(109), ALFA(110)/
00194 4 -1.17519675674556414E-05, -1.19987364870944141E-05,
00195 5 3.78194199201772914E-04, 2.02471952761816167E-04,
00196 6 -6.37938506318862408E-05, -2.38598230603005903E-04,
00197 7 -3.10916256027361568E-04, -3.13680115247576316E-04,
00198 8 -2.78950273791323387E-04, -2.28564082619141374E-04,
00199 9 -1.75245280340846749E-04, -1.25544063060690348E-04,
00200 A -8.22982872820208365E-05, -4.62860730588116458E-05,
00201 B -1.72334302366962267E-05, 5.60690482304602267E-06,
00202 C 2.31395443148286800E-05, 3.62642745856793957E-05,
00203 D 4.58006124490188752E-05, 5.24595294959114050E-05,
00204 E 5.68396208545815266E-05, 5.94349820393104052E-05/
00205 DATA ALFA(111), ALFA(112), ALFA(113), ALFA(114), ALFA(115),
00206 1 ALFA(116), ALFA(117), ALFA(118), ALFA(119), ALFA(120),
00207 2 ALFA(121), ALFA(122), ALFA(123), ALFA(124), ALFA(125),
00208 3 ALFA(126), ALFA(127), ALFA(128), ALFA(129), ALFA(130)/
00209 4 6.06478527578421742E-05, 6.08023907788436497E-05,
00210 5 6.01577894539460388E-05, 5.89199657344698500E-05,
00211 6 5.72515823777593053E-05, 5.52804375585852577E-05,
00212 7 5.31063773802880170E-05, 5.08069302012325706E-05,
00213 8 4.84418647620094842E-05, 4.60568581607475370E-05,
00214 9 -6.91141397288294174E-04, -4.29976633058871912E-04,
00215 A 1.83067735980039018E-04, 6.60088147542014144E-04,
00216 B 8.75964969951185931E-04, 8.77335235958235514E-04,
00217 C 7.49369585378990637E-04, 5.63832329756980918E-04,
00218 D 3.68059319971443156E-04, 1.88464535514455599E-04/
00219 DATA ALFA(131), ALFA(132), ALFA(133), ALFA(134), ALFA(135),
00220 1 ALFA(136), ALFA(137), ALFA(138), ALFA(139), ALFA(140),
00221 2 ALFA(141), ALFA(142), ALFA(143), ALFA(144), ALFA(145),
00222 3 ALFA(146), ALFA(147), ALFA(148), ALFA(149), ALFA(150)/
00223 4 3.70663057664904149E-05, -8.28520220232137023E-05,
00224 5 -1.72751952869172998E-04, -2.36314873605872983E-04,
00225 6 -2.77966150694906658E-04, -3.02079514155456919E-04,
00226 7 -3.12594712643820127E-04, -3.12872558758067163E-04,
00227 8 -3.05678038466324377E-04, -2.93226470614557331E-04,
00228 9 -2.77255655582934777E-04, -2.59103928467031709E-04,
00229 A -2.39784014396480342E-04, -2.20048260045422848E-04,
00230 B -2.00443911094971498E-04, -1.81358692210970687E-04,
00231 C -1.63057674478657464E-04, -1.45712672175205844E-04,
00232 D -1.29425421983924587E-04, -1.14245691942445952E-04/
00233 DATA ALFA(151), ALFA(152), ALFA(153), ALFA(154), ALFA(155),
00234 1 ALFA(156), ALFA(157), ALFA(158), ALFA(159), ALFA(160),
00235 2 ALFA(161), ALFA(162), ALFA(163), ALFA(164), ALFA(165),
00236 3 ALFA(166), ALFA(167), ALFA(168), ALFA(169), ALFA(170)/
00237 4 1.92821964248775885E-03, 1.35592576302022234E-03,
00238 5 -7.17858090421302995E-04, -2.58084802575270346E-03,
00239 6 -3.49271130826168475E-03, -3.46986299340960628E-03,
00240 7 -2.82285233351310182E-03, -1.88103076404891354E-03,
00241 8 -8.89531718383947600E-04, 3.87912102631035228E-06,
00242 9 7.28688540119691412E-04, 1.26566373053457758E-03,
00243 A 1.62518158372674427E-03, 1.83203153216373172E-03,
00244 B 1.91588388990527909E-03, 1.90588846755546138E-03,
00245 C 1.82798982421825727E-03, 1.70389506421121530E-03,
00246 D 1.55097127171097686E-03, 1.38261421852276159E-03/
00247 DATA ALFA(171), ALFA(172), ALFA(173), ALFA(174), ALFA(175),
00248 1 ALFA(176), ALFA(177), ALFA(178), ALFA(179), ALFA(180)/
00249 2 1.20881424230064774E-03, 1.03676532638344962E-03,
00250 3 8.71437918068619115E-04, 7.16080155297701002E-04,
00251 4 5.72637002558129372E-04, 4.42089819465802277E-04,
00252 5 3.24724948503090564E-04, 2.20342042730246599E-04,
00253 6 1.28412898401353882E-04, 4.82005924552095464E-05/
00254 DATA BETA(1), BETA(2), BETA(3), BETA(4), BETA(5), BETA(6),
00255 1 BETA(7), BETA(8), BETA(9), BETA(10), BETA(11), BETA(12),
00256 2 BETA(13), BETA(14), BETA(15), BETA(16), BETA(17), BETA(18),
00257 3 BETA(19), BETA(20), BETA(21), BETA(22)/
00258 4 1.79988721413553309E-02, 5.59964911064388073E-03,
00259 5 2.88501402231132779E-03, 1.80096606761053941E-03,
00260 6 1.24753110589199202E-03, 9.22878876572938311E-04,
00261 7 7.14430421727287357E-04, 5.71787281789704872E-04,
00262 8 4.69431007606481533E-04, 3.93232835462916638E-04,
00263 9 3.34818889318297664E-04, 2.88952148495751517E-04,
00264 A 2.52211615549573284E-04, 2.22280580798883327E-04,
00265 B 1.97541838033062524E-04, 1.76836855019718004E-04,
00266 C 1.59316899661821081E-04, 1.44347930197333986E-04,
00267 D 1.31448068119965379E-04, 1.20245444949302884E-04,
00268 E 1.10449144504599392E-04, 1.01828770740567258E-04/
00269 DATA BETA(23), BETA(24), BETA(25), BETA(26), BETA(27), BETA(28),
00270 1 BETA(29), BETA(30), BETA(31), BETA(32), BETA(33), BETA(34),
00271 2 BETA(35), BETA(36), BETA(37), BETA(38), BETA(39), BETA(40),
00272 3 BETA(41), BETA(42), BETA(43), BETA(44)/
00273 4 9.41998224204237509E-05, 8.74130545753834437E-05,
00274 5 8.13466262162801467E-05, 7.59002269646219339E-05,
00275 6 7.09906300634153481E-05, 6.65482874842468183E-05,
00276 7 6.25146958969275078E-05, 5.88403394426251749E-05,
00277 8 -1.49282953213429172E-03, -8.78204709546389328E-04,
00278 9 -5.02916549572034614E-04, -2.94822138512746025E-04,
00279 A -1.75463996970782828E-04, -1.04008550460816434E-04,
00280 B -5.96141953046457895E-05, -3.12038929076098340E-05,
00281 C -1.26089735980230047E-05, -2.42892608575730389E-07,
00282 D 8.05996165414273571E-06, 1.36507009262147391E-05,
00283 E 1.73964125472926261E-05, 1.98672978842133780E-05/
00284 DATA BETA(45), BETA(46), BETA(47), BETA(48), BETA(49), BETA(50),
00285 1 BETA(51), BETA(52), BETA(53), BETA(54), BETA(55), BETA(56),
00286 2 BETA(57), BETA(58), BETA(59), BETA(60), BETA(61), BETA(62),
00287 3 BETA(63), BETA(64), BETA(65), BETA(66)/
00288 4 2.14463263790822639E-05, 2.23954659232456514E-05,
00289 5 2.28967783814712629E-05, 2.30785389811177817E-05,
00290 6 2.30321976080909144E-05, 2.28236073720348722E-05,
00291 7 2.25005881105292418E-05, 2.20981015361991429E-05,
00292 8 2.16418427448103905E-05, 2.11507649256220843E-05,
00293 9 2.06388749782170737E-05, 2.01165241997081666E-05,
00294 A 1.95913450141179244E-05, 1.90689367910436740E-05,
00295 B 1.85533719641636667E-05, 1.80475722259674218E-05,
00296 C 5.52213076721292790E-04, 4.47932581552384646E-04,
00297 D 2.79520653992020589E-04, 1.52468156198446602E-04,
00298 E 6.93271105657043598E-05, 1.76258683069991397E-05/
00299 DATA BETA(67), BETA(68), BETA(69), BETA(70), BETA(71), BETA(72),
00300 1 BETA(73), BETA(74), BETA(75), BETA(76), BETA(77), BETA(78),
00301 2 BETA(79), BETA(80), BETA(81), BETA(82), BETA(83), BETA(84),
00302 3 BETA(85), BETA(86), BETA(87), BETA(88)/
00303 4 -1.35744996343269136E-05, -3.17972413350427135E-05,
00304 5 -4.18861861696693365E-05, -4.69004889379141029E-05,
00305 6 -4.87665447413787352E-05, -4.87010031186735069E-05,
00306 7 -4.74755620890086638E-05, -4.55813058138628452E-05,
00307 8 -4.33309644511266036E-05, -4.09230193157750364E-05,
00308 9 -3.84822638603221274E-05, -3.60857167535410501E-05,
00309 A -3.37793306123367417E-05, -3.15888560772109621E-05,
00310 B -2.95269561750807315E-05, -2.75978914828335759E-05,
00311 C -2.58006174666883713E-05, -2.41308356761280200E-05,
00312 D -2.25823509518346033E-05, -2.11479656768912971E-05,
00313 E -1.98200638885294927E-05, -1.85909870801065077E-05/
00314 DATA BETA(89), BETA(90), BETA(91), BETA(92), BETA(93), BETA(94),
00315 1 BETA(95), BETA(96), BETA(97), BETA(98), BETA(99), BETA(100),
00316 2 BETA(101), BETA(102), BETA(103), BETA(104), BETA(105),
00317 3 BETA(106), BETA(107), BETA(108), BETA(109), BETA(110)/
00318 4 -1.74532699844210224E-05, -1.63997823854497997E-05,
00319 5 -4.74617796559959808E-04, -4.77864567147321487E-04,
00320 6 -3.20390228067037603E-04, -1.61105016119962282E-04,
00321 7 -4.25778101285435204E-05, 3.44571294294967503E-05,
00322 8 7.97092684075674924E-05, 1.03138236708272200E-04,
00323 9 1.12466775262204158E-04, 1.13103642108481389E-04,
00324 A 1.08651634848774268E-04, 1.01437951597661973E-04,
00325 B 9.29298396593363896E-05, 8.40293133016089978E-05,
00326 C 7.52727991349134062E-05, 6.69632521975730872E-05,
00327 D 5.92564547323194704E-05, 5.22169308826975567E-05,
00328 E 4.58539485165360646E-05, 4.01445513891486808E-05/
00329 DATA BETA(111), BETA(112), BETA(113), BETA(114), BETA(115),
00330 1 BETA(116), BETA(117), BETA(118), BETA(119), BETA(120),
00331 2 BETA(121), BETA(122), BETA(123), BETA(124), BETA(125),
00332 3 BETA(126), BETA(127), BETA(128), BETA(129), BETA(130)/
00333 4 3.50481730031328081E-05, 3.05157995034346659E-05,
00334 5 2.64956119950516039E-05, 2.29363633690998152E-05,
00335 6 1.97893056664021636E-05, 1.70091984636412623E-05,
00336 7 1.45547428261524004E-05, 1.23886640995878413E-05,
00337 8 1.04775876076583236E-05, 8.79179954978479373E-06,
00338 9 7.36465810572578444E-04, 8.72790805146193976E-04,
00339 A 6.22614862573135066E-04, 2.85998154194304147E-04,
00340 B 3.84737672879366102E-06, -1.87906003636971558E-04,
00341 C -2.97603646594554535E-04, -3.45998126832656348E-04,
00342 D -3.53382470916037712E-04, -3.35715635775048757E-04/
00343 DATA BETA(131), BETA(132), BETA(133), BETA(134), BETA(135),
00344 1 BETA(136), BETA(137), BETA(138), BETA(139), BETA(140),
00345 2 BETA(141), BETA(142), BETA(143), BETA(144), BETA(145),
00346 3 BETA(146), BETA(147), BETA(148), BETA(149), BETA(150)/
00347 4 -3.04321124789039809E-04, -2.66722723047612821E-04,
00348 5 -2.27654214122819527E-04, -1.89922611854562356E-04,
00349 6 -1.55058918599093870E-04, -1.23778240761873630E-04,
00350 7 -9.62926147717644187E-05, -7.25178327714425337E-05,
00351 8 -5.22070028895633801E-05, -3.50347750511900522E-05,
00352 9 -2.06489761035551757E-05, -8.70106096849767054E-06,
00353 A 1.13698686675100290E-06, 9.16426474122778849E-06,
00354 B 1.56477785428872620E-05, 2.08223629482466847E-05,
00355 C 2.48923381004595156E-05, 2.80340509574146325E-05,
00356 D 3.03987774629861915E-05, 3.21156731406700616E-05/
00357 DATA BETA(151), BETA(152), BETA(153), BETA(154), BETA(155),
00358 1 BETA(156), BETA(157), BETA(158), BETA(159), BETA(160),
00359 2 BETA(161), BETA(162), BETA(163), BETA(164), BETA(165),
00360 3 BETA(166), BETA(167), BETA(168), BETA(169), BETA(170)/
00361 4 -1.80182191963885708E-03, -2.43402962938042533E-03,
00362 5 -1.83422663549856802E-03, -7.62204596354009765E-04,
00363 6 2.39079475256927218E-04, 9.49266117176881141E-04,
00364 7 1.34467449701540359E-03, 1.48457495259449178E-03,
00365 8 1.44732339830617591E-03, 1.30268261285657186E-03,
00366 9 1.10351597375642682E-03, 8.86047440419791759E-04,
00367 A 6.73073208165665473E-04, 4.77603872856582378E-04,
00368 B 3.05991926358789362E-04, 1.60315694594721630E-04,
00369 C 4.00749555270613286E-05, -5.66607461635251611E-05,
00370 D -1.32506186772982638E-04, -1.90296187989614057E-04/
00371 DATA BETA(171), BETA(172), BETA(173), BETA(174), BETA(175),
00372 1 BETA(176), BETA(177), BETA(178), BETA(179), BETA(180),
00373 2 BETA(181), BETA(182), BETA(183), BETA(184), BETA(185),
00374 3 BETA(186), BETA(187), BETA(188), BETA(189), BETA(190)/
00375 4 -2.32811450376937408E-04, -2.62628811464668841E-04,
00376 5 -2.82050469867598672E-04, -2.93081563192861167E-04,
00377 6 -2.97435962176316616E-04, -2.96557334239348078E-04,
00378 7 -2.91647363312090861E-04, -2.83696203837734166E-04,
00379 8 -2.73512317095673346E-04, -2.61750155806768580E-04,
00380 9 6.38585891212050914E-03, 9.62374215806377941E-03,
00381 A 7.61878061207001043E-03, 2.83219055545628054E-03,
00382 B -2.09841352012720090E-03, -5.73826764216626498E-03,
00383 C -7.70804244495414620E-03, -8.21011692264844401E-03,
00384 D -7.65824520346905413E-03, -6.47209729391045177E-03/
00385 DATA BETA(191), BETA(192), BETA(193), BETA(194), BETA(195),
00386 1 BETA(196), BETA(197), BETA(198), BETA(199), BETA(200),
00387 2 BETA(201), BETA(202), BETA(203), BETA(204), BETA(205),
00388 3 BETA(206), BETA(207), BETA(208), BETA(209), BETA(210)/
00389 4 -4.99132412004966473E-03, -3.45612289713133280E-03,
00390 5 -2.01785580014170775E-03, -7.59430686781961401E-04,
00391 6 2.84173631523859138E-04, 1.10891667586337403E-03,
00392 7 1.72901493872728771E-03, 2.16812590802684701E-03,
00393 8 2.45357710494539735E-03, 2.61281821058334862E-03,
00394 9 2.67141039656276912E-03, 2.65203073395980430E-03,
00395 A 2.57411652877287315E-03, 2.45389126236094427E-03,
00396 B 2.30460058071795494E-03, 2.13684837686712662E-03,
00397 C 1.95896528478870911E-03, 1.77737008679454412E-03,
00398 D 1.59690280765839059E-03, 1.42111975664438546E-03/
00399 DATA GAMA(1), GAMA(2), GAMA(3), GAMA(4), GAMA(5), GAMA(6),
00400 1 GAMA(7), GAMA(8), GAMA(9), GAMA(10), GAMA(11), GAMA(12),
00401 2 GAMA(13), GAMA(14), GAMA(15), GAMA(16), GAMA(17), GAMA(18),
00402 3 GAMA(19), GAMA(20), GAMA(21), GAMA(22)/
00403 4 6.29960524947436582E-01, 2.51984209978974633E-01,
00404 5 1.54790300415655846E-01, 1.10713062416159013E-01,
00405 6 8.57309395527394825E-02, 6.97161316958684292E-02,
00406 7 5.86085671893713576E-02, 5.04698873536310685E-02,
00407 8 4.42600580689154809E-02, 3.93720661543509966E-02,
00408 9 3.54283195924455368E-02, 3.21818857502098231E-02,
00409 A 2.94646240791157679E-02, 2.71581677112934479E-02,
00410 B 2.51768272973861779E-02, 2.34570755306078891E-02,
00411 C 2.19508390134907203E-02, 2.06210828235646240E-02,
00412 D 1.94388240897880846E-02, 1.83810633800683158E-02,
00413 E 1.74293213231963172E-02, 1.65685837786612353E-02/
00414 DATA GAMA(23), GAMA(24), GAMA(25), GAMA(26), GAMA(27), GAMA(28),
00415 1 GAMA(29), GAMA(30)/
00416 2 1.57865285987918445E-02, 1.50729501494095594E-02,
00417 3 1.44193250839954639E-02, 1.38184805735341786E-02,
00418 4 1.32643378994276568E-02, 1.27517121970498651E-02,
00419 5 1.22761545318762767E-02, 1.18338262398482403E-02/
00420 DATA EX1, EX2, HPI, PI, THPI /
00421 1 3.33333333333333333E-01, 6.66666666666666667E-01,
00422 2 1.57079632679489662E+00, 3.14159265358979324E+00,
00423 3 4.71238898038468986E+00/
00424 DATA CZERO, CONE / (0.0E0,0.0E0), (1.0E0,0.0E0) /
00425
00426 RFNU = 1.0E0/FNU
00427
00428
00429
00430
00431 TSTR = REAL(Z)
00432 TSTI = AIMAG(Z)
00433 TEST = R1MACH(1)*1.0E+3
00434 AC = FNU*TEST
00435 IF (ABS(TSTR).GT.AC .OR. ABS(TSTI).GT.AC) GO TO 15
00436 AC = 2.0E0*ABS(ALOG(TEST))+FNU
00437 ZETA1 = CMPLX(AC,0.0E0)
00438 ZETA2 = CMPLX(FNU,0.0E0)
00439 PHI=CONE
00440 ARG=CONE
00441 RETURN
00442 15 CONTINUE
00443 ZB = Z*CMPLX(RFNU,0.0E0)
00444 RFNU2 = RFNU*RFNU
00445
00446
00447
00448 FN13 = FNU**EX1
00449 FN23 = FN13*FN13
00450 RFN13 = CMPLX(1.0E0/FN13,0.0E0)
00451 W2 = CONE - ZB*ZB
00452 AW2 = CABS(W2)
00453 IF (AW2.GT.0.25E0) GO TO 130
00454
00455
00456
00457 K = 1
00458 P(1) = CONE
00459 SUMA = CMPLX(GAMA(1),0.0E0)
00460 AP(1) = 1.0E0
00461 IF (AW2.LT.TOL) GO TO 20
00462 DO 10 K=2,30
00463 P(K) = P(K-1)*W2
00464 SUMA = SUMA + P(K)*CMPLX(GAMA(K),0.0E0)
00465 AP(K) = AP(K-1)*AW2
00466 IF (AP(K).LT.TOL) GO TO 20
00467 10 CONTINUE
00468 K = 30
00469 20 CONTINUE
00470 KMAX = K
00471 ZETA = W2*SUMA
00472 ARG = ZETA*CMPLX(FN23,0.0E0)
00473 ZA = CSQRT(SUMA)
00474 ZETA2 = CSQRT(W2)*CMPLX(FNU,0.0E0)
00475 ZETA1 = ZETA2*(CONE+ZETA*ZA*CMPLX(EX2,0.0E0))
00476 ZA = ZA + ZA
00477 PHI = CSQRT(ZA)*RFN13
00478 IF (IPMTR.EQ.1) GO TO 120
00479
00480
00481
00482 SUMB = CZERO
00483 DO 30 K=1,KMAX
00484 SUMB = SUMB + P(K)*CMPLX(BETA(K),0.0E0)
00485 30 CONTINUE
00486 ASUM = CZERO
00487 BSUM = SUMB
00488 L1 = 0
00489 L2 = 30
00490 BTOL = TOL*CABS(BSUM)
00491 ATOL = TOL
00492 PP = 1.0E0
00493 IAS = 0
00494 IBS = 0
00495 IF (RFNU2.LT.TOL) GO TO 110
00496 DO 100 IS=2,7
00497 ATOL = ATOL/RFNU2
00498 PP = PP*RFNU2
00499 IF (IAS.EQ.1) GO TO 60
00500 SUMA = CZERO
00501 DO 40 K=1,KMAX
00502 M = L1 + K
00503 SUMA = SUMA + P(K)*CMPLX(ALFA(M),0.0E0)
00504 IF (AP(K).LT.ATOL) GO TO 50
00505 40 CONTINUE
00506 50 CONTINUE
00507 ASUM = ASUM + SUMA*CMPLX(PP,0.0E0)
00508 IF (PP.LT.TOL) IAS = 1
00509 60 CONTINUE
00510 IF (IBS.EQ.1) GO TO 90
00511 SUMB = CZERO
00512 DO 70 K=1,KMAX
00513 M = L2 + K
00514 SUMB = SUMB + P(K)*CMPLX(BETA(M),0.0E0)
00515 IF (AP(K).LT.ATOL) GO TO 80
00516 70 CONTINUE
00517 80 CONTINUE
00518 BSUM = BSUM + SUMB*CMPLX(PP,0.0E0)
00519 IF (PP.LT.BTOL) IBS = 1
00520 90 CONTINUE
00521 IF (IAS.EQ.1 .AND. IBS.EQ.1) GO TO 110
00522 L1 = L1 + 30
00523 L2 = L2 + 30
00524 100 CONTINUE
00525 110 CONTINUE
00526 ASUM = ASUM + CONE
00527 PP = RFNU*REAL(RFN13)
00528 BSUM = BSUM*CMPLX(PP,0.0E0)
00529 120 CONTINUE
00530 RETURN
00531
00532
00533
00534 130 CONTINUE
00535 W = CSQRT(W2)
00536 WR = REAL(W)
00537 WI = AIMAG(W)
00538 IF (WR.LT.0.0E0) WR = 0.0E0
00539 IF (WI.LT.0.0E0) WI = 0.0E0
00540 W = CMPLX(WR,WI)
00541 ZA = (CONE+W)/ZB
00542 ZC = CLOG(ZA)
00543 ZCR = REAL(ZC)
00544 ZCI = AIMAG(ZC)
00545 IF (ZCI.LT.0.0E0) ZCI = 0.0E0
00546 IF (ZCI.GT.HPI) ZCI = HPI
00547 IF (ZCR.LT.0.0E0) ZCR = 0.0E0
00548 ZC = CMPLX(ZCR,ZCI)
00549 ZTH = (ZC-W)*CMPLX(1.5E0,0.0E0)
00550 CFNU = CMPLX(FNU,0.0E0)
00551 ZETA1 = ZC*CFNU
00552 ZETA2 = W*CFNU
00553 AZTH = CABS(ZTH)
00554 ZTHR = REAL(ZTH)
00555 ZTHI = AIMAG(ZTH)
00556 ANG = THPI
00557 IF (ZTHR.GE.0.0E0 .AND. ZTHI.LT.0.0E0) GO TO 140
00558 ANG = HPI
00559 IF (ZTHR.EQ.0.0E0) GO TO 140
00560 ANG = ATAN(ZTHI/ZTHR)
00561 IF (ZTHR.LT.0.0E0) ANG = ANG + PI
00562 140 CONTINUE
00563 PP = AZTH**EX2
00564 ANG = ANG*EX2
00565 ZETAR = PP*COS(ANG)
00566 ZETAI = PP*SIN(ANG)
00567 IF (ZETAI.LT.0.0E0) ZETAI = 0.0E0
00568 ZETA = CMPLX(ZETAR,ZETAI)
00569 ARG = ZETA*CMPLX(FN23,0.0E0)
00570 RTZTA = ZTH/ZETA
00571 ZA = RTZTA/W
00572 PHI = CSQRT(ZA+ZA)*RFN13
00573 IF (IPMTR.EQ.1) GO TO 120
00574 TFN = CMPLX(RFNU,0.0E0)/W
00575 RZTH = CMPLX(RFNU,0.0E0)/ZTH
00576 ZC = RZTH*CMPLX(AR(2),0.0E0)
00577 T2 = CONE/W2
00578 UP(2) = (T2*CMPLX(C(2),0.0E0)+CMPLX(C(3),0.0E0))*TFN
00579 BSUM = UP(2) + ZC
00580 ASUM = CZERO
00581 IF (RFNU.LT.TOL) GO TO 220
00582 PRZTH = RZTH
00583 PTFN = TFN
00584 UP(1) = CONE
00585 PP = 1.0E0
00586 BSUMR = REAL(BSUM)
00587 BSUMI = AIMAG(BSUM)
00588 BTOL = TOL*(ABS(BSUMR)+ABS(BSUMI))
00589 KS = 0
00590 KP1 = 2
00591 L = 3
00592 IAS = 0
00593 IBS = 0
00594 DO 210 LR=2,12,2
00595 LRP1 = LR + 1
00596
00597
00598
00599
00600 DO 160 K=LR,LRP1
00601 KS = KS + 1
00602 KP1 = KP1 + 1
00603 L = L + 1
00604 ZA = CMPLX(C(L),0.0E0)
00605 DO 150 J=2,KP1
00606 L = L + 1
00607 ZA = ZA*T2 + CMPLX(C(L),0.0E0)
00608 150 CONTINUE
00609 PTFN = PTFN*TFN
00610 UP(KP1) = PTFN*ZA
00611 CR(KS) = PRZTH*CMPLX(BR(KS+1),0.0E0)
00612 PRZTH = PRZTH*RZTH
00613 DR(KS) = PRZTH*CMPLX(AR(KS+2),0.0E0)
00614 160 CONTINUE
00615 PP = PP*RFNU2
00616 IF (IAS.EQ.1) GO TO 180
00617 SUMA = UP(LRP1)
00618 JU = LRP1
00619 DO 170 JR=1,LR
00620 JU = JU - 1
00621 SUMA = SUMA + CR(JR)*UP(JU)
00622 170 CONTINUE
00623 ASUM = ASUM + SUMA
00624 ASUMR = REAL(ASUM)
00625 ASUMI = AIMAG(ASUM)
00626 TEST = ABS(ASUMR) + ABS(ASUMI)
00627 IF (PP.LT.TOL .AND. TEST.LT.TOL) IAS = 1
00628 180 CONTINUE
00629 IF (IBS.EQ.1) GO TO 200
00630 SUMB = UP(LR+2) + UP(LRP1)*ZC
00631 JU = LRP1
00632 DO 190 JR=1,LR
00633 JU = JU - 1
00634 SUMB = SUMB + DR(JR)*UP(JU)
00635 190 CONTINUE
00636 BSUM = BSUM + SUMB
00637 BSUMR = REAL(BSUM)
00638 BSUMI = AIMAG(BSUM)
00639 TEST = ABS(BSUMR) + ABS(BSUMI)
00640 IF (PP.LT.BTOL .AND. TEST.LT.TOL) IBS = 1
00641 200 CONTINUE
00642 IF (IAS.EQ.1 .AND. IBS.EQ.1) GO TO 220
00643 210 CONTINUE
00644 220 CONTINUE
00645 ASUM = ASUM + CONE
00646 BSUM = -BSUM*RFN13/RTZTA
00647 GO TO 120
00648 END