24小时热门版块排行榜    

CyRhmU.jpeg
查看: 1174  |  回复: 4

whf199022

新虫 (初入文坛)

[求助] 菜鸟求助fortran数组声明及子程序的一些问题啊

用fortran编程时出现这样的问题,求助啊
CALL INITI(NX,NY,DX,DY,X0,XE,X,Y,P,POLD)
SUBROUTINE INITI(NX,NY,DX,DY,X0,XE,X,Y,P,POLD)                                          !子程序INITI给定节点初始坐标和初始(赫兹)压力
DIMENSION X(0:NX),Y(0:NY),P(0:NX,0:NY),POLD(0:NX,0:NY)
DX=(XE-X0)/NX
Y0=-0.5*(XE-X0)
DY=(XE-X0)/NY
DO I=0,NX
X(I)=X0+(I-1)*DX       
END DO
DO J=0,NY
Y(J)=Y0+(J-1)*DY
END DO
DO I=0,NX
D=1.-X(I)*X(I)
DO J=0,NY/2
C=D-Y(J)*Y(J)
IF(C.LE.0.0)P(I,J)=0.0
IF(C.GT.0.0)P(I,J)=SQRT(C)
END DO
END DO
DO I=0,NX
DO J=(NY/2+1),NY
JJ=NY-J
P(I,J)=P(I,JJ)
END DO
END DO
DO I=0,NX
DO J=0,NY
POLD(I,J)=P(I,J)
ENDDO
ENDDO
RETURN
END
这个是出错程序
下面是出错的问题
E:\DIANJIECHU\DIANJIECHU.F90(75) : Error: A specification statement cannot appear in the executable section.
SUBROUTINE INITI(NX,NY,DX,DY,X0,XE,X,Y,P,POLD)                                          !子程序INITI给定节点初始坐标和初始(赫兹)压力
^
E:\DIANJIECHU\DIANJIECHU.F90(76) : Error: A specification statement cannot appear in the executable section.
DIMENSION X(0:NX),Y(0:NY),P(0:NX,0:NY),POLD(0:NX,0:NY)
^
E:\DIANJIECHU\DIANJIECHU.F90(81) : Error: This name has not been declared as an array.   [X]
X(I)=X0+(I-1)*DX
^
E:\DIANJIECHU\DIANJIECHU.F90(84) : Error: This name has not been declared as an array.   [Y]
Y(J)=Y0+(J-1)*DY
^
E:\DIANJIECHU\DIANJIECHU.F90(90) : Error: This name has not been declared as an array.   [P]
IF(C.LE.0.0)P(I,J)=0.0
------------^
E:\DIANJIECHU\DIANJIECHU.F90(91) : Error: This name has not been declared as an array.   [P]
IF(C.GT.0.0)P(I,J)=SQRT(C)
------------^
E:\DIANJIECHU\DIANJIECHU.F90(97) : Error: This name has not been declared as an array.   [P]
P(I,J)=P(I,JJ)
^
E:\DIANJIECHU\DIANJIECHU.F90(102) : Error: This name has not been declared as an array.   [POLD]
POLD(I,J)=P(I,J)
^
E:\DIANJIECHU\DIANJIECHU.F90(105) : Error: A RETURN statement is invalid in the main program.
RETURN
^
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

相信自己,相信未来
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

btx97

金虫 (小有名气)

找本书好好看看基本概念吧。
2楼2014-03-24 15:58:20
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

whf199022

新虫 (初入文坛)

引用回帖:
2楼: Originally posted by btx97 at 2014-03-24 15:58:20
找本书好好看看基本概念吧。

是边看书边编的程序,因为参考了别人编的程序,在别人程序里这个是没问题的,这只是程序的一小部分,我在想是不是我主程序的声明有问题啊
相信自己,相信未来
3楼2014-03-24 16:28:33
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

whf199022

新虫 (初入文坛)

引用回帖:
2楼: Originally posted by btx97 at 2014-03-24 15:58:20
找本书好好看看基本概念吧。

是边看书边编的程序,因为参考了别人编的程序,在别人程序里这个是没问题的,这只是程序的一小部分,我在想是不是我主程序的声明有问题啊
相信自己,相信未来
4楼2014-03-24 16:31:48
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

whf199022

新虫 (初入文坛)

已解决,原来是自己主程序声明全局变量的时候加了个end
相信自己,相信未来
5楼2014-03-24 17:02:48
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 whf199022 的主题更新
信息提示
请填处理意见