| 查看: 781 | 回复: 4 | ||
zhaoxyah铁杆木虫 (著名写手)
|
[求助]
fortran 主程序调用文件的问题 已有1人参与
|
|
fortran程序(龙贝格求积法)中主程序如下,现在问题是我想调用文件u0.dat中的数据来带入方程计算,程序运行总是出现问题(问题应该出在对u0.dat的调用上),请各位帮忙指导 修正,谢谢 DOUBLE PRECISION F,A,B,S,faiw,u0(36) open(1,file='u0.dat',status='old') open(3,file='s.dat') do 20 i=1,36 read(1,10)u0(i) u0=u0(i) faiw=-0.252038D+01 A=faiw B=0 EPS=0.000001 CALL FROMB(A,B,F,EPS,S,u0) WRITE(3,10) S 20 continue 10 FORMAT(1X,D15.6,1X,D15.6,1X,D15.6,1X,D15.6,1X,D15.6,1X,D15.6) END |
» 猜你喜欢
拟解决的关键科学问题还要不要写
已经有4人回复
基金委咋了?2026年的指南还没有出来?
已经有9人回复
基金申报
已经有5人回复
国自然申请面上模板最新2026版出了吗?
已经有17人回复
纳米粒子粒径的测量
已经有8人回复
疑惑?
已经有5人回复
计算机、0854电子信息(085401-058412)调剂
已经有5人回复
Materials Today Chemistry审稿周期
已经有5人回复
溴的反应液脱色
已经有7人回复
推荐一本书
已经有12人回复
» 本主题相关价值贴推荐,对您同样有帮助:
菜鸟求助关于Fortran运算结束后怎么将结果输出保存为dat文件
已经有4人回复
菜鸟求助关于fortran if循环的问题,经验丰富的前辈肯定一眼能看出问题出在哪
已经有3人回复
高分求将我的MATLAB程序改写为FORTRAN程序(1000BB)
已经有13人回复
菜鸟求助fortran数组声明及子程序的一些问题啊
已经有4人回复
fortran中的数组越界问题,
已经有3人回复
fortran编程过程出错了 麻烦给解决一下 谢谢!!
已经有5人回复
求助:fortran程序中换行及return报错
已经有12人回复
关于fortran子程序调用内部函数
已经有7人回复
fortran里一个子程序不运行是怎么回事
已经有13人回复
Fortran 函数中的循环无法进行
已经有4人回复
求大家帮帮忙,有fortran的主程序和几个模块,如何让他们运行,急!!!
已经有5人回复
fortran 程序有write和没有write两种情况计算的结果为什么会不一样?
已经有14人回复
求助fortran下open mp并行方面的书籍
已经有4人回复
超级计算机运算fortran的问题
已经有17人回复
急求fortran运行错误原因,在线等
已经有7人回复
请教 fortran 运行错误的原因
已经有13人回复
Fortran 90格式的源文件里面可以粘贴Fortran 77格式的子例程吗?
已经有4人回复
FORTRAN新手 求助主程序循环问题
已经有10人回复
请教一个fortran小程序编译出错的问题,谢谢
已经有9人回复
qchem
铁杆木虫 (著名写手)
- 应助: 280 (大学生)
- 金币: 6871.6
- 散金: 1411
- 红花: 43
- 帖子: 2586
- 在线: 669.2小时
- 虫号: 183011
- 注册: 2006-02-12
- 专业: 理论和计算化学
2楼2015-05-25 15:02:16
zhaoxyah
铁杆木虫 (著名写手)
- 应助: 3 (幼儿园)
- 金币: 5329.7
- 散金: 2779
- 红花: 5
- 帖子: 1089
- 在线: 974.6小时
- 虫号: 533803
- 注册: 2008-03-27
- 专业: 等离子体物理
|
很抱歉,我以为别人能看懂,现在我把相关信息附下,如有时间麻烦帮看,谢谢,不管怎样,都非常感谢你 运行结果显示为 forrtl: severe <157>: program exception - access violation, 具体程序如下 {若主程序中不调用文件u0.dat,程序可以运行,现在是我想调用文件u0.dat, 我想应该出在u0.dat 这个文件的调用上, u0.dat 是36行1列} SUBROUTINE FROMB(A,B,F,EPS,T,u0) DIMENSION Y(10) DOUBLE PRECISION A,B,F,T,Y,H,P,S,Q,u0 H=B-A Y(1)=H*(F(A)+F(B))/2.0 M=1 N=1 10 P=0.0 DO 20 I=0,N-1 20 P=P+F(A+(I+0.5)*H) P=(Y(1)+H*P)/2.0 S=1.0 DO 30 K=1,M S=4*S Q=(S*P-Y(K))/(S-1) Y(K)=P P=Q 30 CONTINUE IF ((ABS(Q-Y(M)).GE.EPS).AND.(M.LE.9)) THEN M=M+1 Y(M)=Q N=N+N H=H/2.0 GOTO 10 END IF T=Q RETURN END EXTERNAL F DOUBLE PRECISION F,A,B,S,faiw,u0(36) open(1,file='u0.dat',status='old') open(3,file='s.dat') do 20 i=1,36 read(1,10)u0(i) u0=u0(i) faiw= -0.221612D+01 A=faiw B=0 EPS=0.000001 CALL FROMB(A,B,F,EPS,S,u0) WRITE(3,10) S 20 continue 10 FORMAT(1X,D15.6,1X,D15.6,1X,D15.6,1X,D15.6,1X,D15.6,1X,D15.6) END FUNCTION F(X,u0) DOUBLE PRECISION F,X,miu,gama,n10,n20,faiw,u0,z2,e0,m21,nn nn=10.0 m21=1.0 miu=1836.0 n20= 0.200000D+00 faiw= -0.221612D+01 n10= 0.404108D+00 gama=0.2 z2=3.0 e0=0.01 F=1.0/sqrt(2.0*(exp(x)-1.0+ * gama/(1.0-gama)*(n10*u0+z2*n20*u0)*sqrt(2.0/miu)*(sqrt(x * -faiw+0.5*nn*nn/miu)-sqrt(-faiw+0.5*nn*nn/miu)) * +n10*u0*u0*(sqrt(1.0-2.0*x/(u0*u0))-1.0)+ * n20*u0*u0*m21*(sqrt(1.0 * -2.0*z2*x*m21/(u0*u0))-1.0))+e0*e0) RETURN END |
3楼2015-05-26 08:37:08
4楼2015-09-22 11:14:40
zhaoxyah
铁杆木虫 (著名写手)
- 应助: 3 (幼儿园)
- 金币: 5329.7
- 散金: 2779
- 红花: 5
- 帖子: 1089
- 在线: 974.6小时
- 虫号: 533803
- 注册: 2008-03-27
- 专业: 等离子体物理
5楼2015-09-22 14:29:13











回复此楼