Simpson積分學習筆記

2021-08-26 17:59:18 字數 3007 閱讀 3267

昨天ac

m acm

模擬的時候遇到了一道si

mpso

n sim

pson

積分相關的題

完全不知道怎麼求,我們組fi

shme

n fis

hmen

被bym bym

嘲諷了很久

於是今天下午結合各種資料還是看了一下

這個東西不要覺得它看上去講什麼積分很高階 實際上認真推導也不是很難首先s

imps

ons im

pson

積分的式子是這個東西

積分號的下標代表區間左端點,上標代表區間右端點

這個值的意思就是函式在[a

,b] [a,

b]

區間與x x

軸,x=

a' role="presentation" style="position: relative;">x=a

x=a,

x=b x=b

圍成的面積

首先引入一些東西,si

mpso

n sim

pson

積分就是用乙個二次曲線來無限逼近原曲線

來達到求得近似值的效果

首先引入乙個東西 對於乙個二次函式f(

x)=a

x2+b

x+c f(x

)=ax

2+bx

+c

求積分可得f(

x)=∫

x0f(

x)dx

=a3x

3+b2

x2+c

x+d f(x

)=∫0

xf(x

)dx=

a3x3

+b2x

2+cx

+d

在這裡d

d

是乙個常數 這個東西具體怎麼證等我問了物理組的同學再來填坑那麼∫

lrf(

x)dx

=f(r

)−f(

l)' role="presentation" style="position: relative;">∫rl

f(x)

dx=f

(r)−

f(l)

∫lrf

(x)d

x=f(

r)−f

(l)∫

rlf(

x)dx

=a3(

r3−l

3)+b

2(r2

−l2)

+c(r

−l) ∫lr

f(x)

dx=a

3(r3

−l3)

+b2(

r2−l

2)+c

(r−l

)∫rl

f(x)

dx=(

r−l)

[a3(

l2+r

2+lr

)+b2

(l+r

)+c]

∫ lr

f(x)

dx=(

r−l)

[a3(

l2+r

2+lr

)+b2

(l+r

)+c]

∫rlf(x)

dx=b

−a6(

2al2

+2ar

2+2a

lr+3

bl+3

br+6

c)∫ lr

f(x)

dx=b

−a6(

2al2

+2ar

2+2a

lr+3

bl+3

br+6

c)

∫rlf(x)

dx=b

−a6 ∫lr

f(x)

dx=b

−a

6∫rl

f(x)

dx=b

−a6[

f(l)

+f(r

)+4f

(l+r

2)] ∫lr

f(x)

dx=b

−a6[

f(l)

+f(r

)+4f

(l+r

2)

]就這樣證完了… 然後我們來考慮這個**怎麼實現

double simpson(double a, double b)
好了寫完了

這樣子直接計算我們發現誤差非常大,畢竟原影象可能不能很好的用二次函式逼近

自適應simpson積分

那怎麼辦呢,我們可以考慮模擬微分的過程,把區間分成無窮小份再把得到的答案積分就是最後的答案了

但是一般我們只要求乙個近似值,所以我們就遞迴到滿足正常誤差即可

還有乙個問題 每次遞迴下去都有精度誤差,那麼累加起來可能就和正確答案相差甚遠了

這個時候我們可以在遞迴的時候提高精度要求,盡量讓小的答案精確這樣就可以了

在劉汝佳的**中判斷是這樣寫的

double _asr(double l, double r, double v, double eps)
大概意思就是把多出的精度損失也加回去,這樣子能夠比較好的保證精確度

裸的模板題

這個就不用講了 套板子即可

codes

#include

using

namespace

std;

typedef

double db;

const db eps = 1e-6;

db a, b, c, d;

db f(db x)

db integral(db x1, db x2)

db simpson(db x1, db x2, db eps)

int main()

定積分學習筆記

定積分 sn 1 n 2 n 3 n n n 當n趨向無窮大時,sn logn 常數 冪的指數為分數 把指數化成分數形式,如2的2分之1次方,實際上就是先是2的一次方,再開方.如果指數是三分之二 那麼就是2的二次方再開三次方.x nm y x y mod m 法則 若x x mod m y y mo...

微積分 學習筆記

1階導 frac 2階導 frac frac y n階導 frac y 基本導數 c 0 x n n x sin x cos x cos x sin x e x e x e c e 鏈式法則 a x e a x ln a 除法法則 也可以用鏈式法則 1 次方去理解 csc x frac 1 frac...

自適應辛普森積分學習筆記

b af x dx b a6 f a 4 f a b2 f b ab f x dx b a6 f a 4 f a b2 f b 它的用處遠不止求解三次以下的函式,對於任意一段函式,我們也可以利用辛普森積分來求解積分的近似值。具體來講就是不斷地將當前的區間二分,把這一段的積分轉化為兩個子問題,使得求解...