PROGRAM RXP TST C This program tests the coefficients calculated by the programs axitrx. C DOUBLE PRECISION RXPCOF(45450), DLAMDA(5) DOUBLE PRECISION G1, G2, G3, G1SUM, G2SUM, G3SUM, xl12 DOUBLE PRECISION ZL, COEF, XL, XLP1, XL13, TEST1, TEST2, TEST3 INTEGER J, ISTEP, IQ, MMIN, MMAX, M, NM CHARACTER*4 ID DATA DLAMDA/1.0D0,0.5D0,0.25D0,0.1D0,2.0D0/ WRITE(6,10) 10 FORMAT(1X,'TESTING ASYMPTOTIC EXPRESSIONS FOR COEFFICIENTS OF Xp') OPEN(1,FILE='rxp300.dat',STATUS='OLD') READ(1,15) ID,MAXS 15 FORMAT(A4,I5) IF( ID .NE. ' RXP') THEN WRITE(6,17) 17 FORMAT(1X,'WRONG COEFFICIENTS FOR RXP') STOP ENDIF READ(1,20)RXPCOF 20 FORMAT(D22.16) CLOSE (1) DO 1000 J=1,5 WRITE(6,40)DLAMDA(J) 40 FORMAT(/1X,'LAMBDA =',F8.3) WRITE(6,100) 100 FORMAT(/2X,'M',7X,'COEF',8X,'G1',4X,'T1=M(COEF-G1)',3X,'2*G2',3X, & 'T2=(M+2)(T1-2*G2)',2X,'T2+4*G3') C IF(DLAMDA(J) .LE. 1) THEN XL=DLAMDA(J) XLP1=XL+1D0 XL12=XLP1**2 XL13=XLP1**3 C These are the g_i for X^A_11 and X^A_12 (i=1..3 in paper) G1=3D0*XL**2/XL13 G2=3d0*(XL-4D0*XL**2)/(10D0*XL12) G3=(5D0-97D0*XL+64D0*XL**2-44D0*XL**3+XL**4)/(140D0*XL12) ISTEP=1 ELSE XL=1D0/DLAMDA(J) XLP1=XL+1D0 XL12=XLP1**2 XL13=XLP1**3 G1=3D0*XL/XL13 G2=3d0*(XL-4D0)/(10D0*XL12) G3=(5D0*XL**4-97D0*XL**3+64D0*XL**2-44D0*XL+1D0) & /(140D0*XL12*XL**2) ISTEP=-1 ENDIF MMIN=150 MMAX=300 G1SUM=G1 G2SUM=2D0*G2 G3SUM=4D0*G3 DO 900 M=MMIN,MMAX IF (ISTEP .GT. 0) THEN NM = (M*(M+1))/2 ELSE NM = (M*(M+1))/2 +M+2 ENDIF ZL=1D0 COEF=0D0 DO 800 IQ=0,M NM=NM+ISTEP COEF=COEF+RXpCOF(NM)*ZL ZL=ZL*XL 800 CONTINUE COEF=COEF*XLP1**(-M) TEST1=DBLE(M)*(COEF-G1SUM) TEST2=DBLE(M+2)*(TEST1-G2SUM) TEST3=TEST2+G3SUM WRITE(6,860) M,COEF,G1SUM,TEST1,G2SUM,TEST2,TEST3 860 FORMAT(1X,I3,4D12.4,2D13.5) 900 CONTINUE 1000 CONTINUE STOP END