Puji dan syukur kehadirat Tuhan Yang Maha Esa karena hanya dengan rahmat-Nya
dapat menyelesaikan tugas mata kuliah Metode Komputasi ini. Tujuan dari
penyusunan handbook ini untuk menambah wawasan konsep yang dipelajari selama
kuliah.
Terselesaikannya handbook ini tidak terlepas dari bantuan dan bimbingan dari
berbagai pihak baik secara langsung maupun tidak langsung, maka dari itu penulis
ingin menyampaikan ucapan terima kasih kepada semua pihak yang telah membantu
menyelesaikan handbook ini.
Segala kekurangan dan kekhilafan dalam peyusunan handbook ini diharapkan mejadi
maklum. Besar harapan, handbook ini dapat memberikan khasanah ilmu pengetahuan
dan manfaat khususnya Metode Komputasi.
Penulis
i
DAFTAR ISI
ii
BAB 2 PERSAMAAN NON LINIER ...................................................................... 2-1
iii
Metode Komputasi Bahasa Pemograman dan Algoritmai
1 BAB 1
BAHASA PEMOGRAMAN DELPHI
Delphi adalah suatu bahasa pemrograman dengan PC sebagai media yang dimana
memberikan kemudahan untuk user sehingga dapat tercipta suatu aplikasi yang
berguna dan memberi manfaat.
Borland Delphi menyediakan fasilitas yang baik, kuat dan terjamin serta lengkap
sehingga memudahkan programmer dalam pembuatan program aplikasi database.
Format database yang digunakan adalah:
- Paradox
- dbase
- Ms.Acces
- ODBE
- SyBASE, dan
- Oracle.
a. Borland Database Engine (BDE)
BDE adalah teknologi yang dikeluarkan oleh Borland. BDE berasal dari paradox,
kemudian diperluas oleh Borland untuk mendukung banyak SQL Serverdan
Database Lokal sebelum Delphi ada. BDE mengakses langsung tabel-tabel dBase,
Paradox, ASCII, Foxfro dan access. Driver-driver yang ada di Delphi Enterprise
memungkinkan pengaksesan ke beberapa SQL Server termasuk Oracle, Sybase,
Microsoft, Informix, Interbase dan IBM DB2 Server. sedagkan untuk pengaksesan
ke database lain disediakan ODBC Drivers.
1-1
Metode Komputasi Bahasa Pemograman dan Algoritmai
ADO adalah antarmuka tingkat tinggi (hight level) yang digunakan untuk
mengakses database dari Microsoft. ADO diimplementasikan pada teknologi OLE
DB Data Access Microsoft yang menyediakan akses ke database relasional
maupun database non relasional, termasuk email, file sistem dan file lainnya.
Perintah pada Delphi dilakukan secara Visual, Prosedural, dan Orientasi Object.
Produk pada Delphi ditujukan pada konsumen berbasis Personel, Profesional,
Enterprise, dan Architech.
1-2
Metode Komputasi Bahasa Pemograman dan Algoritmai
Kelebihan Delphi:
Kelemahan Delphi:
Data adalah sesuatu yang belum mempunyai arti bagi penerimanya dan masih
memerlukan adanya pengolahan. Data juga berarti fakta-fakta yang berupa
angka-angka, teks, dokumen, gambar, bagan, suara, yang mewakili deskripsi
verbal atau kode tertentu, dan semacamnya.
Tipe data adalah kelompok data berdasarkan jenis-jenis tertentu. Dalam bahasa
pemrograman, terdapat beberapa tipe data. Setiap bahasa pemrograman
biasanya memiliki tipe datanya masing-masing. Namun dari sekian banyak tipe
data yang terdapat pada bahasa pemrograman, terdapat beberapa tipe data
yang paling umum atau paling sering ada di berbagai bahasa pemrograman.
Tipe-tipe data yang umum tersebut contohnya adalah integer, float, boolean,
char, string.
1-3
Metode Komputasi Bahasa Pemograman dan Algoritmai
note:
Tipe data ini memiliki range diluar kriteria maka secara otomatis sistem
akan mengkonversikan data ke dalam tipe Floating Point.
Significant
Tipe Data Jangkauan Nilai Ukuran
digit
Real48 2.9×10^-39 s/d 1.7×10^38 11-12 6 Byte
Single 1.5×10^-45 s/d 3.4×10^38 7-8 4 Byte
Double 5.0×10^-324 s/d 1.7×10^308 15-16 8 Byte
Extended 3.6×10^-4951 s/d 1.1×10^4932 19-20 10 Byte
Comp -2^63+1 s/d 2^63-1 19-20 8 Byte
Currency -922337203685477.5808 s/d 19-20 8 Byte
922337203685477.5807
1-4
Metode Komputasi Bahasa Pemograman dan Algoritmai
Ukuran
Tipe Data Nilai
Memori
Boolean True or False 1 Byte
ByteBool True or False 1 Byte
WordBool True or False 2 Byte
LongBool True or False 4 Byte
Tipe data tersebut akan memberikan nilai true atau false pada seleksi
kondisi tersebut.
AnsiChar berukuran satu byte dan WideChar berukuran lebih dari satu
byte. Tipe character generic adalah Char, yang ekuivalen dengan
AnsiChar.
Karakter bisa juga ditunjukkan pada konstanta string dengan panjang 1,
misalnya ‘A’. Fungsi Chr menghasilkan nilai karakter bagi setiap range
integer AnsiChar. Contoh fungsi Chr(65) menghasilkan huruf A.
Char adalah tipe data berupa karakter tunggal (single character) dimana
semua karakter yang termasuk dalam tipe data adalah seluruh karakter
yg ada di tabel ASCII.
Contoh: G, t, 1, @, $, {.
1-5
Metode Komputasi Bahasa Pemograman dan Algoritmai
Seperti yang bisa dilihat dari contoh di atas, char adalah karakter
tunggal yang ada pada keyboard kecuali s pasi. Spasi merupakan
karakter kosong, jadi spasi tidak termasuk ke dalam tipe data Char.
Seperti yang bisa dilihat dari contoh di atas, string bisa berupa kata,
frasa, maupun kalimat. Nilai string biasanya diapit dengan tanda petik
untuk menandakan satu kesatuannya. Selain itu string juga mendukung
spasi sehingga memungkinkan kita untuk membuat sebuah kalimat
yang panjang dan mudah dibaca. String juga dapat berupa karakter
angka ataupun tanda.
1.2.6 Array
Array adalah suatu variable tunggal yang digunakan untuk menyimpan
sekumpulan data yang sejenis.
1.2.8 Pointer
Pointer adalah sebuah variabel yang menunjukkan sebuah alamat
memori. Pointer dipakai untuk mengindikasi jenis data yang disimpan
pada alamat yang dikandungnya. Pointer menempati 4 byte memori.
1.2.9 Variant
Variant adalah tipe data yang menyatakan nilai yang bisa berubah saat
runtime program. Variant dapat berisi semua tipe data. Variant
menawarkan kompatibilitas yang tinggi namun membutuhkan memori
yang besar.
1-6
Metode Komputasi Bahasa Pemograman dan Algoritmai
Operator adalah bagian dari program untuk membuat operasi pada data.
Terdapat beberapa operator untuk menangani operasi program sesuai tipe data.
BINNARY
Operator Operasi Tipe Operand Tipe Hasil Contoh
+ Penjumlahan integer, real integer, real X+ Y
– Pengurangan integer, real integer, real X–Y
* Perkalian integer, real integer, real X* Y
/ Pembagian real integer, real real X/Y
div Pembagian integer integer integer X div Y
mod Sisa integer integer X mod Y
UNARY
Operator Operasi Tipe Operand Tipe Hasil Contoh
+ (unary) Tanda positif integer, real integer, real +X
- (unary) Tanda negatif integer, real integer, real -X
Tipe
Operator Operasi Tipe Hasil Contoh
Operand
not Negasi Boolean Boolean not pass
and Konjungsi Boolean Boolean pria and single
or Disjungsi Boolean Boolean pria or wanita
xor Disjungsi Eksklusif Boolean Boolean anak xor balita
1-7
Metode Komputasi Bahasa Pemograman dan Algoritmai
Tipe
Operator Operasi Tipe Hasil Contoh
Operand
not bit negation integer integer not A
and bit and integer integer A and B
or bit or integer integer A or B
xor bit xor integer integer A xor B
shl bit shift left integer integer A shl 2
shr bit shift right integer integer B shr 3
1-8
Metode Komputasi Bahasa Pemograman dan Algoritmai
1-9
Metode Komputasi Bahasa Pemograman dan Algoritmai
1.3.9 Operator @
Operator @ menghasilkan alamat variabel, function, procedure, atau
method. Operator @ mengkonstruksi pointer dengan operandnya
1.4 Algoritma
Dalam matematika dan ilmu komputer, algoritma adalah urutan atau langkah-langkah
untuk penghitungan atau untuk menyelesaikan suatu masalah yang ditulis secara
berurutan. Sehingga algoritma pemrograman adalah urutan atau langkah-langkah
untuk menyelesaikan masalah pemrograman komputer.
Dalam pemrograman, hal yang penting untuk dipahami adalah logika kita dalam
berpikir bagaimana cara untuk memecahkan masalah pemrograman yang akan dibuat.
Sebagai contoh, banyak permasalahan matematika yang mudah jika diselesaikan
secara tertulis, tetapi cukup sulit jika kita terjemahkan ke dalam pemrograman. Dalam
hal ini, algoritma dan logika pemrograman akan sangat penting dalam pemecahan
masalah.
Penyajian algoritma secara garis besar dapat dibagi dalam dua bentuk penyajian yaitu
tulisan dan gambar. Algoritma yang disajikan dengan tulisan yaitu dengan struktur
bahasa tertentu (misalnya bahasa Indonesia atau bahasa Inggris) dan pseudocode.
Pseudocode adalah kode yang mirip dengan kode pemrograman yang sebenarnya
sehingga tepat digunakan dalam menggambarkan algoritma yang akan
dikomunikasikan kepada programmer.
Sedangkan untuk algoritma yang disajikan dengan gambar adalah dengan flowchart.
Flowcart adalah bagan (chart) yang menunjukkan alir (flow) di dalam program atau
merupakan prosedur sistem secara logika. Flowcart digunakan untuk alat bantu
komunikasi dan untuk dokumentasi.
1.4.1 Flowchart
Flowchart adalah diagram atau gambar yang digunakan untuk mendeskripsikan
sebuah algoritma yang mempunyai aliran satu atau dua arah secara sekuensial.
Dengan kata lain, flowchart adalah penggambaran secara grafik dari langkah-langkah
dan urut-urutan prosedur dari suatu program. Flowchart menolong analis dan
programmer untuk memecahkan masalah kedalam segmen-segmen yang lebih kecil
dan menolong dalam menganalisis alternatif-alternatif lain dalam pengoperasian.
Flowchart biasanya mempermudah penyelesaian suatu masalah khususnya masalah
yang perlu dipelajari dan dievaluasi lebih lanjut.
1-10
Metode Komputasi Bahasa Pemograman dan Algoritmai
1-11
Metode Komputasi Bahasa Pemograman dan Algoritmai
14
16
18
1-12
Metode Komputasi Bahasa Pemograman dan Algoritmai
23
1-13
Metode Komputasi Pemrograman Non Linier
2 BAB 2
PERSAMAAN NON LINIER
Dalam bidang sains atau pun terapan sering kali berhadapan dengan masalah yang
berkaitan dengan mencari solusi persamaan non Linier (akar persamaan). Persamaan
non Linier adalah persamaan yang mempunyai peubah dengan pangkat terkecil
adalah 1.
Masalah pencarian solusi persamaan Linier dapat dirumuskan dengan singkat sebagai
berikut: tentukan nilai x yang memenuhi persamaan f(x) =0, yaitu nilai x = s sedemikian
sehingga f(s) sama dengan nol.
Dalam metode numerik, pencarian akar f(x) = 0 dilakukan secara iteratif (looping).
Metode yang digunakan dalam penyelesaian persamaan non Linier adalah:
1. Metode Biseksi
2. Metode Regula Falsi
3. Metode Newton Raphson
Ide awal metode ini adalah metode table, dimana area dibagi menjadi N bagian. Hanya
saja metode biseksi ini membagi range menjadi 2 bagian, dari dua bagian ini dipilih
bagian mana yang mengandung dan bagian yang tidak mengandung akar dibuang. Hal
ini dilakukan berulang-ulang hingga diperoleh akar persamaan.
2-1
Metode Komputasi Pemrograman Non Linier
Langkah 1
Pilih a sebagai batas bawah dan b sebagai batas atas untuk taksiran akar sehingga
terjadi perubahan tanda fungsi dalam selang interval. Atau periksa apakah benar
bahwa
Langkah 2
c=(a+b)/2
Langkah 3
o Jika z merupakan akar fungsi, maka f(x < z) dan f(x > z) saling berbeda tanda.
Langkah 4
Contoh soal:
2-2
Metode Komputasi Pemrograman Non Linier
1 syms x;
2 f=input('masukkan persamaan: ');
3 a=input('masukkan nilai a: ');
4 b=input('masukkan nilai b: ');
5 et=input('masukkan Error Toleransi: ');
6 e=abs(b-a);
7 i=1;
8 disp(' i a b c f(a) f(b) f(c) E');
9 disp('------------------------------------------------------');
10 while e > et
11 fa=subs(f,x,a);
12 fb=subs(f,x,b);
13 c=(a+b)/2;
14 fc= subs(f,x,c);
15 fprintf('%3.0f %6.4f %6.4f %6.4f %7.4f %7.4f %7.4f %7.4f \n',
16 i, a, b, c, fa, fb, fc, e);
17 if fa*fc < 0
18 b=c; %geser kiri
19 else
20 a=c; %geser kanan
21 end
22 e=abs(b-a); % menghitung error
23 i=i+1;
24 end
Hasil eksekusi:
2-3
Metode Komputasi Pemrograman Non Linier
Metode pencarian akar persamaan denga memanfaatkan kemiringan dan selisih tinggi
dari dua titik batas range. Dua titik a dan b pada fungsi f(x) digunakan untuk
mengestimasi posisi x dari akar interpolasi linier, dikenal dengan metode false
positition.
pendekatan satu titik, dimana fungsi mempunyai turunan. Metode ini dianggap
lebih mudah dari Metode Bagi-Dua (Bisection Method) karena metode ini
menggunakan pendekatan satu titik sebagai titik awal. Semakin dekat titik awal yang
kita pilih dengan akar sebenarnya, maka semakin cepat konvergen ke akarnya.
2-4
Metode Komputasi Pemrograman Non Linier
menentukan sebagai titik awal, kemudian menarik garis lurus (misal garis )
untuk n = 1, 2, 3, …
2-5
Metode Komputasi Pemrograman Non Linier
Contoh:
Penyelesaian:
iterasi 1:
x1 =3– = 2.48571
iterasi 2:
x2 = 2.48571 – = 2.18342
iterasi 3:
x3 = 2.18342 – = 2.04045
iterasi 4:
x4 = 2.04045 – = 2.00265
2-6
Metode Komputasi Pemrograman Non Linier
iterasi 5:
x5 = 2.00265 – = 2.00001
iterasi 6:
x6 = 2.00001 – = 2.00000
iterasi 7:
0 3 18 35
1 2.48571 5.01019 16.57388
2 2.18342 1.24457 8.70527
3 2.04045 0.21726 5.74778
4 2.00265 0.01334 5.04787
5 2.00001 0.00006 5.00023
6 2.00000 0.00000 5.00000
2-7
Metode Komputasi Pemrograman Linier
3 BAB 3
PERSAMAAN LINIER
Persamaan Linier merupakan salah satu model dan masalah matematika yang banyak
dijumpai dalam berbagai disiplin ilmu termasuk matematika, statistika, fisika, biologi,
teknik, bisnis, dan ilmu-ilmu sosial.
3-1
Metode Komputasi Pemrograman Linier
Metode ini digunakan untuk mencari invers dari sebuah matriks. Prosedur
umum untuk metode eliminasi Gauss-Jordan ini adalah Ubah sistem
persamaan Linier yang ingin dihitung menjadi matriks augmentasi. Lakukan
operasi baris elementer pada matriks augmentasi (A|b) untuk mengubah
matriks A menjadi dalam bentuk baris eselon yang tereduksi.
Pada metode eliminasi Gauss Jordan kita membuat elemen elemen dibawah
maupun di atas diagonal utama suau matriks. Hasilnya adalah matriks
3-2
Metode Komputasi Pemrograman Linier
tereduksi yang berupa matriks diagonal satuan (semua elemen pada diagonal
bernilai 1 dan elemen elemen lainnya nol.)
Dalam bentuk matriks, pemfaktoran ini ditulis sebagai berikut, matriks yang
dicontohkan adalah 3 x 3 :
1 0 0
A= L= 1 0 U= 0
1 0 0
A= LU
1 0 0
Ly = b L = 1 0 x =
1
3-3
Metode Komputasi Pemrograman Linier
Ux = y U= 0 x =
0 0
3-4
Metode Komputasi Pemrograman Linier
3-5
Metode Komputasi Pemrograman Linier
3-6
Metode Komputasi Integral
4 BAB 4
INTEGRAL
Metode integral dapat diselesaikan dengan beberapa metode yaitu integral trapezium,
integral ½ simpson , dan kuadrat garis.
4-1
Metode Komputasi Integral
4-2
Metode Komputasi Integral
Menghitung luas bidang lengkung dengan aturan Simpson I adalah rumus luas
untuk 3 (tiga) ordinat yaitu : y0, y1 dan y2 atau jika jumlah ordinat lebih banyak
dapat dikatakan, rumus pendekatan ini digunakan untuk menghitung luas
bidang lengkung pada setiap jarak ordinat (h) kelipatan 2.
Cara I :
4-3
Metode Komputasi Integral
Seperti terlihat pada gambar diatas misalkan persamaan garis lengkung bidang
tersebut adalah
y = a0 + a1.x + a2.x².
Dengan integrasi, luas bidang lengkung di atas (A) dapat dihitung sebagai
berikut :
(B + C + D) = 2 h …….(1)
(C + 2D) = 2 h …….(2)
2D = 2/3 h, D = 1/3 h
4-4
Metode Komputasi Integral
Cara II
4-5
Metode Komputasi Integral
4-6
Metode Komputasi Integral
b. menentukan posisi x puncak parabola atau sumbu simetri dari kurva yang
dibentuk, dengan posisi tepatnya -b/2a.
4-7
Metode Komputasi Integral
Rumus Kuadratis
Rumus ini biasa disebut juga dengan rumus abc, disebut demikian karena
digunakan untuk menghitung akar-kar persamaan kuadrat yang tergantung
nilai-nilai a, b dan c.
Pada rumus abc diatas terdapat istilah diskriminan atau determinan yaitu
notasi dalam tanda akar b²-4ac yang terkadang dinotasikan dengan huruf D.
maka akan terdapat dua akar berbeda dan keduanya riil. Untuk
persamaan kuadrat yang koefisiennya berupa bilangan bulat dan
diskriminanya adalah kuadrat sempurna maka akar-akarnya adalah
bilangan rasional, atau sebaliknya dapat pula merupakan bilangan
irasional kuadrat.
4-8
Metode Komputasi Integral
- Diskriminan bernilai 0
maka akan terdapat eksak satu akar dan riil. Hal ini terkadang disebut
sebagi akar ganda, dimana nilainya adalah
maka tidak terdapat akar riil melainkan terdapat 2 buah akar kompleks
yang satu sama lain merupakan konjuget kompleks.
contoh:
Jawab:
x2 – 5 x + 6 = 0 (cara memfaktorkan)
<=> x- 2 = 0 atau x – 3 = 0
<=> x = 2 atau x = 3
Jawab :
x2 + 2x = 15
4-9
Metode Komputasi Integral
x2 + 2x + 1 = 15 + 1
<=> (x + 1)2 = 16
<=> x + 1 = ± √16
<=> x + 1 = ± 4
<=> x + 1 = 4 atau x + 1 = -4
<=> x = 4 – 1 atau x = -4 -1
<=> x = 3 atau x = -5
<=> x1 = 2 atau x2 = -6
Jawab :
Cara 1
x1 = 2 dan x2 = 5
4-10
Metode Komputasi Integral
<=> x2 – 7x + 10 = 0
Cara 2
x1 = 2 dan x2 = 5
x1. x2 = 2.5 = 10
4-11
Metode Komputasi Interpolasi
5 BAB 5
INTERPOLASI
Interpolasi adalah proses pencarian dan penghitungan nilai suatu fungsi yang grafiknya
melewati sekumpulan titk yang diberikan. Titik-titik tersebut mungkin merupakan hasil
eksperimen dalam sebuah percobaan, atau diperoleh dari suatu fungsi yang diketahui.
Adapun kegunaan lain dari interpolasi adalah untuk menaksir harga-harga tengah
antara titik data yang sudah tepat. Interpolasi mempunyai orde atau derajat.
Aproksimasi merupakan salah satu usaha untuk menyajikan data berbentuk grafis
menjadi kalimat matematis. Secara umum aproksimasi harus mendapatkan suatu
fungsi yang melewati semua titik yang diketahui. Aproksimasi ini dikenal sebagai
interpolasi. Karena harus melewati semua titik yang ada, maka ada banyak fungsi yang
memenuhi, kecuali jika fungsi tersebut mempunyai syarat tertentu.
x = xi → f(xi) = yi
x = xi → f(xi) ≈ yi
5-1
Metode Komputasi Interpolasi
Pembagian beda hingga yang ada dalam persamaan diatas mempunyai bentuk:
f ( x1 ) f ( x 0 )
f [x1, x0] =
x1 x 0
f ( x1 ) f ( x0 )
f [x1, x0]
x x 0 x 0 x1
= 1
x0 x1 x x0 x x0
f1(x) = f (x0) + f (x1)
x0 x1 x0 x1 x1 x0
atau
x x1 x x0
f1(x)
x x1 f (x ) + x1 x0 f (x )
= 0 0 1
Persamaan diatas dikenal dengan interpolasi polinomial Lagrange order satu. Dengan
prosedur diatas, untuk interpolasi order dua akan didapat:
x x1 x x2 x x0 x x2 x x0 x x1
f1(x)
x x1 x0 x2 f (x ) + x1 x0 x1 x2 f (x ) + x2 x0 x2 x1 f (x )
= 0 0 1 2
n
fn(x) = Li ( x) f (xi) (a)
i0
dengan
n xxj
Li (x) =
j0 xi x j
(b)
ji
5-2
Metode Komputasi Interpolasi
Dengan menggunakan persamaan (a) dan persamaan (b) dapat dihitung interpolasi
Lagrange order yang lebih tinggi, misalnya untuk interpolasi Lagrange order 1,
persamaan tersebut adalah:
1
f1(x) = L (x ) f (x ) = L (x) f (x ) + L (x) f (x )
i0
i i 0 0 1 1
x x1
( )
L0(x) =
x 0 x1
x x0
( )
L1(x) =
x 1 x 0
x x1
( ) x x0
f1(x) = x 0 x 1 f (x0) + ( ) f (x1)
x1 x 0
Dengan menggunakan persamaan (a) dan persamaan (b) dapat dihitung pula
interpolasi Lagrange order 2 adalah:
2
F2 (x) = L (x ) f (x ) = L (x) f (x ) + L (x) f (x ) + L (x) f (x )
i0
i i 0 0 1 1 2 2
x x1 x x 2
I=0 L0(x) = ( )( )
x 0 x1 x 0 x 2
x x0 x x2
I=1 L1(x) = ( )( )
x1 x 0 x1 x 2
x x 0 x x1
I=2 L2(x) = ( )( )
x 2 x 0 x 2 x1
x x1 x x 2 x x0 x x2
f2 (x) = ( )( ) f (x0) + ( )( ) f (x1)
x 0 x1 x 0 x 2 x1 x 0 x1 x 2
x x 0 x x1 x x 0 x x1
+ ( )( ) f (x2) + ( )( ) f (x3) (6.22)
x 2 x 0 x 2 x1 x 3 x 0 x 3 x1
5-3
Metode Komputasi Interpolasi
Dengan menggunakan persamaan (a) dan persamaan (b) dapat dihitung pula
interpolasi Lagrange order yang lebih tinggi, misalnya untuk interpolasi Lagrange order
3, persamaan tersebut adalah:
3
f3(x) = Li ( x ) f (xi) = L0(x) f (x0) + L1(x) f (x1) + L2(x) f (x2) + L3(x) f (x3)
i0
x x1 x x2 x x3
L0(x) = ( )( )( )
x0 x1 x0 x2 x0 x3
x x0 x x2 x x3
L1(x) = ( )( )( )
x1 x0 x1 x2 x1 x3
x x0 x x1 x x3
L2(x) = ( )( )( )
x2 x0 x2 x1 x2 x3
x x0 x x1 x x2
L3(x) = ( )( )( )
x3 x0 x3 x1 x3 x2
x x1 x x2 x x3 x x0 x x2 x x3
f3(x) = ( )( )( ) f (x0) + ( )( )( ) f (x1)
x0 x1 x0 x2 x0 x3 x1 x0 x1 x2 x1 x3
x x0 x x1 x x3 x x0 x x1 x x2
+ ( )( )( ) f (x2) + ( )( )( ) f (x3)
x2 x0 x2 x1 x2 x3 x3 x0 x3 x1 x3 x2
Contoh soal
Dicari nilai ln 2 dengan metode interpolasi polinomial Lagrange order satu dan dua
berdasar data ln 1 = 0 dan data ln 6 = 1,7917595. Hitung juga nilai tersebut berdasar
data ln 1 dan data ln 4 = 1,3862944. Untuk membandingkan hasil yang diperoleh,
hitung pula besar kesalahan (diketahui nilai eksak dari ln 2 = 0,69314718).
Penyelesaian
x0 = 1 f (x0) = 0
x1 = 4 f (x1) = 1,3862944
x2 = 6 f (x2) = 1,7917595
Penyelesaian order satu menggunakan persamaan (6.18):
x x1 x x0
f1(x) = f (x0) + f (x1)
x0 x1 x1 x0
5-4
Metode Komputasi Interpolasi
2 4 2 1
f1(2) = (0) + (1,3862944) = 0,462098133.
1 4 4 1
x x1 x x2 x x0 x x2 x x0 x x1
f1(x) = f (x0) + f (x1) + f (x2)
x0 x1 x0 x2 x1 x0 x1 x2 x2 x0 x2 x1
2 4 2 6 21 2 6 2 1 2 4
f1(2) = (0) + (1,3862944) + (1,7917595)
1 4 1 6 4 1 4 6 6 1 6 4
= 0,56584437.
Terlihat bahwa kedua hasil diatas memberikan hasil yang hampir sama dengan contoh
sebelumnya.
- Jumlah komputasi yang dibutuhkan untuk satu kali interpolasi adalah besar.
Interpolasi untuk nilai x yang lain memerlukan jumlah komputasi yang sama karena
tidak ada bagian komputasi sebelumnya yang dapat digunakan.
- Bila jumlah titik data meningkat atau menurun, hasil komputasi sebelumnya tidak
dapat digunakan. Karena tidak ada hubungannya antara pn-1(x) dan pn(x) pada
polinom Lagrange
5-5
Metode Komputasi Interpolasi
Polinom Kuadratik
Dari pers ini menunjukkan bahwa p2(x) dapat dibentuk dari pers sebelumnya p1(x).
Nilai a2 dapat ditemukan dengan mengganti x=x2 untuk mendapatkan
5-6
Metode Komputasi Interpolasi
Nilai konstanta a0, a1, a2,…, an, merupakan nilai selisih terbagi , dengan nilai
dimana
Dengan demikian polinom Newton dapat ditulis dalam hub rekursif sebagai berikut.
- Rekurens
- Basis
5-7
Metode Komputasi Interpolasi
Contoh soal
Bentuklah polinom Newton derajat satu, dua, tiga dan empat yang menghampiri
f(x)=cos(x) dalam range[0.0, 4] dan jarak antar titik adalah 1.0. Lalu taksirlah f(x)
dengan x=2.5 dengan Polinom Newton derajat 3.
Maka polinom Newton derajat 1,2 dan 3 dengan x0 = 0 sebagai titik pertama
5-8