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日

悬赏问题

  • ¥50 Java编程实现多功能计算器
  • ¥15 关于#java#的问题,请各位专家解答!
  • ¥15 maccms影视模板 制作影视网站失败 求
  • ¥15 stm32按键设置闹钟数进退位不正常
  • ¥15 自己写的测试驱动程序无法启动
  • ¥15 三电平逆变器中点电位平衡问题
  • ¥20 这怎么写啊 java课设
  • ¥15 用C语言完成一个复杂的游戏
  • ¥15 如何批量更改很多个文件夹里的文件名中包含文件夹名?
  • ¥50 MTK手机模拟HID鼠标出现卡顿