作者sjgau (sjgau)
看板Fortran
標題Re: [心得] fortran 做辛普森積分
時間Thu Sep 11 11:55:20 2008
請問你發表的 code, 有沒有實際 驗證過。
我用 肉眼觀察的結果是:有很大的,很明顯的錯誤。
在 do- loop 裡面的
ll= 6.0 - ll
實在是 說不過去,無法解釋。
請問你 發表的code, 有沒有實際 驗證過。
我所發表的 code, 一定驗證過,才敢發表。
這是 科學精神。
※ 引述《DrStein (交換關聯)》之銘言:
: ※ 引述《sjgau (sjgau)》之銘言:
: : ! do the simpson integrated
: : sum= 0.0
: : ! for i=1 to (ct-2) step 2 do ...
: : i= 1
: : do while (i .LE. (ct-2))
: : sum= sum + y(i) + 4*y(i+1) + y(i+2)
: : i= i + 2
: : end do
: 這地方有較好一點的寫法:
: real*8 ll
: ll = 4.0
: sum = 2.0*y(1)
: i = 2
: do i = 2, ct-1
: sum = ll*y(i) + sum
: ll = 6.0 - ll
: enddo
: sum = 2.0*y(ct) + sum
: sum=sum/3.0
: ====
: 全加起來再除3.0 和2/3 4/3 2/3...差再那,我真的不知道。
: 反正老code都這樣寫,就學起來吧。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.231.134.131
1F:推 noway501:? 4 2 4 2...跳 09/11 12:26
2F:→ sjgau:1, 4, 2, 4, 2, 4, . . . ., 2, 4, 1 09/11 12:32
3F:→ noway501:我想它應該只是把中間的地方改寫而已 09/11 12:44
4F:推 DrStein:該敢成 sum/6.0 打錯 sorry 09/11 13:31
5F:→ DrStein:喔 沒錯 是 /3 沒錯 09/11 13:32
6F:→ DrStein:是 1 4 2 4 2 4 ......2 4 1 跳 09/11 13:33
8F:→ sjgau:數值積分(Numerical Integration) 09/11 14:39