0

我有以下代码:

      PROGRAM EULER
      REAL A,B,X,H
      INTEGER N
      PARAMETER (A=0.0,B=2.9884,N=10)
      EXTERNAL RHS
      REAL Y(0:N)
      H=(B-A)/N
      X=XIN+H

10    FORMAT(1X,G12.4,4X,G12.4)  
      Y(0)=0
      DO I=1,N
        CALL ESTEP(H,A+(I-1)*H,Y(I-1),RHS,Y(I))
        WRITE (*,FMT=10) A+(I*H),Y(I)
      END DO
      END

      SUBROUTINE ESTEP (H,XIN,YIN,RHS,YOUT)
      REAL H,XIN,YIN,YOUT
      CALL RHS(XIN,YIN,DYDX)
      YOUT=YIN + H*DYDX
      END

      SUBROUTINE RHS(X,Y,DYDX)
      REAL X,Y,DYDX 
      DYDX=2*X**3+Y**3
      END

我需要让主程序在我的主目录中打开一个名为“data”的文件,并将 x 值及其相应的解决方案值写入 2 列排列的“data”中,其中 x 值在左列中,y在右边。我还需要创建“数据”文件的线图。当我在终端中运行代码时,代码会编译并给出正确的输出,但我认为它不会将其写入数据文件。那是我不确定该怎么做的部分。当我尝试使用 gnuplot 这就是我得到的:

gnuplot> set style data lines
gnuplot> set output 'data.ps'
gnuplot> set terminal postscript
Terminal type set to 'postscript'
Options are 'landscape noenhanced defaultplex \
leveldefault monochrome colortext \
dashed dashlength 1.0 linewidth 1.0 butt noclip \
nobackground \
palfuncparam 2000,0.003 \
"Helvetica" 14  fontscale 1.0 '
gnuplot> plot 'data'
     warning: Skipping unreadable file "data"
     No data in plot

我认为这是因为数据文件没有在主程序中打开。如果是这种情况,我将如何编码?

4

0 回答 0