24小时热门版块排行榜    

查看: 1551  |  回复: 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

金虫 (正式写手)

迷途书虫

【答案】应助回帖

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的回帖
查看全部 5 个回答

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的回帖

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的回帖
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 319求调剂 +4 小力气珂珂 2026-03-20 4/200 2026-03-22 15:53 by ColorlessPI
[考研] 一志愿北京化工大学070300 学硕336求调剂 +5 vv迷 2026-03-21 8/400 2026-03-22 14:20 by ColorlessPI
[考研] 085600材料与化工306 +4 z1z2z3879 2026-03-21 4/200 2026-03-21 23:44 by ms629
[考研] 286分人工智能专业请求调剂愿意跨考! +4 lemonzzn 2026-03-17 8/400 2026-03-21 22:49 by lemonzzn
[考研] 280求调剂 +11 咕噜晓晓 2026-03-18 12/600 2026-03-21 22:40 by ACS Nano——
[考研] 0703化学调剂 +4 妮妮ninicgb 2026-03-21 4/200 2026-03-21 18:39 by 学员8dgXkO
[考研] 297求调剂 +11 戏精丹丹丹 2026-03-17 12/600 2026-03-21 17:47 by ColorlessPI
[考研] 336求调剂 +5 rmc8866 2026-03-21 5/250 2026-03-21 17:24 by 学员8dgXkO
[考研] 306求0703调剂一志愿华中师范 +5 纸鱼ly 2026-03-21 5/250 2026-03-21 17:11 by 学员8dgXkO
[考研] 材料与化工(0856)304求 B区 调剂 +3 邱gl 2026-03-21 3/150 2026-03-21 13:47 by lature00
[考研] 279分求调剂 一志愿211 +14 chaojifeixia 2026-03-19 15/750 2026-03-21 13:24 by zhukairuo
[考研] 330求调剂0854 +3 assdll 2026-03-21 3/150 2026-03-21 13:01 by 搏击518
[考研] 南昌大学材料专硕311分求调剂 +6 77chaselx 2026-03-20 6/300 2026-03-21 07:24 by JourneyLucky
[考研] 材料专业求调剂 +6 hanamiko 2026-03-18 6/300 2026-03-21 00:24 by JourneyLucky
[考研] 294求调剂材料与化工专硕 +15 陌の森林 2026-03-18 15/750 2026-03-20 23:28 by JourneyLucky
[考研] 材料学硕297已过四六级求调剂推荐 +11 adaie 2026-03-19 11/550 2026-03-20 21:30 by laoshidan
[考研] 工科材料085601 279求调剂 +7 困于星晨 2026-03-17 9/450 2026-03-20 17:38 by 无懈可击111
[考研] 328求调剂,英语六级551,有科研经历 +4 生物工程调剂 2026-03-16 12/600 2026-03-19 11:10 by 生物工程调剂
[考研] 本科郑州大学物理学院,一志愿华科070200学硕,346求调剂 +4 我不是一根葱 2026-03-18 4/200 2026-03-19 09:11 by 浮云166
[考研] 一志愿苏州大学材料工程(085601)专硕有科研经历三项国奖两个实用型专利一项省级立项 +6 大火山小火山 2026-03-16 8/400 2026-03-17 15:05 by 无懈可击111
信息提示
请填处理意见