24小时热门版块排行榜    

查看: 1554  |  回复: 4

fgwei2000

铜虫 (正式写手)

[求助] 我编的Simpson积分法fortran程序给不出结果,大侠们看看哪里出了问题?

如题:我编的Simpson积分法fortran程序给不出结果,大侠们看看哪里出了问题?
线性函数f=x在区间【0,1】上的积分,结果0.5.[ Last edited by fgwei2000 on 2011-10-29 at 23:07 ]
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dingxb

金虫 (正式写手)

迷途书虫

【答案】应助回帖

★ ★
余泽成(金币+2): 谢谢参与应助! 2011-11-02 10:38:51
你这个Simposon积分法看上好去好奇怪。

你两次求差的目的是不是要判断是否达到要求的精度?

但是你在Sn 和S2n的计算公式貌似和普通的公式不同,建议重新检查所有公式。
http://sites.google.com/site/nwnuatom/个人网站,欢迎猛击乱点!
2楼2011-11-01 14:54:30
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dingxb

金虫 (正式写手)

迷途书虫

【答案】应助回帖

fgwei2000(金币+2): 2011-11-01 22:10:32
建议参考下列代码


Program Simpsons
implicit none

real, Parameter :: a=0,b=1
integer :: n_points
integer :: k,i
real :: approx
real :: del_x, height, area, t,x
real :: n_points_1

Write(*,*)'Enter number of points'
Read(*,*)n_points

n_points_1 = real(n_points)

del_x = abs(b-a)/(n_points_1-1.)


approx = 0
t = a

do k=1, n_points-1

x = t + del_x/2
area = del_x/6 * ( 4*functio_n ( x ) + functio_n(t) + functio_n(t+del_x) )
t = t + del_x

approx = approx + area

end do



Write(*,*)approx


Contains
Real Function functio_n(x)
Real, Intent(in) :: x
functio_n=exp(-x)
end function

end program
http://sites.google.com/site/nwnuatom/个人网站,欢迎猛击乱点!
3楼2011-11-01 14:59:13
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

fgwei2000

铜虫 (正式写手)

引用回帖:
2楼: Originally posted by dingxb at 2011-11-01 14:54:30:
你这个Simposon积分法看上好去好奇怪。

你两次求差的目的是不是要判断是否达到要求的精度?

但是你在Sn 和S2n的计算公式貌似和普通的公式不同,建议重新检查所有公式。

我的算法如下:
Sn=(区间长度/6)*(f(左端点)+4*f(中间点)+f(右端点))
在Sn的基础上再推到出S2n的表达式(如程序中S2n的表示形式),然后利用
|I-S2n|=|S2n-Sn|/15这个公式的右端|S2n-Sn|/15来判断误差是否满足。
但是没有达到预期的结果。
你给出的参考程序没法判断误差。
4楼2011-11-01 22:09:10
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

fgwei2000

铜虫 (正式写手)

引用回帖:
4楼: Originally posted by fgwei2000 at 2011-11-01 22:09:10:
我的算法如下:
Sn=(区间长度/6)*(f(左端点)+4*f(中间点)+f(右端点))
在Sn的基础上再推到出S2n的表达式(如程序中S2n的表示形式),然后利用
|I-S2n|=|S2n-Sn|/15这个公式的右端|S2n-Sn|/15来判断误差是否 ...

当然,上面的算法不能算是一个较好的算法,因为这一算法在逻辑上看着简单,但是运算效率却不是很高(效率高的算法应该是外推法)。因为我推导出了这么一个公式,所以想把它实现一下。
5楼2011-11-01 23:16:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 fgwei2000 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 317求调剂 +12 申子申申 2026-03-19 18/900 2026-03-22 22:23 by luoyongfeng
[考研] 310求调剂 +4 baibai1314 2026-03-16 4/200 2026-03-22 20:19 by edmund7
[考研] 环境学硕288求调剂 +6 皮皮皮123456 2026-03-22 6/300 2026-03-22 16:52 by i_cooler
[考研] 289求调剂 +7 怀瑾握瑜l 2026-03-20 7/350 2026-03-22 15:57 by ColorlessPI
[考研] 275求调剂 +6 shansx 2026-03-22 8/400 2026-03-22 15:27 by barlinike
[考研] 能源材料化学课题组招收硕士研究生8-10名 +5 脱颖而出 2026-03-16 17/850 2026-03-22 15:18 by 脱颖而出
[考研] 070300化学求调剂 +3 苑豆豆 2026-03-20 3/150 2026-03-22 14:48 by ColorlessPI
[考研] 考研调剂 +4 来好运来来来 2026-03-21 4/200 2026-03-22 12:15 by 星空星月
[考研] 一志愿070300浙大化学358分,求调剂! +3 酥酥鱼.. 2026-03-21 3/150 2026-03-22 11:31 by 杨杨杨紫
[考研] 297求调剂 +3 喜欢还是不甘心 2026-03-20 3/150 2026-03-21 18:33 by 学员8dgXkO
[考研] 306求0703调剂一志愿华中师范 +5 纸鱼ly 2026-03-21 5/250 2026-03-21 17:11 by 学员8dgXkO
[考研] 085601调剂 358分 +3 zzzzggh 2026-03-20 4/200 2026-03-21 10:21 by luoyongfeng
[考研] 机械专硕299求调剂至材料 +3 kkcoco25 2026-03-16 4/200 2026-03-21 03:52 by JourneyLucky
[考研] 294求调剂材料与化工专硕 +15 陌の森林 2026-03-18 15/750 2026-03-20 23:28 by JourneyLucky
[考研] 304求调剂 +7 司空. 2026-03-18 7/350 2026-03-20 23:08 by JourneyLucky
[考研] 08工学调剂 +5 用户573181 2026-03-20 5/250 2026-03-20 15:47 by xia_2003
[考研] 085600材料与化工调剂 324分 +10 llllkkkhh 2026-03-18 12/600 2026-03-19 14:33 by llllkkkhh
[考研] 材料,纺织,生物(0856、0710),化学招生啦 +3 Eember. 2026-03-17 9/450 2026-03-18 10:28 by Eember.
[硕博家园] 湖北工业大学 生命科学与健康学院-课题组招收2026级食品/生物方向硕士 +3 1喜春8 2026-03-17 5/250 2026-03-17 17:18 by ber川cool子
[考博] 26申博 +4 八6八68 2026-03-16 4/200 2026-03-17 13:00 by 轻松不少随
信息提示
请填处理意见