24小时热门版块排行榜    

查看: 1125  |  回复: 10
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

215215

银虫 (小有名气)

[交流] 【求助】程序修改! 已有4人参与

PROGRAM PENDULUM
!
! Main Program for a driven pendulum under damping solved with
! the fourth-order Runge-Kutta algorithm.  
! Parameters: Q, B,and W (omega_0).  
!
     PARAMETER (N=1000,L=100,M=1)
     DIMENSION  Y(2,N)
         COMMON/CONST/Q,B,W
!
  PI = 4.0*ATAN(1.0)
  H  = 3.0*PI/L
  Q  = 0.5
  B  = 0.9
  W  = 2.0/3.0
  Y(1,1) = 0.0
  Y(2,1) = 2.0
!
! Using the Runge-Kutta algorithm to integrate the
! equation
!
  DO 100 I = 1, N-1
    T  = H*I
    Y1 = Y(1,I)
    Y2 = Y(2,I)
    DK11 = H*G1(Y1,Y2,T)
    DK21 = H*G2(Y1,Y2,T)
    DK12 = H*G1((Y1+DK11/2.0),(Y2+DK21/2.0),(T+H/2.0))
    DK22 = H*G2((Y1+DK11/2.0),(Y2+DK21/2.0),(T+H/2.0))
    DK13 = H*G1((Y1+DK12/2.0),(Y2+DK22/2.0),(T+H/2.0))
    DK23 = H*G2((Y1+DK12/2.0),(Y2+DK22/2.0),(T+H/2.0))
    DK14 = H*G1((Y1+DK13),(Y2+DK23),(T+H))
    DK24 = H*G2((Y1+DK13),(Y2+DK23),(T+H))
    Y(1,I+1) = Y(1,I)+(DK11+2.0*(DK12+DK13)+DK14)/6.0
    Y(2,I+1) = Y(2,I)+(DK21+2.0*(DK22+DK23)+DK24)/6.0
!
! Bring theta back to the region [-pi,pi]
!
    IF(ABS(Y(1,I+1)).GT.PI) THEN
       Y(1,I+1) = Y(1,I+1)-2.0*PI*ABS(Y(1,I+1))/Y(1,I+1)
        END IF
   100 CONTINUE
!
    WRITE(6,999)(Y(1,I),Y(2,I),I=1,N,M)
    STOP
  999 FORMAT (2F16.8)
     END
!
  FUNCTION G1 (Y1,Y2,T)
  COMMON /CONST/Q,B,W
       G1=Y2
  RETURN
  END
!
FUNCTION G2 (Y1,Y2,T)
COMMON /CONST/Q,B,W
  G2 = -Q*Y2-SIN(Y1)+B*COS(W*T)
RETURN
END
————————————————————————————————————

以上程序如果把B=0.9修改为B在区间【1,1.5】,要想继续运行的话该怎么修改此程序啊?????请赐教!
回复此楼
nevergiveup!
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)

★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
resonant(金币+1):感谢交流:-) 2010-04-28 19:57
你只要修改 b 的值,比如 b = 1.2,然后编译程序,运行之就好了,这个似乎没有什么难度吧。

如果你不喜欢每改一个值都编译,那么就像 holmescn  说的那样,把它改成一个带参数的,呵呵……
8楼2010-04-28 15:28:26
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 11 个回答

snoopyzhao

至尊木虫 (职业作家)

★ ★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
jjdg(金币+2):辛苦了 2010-04-26 17:29
不是很明白你什么意思,这个程序中的参数包括了B,你修改了,重新编译就可以了,这个会有什么问题吗?
2楼2010-04-26 14:36:37
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

holmescn

金虫 (正式写手)

★ ★ ★ ★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
jjdg(金币+2):辛苦了 2010-04-26 17:29
wangen994(金币+2):活动期间额外奖励 2010-04-27 09:56
把Program到END中间的代码放到一个subroutine里,这个subrutine要有一个参数B。然后在主程序里用do循环调用。

具体实现请查阅Fortran相关书籍。
3楼2010-04-26 17:06:38
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

215215

银虫 (小有名气)

引用回帖:
Originally posted by snoopyzhao at 2010-04-26 14:36:37:
不是很明白你什么意思,这个程序中的参数包括了B,你修改了,重新编译就可以了,这个会有什么问题吗?

我就是想运行一下B属于【1,1.5】时的程序,上边是B=0.9,就是怎么修改此程序改成是运行B属于【1,1.5】时的程序,因为我不懂FORTRAN,希望高手能给我修改编译好此程序让我运行一下而已,谢谢!!!
nevergiveup!
4楼2010-04-27 13:39:01
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 科研孤儿太难了 +9 我4大白菜 2026-08-20 9/450 2026-08-20 18:23 by 2549091707
[基金申请] 时间戳变了,能看出什么问题? +18 基诺咪客 2026-08-17 23/1150 2026-08-20 17:19 by Godzela
[基金申请] 只有每年这种时候来逛逛小木虫 +21 yaoyewhu2008 2026-08-20 22/1100 2026-08-20 17:03 by yaoyewhu2008
[基金申请] 今天系统多次维护,明天很可能放榜! +9 zju2000 2026-08-16 10/500 2026-08-20 15:56 by Leogzhya
[基金申请] 言之凿凿,明天官网会通知放榜? +14 医学老男孩 2026-08-20 16/800 2026-08-20 15:47 by LNP@mRNA
[基金申请] 重要消息,中午系统在维护 +11 yuleib84 2026-08-18 12/600 2026-08-20 11:09 by xskun
[基金申请] 哪位老哥知道今年的国自然具体哪一天放榜? +16 Ldrop2023 2026-08-13 20/1000 2026-08-20 11:07 by xskun
[基金申请] 今天基金会出结果吗?20260819 +14 kkkl_v 2026-08-19 15/750 2026-08-20 08:21 by sunzitan
[基金申请] filecode,4个jtjc了 +11 ziyangfang 2026-08-19 13/650 2026-08-19 21:28 by aasahr
[基金申请] 今天放榜没戏了吧 +4 yuleib84 2026-08-19 5/250 2026-08-19 19:52 by hhs666
[基金申请] 今天放榜吗? +14 布布和一二 2026-08-19 15/750 2026-08-19 18:07 by gltch
[基金申请] filecode=后面第一个是大写字母 +10 wangze12014 2026-08-14 12/600 2026-08-19 16:56 by 苦难博士
[基金申请] 2027广东省杰青 +4 奶牛小黑 2026-08-15 10/500 2026-08-19 11:02 by wanfengnew
[基金申请] 朋友圈看到的 +6 wangzilk 2026-08-18 8/400 2026-08-19 10:55 by Haru815
[基金申请] 快农历七夕节了,轻松一下,男人悄悄话,女施主请不要进来。 +6 Tide man 2026-08-14 7/350 2026-08-19 09:56 by ZJTJZ
[基金申请] 什么时候开奖? +6 CrisMessi 2026-08-18 6/300 2026-08-19 08:06 by Equinoxhua
[论文投稿] 投稿咨询 +4 wwm09 2026-08-17 6/300 2026-08-18 15:36 by wwm09
[基金申请] 时间戳又变了8-15 +14 archvillain 2026-08-15 26/1300 2026-08-18 13:37 by phantomgost
[基金申请] 今天维护系统维护 祝所有人 高中 +8 gjjjzhong 2026-08-18 9/450 2026-08-18 13:01 by 家与远方
[基金申请] 各位道友,我要去昆明玩几天,回来见。 +7 Tide man 2026-08-14 8/400 2026-08-15 01:11 by arzu_hma
信息提示
请填处理意见