…….. (X n,f n) dengan x0, x1, x2 ……….xn semuanya berbeda, kemudian kita ingin mencari suatu harga
y 0− y1 =( a0 + a1 x 0 )−(a ¿ ¿ 0+a1 x1 )¿
y 0− y1 =a1 x0 −a1 x1 ⇔ y 0− y 1=a 1( x ¿ ¿ 0−x 1)¿
y 0− y 1
⇔ a1=
x 0−x 1
Substitusikan nilai a 1 ke dalam persamaan (1), diperoleh:
y 0=a0 +a1 x 0
y 0− y 1
⇔ y 0=a0 + (x 0−x 1 0 )
x
x 0 y 0 −x0 y 1
⇔ y 0=a0 +
x 0 −x1
x y −x y
⇔ y 0=a0 + 0 0 0 1
x 0 −x1
x 0 y 0−x 0 y 1
⇔ a0 = y 0 −
x 0−x 1
y (x −x )−x0 y 0 + x 0 y 1
⇔ a0= 0 0 1
x 0−x 1
x 0 y 0 −x1 y 0−x 0 y 0+ x0 y 1
⇔ a0 =
x 0−x 1
x y −x y
⇔ a0= 0 1 1 0
x 0−x 1
Dengan melakukan manipulasi aljabar untuk menentukan nilai p1 ( x ) dapat dilakukan sebagai berikut:
p1 ( x )=a0 +a1 x
x 1 y 0 −x 0 y 1 y 1 – y 0
p1 ( x )= + x
x1 −x0 x 1−x 0
x 1 y 0 −x 0 y 1 + xy 1 – x y 0
p1 ( x )=
x1 −x0
x 1 y 0 −x 0 y 1 + xy 1 – x y 0 +(x 0 y 0−x 0 y 0)
p1 ( x )=
x 1−x 0
x 1 y 0 −x 0 y 0−x 0 y 1+ xy 1 – x y 0 + x 0 y 0
p1 ( x )=
x 1−x 0
p1 ( x )= y 0 ( x 1−x 0 ) + y 1 ¿ ¿
p1 ( x )= y 0 ( x 1−x 0 ) +( y ¿ ¿ 1− y 0 )¿ ¿ ¿
p1 ( x )= y 0+( y ¿ ¿ 1− y 0 ) ¿ ¿¿
Dalam menentukan persamaan dari interpolasi linear juga dapat dilakukan melalui cara
berikut:
Persamaan garis lurus yang melalui 2 titik P1 (x0,y0) dan P2 (x1,y1) dapat dituliskan dengan:
y− y 0 x−x 0
=
y 1− y 0 x 1−x 0
Sehingga diperoleh persamaan dari interpolasi linear sebagai berikut:
y 1− y 0
y= ( x−x 0 ) + y 0
x 1−x 0
Algoritma Interpolasi Linear
2. Interpolasi Kuadratik
Misal diberi tiga buah titik data, ( x 0 , y 0 ) , ( x 1 , y 1 ) , dan(x 2 , y 2 ). Polinom yang
menginterpolasi ketiga buah titik itu adalah polinom kuadrat yang berbentuk:
p2 ( x ) =a0 +a 1 x+ a2 x2
Bila digambar, kurva polinom kuadrat berbentu parabola, seperti ditunjukkan dalam Gambar 2
Y
x1,y1
y1
y2 x2,y2
y0
x0,y0
x0 x1 X
x2
x1,y1
y1
y2 x2,y2
y0
x0,y0
x0 x1 x2 X
Diperoleh tiga persamaan dengan tiga buah parameter yang tidak diketahui yaitu: a 0 , a1 , dan
a2:
a 0+ a1 x 0 +a 2 x 20= y 0
a 0+ a1 x 1 +a2 x 21= y 1
a 0+ a1 x 2 +a2 x 22= y 2
2. Hitung a 0 , a1 , dan a 2 dari sistem persamaan tersebut dengan metode eliminasi Gauss.
Selain menggunakan metode eliminasi Gauss, menentukan a 0 , a1 , dan a 2 dapat ditentukan
dengan cara sebagai berikut:
y i +1− y i y − y i+1 F −F 01
a) Hitung F 01= , F12= i+2 , dan F 012= 12
x i +1−x i y i+2− y i+1 x i+2−x i
b) Hitung P= y1 + ( x− xi ) F 01 +(x−x i)(x−x i+1 ) F 012
Algoritma Interpolasi Kuadratik
Untuk interpolasi kuadratik digunakan algoritma sebagai berikut :
1. Tentukan nilai x 0 , y 0 , x1 , y 1 , x 2 , dan y 2 .
2. Periksa apakah x 0 < x 1< x 2. Jika tidak, maka kembali ke langkah 1 sebab nilai fungsinya tidak
terdefinisi dalam kondisi ini. Jika tidak, maka dilanjutkan ke langkah 3.
3. Masukkan nilai x .
4. Periksa apakah min { x 0 , x 1 , x 2 } ≤ x ≤ max { x0 , x 1 , x 2 }. Jika tidak, maka masukkan nilai x yang
lain. Jika ya, maka dilanjutkan langkah 5.
y 1− y 0 y 2− y 1 F 12−F01
5. Hitung F 01 = , F 12= , dan F 012 =
x 1−x 0 x 2−x 1 x2 −x0
6. Hitung P= y1 + ( x− xi ) F 01+ ( x−x i ) ( x− xi ) F 012
7. Periksa apakah F 012=0. Jika ya, maka persamaan yang dihasilkan linear. Jika tidak maka
persamaan yang dihasilkan merupakan persamaan kuadrat.
8. Tulis hasil y=P .
3. Interpolasi Newton
Umpamakan kita mempunyai polinomial :
f ( x )=b o + b1 ( x−x o ) + bn ( x−x o )( x−x 1 ) ( x−x n−1 )
… ……. ……(5)
Koefisien polinomial di atas dapat dihitung dengan menggunakan sejumlah titik data melalui
persamaan
b o=f ( x o )
b1 =f [ x 1 , x o ]
b1 =f [ x 2 , x 1 , x o ]
bn =f x n , x 2 , x , x o
[ 1 ] …………….(6)
f ( x 1−x j )
f [ x 1 , x j ]=
dimana
x 1 −x j
Persamaan ini disebut persamaan beda terbagi hingga pertama, sedangkan beda terbagi beda
kedua dapat ditulis dengan :
f [ xi −x j ]−f [ x j−x k ]
f [ x1 , x j , xk ] =
x i−x k …………….(7)
dan seterusnya.
Kesalahan dalam perhitungan interpolasi Newton adalah :
f ( n+1 ) ( ξ )
Rn = ( x1+1 −x i )n+1
( n+1 ) ! ……………(8)
Algoritma untuk menghitung interpolasi polinom dengan menggunakan beda terbagi Newton
sebagai berikut :
1. Masukan harga:
n , xi , f ( xi ) ,i=0,1,2, . .. .. . .. .. . , n
, Z dan eps (toleransi).
Keluaran : pbagi
Langkah-langkah :
b o=f ( x o )
pbagi=bo
faktor=1
untuk i=1,2,……..,n lakukan
bi =f ( x i )
untuk j=i−1 ,i−2 ,.... .. .. 0, dilakukan
b −b
b j = j+1 j
x i−x j
faktor=faktor*(z-xj-1)
suku=bo*faktor
pbagi=pbagi+suku
jika ABS(suku) <=eps, selesai
Kemudian:
Masukan nilai yang harganya akan dicari (yc)
Algoritma ini akan menghasilkan tabel beda terbagi Newton untuk fungsi polinomial dan
harga titik yang akan dicari. Berikut ini adalah cuplikan coding untuk iterpolasi Newton.
4. Formula Interpolasi Langrange
C. Interpolasi Spline
Definisi : Suatu fungsi f (x) dinamakan suatu spline berderajat k jika
1. Domain dari S adalah suatu interval [a; b].
2. S; S0; :::; S(k: 1) kontinu pada [a; b].
3. Terdapat titik-titik xi sedemikian sehingga a = x0 < x1 < ::: < xn = b dan juga S adalah
suatu polinomial berderajat k pada setiap [xi; xi+1].
Spline adalah potongan-potongan fungsi polinomial dengan turunan-turunan memenuhi
konstrain kekontinuan tertentu. Ketika k =1 , spline dinamakan spline linear. Ketika k =2, spline
dinamakan spline kuadratik. Ketika k =3 , spline dinamakan spline kubik.
1 Spline Linear
akan dicari suatu fungsi spline linear S ( x ) sedemikian sehingga S ( x i )=( y i)
untuk 0 ≤ i≤ n. Diambil
S0 ( x ) ; x ϵ [ x1 , x2 ]
{
Sx= S 1 ( x ) ; x ϵ [ x1 , x2 ]
⋮⋮
S n−1 x ; x ϵ [ x n−1 , x n ]
( )
Diperhatikan fungsi linear Si ( x ) . Garis ini melalui titik ( x i , y i ) dan ( x i+1 , y i+1) , se-
hingga kemiringan dari Si ( x ) yaitu
y i+1− y i
mi=
x i+1−x i
Kita dapat juga mengatakan bahwa garis tersebut melalui titik ( x i , y i ) dan ¿
untuk sembarang x ∈[ x i , x +1i ], sehingga
S i ( x )− yi
mi=
x−x i
yang memberikan
yi +1− y i
Si ( x ) = y i+ mi ( x −xi )¿ y i + ( x −x i) (10)
xi +1−x i
Contoh
Buatlah interpolasi spline linier untuk data berikut:
Penyelesaian :
[ 0,0 ; 0,1 ] S0 ( x )=1,3+ 4,5−1,3 ( x−0 )=1,3+32 x
0,1−0
5,0−2,1
[ 0,5 ; 0,75 ] S 3 ( x )=2,1+ ( x−0,5 ) =−3,7−11,6 x
0,75−0,5
3−5
[ 0,75 ; 1 ] S4 ( x )=5+ ( x−0,75 ) =11−8 x
1−0,75
Jadi spline adalah potongan linear, yaitu linear di antara setiap titik data.
Persamaan (10) dapat dituliskan kembali sebagai
Si ( x ) =ai x+ bi ,i=0,1, … , n−1
dengan
y i +1− y i
a i= dan b i= y i−a i x i
xi +1−x i
kekurangan utama spline linear adalah pada titik-titik data di mana dua spline bertemu,
kemiringannya berubah secara mendadak. Secara formal ini berarti bahwa turunan
pertama dari fungsi tidak kontinyu pada titik-titik tersebut. Kelemahan ini diatasi oleh
penggunaan polinomial spline orde yang lebih tinggi.
2. Spline Kuadratik
Tidak seperti spline linear, spline kuadratik tidak dide.nisikan sepenuhnya oleh nilai-
nilai di x i. Berikut ini kita perhatikan alasannya. Spline kuadratik didefnisikan oleh
Si (x )=ai x 2+ bi x +c i
Jadi terdapat 3 n parameter untuk mende.nisikan S( x ).
Diperhatikan titik-titik data:
x0 x1 x2 ⋯ xn
yy
y1 y2 ⋯ yn
Syarat-syarat untuk menentukan 3 n parameter dijelaskan seperti berikut ini.
1. Setiap subinterval [ x i , x i+1 ] untuk i=0,1,2 , … ,n−1 memberikan dua persmaan berkaitan
dengan Si ( x ), yaitu :
Si ( x i) = y i dan S i ( x i+1 ) = y i+1
jadi, disini didapatkan 2 n persamaan
2. Syarat pada kontinuitas dari S' (x) memberikan suatu persamaan tunggal untuk setiap titik
z i +1−z i
y i+1 − y i= ( x−x i )
2
Jadi, kita dapat menentukan z i+1 dari z i:
y i+1− y i
z i+1=2 −z i
x i+1−x i
Contoh
Buatlah interpolasi spline kuadratik untuk data berikut ini
z 2−z 1 2 2170
S1 ( x ) = ( x−x 1 ) + z 1 ( x−x 1 ) + y 1¿− ( x−0,1 )2 +64 ( x−0,1 ) + 4,5
2 ( x 2−x 1 ) 9
3. Spline Kubik
Diketahui suatu fungsi f (x) yang dibatasi oleh interval a dan b, dan memiliki sejumlah titik
S' ( x0 ) =f ' (x 0 ) dan S' ( xn ) =f ' ( x n ) (disebut batas apitan/ clamped boundary)
d i+1−d i hi 1
d i= yi , c i= − ( 2b i+ bi ) , ai= ( b −b ) C .3.1
hi 3 3 hi i+1 i
Contoh
Buatlah interpolasi spline kubik untuk data berikut ini
x 0 1 2 3
y 0 1 4 5
' ' ' '
terhadap syarat batas : S ( x0 ) =S ( 0 )=c 0=2dan S ( x n) =S (3 )=c n=2
Penyelesaian:
Lebar subinterval pada sumbu x:
h1 =h2=h 3=h 4=1
dan beda terbagi pertama, dengan mengingat bahwa d i=f ( x i )= y i, yaitu :
d 1−d 0 d 2−d 1 d 3−d 2
=1 , =3 , =1
h0 h1 h2
Persamaan matriks dapat dituliskan sebagai
2 1 0 0 b0 1 −2 −3
[ ][ ] [ ][ ]
1
0
0
4
1
0
1
4
1
0
1
2
b1
b2
b3
=3 3 −1 6
1 −3 −6
2 −1 3
H. Construct
2. Berdasarkan pola algoritma Interpolasi Newton beda sama terlampir, rancanglah algoritma dan
flowchart interpolasi Newton beda tidak sama.
3. Berdasarkan pola algoritma Interpolasi linear di atas, rancanglah algoritma Interpolasi Spline
linear
4. Berdasarkan pola algoritma Interpolasi Kuadratik di atas, rancanglah algoritma Interpolasi Spline
Kuadratik
5. Berdasarkan pola algoritma Interpolasi Kuadratik di atas, rancanglah algoritma Interpolasi Spline
Kubik
I. Application
1. Tugas Pendahuluan
a. Rancanglah coding Mathlab interpolasi beda sama Newton, berdasarkan flowchart
yang terlampir.
b. Rancanglah algoritma dan coding Interpolasi beda tidak sama Newton, berdasarkan
dengan memodifikasi algoritma interpolasi beda sama Newton atau berdasarkan algoritma yang
telah saudara rencang sebelumnya pada aktivitas contruct.
c. Berdasarkan tabel berikut ini :
x f(x)
0 2
2 12
4 20
6 36
8 45
10 60
Hitunglah fx jika diketahui x = 2.5, dengan menggunakan Beda sama Newton
Mulai
Mulai
Baca N Baca
N
i = 1 .. N
Baca
i = 1 . .N
x[i], fx[i,1]
Baca
j = 1 ..N-1 x[i], fx [i]
k = j +1
Baca
i = 1 .. N-j
xc
fx[i,k] = fx[i+1,j])-fx[i,j]
yjw = 0
j = 1 .. N
i = 1 . .N
Tulis x[j]
z =1
k:=1 to n+1-j
Tulis j = 1 . .N
fx[j,k]
i <>j
Baca Xc
J = J +1
yjw = yjw + z*f[i]
y = y + FX[1,j]*FA
Tulis
Tulis y xc, yjw
Err = FA*Fx[1,j+1]
Tulis Err
j >= n
END
Interpolasi Beda tidak Sama Newton
Mulai
Baca N
i = 1 .. N
Baca
x[i], fx[i,1]
j = 1 ..N-1
k = j +1
i = 1 .. N-j
j = 1 .. N
Tulis x[j]
k:=1 to n+1-j
Tulis
fx[j,k]
Baca Xc
FA = 1
Y = 0; j =0
J = J +1
y = y + FX[1,j]*FA
Tulis y
FA = FA*(XC - x[j]
Err = FA*Fx[1,j+1]
Tulis Err
j >= n
END