※ 本文轉寄自 ptt.cc, 文章原始頁面
看板Math
標題

Re: [分析] Hermite內插演算法的證明

時間
最新2023-08-17 23:31:00
留言152則留言,4人參與討論
推噓16 ( 160136 )
原文吃光光, 這裡舉個wiki的例子 https://en.wikipedia.org/wiki/Hermite_interpolation#General_case 求滿足 p(-1)=2, p'(-1)=-8, p''(-1)=56 p(0) =1, p'(0) = 0, p''(0) = 0 p(1) =2, p'(1) = 8, p''(1) =56 的八次多項式p(x), 其中這九個條件我叫他(●) 依照畫表演算法(相同的x擺一起, 畫table, 相同的x以微分值值取代...blabla) 我們構造出函數p(x) = 2 - 8(x+1) + 28(x+1)^2 - 21(x+1)^3 + 15x(x+1)^3 - 10x^2(x+1)^3 + 4x^3(x+1)^3 - x^3(x+1)^3(x-1) + x^3(x+1)^3(x-1)^2 如何證明p(x)符合條件(●) ---------------------------------------------------- 我從結果論知道p(x)是符合的, 而且任給我例子我都可以硬爆去證明是對的 但是我就是無法從general case去證明這套演算法都符合 因為這general case很難寫... -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 59.102.225.191 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Math/M.1691336973.A.E9E.html

152 則留言

Vulpix, 1F
那你要不要試試看先做九個多項式出來?

Vulpix, 2F
第一個先叫做u(x)吧。u(-1)=1,u'(-1)=u"(-1)=u(0)=

Vulpix, 3F
u'(0)=u"(0)=u(1)=u'(1)=u"(1)=0。其他八個也類似。

Vulpix, 4F
都是某個導數(零階導數也算導數)=1,其他導數=0。

Vulpix, 5F
那個演算法我沒有去仔細研究,不過看起來……好像

Vulpix, 6F
比較有Newton form的感覺。
是牛頓形式沒錯

cmrafsts, 7F
沒錯,這東西應該是Newton form的推廣而不是

cmrafsts, 8F
像他寫的Lagrange的推廣。Lagrange的話可以寫出一個
我這篇原文前面寫Lagrange是因為最初在問退化的那一篇我還不知道牛頓形式 而我這裡只? 有說到演算法就是指列差分表來寫牛頓形式

cmrafsts, 9F
容易驗證的形式。我第一篇推文的意思是既然你的問題

cmrafsts, 10F
中f只是用來提供線性代數條件的,那你就用一個滿足

cmrafsts, 11F
那些條件的多項式P代替f,然後說明用P去跑會滿足條

cmrafsts, 12F
件。由退化規則,P和f會寫出一樣的L。

cmrafsts, 13F
改用P寫出的極限是constant family P的極限,所以

cmrafsts, 14F
P=L
c大你P取代f那邊我理解了, 可是後面constant family P然後得到P=L我就不懂了…

Vulpix, 15F
Lagrange form 的退化計算方式,我的文章裡面有寫。
這裡重新整理一下問題跟符號: 不管Lagrange還是牛頓形式的退化都會是同一個多項式, say L(x) 然後列表演算法的多項式我叫他T(x) 想證: (1) L(x) 滿足微分條件 (2) T(x) 滿足微分條件 (3) L(x) = T(x) 由於存在唯一滿足微分條件的多項式, 因此上面(1)~(3)任意兩個都能得到剩下那個 我這篇原文的敘述方式應該讓(1)~(3)攪在一起了 不好意思

cmrafsts, 16F
所以問題應該只是為什麼退化規則長這樣而已。
※ 編輯: znmkhxrw (59.102.225.191 臺灣), 08/07/2023 05:34:40

cmrafsts, 17F
不是說你寫的,是維基一開始也說是Lagrange的推廣
喔喔 這我覺得可以接受欸 不同的x的話 Lagrange形式跟牛頓形式本來就是同一個多項式 兩 者都可以取極限來退化然後推廣到Hermite 只是差別在牛頓形式在不同的x有套遞迴列表演算法 而且在有相同x中只要改變一些演算法規 則(相同x如何處理)就可以證明(也是我想看到的)這樣規則下出來的多項式會符合Hemite的微 分條件
※ 編輯: znmkhxrw (59.102.225.191 臺灣), 08/07/2023 05:37:43

cmrafsts, 18F
你用P去插值的結果一定得回P,和點無關

Vulpix, 19F
關於我在一樓的建議,他的好處是立刻可知u是

Vulpix, 20F
( a(x+1)^2+b(x+1)+1/8 )*x^3*(x-1)^3,剩下兩個

Vulpix, 21F
常數就算一下導數。

Vulpix, 22F
u這種情況算是九個裡面最難算的了,因為在x=-1那邊

Vulpix, 23F
是u=1而不是u"=1。
嗨V大, 當我得到u_1(x)~u_9(x)並且滿足你說的那些條件(一個為1, 其他導數為0) p(x)就是u_i的線性組合, 所以只要找u_i就好了?
※ 編輯: znmkhxrw (114.25.66.212 臺灣), 08/07/2023 19:16:15

Vulpix, 24F
對,而且u_1的係數就是f(-1),其他導數也不用微分

Vulpix, 25F
了。接下來其實還要說明u_i是特定類型的極限,這樣

Vulpix, 26F
可能才能完整回答你的原問題。

Vulpix, 27F
Re: [分析] Hermite內插演算法的證明

Vulpix, 28F
p(-1)=2, p'(-1)=-8, p''(-1)=56 檢查起來很輕鬆。

Vulpix, 29F
如果想檢查 p(0) =1, p'(0) = 0, p''(0) = 0,你就

Vulpix, 30F
要換一個 p(x) 的寫法。例如改用下圖:

Vulpix, 31F
Re: [分析] Hermite內插演算法的證明

Vulpix, 32F
Re: [分析] Hermite內插演算法的證明

Vulpix, 33F
牛頓的演算法可以保證兩個多項式相等,不放心的人也

Vulpix, 34F
可以用插值多項式的唯一性這個大定理砸他。

Vulpix, 35F
總之這個形狀能讓我們輕鬆計算在 x=0 的導數。

Vulpix, 36F
然後 p(1)=2, p'(1)=-8, p''(1)=56 也是同理。

Vulpix, 37F
top row 那一串係數是偏心的,對 x=-1 太友好。

PPguest, 38F
唯一性需要符合函數值以及高階導數的條件,如果能用

PPguest, 39F
唯一性的話,就不需要檢查了XD

PPguest, 157F
減等於0.利用n-2個點假設挑走法,讓目標式剩最高

PPguest, 158F
和次高的兩項.頭尾兩點不同時,用遞迴公式.