Fortran Coder

查看: 6249|回复: 6
打印 上一主题 下一主题

[插值拟合] 龙贝格数值计算的问题

[复制链接]

4

帖子

1

主题

0

精华

入门

F 币
39 元
贡献
19 点
跳转到指定楼层
楼主
发表于 2017-12-8 10:09:36 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
求助,只能求出f(0;k)再往下算就出现错误
我的代码如下
[Fortran] 纯文本查看 复制代码
program romberg
integer k,m
real h,i,n,a,b,e
real T(0:5,0:5),c(0:5,0:5)
a=0.0
b=1.0

do k=0,5
 h=(b-a)/2**k
 n=2**k
 T(0,k)=0.0
 do i=1,n-1
   x=a+i*h
   f=sqrt(x**3)
   T(0,k)=T(0,k)+f
 end do
 T(0,k)=2*T(0,k)+1.0
 T(0,k)=T(0,k)*h/2 
 write(*,*) T(0,k)
 end do

do m=1,5
 do j=1,m
   T(j,m)=(4.0**m)/(4.0**m-1)*T(j,m-1)-1.0/(4.0**m-1)*T(j-1,m-1)
   write(*,*) T(j,m)
 end do
 end do



 end
分享到:  微信微信
收藏收藏 点赞点赞 点踩点踩

798

帖子

2

主题

0

精华

大宗师

F 币
3793 元
贡献
2268 点
沙发
发表于 2017-12-8 10:51:42 | 只看该作者
因为你前半截只计算了 t(0,1)...t(0,5)

4

帖子

1

主题

0

精华

入门

F 币
39 元
贡献
19 点
板凳
 楼主| 发表于 2017-12-8 11:23:26 | 只看该作者
li913 发表于 2017-12-8 10:51
因为你前半截只计算了 t(0,1)...t(0,5)

是的呀,但是往后推就出了错请问怎么办呢

798

帖子

2

主题

0

精华

大宗师

F 币
3793 元
贡献
2268 点
地板
发表于 2017-12-8 17:16:53 | 只看该作者
本帖最后由 li913 于 2017-12-8 17:19 编辑

L7 得给它赋初值,否则结果不可预计。

111.png (32.99 KB, 下载次数: 298)

111.png

4

帖子

1

主题

0

精华

入门

F 币
39 元
贡献
19 点
5#
 楼主| 发表于 2017-12-9 17:14:32 | 只看该作者
li913 发表于 2017-12-8 17:16
L7 得给它赋初值,否则结果不可预计。

谢谢,但我还是不太明白您说的t和c的赋初值。

798

帖子

2

主题

0

精华

大宗师

F 币
3793 元
贡献
2268 点
6#
发表于 2017-12-12 20:30:13 | 只看该作者
初始条件
回复

使用道具 举报

4

帖子

1

主题

0

精华

入门

F 币
39 元
贡献
19 点
7#
 楼主| 发表于 2017-12-17 12:36:51 | 只看该作者

谢谢您,我已经改好了
您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

捐赠本站|Archiver|关于我们 About Us|小黑屋|Fcode ( 京ICP备18005632-2号 )

GMT+8, 2024-4-27 01:36

Powered by Tencent X3.4

© 2013-2024 Tencent

快速回复 返回顶部 返回列表