fortran程序总是出现四个错误,求大神帮忙看看哪里出错啦,拜托拜托

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了fortran程序总是出现四个错误,求大神帮忙看看哪里出错啦,拜托拜托相关的知识,希望对你有一定的参考价值。

PROGRAM CREEPLIFETOOL IMPLICIT DOUBLE PRECISION(A-H,O-Z) DIMENSION DV(10000000),D(10000000),SG(100),TF(100),NS(100),ES(100) WRITE(*,*)'ULTIMATE AND MINIMUM STRESS /MPA' READ(*,*) SB,SMIN WRITE(*,*)'TIME INCREMENT /S' READ(*,*) DT WRITE(*,*) 'NECKLING STRAIN EV' READ(*,*) EV! LINEAR CREEP LIMIT SV=100.0! 幂蠕变线性蠕变特性 B=3.0E-20 B0=3.0E-12 CM=5.0! 幂蠕变损伤累积特性 CC=1.8E-19 BT=5.0! 线性蠕变损伤累积特性 CL=3.3E-13 BT2=2.0 GAM=5.0 SF=65.0! 应力计算点设定 D0 100 I=1,100 SG(I)=SMIN+I*(SB-SMIN)/100.0 ES(I)=0.0100 CONTINUE D0 200 I=1,100 DV(1)=0.0 D(1)=0.0 DVC=0.0 DC=0.0 CR0=SG(I)/SB EV0=0.0 EVC=EV/B/SG(I)**CM D0 300 J=2,10000000 ST=SG(I)/(1-DV(J-1))/(1-D(J-1)) DDV=DT*B*(1.0-DV(J-1))*ST**CM IF(ST.LE.SV) DDV=DT*B0*ST IF(ST.LE.SV) THEN DV(J)=DV(J-1)+DT*B0*ST*(1.0-DV(J-1)) ENDIF IF(ST.GT.SV) THEN DV(J)=DV(J-1)+DT*B*(1.0-DV(J-1))*ST**CM ENDIF H=0.0 IF(ST.GT.SF) H=1.0-(SF/ST)**GAM IF(ST.GT.SV) THEN D(J)=D(J-1)+DT*CC*ST**BT*H ES(I)=ES(I)+B*ST**CM*DT*(1.0-DV(J-1)) ELSE D(J)=D(J-1)+DT*CL*ST**BT2*H ES(I)=ES(I)+B0*ST*DT*(1.0-DV(J-1)) ENDIF CR1=(1.0-DV(J))*(1.0-D(J)) IF(CR1.LT.CR0.OR.D(J).GT.0.5) THEN NS(I)=0 TF(I)=(J-2)*DT WRITE(*,210) I,J,NS(I),DV(J),D(J),ES(I) GOTO 200 ENDIF IF(ES(I).GT.EV) THEN NS(I)=1 TF(I)=(J-2)*DT WRITE(*,210) I,J,NS(I),DV(J),D(J),ES(I) GOTO 200 ENDIF300 CONTINUE200 CONTINUE210 FORMAT(1X,2(I7,1X),I3,1X,3(F6.3,1X)) OPEN(3,FILE='CREEPLIFE') WRITE(3,*) ' SG CRLIFE CRSTYE'! CRSTYLE=0 NO OBVIOUS NECKLING! CRSTYLE=1 NECKING BEFORE FAIURE DO 500 I=1,100 WRITE(3,400) SG(I), TF(I), NS(I), ES(I)500 CONTINUE400 FORMAT(2X,2(E12.5,2X),I2,1X,E12.5) CLOSE(3,STATUS='KEEP') END

参考技术A 你的do 写成 d0 了 !



