5 · web viewให พวกเราพยายามกำหนดถ าม...
TRANSCRIPT
รายงาน
หวขอเรอง5.3 Interpolation by Spline
Functions
เสนอตออาจารยสชย ตนยอชฌาวฒ
จดทำาโดย 1. นายชาญชย ตพนดง 48220271 เลข
ท 332. นายปยะวฒน บวกองทาว 48220495 เลขท
39 3. นายสทธรช รตนสมฤกษ 48220 คต
เลขท 49
ภาคเรยนท 2 ปการศกษา 2550วทยาลยพาณชยนาวนานาชาต
มหาวทยาเกษตรศาสตร วทยาเขตศรราชา
5.3 ฟงกชนการประมาณคาในชวงเสมอนพหนาม
การประมาณคาในชวงพหนามสำาหรบเซต N+1 จด {(Xk,Yk)}N k=0
ไมเปนตวประกอบ ถาพจารณาอยางในภาพตด (5.2) พหนามดกร N สามารถมความสมพนธ N-1 สงสดตำ(าสด และยงสามารถปรบเปล(ยนกราฟในตวเลอกผานจดกลาง วธการเดยวกบพหนามดกรระดบตำ(า Sk(X) และการประมาณคาระหวางจดท(มคาตอเน(องบนคล(นน(ง (Xk,Yk) และ (Xk +1 , Yk +1) ดภาพ (5.10)
5.10การประมาณคาพหนามตอเน(องเปนชวง
5.11การประมาณคาพหนามตอเน(องเชงเสน
สองสวนท(ตดกนของเสนโคง y= Sk(X) และ y= Sk+1(X) ซ(งวางอยเหนอ (Xk, Xk +1) และ (Xk +1, Xk +2) ตามลำาดบ โดยปกตจะผานตามเง(อนไข (Xk +1 , Yk +1) โดยทงสองจดของกราฟจะเช(อมตอกนตลอดตามเง(อนไข (Xk +1 , Yk +1) และคาของฟงกช (น Sk(X) รปแบบของพหนามตอเน(องเปนชวงของเสนโคง ซ(งใชเคร(องหมายแสดงแทนโดย S(X)
การประมาณคาพหนามตอเนองเชงเสน (Piecewise Linear Interpolation)
Linear Interpolation คอ เสนตรงท(ลากระหวางจด 2 จด ซ(งแสดงดวย
Error สามารถคำานวณไดจาก
แต ไมสามารถหาคาท(แนนอน แตสามารถใชคาโดยประมาณ คอ f
''(xm)เม(อ ซ(งจะเปน Maximum Error Error of a linear interpolation
จาก Linear Interpolation จะเกด error คอ e(x) = f(x) - g(x)
เม(อ f(x) = exact function
g(x) =
linear interpolation function
e(x) = error function
จะพบวาท( x = a และ x = b คา error = 0 ดงนน เราสามารถเขยนสมการของ error ไดใหม คอ
e(x) = (x - a)(x - b)s(x) เม(อ s(x) = function ใดๆ
ถากำาหนดให a < h < b เราสามารถเขยนฟงกชนใหมไดคอ p(x) = f(x) - g(x) - (x - a)(x - b)s(h)
หรอ p(x) = (x - a)(x - b)[s(x) - s(h)]
จาก p(x) = f(x) - g(x) - (x - a)(x - b)s(h) take derivative of p(x)
take derivative ofp'(x) p''(x) = f '' (x) - g '' (x) - 2s(h)
เม(อ g''(x) = 0 เน(องจาก g(x) = linear function และท( x = x ซ(งเปนรากของ p''(x) = 0 จะได
โดยท( a < h < b และ a < x < b ซ(งเราสามารถใช h = x จะได
ดงนน เราสามารถคำานวณหาคาของ Error ไดดงน
เม(อ a <h < b ; a < x < b แตการหาคา x ซ(งอยในชวง [a,b] ท(แคบมาก ดงนนเราจงประมาณคาของ x ใ
หเปน
ในกรณของ data point ท(มมากกวา 2 จดนน เราจะเช(อมตอระหวางจด โดยใชฟงกชนของสวนโคง โดยอาจจะใช Polynomial Interpolation เชน power series, Lagrange Interpolation, Newton forward/backward Interpolation etc. กำาหนดให ขอมลมจำานวน N+1 จด ดงน
x0 x1 x2 ....... xN f0 f1 f2 ....... fN
โดยมระยะหางไมแนนอน จากจำานวนจดดงกลาว เราสามารถใช Polynomial order N เพ(อลากผานจด N +1 จด ซ(งเขยนสมการใหอยในรปของ power series ไดดงน
g(x) = a0 + a1x + a2x2 + . . . + aNxN
เม(อ ai เปนตวแปรท(ไมทราบคา แต เราสามารถคำานวณหาคาไดโดยการเขยนสมการขนมาโดยการแทนคา xi และ fi ในสมการ g(x) จะได
เม(อจดรปใหม จะได
การคำานวณหาคา ai จะตองใชคอมพวเตอร "not desirable"
Reasons จ ตองมโปรแกรมคำานวณสมการเชงเสน จ คำาตอบท(ไดอาจจะไมถกตอง
ทางเลอก จ หา Interpolation Polynomial โดยไมตองแกสมการเชงเสน โดย Lagrange / Newton FW/BW
LAGRANGE INTERPOLATION
จากสมการของ Linear Interpolation ท(มขอมลจำานวน 2 ขอมล (data point)
สามารถเขยนใหอยในรปของสมการ Lagrange ไดดงน
โดยท(
ถามจำานวนขอมล 3 ขอมล (data point) คอ f(x0), f(x1), f(x2) ท(ตำาแหนง x0, x1, x2 และเราตองการประมาณคาในชวงระหวาง x0 และ x2 สามารถเขยนใหอยในรปของ Lagrange ไดดงน
โดยท(
เราสามารถสรางสมการ Lagrange Interpolation โดยท(วไปเม(อผาน N+1 จด ไดดงน
โดยท(
หรอ
Error of Polynomial Interpolation
คาของ Error : e(x) = f(x) – g(x)
เม(อ f(x) = exact function g(x) = polynomial order N
กำาหนดให f(x),g(x) ตดกนท( x = xi เม(อคาของ x0 < x < xN ดงนน g(x) จะมคาแนนอนท(x = xi ดงนน คาของ error คอ
โดย x0 < x < xN
และ Error of Lagrange Interpolation
คาของ Error : =
เม(อ N + 1 = number of data point f N+1= derivative of f(x)
แตคา x เราประมาณใหเทากบ xm = midpoints between the two
end points
Function L(x) จะมผลตอคาผดพลาด ดงน
ขนาดของ L(x) จะตำ(าสดท(จดก(งกลางของ Interpolation ถาขนาดของ Interpolation เพ(มขน ขนาดของออสซเลต (การแกวง)
จะเพ(มขนอยางรวดเรว
Example กำาหนดให f(x) = log10(x) ซ(งมคาตางดงน
i xi f(xi)0 1 0 1 2 0.301032 3 0.477123 4 0.60206
ถาใชการประมาณคาโดย Lagrange Interpolationจงประเมนคาความผดพลาดท(x= 1.5 , 2.5 , 3.5
สมการกำาลงสามเสมอนพหนามตอเนองเปนชวง (Piecewise Cubic Splines) เสนโคงขอพหนามเปนเซตของจดขอมลนำาไปใช
ใน CAD(computer-assisted design)และคอมพวเตอรกราฟฟกตองการปรบเรยบเสนโคงโดยใชจดขอมลโดยจดขอมลกตองไมมขอผดพลาด ตามหลกแลวโดยท(วไปกจะใชไมโคงเขยนแบบหรอสถาปตยกรรมของไมโคงเขยนแบบและในการวาดเสนโคงจะดเรยบเม(อมองดวยตาเปลา คณตศาสตรเปนไปไดท(จะสรางฟงกชนสมการกำาลงสาม Sk(x) แตละชวงอตภาค(Xk,Xk+1)ดงนนจะไดผลลพธเปนเสนโคงตอเน(อง y=S(x)และอนพนธท(หน(งและอนพนธท(สองจะตอเน(องกนทงหมดบนอตภาค(Xo,Xn) การตอเน(องของคาเฉล(ย S’(x) คอมมของความโคงสามารถหาไดท(แตละจด บทนยาม 5.1 กำาหนดให{(Xk,Yk)}Nk=0 บนจด N+1 ท( a=X0<X1<…..Xn= b ฟงกชน S(X) เรยกวา สมการกำาลงสามเสมอนพหนามถาไมม N สมการพหนามกำาลงสาม Sk(x) มสมประสทธ Sk ,0,Sk
,1,Sk ,2 และ Sk ,3
คณสมบตสถานะท( 1 นน S(x) เปนตวประกอบของสมการกำาลงสามตอเน(องเปนชวง คณสมบตสถานะท( 2 นนคาเฉล(ยสมการกำาลงสามตอเน(องเปนชวงใหกลมจดของขอมล คณสมบตท( 3 และ 4 ตองการแทนสมการกำาลงสามตอเน(องเปนชวงของฟงกช (นท(เรยบและตอเน(อง คณสมบตท( 5 อนพนธอนดบท( 2 เปนผลลพธของฟงกช (น คอตอเน(องไปเร(อยๆ การมอยของสมการกำาลงสามเสมอนพหนาม (Exstence of cubic splires) ใหพวกเราพยายามกำาหนดถามความเปนไปไดท(จะสามสมการกำาลงสามเสมอนพหนาม ซ(งสามารถแทนคณสมบตท( 1 ตลอดจนคณสมบตท( 5 แตละสมการพหนามกำาลงสาม Sk (x) มคาคงท(ท(ยงไมร 4 ตว (Sk 0, Sk 1, Sk2,
Sk3); ดงนนจะม 4N เปนสมประสทธ ท(จะทำาใหสมการสนสด พดอยางงายๆคอ เรามสมการ 4N ท(ไมมกฎเกณฑ หรอเง(อไขท(ตองกำาหนดโดยใชจดขอมลแทนคาในเง(อนไข N+1 และคณสมบตท( 3,4 และ 5 แตการแทนท(ในเง(อนไข N-1 ดงนนเปนการกำาหนดเง(อนไข N+1+3(N-1)=4N-2 เราจะไดเพ(มขนอก 2 ดกร โดยไมมกฎเกณฑ เราจะเรยกมนวา การกำาจดจดจบ ซ(งจะเก(ยวของกบแตละ S’(X) หรอ S”(X) ท( X0 และ XN และจะอธบายตอภายหลง ขณะนเราสามารถดำาเนนการกบสมการท(เกดขน
สำาหรบ xk ≤ x ≤ xk+1 และ k = 0,…,N-1 อนทเกรต (5) 2 ครง คาคงท( 2 ตวของการอนทเกรตและผลลพธสามารถเปล(ยนแปลงไดเหมาะสม ดงนนจะมรปแบบ
แทนคา Xk และ Xk+1 ในสมการท( (6) และใชคา Yk =Sk(Xk) และ Yk+1=Sk(Xk+1) ทำาใหไดสมการท(เก(ยวของกบ Pk และ qk ตามลำาดบ ตามลำาดบ
ม 2 สมการอยางงาย สำาหรบหาคำาตอบ Pk และ qk และเม(อมการแทนคาในสมการท( (6) ผลลพธจะเปนสตรสำาหรบฟงกช(น สมการกำาลงสาม Sk(X)
สงเกตการแทนคาสมการท( 8 มการลดรปเก(ยวกบตวสมประสทธท(ไมร ในการจะหาคานเราจะตองใชอนพนธของสมการท( 8 ซ(งคอสมการท( 9
หาคาสมการท( 9 ท( Xk และทำาใหไดผลลพธ ท(งายขน (สมการท( 10)
ในทำานองเดยวกน เราสามารถแทนคา k โดย k-1 ในสมการท( 9 จะไดสตรสำาหรบ S’(X)-1(X) และแทนคามนท( Xk ไดเปนสมการท( 11
ขณะนใชคณสมบตท( 4 สมการท( 10 และ 11 จะไดความสมพนธท(สำาคญเก(ยวกบ mk-1, mk และ mk+1 แลวเปนสมการท( (12)
การสรางสมการกำาลงสามเสมอนพหนาม สงเกตคาท(ไมรในสมการท( 12 ตองการคา mk และคาคงท(ในเทอมอ(น ไดมาโดยการกระทำาเลขคณตอยางงายดวยจดขอมล {(Xk,Yk)} เน(องจากในความเปนจรงระบบสมการท( (12) เปนระบบท(อยภายใตขอกำาหนดของสมการเสนตรง N-1 ท(เก(ยวเน(องกบตวท(ไมร N+1 ดงนนสมการท(เพ(มขน 2 ตว ตองแทนท(ม m0 ถกกำาจดจากสมการท( 1 และ mn จากสมการท( (N-1) ในระบบสมการการท( (12) วธการมาตรฐานสำาหรบการกำาจดจดจบเปนผลสรปในสมการท( 5.8 พจารณาวธท( 5 ในตาราง 5.8 ถาให m0 มาจากนน h0 m0
สามารถคำานวณไดและสมการแรก(เม(อ k=1) ของสมการท((12)
รปแบบของวธการ
ในทำานองเดยวกน ถาให mn มา ดงนน สามารถคำานาณ hN-1 – mN ได และสมการสดทาย เม(อ k= N-1 ของสมการท( (12) คอสมการท( (14)
สมการท( (13) และ (14) กบ (12) ใชสำาหรบ k=2,3,…,N-2 จากสมการเสนตรง N-1 รวมถงสมประสทธ m1 , m2 ,…, mN-q
การเลอกโดยไมคำานงถงวธเฉพาะในตาราง 5.8 เราสามารถเขยนสมการ 1 และ N-1 ในสมการท( (12) ไดใหมและไดระบบสมการเสนตรงสามของรปแบบ Hm=V ซ(งเก(ยวเน(อง m1 , m2 ,…, mN-1
ระบบสมการในสมการท( (15) เปนสวนลำาดบท(ถกตองของเสนตรง และมผลลพธเฉพาะ (ดรายละเอยดในบทท( 3) หลงจากสมประสทธ (mk ) สมประสทธเสมอนพหนาม {Sk ,j} สำาหรบ Sk (X) โดยการคำานวณโดยใชสตร
แตละสมการพหนามกำาลงสาม Sk (X) สามารถเขยนเปนรปแบบการคณสำาหรบการคำานวณสมประสทธ
และ Sk (X) ใชบนชวงระหวาง xk ≤ x ≤ xk+1 สมการท( (12) ใชวธเดยวกนกบวธในตาราง (5.8) สามารถใชสมการกำาลงสามเสมอนพหนามดวยคณสมบตเฉพาะท(จดสดทาย เจาะจงคาสำาหรบ m0
และ mn ในตาราง (5.8) ใชแกไขสมการแรก และสมการสดทาย ในสมการท( (12) และรปแบบสมการ N-1 ท(ใหมาในสมการท( (15) ดงนนระบบ Tridiagcnal ใชแกสำาหรบสมประสทธ m1 , m2 ,…, mN-
1 ตวท(เหลอทายสด สตรในสมการท((16) ใชในการกำาหนดสมประสทธ เสมอนพหนาม เพ(อใชสำาหรบการอางอง ตอนนลกษณะสมการท(จะตองเตรยมสำาหรบความแตกตางของรปแบบเสมอนพหนามการกำาจดจดสดทาย หลงจาก 5 ทฤษฏบทแทรก โชวรปแบบของ Tridiagcnal system ซ(งใชสำาหรบแกไข แตละความแตกตางของการกำาจดจดสดทายในตาราง (5.8)ทฤษฏบทแทรก 5.1 (Clamped Spline) สมการกำาลงสามเสมอนพหนามมลกษณะเฉพาะดวยเง(อนไขการแบงของเขตอนพนธอนดบ 1 S’(a) = d0 และ S’(b) = dN แกไขระบบเชงเสน
สงเกต Clamped Spline ไดวาเก(ยวเน(องกบความชนท(สดทาย สามารถมองเปนเสนโคงเสมอนได เม(อไมเปนของแขงสามารถงอหรอ
ยดหยนได ผานจดขอมล และไมเปน Clamped ท(แตละสดทายดวย ความชนท(ไดรบการปรบเปล(ยน The Clamped Spline จะเปนประโยชนกบคนเขยนแบบ สำาหรบการทำาจดหลายๆจดใหเปนเสนโคงท(เรยบ ทฤษฏบทแทรก 5.2 สมการกำาลงสามเสมอนพหนาม มลกษณะเฉพาะดวยเง(อนไขการแบงแบบอสระ S”(a) = 0และ S”(b)=0การพสจนแกปญหาระบบเชงเสน
สงเกตไดวา The natural spline เปนเสนโคงไดโดย แรงท(สามารถงอและยดหยนไม ตลอดจนจดขอมลแตปลอยใหความชนท(จดสดทายเปนอสระตำาแหนงเสมอกน ซ(งมการส(นถาขนาดลดลงเปนพฤตกรรมของเสนโคง เปนประโยชนสำาหรบเสนโคงท(เหมาะสม จากขอมลท(ไดมาจากการทดลองซ(งเปนลกษณะสำาคญหลายอยางท(เปนหนวยความยาวทฤษฏบทแทรก 5.3 (การหาคาตวแปรเสมอนพหนาม) สมการกำาลงสามเสมอนพหนามนน คอใชการหาคาตวแปรจากจดท( XN-1 และ XN-2 กำาหนด S”(b) การพสจน แกปญหาระบบเชงเสน
สงเกตไดวาการประมาณคานอกชวงเสมอนพหนาม เปนท(เขาใจโดยตรงกนวา จดสดทายสมการกำาลงสาม การเพ(มขนของสมการกำาลงสามขางเดยวนน คอรปแบบเสมอนพหนาม สมการกำาลงสามเชงเด(ยว เสนโคงอยเหนอระหวาง[y0, y2] และอกหน(งสมการกำาลงสามเชงเดยว อยเหนอระหวาง [XN-2, XN]
ทฤษฏบทแทรก 5.4 (พาราโบลาทำาใหสนสดเสมอนพหนาม) สมการกำาลงสามเสมอนพหนาม มลกษณะเฉพาะ น(นคอ S”’(X) =0 บนชวงระหวาง [X0, X1] และ S”’(X) =0 บน [XN-1, XN] การพสจน แกปญหาระบบเชงเสน
สงเกตไดวาขอสมมตฐานคอ S”’(X) =0 บนชวงระหวาง [X0, X1] แรงท(ทำาใหสมการกำาลงสามลดลงไดสมการกำาลงสองเหนอ[X0, X1] และปรากฏตำาแหนงท(เหมอนกนเหนอ [XN-1, XN]ทฤษฏบทแทรก 5.5 (จดสดทายเปลยนแปลงความโคงเสมอนพหนาม) สมการกำาลงสามเสมอนพหนาม มลกษณะเฉพาะดวยเง(อนไขการแบงขอบเขตอนพนธอนดบสอง S”(a) และ S”(b) เปนตวกำาหนดการพสจน แกปญหาระบบเชงเสน
สงเกตไดวา การกำาหนดคาสำาหรบ S”(a) และ S”(b) อนญาตใหผกระทำาปรบเปล(ยนความโคง ณ จดสดทายได 5 ตวอยางขางตนแสดงใหเหนวาการกระทำาของสมการเสมอนพหนาม ตางๆกนเปนไปไดท(จะรวมเง(อนไขสดทายเขาดวยกนจะไดความแตกตางกน เปนชวงวางเสมอของความเปนไปได แตเราไดเหลอรปแบบท(เปล(ยนแปลงไวเพ(อใหผอานตรวจสอบความจรงตวอยาง 5.7 ให The Clamped Cubic Spline ท(ผานตลอดจด (0,0),(1,0.5),(2,2.0)และ(3,1.5) ดวยเง(อนไขการแบงขอบเขตอนพนธอนดบหน(ง S’(0)=0.2 และ S’(3)= -1คำานวณสมการกำาลงสอง
จากนนใชทฤษฏบทแทรก 5.1 จะไดสมการ
เม(อไดสมการท(งายขนและใสลงในเคร(องหมายเมทรตเราจะได
เปนงานโดยตรงท(ใชคำานวณในการแกปญหา m1 = 2.25 และ m2 = -3.72 ตอนนใชสมการ (i) ของตาราง 5.1 กำาหนดสมประสทธของ m0 และ m3
ตอไปคา m0 = -0.36 , m1 = 2.25 , m2 = -3.72 , และ m3 = 0.36 ใชแทนลงในสมการ (16)
เพ(อหาสมประสทธเสมอนพหนาม การแกปญหาคอ
ตวอยางท 5.8 หา The natural cubic spline ท(จด (0,0.0) , (1,0.5) , (2,2.0) , และ (3,1.5) ดวยเง(อนไขการแบงขอบเขตอสระ S’’ (x ) = 0 และ S” (3) = 0 ใชคาเปล(ยน {hk},{dk} และ {uk} ซ(งคำานวณไดในตวอยาง 5.7 จากนนใชทฤษฎบทแทรก 5.2 และจะไดสมการ
ทำาเปนรป matrix ของระบบเชงเสนคอ
มนงายท(จะแกปญหา m1 = 2.4 และ m2 = -3.6 เน(องจาก m0 = S” (0) = 0 และ m3 = S” (3) = 0 เม(อสมการท( (16) หาสมประสทธเสมอนพหนามไดผลลพธ คอ
ตวอยางท 5.9 หา The extrapolated cubic spline ท(ผานตลอดจด (0,0.0) , (1,0.5) , (2,2.0) , และ (3,1.5)ใชคา {hk} , {dk} และ {uk} จากตวอยาง 5.7 ดวยทฤษฎบท 5.3 และไดระบบเชงเสน
เขยนอยในรป matrix คอ
และธรรมดาจะได m1 = 1.0 และ m2 = -2.0 ตอนนใชสมการใน (iii) ของตาราง 5.8 ในการคำานวณ m0 และ m3
โดยสรป คาสำาหรบ {mk} แมนในสมการท( (16) เน(องจากสมประสทธเสมอนพหนามในการแกไขปญหาคอ
ตวอยางท 5.10 หา The parabolically terminate cubic spline ท(ผานตลอดจด (0,0.0) , (1,0.5) , (2,2.0) และ (3,1.5) ใช{hk} , {dk} และ {uk} จากตวอยางท( 5.7 และจากนน ใชทฤษฎบทแทรก ท( 5.4 จะได
เขยนอยในรป matrix
และการแกปญหาคอ m1 = 1.75 และ m2 = -2.75 เน(องจาก S” (x) = 0 บนชวงยอยท(แตละจดสดทายและสตร (iv) ในตาราง 5.8 แสดงเปนนยวา เราม m0 = m1 = 1.75 และ m3 = m2 = -2.75 ดงนนคาสำาหรบ {mk} แทนในสมการท( (16) เพ(อแกไขปญหา
จะแสดงอยในรป 5.15 ตวอยางท 5.11 หาคาเปล(ยนแปลงความโคงเสมอนพหนาม ท(ผานจด (0,0.0) , (1,0.5) , (2,2.0) และ (3 ,1.5) ดวยเง(อนไขการแบงขอบเขตอนพนธ อนดบสอง S” (3) = 3.3
ใช{hk} , {dk} และ {uk} จากตวอยาง 5.7 และจากนน ใชทฤษฎบทแทรก 5.5 จะได
เขยนในรป matrix
และการแกปญหาคอ m1 = 2.7 และ m2 = -4.5 ใหขอบเขตเง(อนไขใชกำาหนด m0 = S” (0) = -0.3 และ m3 = S” (3) = 3.3 การแทนคาของ {mk} ในสมการท( (16) ในการแกปญหา
จะแสดงอยในรป 5.16
ความเหมาะสมของสมการกำาลงสามเสมอนพหนามลกษณะท(เหมาะสมของสมการเสมอนพหนามคอ ควบคมใหมการแกวงตวไปมาของการกระทำานอยท(สด เพราะฉะนนในระหวางทกฟงช(น f (x) นนจะตอเน(องกนเปนสองครงซ(งสามารถแบงแยกออกจากกนไดบน[a,b]และทำาการสอดแทรกใหกลมของจดขอมล{(xk,yk)} N k=0 สามการกำาลงสามเสมอนพหนามมการแกวงไปมานอยและผลลพธตอไปนจะอธบายถงขอเทจจรงทฤษฎบท 5.4 สมบตนอยท(สด ของสมการกำาลงสามเสมอนพหนามสมมตวา f€C2 [a,b] และ S(x) เปนสมการกำาลงสามเสมอนพหนามมลกษณะเฉพาะการสอดแทรกสำาหรบ f(x) ซ(งผานตลอดจด{(xk, f(xk))}N
k=0 และทำาใหแนใจวาเง(อนไขพนท(สมผสสดทาย S’(a) = f’(a) และ S’(b) = f’(b) ดงนน
การพสจน ใชการอนทเกรต โดยสวนและเง(อนไขสดทายจะได
เน(องจาก S’’’(x) = 6sk,3 บนชวงระหวาง [xk , xk+1] และปฎบตตามนน
สำาหรบ k = 0 , 1, … , N-1 จากนน และปฎบตตามนน
เน(องจาก 0 ≤ (f”(x)-S”(x))2 เราจะไดความสมพนธของการอนทรเกรต
ตอนนผลลพธใน (24) แทนลงใน (25) และไดผลลพธเปน
เขยนใหมรปอยางงายจะไดความสมพนธ (23) และผลลพธท(ไดจากการพสจน
ปฏบตตามโปรแกรมในการสรางสมการกำาลงสามเสมอนพหนาม การสอดแทรกนนท(สมผสสำาหรบจดขอมล{(xk, yk)}N
k=0 สมประสทธในคำาส(งลดลงมาสำาหรบ k=0,1,…,N-1 จะผมในแถวท((k-1)st ของ matrix S ท(ไดออกมาในแบบฝกหดท(ผอานจะไดตวอยางและปรบปรงโปรแกรม สำาหรบขอบจดสดทายคงท(อ(นในตาราง 5.8 และบรรยายในทฤษฎบทแทรก 5.2 ตลอดจน 5.5
ตวอยาง 5.12 หาสมการกำาลงสามเสมอนพหนามพนท(สมผสท(ผานตลอดจด (0 , 0.0 ) , (1, 0.5) , (2 , 2.0) และ (3,1.5) ดวยเง(อนไขการแบงขอบเขตอนพนธอนดบหน(ง S’(0)=0.2 และ S’(3) = -1
สงเกตวาในแถวของ S เปนสมประสทธอยางละเอยดของสมการกำาลงสามเสมอนพหนามการสอดแทรกในสมการท( (18) ในตวอยาง 5.7 ปฎบตตามคำาส(งจะแสดงวาสมการกำาลงสามเสมอนพหนามสอดแทรกทำาอยางไรโดยใชคำาส(ง polyval ผลลพธของกราฟคอเหมอนกบในรป 5.12
Program 5.3 สรางและประเมณผลสมการกำาลงสามเสมอนพหนามการสอดแทรกพนท(สมผส S(x) สำาหรบ N+1 จดขอมล {(xk , yk)}N
k=0
Function S=csfit (X,Y,dx0,dxn)%Input - X is the 1xn abscissa vector % - Y is the 1xn ordinate vector % - dx0 = S’(x0) first derivative boundary condition% - dxn = S’(xn) first derivative boundary condition%Ouput – S : rows of S are the coefficients, in descending % order, for the cubic interpolantsN = length (X) – 1;H = diff (X);D = diff (Y)./H;A=H (2:N-1); B = 2 *(H(1:N-1)+H(2:N));
U = 6*diff (D);%Clamped Spline endpoint constraintsB(1)=B(1)-H(1)/2;U(1)=U(1)-3*(D(1)-dx0);B(N-1)=B(N-1)-H(N)/2;U(N-1)=U(N-1)-3*(dxn-d(N));for k=2:N-1 Temp=A(k-1)/B(k-1); B(k)=B(k)-temp*C(k-1); U(k)=U(k)-temp*U(k-1);end M(N)=U(N-1)/B(N-1);For k=N-2:-1:1 M(k+1)=(U(k)-C(k)*M(k+2))/B(k);endM(1)=3*(D(1)-dx0)/H(1)-M(2)/2;M(N+1)=3*(dxn-D(N)/H(N)-M(N)/2;for k=0:N-1 S(k+1,1)=(M(k+2)-M(k+1))/(6*H(k+1)); S(k+1,2)=M(k+1)/2; S(k+1,3)=D(k+1)-H(k+1)*(2*M(k+1)+M(k+2))/6;end