c===================================================================c c analytic fitting formula for the numerical result II c c c c J(r_s,R=0)=b(0)+b(1)*s+b(2)*s^2+ c +b(10)*s^10 c c for 0.00001 <= r_s <= 0.1 c c c c===================================================================c program fitting_formulaeII implicit none real*8 rs,fitj,fitjr0 write(6,*)'r_s=? (0.00001< r_s <0.1)' read(5,*)rs fitj=fitjr0(rs) write(6,'(a6,f7.5,a6,f10.6)')'J(r_s=',rs,';R=0)=',fitj end c ==== FITTING FORMULA OF J(rs;R=0) ========= DOUBLE PRECISION FUNCTION fitjr0(rs) implicit none integer i real*8 rs,fj,c(0:10),s,rs0 data c/ 0.450861E-01,0.113078E-02,0.312104E-02, 0.864302E-03, $ 0.157214E-01,0.816962E-01,0.784921E-01,-0.680863E-01, $ -0.979967E-01,0.204907E-01,0.366713E-01/ c~~~~~~ ANALYTIC FITTING FORMULAE ~~~~~~~~~~ rs0=0 if(rs.lt.0.00001)then rs0=1-rs rs=0.00001 endif s=(log10(rs)+3d0)/2d0 fj=0 if(s.ne.0)then do i=0,10 fj=c(i)*s**i+fj enddo else fj=c(0) endif if(rs0.ne.0)then rs=1-rs0 endif fitjr0=fj end