PROGRAM CREEPLIFETOOL 
IMPLICIT DOUBLE PRECISION(A-H,O-Z) 
DIMENSION DV(1000),D(1000),SG(100),TF(100),NS(100),ES(100) 
WRITE(*,*)'ULTIMATE AND MINIMUM STRESS /MPA' 
READ(*,*) SB,SMIN 
WRITE(*,*)'TIME INCREMENT /S' 
READ(*,*) DT 
WRITE(*,*) 'NECKLING STRAIN EV' 
READ(*,*) EV
c! LINEAR CREEP LIMIT 
SV=100.0
c! 幂蠕变线性蠕变特性 
B=3.0E-20 
B0=3.0E-12 
CM=5.0
c! 幂蠕变损伤累积特性 
CC=1.8E-19 
BT=5.0
c! 线性蠕变损伤累积特性 
CL=3.3E-13 
BT2=2.0 
GAM=5.0 
SF=65.0
c! 应力计算点设定 
Do 100 I=1,100 
SG(I)=SMIN+I*(SB-SMIN)/100.0 
ES(I)=0.0
100  CONTINUE 
Do 200 I=1,100 
DV(1)=0.0 
D(1)=0.0 
DVC=0.0 
DC=0.0 
CR0=SG(I)/SB 
EV0=0.0 
EVC=EV/B/SG(I)**CM 
Do 300 J=2,10000000 
ST=SG(I)/(1-DV(J-1))/(1-D(J-1)) 
DDV=DT*B*(1.0-DV(J-1))*ST**CM 
IF(ST.LE.SV) DDV=DT*B0*ST 
IF(ST.LE.SV) THEN 
DV(J)=DV(J-1)+DT*B0*ST*(1.0-DV(J-1)) 
ENDIF 
IF(ST.GT.SV) THEN 
DV(J)=DV(J-1)+DT*B*(1.0-DV(J-1))*ST**CM 
ENDIF 
H=0.0 
IF(ST.GT.SF) H=1.0-(SF/ST)**GAM 
IF(ST.GT.SV) THEN 
D(J)=D(J-1)+DT*CC*ST**BT*H 
ES(I)=ES(I)+B*ST**CM*DT*(1.0-DV(J-1)) 
ELSE 
D(J)=D(J-1)+DT*CL*ST**BT2*H 
ES(I)=ES(I)+B0*ST*DT*(1.0-DV(J-1)) 
ENDIF 
CR1=(1.0-DV(J))*(1.0-D(J)) 
IF(CR1.LT.CR0.OR.D(J).GT.0.5) THEN 
NS(I)=0 
TF(I)=(J-2)*DT 
WRITE(*,210) I,J,NS(I),DV(J),D(J),ES(I) 
GOTO 200 
ENDIF 
IF(ES(I).GT.EV) THEN 
NS(I)=1 
TF(I)=(J-2)*DT 
WRITE(*,210) I,J,NS(I),DV(J),D(J),ES(I) 
GOTO 200 
ENDIF
300  CONTINUE
200  CONTINUE
210  FORMAT(1X,2(I7,1X),I3,1X,3(F6.3,1X)) 
OPEN(3,FILE='CREEPLIFE') 
WRITE(3,*) ' SG CRLIFE CRSTYE'
c! CRSTYLE=0 NO OBVIOUS NECKLING
c! CRSTYLE=1 NECKING BEFORE FAIURE 
DO 500 I=1,100 
WRITE(3,400) SG(I), TF(I), NS(I), ES(I)
500  CONTINUE
400  FORMAT(2X,2(E12.5,2X),I2,1X,E12.5) 
CLOSE(3,STATUS='KEEP') 
END

java获取文件时候报FileNotFoundException异常,求大神帮忙看看

我的文件位置是在src下:
但是报如下错误:
java.io.FileNotFoundException: C:\Users\Administrator\Workspaces\MyEclipse%2010\Tenlent\bin\person.xml (系统找不到指定的路径。)
//加载本地xml文件资源
String xml=Test.class.getClassLoader().getResource("person.xml").getFile();

肯定还是路径的问题,C:\Users\Administrator\Workspaces\MyEclipse%2010\Tenlent\bin\person.xml 看下是否有特殊字符什么的,空格什么的 参考技术A 检查这个路径对不对C:\Users\Administrator\Workspaces\MyEclipse%2010\Tenlent\bin\person.xml追问

路径是对的

追答

String xml=Test.class.getClassLoader().getResource("person.xml").getFile();
检查这行代码getFile拿到的应该是一个File对象吧 ?

参考技术B

你的文件目录有空格。这个路径名中C:\\Users\\Administrator\\Workspaces\\MyEclipse%2010\\Tenlent\\bin\\person.xml 

ClassLoader的getResource方法获取的是URL对象,再用URL的getFile方法获取路径时就会出现这种情况。其中"%20"表示空格,路径不对导致FileNotFoundException。你可以看一下,路径中实际是一个叫"MyEclipse 10"的文件夹,但系统去找"MyEclipse%2010"这个文件夹了,这会导致获取不到文件。

解决方法:用getFile方法获取路径名后,把"%20"全部替换为" "即可。

代码:

URL rs = Test.class.getClassLoader().getResource("person.xml");
String xml = rs.getFile();
xml = xml.replaceAll("%20", " ");

以上是关于fortran程序总是出现四个错误,求大神帮忙看看哪里出错啦,拜托拜托的主要内容,如果未能解决你的问题,请参考以下文章

求大神帮忙看看c语言编程哪里出问题了,文件始终是空白,无法写入。

微信开发者工具,小程序前端出错,求大神帮忙

求大神帮忙看看啥问题

c++求大神帮我看看为啥这个程序运行不了?关于图形工厂总是出现redefinition of 'class BaseShape'

我在一段java程序的运行过程中出现java.lang.NullPointerException错误,求大神帮忙

java获取文件时候报FileNotFoundException异常,求大神帮忙看看