COPTION DOUBLE,DUMP=1 DIFF ( Y , X , 1 ) = (0.1 * X + 0.2) / (0.2 * X + 0.3) $ $ MPRINT = 2 NSTEPS = 1000 START = 0.1d0 END = 5.0d0 DLTXPT = 0.1d0 Y(1) = (0.5d0 * START + 0.25d0 * DLOG(2.0d0 * START + 3.0d0)) WRITE(LIST,120) START,END,DLTXPT,X(1),X(2),Y(1),Y(2) 120 FORMAT(8F16.10) $ $ C DIGITS := 32; C MAX_TERMS := 30; C ! C X_START := 0.1; C X_END := 5.0 ; C DIFF(Y,0,EXACT_SOLN_Y(X_START)); C GLOB_LOOK_POLES := TRUE; C # GLOB_MIN_H := 0.000001; C # C # NOT GIVEN = 0 C # REAL = 1 C # COMPLEX = 2 C # NO POLE = 3 C # IMPOSSIBLE EQ = 4 C # C GLOB_TYPE_GIVEN_POLE := 1; C # REAL PART C ARRAY_GIVEN_RAD_POLES[1,1] := -1.5; C # IMAG PART C ARRAY_GIVEN_RAD_POLES[1,2] := 0.0; C # ORDER C ARRAY_GIVEN_ORD_POLES[1,1] := 1.0; C # NOT USED C ARRAY_GIVEN_ORD_POLES[1,2] := 0.0; C ! C EXACT_SOLN_Y := PROC(X) C RETURN(0.5 * X + 0.25 * LN(2.0 * X + 3.0)); C END;