Dear colleague, We have written up the paper "RELATIVISTIC CORRECTIONS TO THE SUNYAEV-ZELDOVICH EFFECT FOR CLUSTERS OF GALAXIES. IV. ANALYTIC FITTING FORMULA FOR THE NUMERICAL RESULTS" and submitted it to THE ASTROPHYSICAL JOUNAL. We have also uploaded it in astro-ph/9912008. We are herewith sending you the subroutine for the fitting formula. We would most like to appreciate whatever comment you might have on this work. Yours sincerely, Naoki Itoh **************************************************** Naoki Itoh Department of Physics Sophia University 7-1 Kioi-cho, Chiyoda-ku, Tokyo 102 Japan Telephone (81 or 0) 3 3238 3431 FAX (81 or 0) 3 3238 3341 **************************************************** C===================================================================C C ANALYTIC FITTING FORMULA FOR THE NUMERICAL RESULT C C C C DELTA n(X) C C ------------ = y F(theta_e, X) C C n_0(X) C C C C F(theta_e, X) = F1*(Y0+theta_e*Y1 + theta_e^2*Y2 C C + theta_e^3*Y3 + theta_e^4*Y4) + R C C C C for 0.0 <= theta_e < 0.02 C C C C R = 0 C C C C for 0.02 <= theta_e <= 0.05 C C C C / 0.0 < X < 2.5 C C | C C | R = 0 C C AND | C C | 2.5 <= X <= 20 C C | C C \ R = Sum_{i,j}^{10} a_{i,j} THETA_e^{i} Z^{j} C C C C Where THETA_e = 25*(theta_e - 0.01), Z = (X - 2.5)/17.5 C C C C DEC. 1 1999 YK IN RI-DA-GROUP C C===================================================================C IMPLICIT REAL*8 (A-H,O-Z) REAL*8 LLT,LLX,ULT,ULX,ST,SX WRITE (6,*) 'Decision of theta_e region and step' WRITE (6,*) 'Lower limit of theta_e ( >= 0.00) = ?' READ (5,*) LLT WRITE (6,*) 'Upper limit of theta_e ( <= 0.05) = ?' READ (5,*) ULT WRITE (6,*) 'And step = ?' READ (5,*) ST WRITE (6,*) 'Decision of X region and step' WRITE (6,*) 'Lower limit of X ( > 0.0) = ?' READ (5,*) LLX WRITE (6,*) 'Upper limit of X ( <= 20.0) = ?' READ (5,*) ULX WRITE (6,*) 'And step = ?' READ (5,*) SX WRITE (6,2) 2 FORMAT (2X,'theta_e',10X,'X',13X,'Dn/n') DO 101 THETAE = LLT, ULT, ST DO 102 X = LLX, ULX, SX IF (THETAE. LT. 0.02D0) THEN WRITE (6,12) THETAE,X,FINK(THETAE,X) ELSE IF (X. LT. 2.5D0) THEN WRITE (6,12) THETAE,X,FINK(THETAE,X) ELSE WRITE (6,12) THETAE,X,FINK(THETAE,X)+R(THETAE,X) ENDIF ENDIF 102 CONTINUE 101 CONTINUE 12 FORMAT (2(E11.5,TR3),E14.6) STOP END C---------------- SUBFUNCTION R(theta_e,X) ----------------------- REAL*8 FUNCTION R(THETAE,X) IMPLICIT REAL*8 (A-H, O-Z) DIMENSION A(1:121) c Fitting Coefficients a_{i,j} DATA A/ * 4.13674D-03, * -3.31208D-02, 1.10852D-01, -8.50340D-01, 9.01794D+00, * -4.66592D+01, 1.29713D+02, -2.09147D+02, 1.96762D+02, * -1.00443D+02, 2.15317D+01, -4.40180D-01, 3.06556D+00, * -1.04165D+01, 2.57306D+00, 8.52640D+01, -3.02747D+02, * 5.40230D+02, -5.58051D+02, 3.10522D+02, -6.68969D+01, * -4.02135D+00, 1.04215D+01, -5.17200D+01, 1.99559D+02, * -3.79080D+02, 3.46939D+02, 2.24316D+02, -1.36551D+03, * 2.34610D+03, -1.98895D+03, 8.05039D+02, -1.15856D+02, * -1.04701D+02, 2.89511D+02, -1.07083D+03, 1.78548D+03, * -2.22467D+03, 2.27992D+03, -1.99835D+03, 5.66340D+02, * -1.33271D+02, 1.22955D+02, 1.03703D+02, 5.62156D+02, * -4.18708D+02, 2.25922D+03, -1.83968D+03, 1.36786D+03, * -7.92453D+02, 1.97510D+03, -6.95032D+02, 2.44220D+03, * -1.23225D+03, -1.35584D+03, -1.79573D+03, -1.89408D+03, * -1.77153D+03, -3.27372D+03, 8.54365D+02, -1.25396D+03, * -1.51541D+03, -3.26618D+03, -2.63084D+03, 2.45043D+03, * 5.10306D+03, 3.58624D+03, 9.51532D+03, 1.91833D+03, * 9.66009D+03, 6.12196D+03, 1.12396D+03, 3.46686D+03, * 4.91340D+03, -2.76135D+02, -5.50214D+03, -7.96578D+03, * -4.52643D+03, -1.84257D+04, -9.27276D+03, -9.39242D+03, * -1.34916D+04, -6.12769D+03, 3.49467D+02, 7.13723D+02, * 7.73758D+03, 5.62142D+03, 4.89986D+03, 3.50884D+03, * 1.86382D+04, 1.71457D+04, 1.45701D+03, -1.32694D+03, * -5.84720D+03, -6.47538D+03, -9.17737D+03, -7.39415D+03, * -2.89347D+03, 1.56557D+03, -1.52319D+03, -9.69534D+03, * -1.26259D+04, 5.42746D+03, 2.19713D+04, 2.26855D+04, * 1.43159D+04, 4.00062D+03, 2.78513D+02, -1.82119D+03, * -1.42476D+03, 2.82814D+02, 2.03915D+03, 3.22794D+03, * -3.47781D+03, -1.34560D+04, -1.28873D+04, -6.66119D+03, * -1.86024D+03, 2.44108D+03, 3.94107D+03, -1.63878D+03/ THE = (THETAE-0.01d0)*100.d0/4.d0 Z = (X-2.5d0)/17.5d0 R = (A(1)+A(2)*THE+A(3)*THE**2.d0+A(4)*THE**3.d0+A(5)*THE**4.d0 * +A(6)*THE**5.d0+A(7)*THE**6.d0+A(8)*THE**7.d0 * +A(9)*THE**8.d0+A(10)*THE**9.d0+A(11)*THE**10.d0) * +(A(12)+A(13)*THE+A(14)*THE**2.d0 * +A(15)*THE**3.d0+A(16)*THE**4.d0 * +A(17)*THE**5.d0+A(18)*THE**6.d0+A(19)*THE**7.d0 * +A(20)*THE**8.d0+A(21)*THE**9.d0+A(22)*THE**10.d0)*Z * +(A(23)+A(24)*THE+A(25)*THE**2.d0 * +A(26)*THE**3.d0+A(27)*THE**4.d0 * +A(28)*THE**5.d0+A(29)*THE**6.d0+A(30)*THE**7.d0 * +A(31)*THE**8.d0+A(32)*THE**9.d0+A(33)*THE**10.d0) * *Z**(2.d0) * +(A(34)+A(35)*THE+A(36)*THE**2.d0 * +A(37)*THE**3.d0+A(38)*THE**4.d0 * +A(39)*THE**5.d0+A(40)*THE**6.d0+A(41)*THE**7.d0 * +A(42)*THE**8.d0+A(43)*THE**9.d0+A(44)*THE**10.d0) * *Z**(3.d0) * +(A(45)+A(46)*THE+A(47)*THE**2.d0 * +A(48)*THE**3.d0+A(49)*THE**4.d0 * +A(50)*THE**5.d0+A(51)*THE**6.d0+A(52)*THE**7.d0 * +A(53)*THE**8.d0+A(54)*THE**9.d0+A(55)*THE**10.d0) * *Z**(4.d0) * +(A(56)+A(57)*THE+A(58)*THE**2.d0 * +A(59)*THE**3.d0+A(60)*THE**4.d0 * +A(61)*THE**5.d0+A(62)*THE**6.d0+A(63)*THE**7.d0 * +A(64)*THE**8.d0+A(65)*THE**9.d0+A(66)*THE**10.d0) * *Z**(5.d0) * +(A(67)+A(68)*THE+A(69)*THE**2.d0 * +A(70)*THE**3.d0+A(71)*THE**4.d0 * +A(72)*THE**5.d0+A(73)*THE**6.d0+A(74)*THE**7.d0 * +A(75)*THE**8.d0+A(76)*THE**9.d0+A(77)*THE**10.d0) * *Z**(6.d0) * +(A(78)+A(79)*THE+A(80)*THE**2.d0 * +A(81)*THE**3.d0+A(82)*THE**4.d0 * +A(83)*THE**5.d0+A(84)*THE**6.d0+A(85)*THE**7.d0 * +A(86)*THE**8.d0+A(87)*THE**9.d0+A(88)*THE**10.d0) * *Z**(7.d0) * +(A(89)+A(90)*THE+A(91)*THE**2.d0 * +A(92)*THE**3.d0+A(93)*THE**4.d0 * +A(94)*THE**5.d0+A(95)*THE**6.d0+A(96)*THE**7.d0 * +A(97)*THE**8.d0+A(98)*THE**9.d0+A(99)*THE**10.d0) * *Z**(8.d0) * +(A(100)+A(101)*THE+A(102)*THE**2.d0 * +A(103)*THE**3.d0+A(104)*THE**4.d0 * +A(105)*THE**5.d0+A(106)*THE**6.d0+A(107)*THE**7.d0 * +A(108)*THE**8.d0+A(109)*THE**9.d0+A(110)*THE**10.d0) * *Z**(9.d0) * +(A(111)+A(112)*THE+A(113)*THE**2.d0 * +A(114)*THE**3.d0+A(115)*THE**4.d0 * +A(116)*THE**5.d0+A(117)*THE**6.d0+A(118)*THE**7.d0 * +A(119)*THE**8.d0+A(120)*THE**9+A(121)*THE**10.d0) * *Z**(10.d0) RETURN END c------- SUBFUNCTION FINK(theta_e,X) ---------------------- c FINK = F1*(Y0+theta_e*Y1+ ... +theta_e^4*Y4) c------------------------------------------------------------ REAL*8 FUNCTION FINK(THETAE,X) IMPLICIT REAL*8(A-H,O-Z) SH = (DEXP(X/2)-DEXP(-X/2))/2 CH = (DEXP(X/2)+DEXP(-X/2))/2 CTH = CH/SH XT = X*CTH ST = X/SH Y0 = -4.0D0+XT Y1 = -10.0D0+47.0D0*XT/2.0D0-42.0D0*(XT**2.0D0)/5.0D0 * +7.0D0*(XT**3.0D0)/10.0D0 * +(ST**2.0D0)*(-21.0D0/5.0D0+7.0D0*XT/5.0D0) Y2 = -15.0D0/2+1023.0D0*XT/8.0D0-868.0D0*(XT**2.0D0)/5.0D0 * +329.0D0*(XT**3.0D0)/5.0D0-44.0D0*(XT**4.0D0)/5.0D0 * +11.0D0*(XT**5.0D0)/30.0D0+(ST**2.0D0) * *(-434.0D0/5.0D0+658.0D0*XT/5.0D0 * -242.0D0*(XT**2.0D0)/5.0D0 * +143.0D0*(XT**3.0D0)/30.0D0)+(ST**4.0D0) * *(-44.0D0/5.0D0+187.0D0*XT/60.0D0) Y3 = 15.0D0/2+2505.0D0*XT/8.0D0-7098.0D0*(XT**2.0D0)/5.0D0 * +14253.0D0*(XT**3.0D0)/10.0D0-18594.0D0*(XT**4.0D0)/35.0D0 * +12059.0D0*(XT**5.0D0)/140.0D0-128.0D0*(XT**6.0D0)/21.0D0 * +16.0D0*(XT**7.0D0)/105.0D0+(ST**2.0D0) * *(-7098.0D0/10.0D0+14253.0D0*XT/5.0D0 * -102267.0D0*(XT**2.0D0)/35.0D0 * +156767.0D0*(XT**3)/140.0D0 * -1216.0D0*(XT**4.0D0)/7.0D0+64.0D0*(XT**5.0D0)/7.0D0) * +(ST**4.0D0)*(-18594.0D0/35.0D0+205003.0D0*XT/280.0D0 * -1920.0D0*(XT**2.0D0)/7.0D0+1024.0D0*(XT**3.0D0)/35.0D0) * +(ST**6.0D0)*(-544.0D0/21.0D0+992.0D0*XT/105.0D0) Y4 = -135.0D0/32.0D0+30375.0D0*XT/128.0D0 * -62391.0D0*(XT**2.0D0)/10.0D0 * +614727.0D0*(XT**3.0D0)/40.0D0 * -124389.0D0*(XT**4.0D0)/10.0D0 * +355703.0D0*(XT**5.0D0)/80.0D0 * -16568.0D0*(XT**6.0D0)/21.0D0 * +7516.0D0*(XT**7.0D0)/105.0D0 * -22.0D0*(XT**8.0D0)/7.0D0+11.0D0*(XT**9.0D0)/210.0D0 * +(ST**2.0D0)*(-62391.0D0/20.0D0+614727.0D0*XT/20.0D0 * -1368279.0D0*(XT**2.0D0)/20.0D0 * +4624139.0D0*(XT**3.0D0)/80.0D0 * -157396.0D0*(XT**4.0D0)/7.0D0 * +30064.0D0*(XT**5.0D0)/7.0D0-2717.0D0*(XT**6.0D0)/7.0D0 * +2761.0D0*(XT**7.0D0)/210.0D0) * +(ST**4.0D0)*(-124389.0D0/10.0D0 * +6046951.0D0*XT/160.0D0-248520.0*(XT**2.0D0)/7.0D0 * +481024.0D0*(XT**3.0D0)/35.0D0-15972.0D0*(XT**4.0D0)/7.0D0 * +18689.0D0*(XT**5.0D0)/140.0D0) * +(ST**6.0D0)*(-70414.0D0/21.0D0 * +465992.0D0*XT/105.0D0-11792.0D0*(XT**2.0D0)/7.0D0 * +19778.0D0*(XT**3.0D0)/105.0D0) * +(ST**8.0D0)*(-682.0D0/7.0D0+7601.0D0*XT/210.0D0) F1 = THETAE*X*DEXP(X)/(DEXP(X)-1) FINK = F1*(Y0+THETAE*Y1+THETAE**(2.0D0)*Y2 * +THETAE**(3.0D0)*Y3+THETAE**(4.0D0)*Y4) RETURN END