24小时热门版块排行榜    

查看: 1549  |  回复: 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 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 一志愿东华大学化学070300,求调剂 +7 2117205181 2026-03-21 8/400 2026-03-22 22:55 by chixmc
[考研] 一志愿西安交通大学材料工程专业 282分求调剂 +11 枫桥ZL 2026-03-18 13/650 2026-03-22 20:26 by edmund7
[考研] 北科281学硕材料求调剂 +6 tcxiaoxx 2026-03-20 6/300 2026-03-22 20:23 by edmund7
[考研] 求调剂院校信息 +6 CX 330 2026-03-21 6/300 2026-03-22 15:25 by 无懈可击111
[考研] 286求调剂 +10 Faune 2026-03-21 10/500 2026-03-21 23:34 by 314126402
[考研] 材料求调剂 +5 @taotao 2026-03-21 5/250 2026-03-21 20:55 by lbsjt
[考研] 0805 316求调剂 +3 大雪深藏 2026-03-18 3/150 2026-03-21 18:55 by 学员8dgXkO
[考研] 330求调剂0854 +3 assdll 2026-03-21 3/150 2026-03-21 13:01 by 搏击518
[考研] 332求调剂 +3 凤凰院丁真 2026-03-20 3/150 2026-03-21 10:27 by luoyongfeng
[考研] 一志愿山大07化学 332分 四六级已过 本科山东双非 求调剂! +3 不想理你 2026-03-16 3/150 2026-03-21 03:59 by JourneyLucky
[考研] 265求调剂 +9 梁梁校校 2026-03-17 9/450 2026-03-21 02:17 by JourneyLucky
[考研] 材料专业求调剂 +6 hanamiko 2026-03-18 6/300 2026-03-21 00:24 by JourneyLucky
[考研] 一志愿武汉理工材料工程专硕调剂 +9 Doleres 2026-03-19 9/450 2026-03-20 22:36 by JourneyLucky
[考研] 求调剂,一志愿:南京航空航天大学大学 ,080500材料科学与工程学硕,总分289分 +4 @taotao 2026-03-19 4/200 2026-03-20 22:14 by JourneyLucky
[考研] 0817 化学工程 299分求调剂 有科研经历 有二区文章 +22 rare12345 2026-03-18 22/1100 2026-03-20 20:39 by zhukairuo
[考研] 一志愿吉林大学材料学硕321求调剂 +11 Ymlll 2026-03-18 15/750 2026-03-20 19:40 by 丁丁*
[考博] 申博26年 +3 八6八68 2026-03-19 3/150 2026-03-19 19:43 by nxgogo
[考研] 328求调剂,英语六级551,有科研经历 +4 生物工程调剂 2026-03-16 12/600 2026-03-19 11:10 by 生物工程调剂
[硕博家园] 湖北工业大学 生命科学与健康学院-课题组招收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 轻松不少随
信息提示
请填处理意见