River Chandler 2022-04-27 00:44 采纳率: 71.4%
浏览 39
已结题

能用fortran语言,用numerov算法写个解微分方程的例子吗

能用fortran语言,用numerov算法写个解微分方程的例子吗

  • 写回答

3条回答 默认 最新

  • 关注

    y''-y=x,(0<x<1,y(0)=0,y(1)=1)

    IMPLICIT DOUBLE PRECISION(A-H,O-Z)
    DIMENSION RL(1:10000),A(1:10000),B(1:10000),C(1:10000),U(1:10000),RM(1:10000),F(1:10000),X(0:10000),Y(0:10000),P(1:10000)
    OPEN(3,FILE='IN.TXT')
    OPEN(1,FILE='OUT')
    READ(3,*)N,A1,B1
    H=(B1-A1)/N
    DO I=0,N
    X(I)=A1+I*H
    END DO
    DO I=2,N-1
    A(I)=1-(H**2)/12
    END DO
    DO I=1,N-1
    B(I)=-2*(1+5/12*(H**2))
    END DO
    DO I=1,N-2
    C(I)=1-(H**2)/12
    END DO
    F(1)=(H**2)/12*(X(0)+10*X(1)+X(2))
    F(N-1)=(H**2)/12*(X(N-2)+10*X(N-1)+X(N))-(1-(H**2)/12)
    DO I=2,N-2
    F(I)=(H**2)/12*(X(I-1)+10*X(I)+X(I+1))
    END DO
    
    DO I=2,N-1
    RM(I)=A(I)
    END DO
    RL(1)=B(1)
    U(1)=C(1)/RL(1)
    DO I=2,N-1
    RL(I)=B(I)-RM(I)*U(I-1)
    U(I)=C(I)/RL(I)
    END DO
    P(1)=F(1)/RL(1)
    DO I=2,N-1
    P(I)=(F(I)-RM(I)*P(I-1))/RL(I)
    END DO
    Y(N-1)=P(N-1)
    DO I=2,N-1
    Y(N-I)=P(N-I)-U(N-I)*Y(N-I+1)
    END DO
    W=2*(EXP(X(N-1000))-EXP(-X(N-1000)))/(EXP(1.000)-EXP(-1.000))-X(N-1000) !和解析解作对比
    
    PRINT*,Y(N-1000),W
    
    END
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 请采纳用户回复 7月11日
  • 系统已结题 5月5日
  • 已采纳回答 4月27日
  • 创建了问题 4月27日

悬赏问题

  • ¥15 安卓adb backup备份应用数据失败
  • ¥15 eclipse运行项目时遇到的问题
  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站
  • ¥50 成都蓉城足球俱乐部小程序抢票
  • ¥15 yolov7训练自己的数据集
  • ¥15 esp8266与51单片机连接问题(标签-单片机|关键词-串口)(相关搜索:51单片机|单片机|测试代码)
  • ¥15 电力市场出清matlab yalmip kkt 双层优化问题
  • ¥30 ros小车路径规划实现不了,如何解决?(操作系统-ubuntu)