Re: [心得] fortran 做辛普森積分

看板Fortran作者 (sjgau)時間16年前 (2008/09/11 11:55), 編輯推噓2(206)
留言8則, 3人參與, 最新討論串3/4 (看更多)
請問你發表的 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

09/11 12:26, , 1F
? 4 2 4 2...跳
09/11 12:26, 1F

09/11 12:32, , 2F
1, 4, 2, 4, 2, 4, . . . ., 2, 4, 1
09/11 12:32, 2F

09/11 12:44, , 3F
我想它應該只是把中間的地方改寫而已
09/11 12:44, 3F

09/11 13:31, , 4F
該敢成 sum/6.0 打錯 sorry
09/11 13:31, 4F

09/11 13:32, , 5F
喔 沒錯 是 /3 沒錯
09/11 13:32, 5F

09/11 13:33, , 6F
是 1 4 2 4 2 4 ......2 4 1 跳
09/11 13:33, 6F

09/11 14:39, , 7F

09/11 14:39, , 8F
數值積分(Numerical Integration)
09/11 14:39, 8F
文章代碼(AID): #18o9QfHz (Fortran)
文章代碼(AID): #18o9QfHz (Fortran)