COPTION DOUBLE,DUMP=1 DIFF ( Y2 , X , 4 ) = Y1 - 1.0 DIFF ( Y1 , X , 1 ) = - DIFF ( Y2 , X , 3 ) $ $ MPRINT = 2 NSTEPS = 1000 START = 0.1d0 END = 1.4d0 DLTXPT = 0.1d0 Y1(1) = (1.0d0 + DSIN(START)) Y2(1) = (1.0d0 + DSIN(START)) Y2(2) = ( DCOS(START)) Y2(3) = ( -DSIN(START)) Y2(4) = ( -DCOS(START)) WRITE(LIST,120) START,END,DLTXPT,Y1(1),Y2(1),Y2(2),Y2(3),Y2(4) 120 FORMAT(8F16.10) $ $ C DIGITS := 32; C MAX_TERMS := 40; C ! C X_START := 0.1; C X_END := 1.4; C # C # TROUBLE ABOUT PI/2 C # C DIFF(Y1,0,EXACT_SOLN_Y1(X_START)); C DIFF(Y2,0,EXACT_SOLN_Y2(X_START)); C DIFF(Y2,1,EXACT_SOLN_Y2P(X_START)); C DIFF(Y2,2,EXACT_SOLN_Y2PP(X_START)); C DIFF(Y2,3,EXACT_SOLN_Y2PPP(X_START)); C GLOB_LOOK_POLES := TRUE; 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 := 3; C ! C EXACT_SOLN_Y1 := PROC(X) C RETURN(1.0 + SIN(X)); C END; C EXACT_SOLN_Y2 := PROC(X) C RETURN(1.0 + SIN(X)); C END; C EXACT_SOLN_Y2P := PROC(X) C RETURN( COS(X)); C END; C EXACT_SOLN_Y2PP := PROC(X) C RETURN( -SIN(X)); C END; C EXACT_SOLN_Y2PPP := PROC(X) C RETURN( -COS(X)); C END; C C C