2013-02-24 292 views
0

我想完成一項任務,但我真的不知道該怎麼做問題。我不是在尋找完整的答案,而只是瞭解我需要用什麼來解決問題。這裏有個問題:Matlab貝塞爾函數和插值

我們被要求爲第一個 種零階J0(x)的Bessel函數提供插值。 (a)爲插值點創建一個數據點列表,小數點後7位數 x1 = 1.0,x2 = 1.3,x3 = 1.6,x4 = 1.9,x5 = 2.2。 (提示:參見Matlab在BesselJ上的幫助)

(b)通過點x1,x2,x3擬合二次多項式。使用此插值 來估計J0(1.5)。計算錯誤。

BesselJ做了什麼?我如何通過三點擬合二次多項式?

謝謝,

Mikeshiny

回答

2

這裏的第一類的第零階Bessel函數:

http://mathworld.wolfram.com/BesselFunctionoftheFirstKind.html

貝塞爾函數是對差分在圓柱座標方程式正弦和餘弦是直角座標中的ODE。

兩者都有系列表示;兩者都有多項式近似值。

這裏有一個普通二階多項式:

y = a0 + a1*x + a2*x^2 

替換爲三點(x1, y1)(x2, y2)(x3, y3),你就會有三個未知係數a0a1a2三個方程。解決這些係數。

看看我給你的鏈接y = J0(x)的情節。你想在一定範圍內適合二階聚合。所以 - 挑一個。第一點是(0,1)。再選擇兩個 - 也許x = 1和x = 2。從J0表中查找y的這些x值並評估您的係數。

這裏是我的三點:(0,1),(1,0.7652),(2.4048,0)。

當我計算係數,這裏的2階多項式,我得到:

J0(x) = 1 -0.105931124*x -0.128868876*x*x 
+0

但是我使用Y1,Y2,Y3和? – MikeShiny 2013-02-24 23:09:13

+0

當然,您嘗試在x1,x2和x3處插值的函數的值。 – duffymo 2013-02-24 23:10:27

+0

是我從besselj得到的前三個值? – MikeShiny 2013-02-24 23:51:30