作者SimenCHU ( NN NNN)
看板Programming
标题[问题] 关於FORTRAN的问题 请高手们帮忙!!
时间Sun Jun 29 17:26:52 2008
我现在遇到一个fortran问题想请教各位高手们
我目前是利用DBVPFD这个IMSL方法解二次微分方成
但因为我的BOUNDARY CONDITION 是变数
所以我某一个边界条件是变数(应该说会跟着回圈变)
类似这样(b是会变的)
SUBROUTINE FCNBC (NEQNS, YLEFT, YRIGHT, P, F)
INTEGER NEQNS
REAL*8 P, YLEFT(NEQNS), YRIGHT(NEQNS), F(NEQNS), Ys, b
parameter (Ys=-40. )
F(1) = YLEFT(1) - Ys
F(2) = YRIGHT(2) - b
但现在的问题是不知道怎麽把b从主程式传来这里
本来我是想在主程式把算出来的某个值写入文字档
到这边在读出来 但发现怎麽读都读不到,会有错误
我的方法:
在主程式中
open(30,file="123.txt")
write (30,*) a(经过计算後得到的值)
rewind(30)
然後在BC副程式中
SUBROUTINE FCNBC (NEQNS, YLEFT, YRIGHT, P, F)
INTEGER NEQNS
REAL*8 P, YLEFT(NEQNS), YRIGHT(NEQNS), F(NEQNS), Ys, b
parameter (Ys=-40.)
read (30,*) b
F(1) = YLEFT(1) - Ys
F(2) = YRIGHT(2) - b
return
end
语法应该没问题 因为我在别的地方有这样用
但在这个副程式用就会有错误
会不会是这个FCNBC副程式规定不能读取其他值-.-
想请问是为什麽错 或是 有什麽其他方法可以传数字下来
请高手解答 谢谢!!!
如果要手动输入的话太麻烦 因为大概要跑个十万次
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 122.116.163.6
1F:推 blc:把b当成参数传,像是放在F後面。 122.120.41.110 06/30 08:33