24小时热门版块排行榜    

查看: 725  |  回复: 1

lernen8

新虫 (初入文坛)

[求助] 求帮助!改Function中的可变系数进行循环计算的问题

没有金币了啊!!!希望发扬雷锋精神啊!求大神帮忙解决问题啊!
我想用Fortran 求解非线性方程组,程序是Monte Carlo法
程序由主程序,Function, Subroutine三部分组成。
Function给出了非线性方程组,通过subroutine进行计算非线性方程组,主程序给出了初始计算值X1,X2,X3。

问题是, Function 中有个系数M是变化的,
在subroutine(或者主程序)中,先设定了初始值M0,每次计算结束了X后,由X计算新的M=f(x).
如果新Mc 和旧M差别在1.0E-05内就结束计算,
否则重新赋予Function 系数M, 重新调用子程序循环计算X.

     DIMENSION X(N), Y( N)
     REAL NRND1
     External F
      Double precision R, M, M0, Mc
      Double precision R=1.0E-4; d=30.0E-3; k=383.0;
     * h=40000.0; T=303.0
        A= B
        K= 1
        R= 1.0E0
        M0=450.0
40      M=M0
       Z= F(X, N, M)
  10   IF (A. GE. EPS) THEN
      L= L+ 1
      DO 20 I= 1, N
  20  Y(I) = -A+ 2.0* A* NRND1(R) + X(I)
      Z1= F(Y, N, M)
      K= K+ 1
      IF ( Z1. GE. Z) THEN
      IF (K .GT. M) THEN
       K= 1
       A= A/2.0
      ENDIF
      GOTO 10
      ELSE
       K= 1
      DO 30 I= 1, N
  30   X(I) = Y( I)
       Z= Z1
       IF ( Z. GE. EPS) GOTO 10
      ENDIF
       ENDIF
      
      Mc=T+(1000.0*X(1)-M)*(d/k+1/h)/R
      IF(ABS(M-Mc) .GE. EPS) THEN
      M0=(M+Mc)/2
      GOTO 40   
      
      ENDIF
      END

上面程序是对subroutine的修改。倒数第6行直接调用X1对新的Mc计算,并赋值给M0,然后返回行40。
但是貌似根本就没有把新的M传递给方程F(X,N,M)进行循环计算。最后只有第一次的结果。

难道计算得到的X1不能直接调用,用于方程计算么?(尝试过把X1直接调出主程序计算倒数第6行的方程,方程结果根本就不对)
此子程序有否错误呢?
谢谢!
回复此楼

» 猜你喜欢

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

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

学虫dj

金虫 (正式写手)

看了半天没看懂~楼主最好把代码打包,问题说清楚~
穷则独善其事,达则兼济天下
2楼2014-05-26 16:40:35
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 lernen8 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 大佬帮着分析今年的评审意见?该课题连续申请了三年了,明年要不要换个方向。 100+3 cai-11138 2026-08-31 11/550 2026-09-06 20:49 by archvillain
[文学芳草园] 两块石头 +7 阿美_Lml888 2026-09-03 10/500 2026-09-06 20:08 by 阿美_Lml888
[博后之家] 售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急 +3 j5mmowWXNWxv 2026-09-05 6/300 2026-09-06 18:41 by eObJPa4gWmp6
[硕博家园] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +4 jPDp0sc2B7zQ 2026-09-05 6/300 2026-09-06 18:21 by eObJPa4gWmp6
[公派出国] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +3 jPDp0sc2B7zQ 2026-09-05 4/200 2026-09-06 18:09 by eObJPa4gWmp6
[公派出国] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +3 jPDp0sc2B7zQ 2026-09-05 6/300 2026-09-06 17:21 by eObJPa4gWmp6
[教师之家] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +3 jPDp0sc2B7zQ 2026-09-05 9/450 2026-09-06 17:09 by eObJPa4gWmp6
[博后之家] 广西大学-广州大学招聘博士后 欢迎广大优秀人才!!! +5 SCSIOyxguo 2026-09-03 8/400 2026-09-06 15:06 by 可爱小花朵
[教师之家] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +3 j5mmowWXNWxv 2026-09-05 3/150 2026-09-06 13:09 by eObJPa4gWmp6
[考博] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +3 j5mmowWXNWxv 2026-09-05 4/200 2026-09-06 12:49 by eObJPa4gWmp6
[硕博家园] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +3 jPDp0sc2B7zQ 2026-09-05 7/350 2026-09-06 11:20 by eObJPa4gWmp6
[基金申请] 科研人应该花精力去思考如何解决问题,而不是去凝练问题 +10 瞬息宇宙 2026-09-01 19/950 2026-09-06 11:15 by jiangxuan2004
[论文投稿] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +3 jPDp0sc2B7zQ 2026-09-04 8/400 2026-09-06 11:00 by eObJPa4gWmp6
[考研] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +3 jPDp0sc2B7zQ 2026-09-05 4/200 2026-09-06 07:20 by E1iiBLMU2XnD
[论文投稿] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +6 7ZYIEW2YWn72 2026-09-04 9/450 2026-09-06 06:00 by E1iiBLMU2XnD
[基金申请] 面上没中,邀请各位路过的虫友分析一下分数 +12 jackleilei 2026-09-03 13/650 2026-09-05 18:10 by fireguard
[文学芳草园] 初秋的晨风 +4 阿美_Lml888 2026-09-04 6/300 2026-09-05 13:51 by 阿美_Lml888
[基金申请] 学科评审组评审是指会评吗? +6 瞬息宇宙 2026-08-31 9/450 2026-09-05 13:11 by haizai99
[硕博家园] 哈尔滨工业大学韩晓军教授课题组招收2027年硕士推免生及博士研究生 +3 灯灯灯灯DDDD 2026-09-03 3/150 2026-09-03 21:22 by 科研皮皮猪
[基金申请] 要骂人了,新模版改版就是要淡化问题凝练这种虚的东西,结果有个评委还在说凝练得不够 +9 瞬息宇宙 2026-08-31 17/850 2026-09-02 14:04 by anjeeshine
信息提示
请填处理意见