网页资讯视频图片知道文库贴吧地图采购
进入贴吧全吧搜索

 
 
 
日一二三四五六
       
       
       
       
       
       

签到排名:今日本吧第个签到,

本吧因你更精彩,明天继续来努力!

本吧签到人数:0

一键签到
成为超级会员,使用一键签到
一键签到
本月漏签0次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行补签。
连续签到:天  累计签到:天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
10月14日漏签0天
fortran吧 关注:8,665贴子:19,820
  • 看贴

  • 图片

  • 吧主推荐

  • 游戏

  • 1回复贴,共1页
<<返回fortran吧
>0< 加载中...

ODEs初值问题数值求解疑问

  • 只看楼主
  • 收藏

  • 回复
  • cy7_lq
  • 初级粉丝
    1
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
SUBROUTINE ODES
IMPLICIT NONE
REAL,DIMENSION(100)::X,Y1,Y2
DOUBLEPRECISION::H,K0,K1,K2,K3,Q0,Q1,Q2,Q3
INTEGER::I,N
WRITE(*,*)'本程序使用4阶精度R-K方法求解1阶ODEs初值问题.请输入希望数值解显示的项数:'
WRITE(*,*)
READ(*,*)N
WRITE(*,*)
WRITE(*,*)'           I X               Y1               Y2'
WRITE(*,*)
H=0.1
X(1)=0
Y1(1)=0
Y2(1)=1
DO 10 I=1,N,1
K0=H*(3*Y1(I)+2*Y2(I))
Q0=H*(4*Y1(I)+Y2(I))
Y1(I)=Y1(I)+1/2*K0
Y2(I)=Y2(I)+1/2*Q0
K1=H*(3*Y1(I)+2*Y2(I))
Q1=H*(4*Y1(I)+Y2(I))
Y1(I)=Y1(I)+1/2*K1
Y2(I)=Y2(I)+1/2*Q1
K2=H*(3*Y1(I)+2*Y2(I))
Q2=H*(4*Y1(I)+Y2(I))
Y1(I)=Y1(I)+K2
Y2(I)=Y2(I)+Q2
K3=H*(3*Y1(I)+2*Y2(I))
Q3=H*(4*Y1(I)+Y2(I))
X(I+1)=X(I)+H
Y1(I+1)=Y1(I)+(1/6)*(K0+2*K1+2*K2+K3)
Y2(I+1)=Y2(I)+(1/6)*(Q0+2*Q1+2*Q2+Q3)
WRITE(*,*)I,X(I),Y1(I),Y2(I)
10 CONTINUE
WRITE(*,*)
ENDSUBROUTINE ODES
PROGRAM COUNT4
IMPLICIT NONE
INTERFACE
SUBROUTINE ODES
IMPLICIT NONE
REAL,DIMENSION(100)::X,Y1,Y2
DOUBLEPRECISION::H,K0,K1,K2,K3,Q0,Q1,Q2,Q3
INTEGER::I,N
ENDSUBROUTINE ODES
ENDINTERFACE
CALL ODES
ENDPROGRAM COUNT4
待求解常微分方程组为
y1'=3y1+2y2
y2'=4y1+y2
y1(0)=0,y2(0)=1
程序运行结果不正确.


  • cy7_lq
  • 初级粉丝
    1
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
不必了,谢谢!我自己已经解决了.


登录百度账号

扫二维码下载贴吧客户端

下载贴吧APP
看高清直播、视频!
  • 贴吧页面意见反馈
  • 违规贴吧举报反馈通道
  • 贴吧违规信息处理公示
  • 1回复贴,共1页
<<返回fortran吧
分享到:
©2025 Baidu贴吧协议|隐私政策|吧主制度|意见反馈|网络谣言警示