MODUL
METODE NUMERIK
Dengan MATLAB
Dosen Pengampu :
Nugroho Arif Sudibyo
UNIVERSITAS SAHID
SURAKARTA
2014
0
Modul Metode Numerik
Pendahuluan
A. Metode Numerik
1. Deskripsi
Persoalan yang melibatkan model matematika banyak muncul dalam berbagai
disiplin ilmu pengetahuan (bidang fisika, kimia, Teknik Sipil, Teknik Mesin,
Elestro, dsb.). Sering model matematika tersebut rumit dan tidak dapat diselesaikan
dengan metode analitik. Metode analitik adalah metode penyelesaian model
matematika dengan rumus-rumus aljabar yang sudah lazim. Kebanyakan persoalan
matematika tidak dapat diselesaikan dengan metode analitik. Jika metode analitik
tidak dapat diterapkan, maka solusi dapat dicari dengan metode numerik.
Metode numerik adalah teknik yang digunakan untuk memformulasikan
persoalan matematika sehingga dapat dipecahkan dengan operasi perhitungan
biasa. Metode numerik adalah cara penyelesaian matematis, yang dikembangkan
dari cara analisis, dan memasuki wilayah simulasi. Simulasi dilangsungkan dengan
menggunakan media komputer. Mata kuliah ini mempersiapkan mahasiswa untuk
memahami konsep dasar metode numerik, kelebihan dan kekurangan masing-
masing metode numerik dibandingkan dengan metode lainnya, serta ketepatan hasil
dan penerapannya.
Ada enam tahapan yang harus dilakukan dalam menyelesaikan persoalan
dengan metode numerik, yaitu :
a. Pemodelan, semua parameter dalam persoalan dimodelkan dalam bentuk
persamaan matematika. Penyederhanaan model, model matematika yang
diperoleh pada tahap pertama bisa saja masih kompleks. Untuk memudahkan
dan mempecepat kinerja komputer, model tersebut disederhanakan dengan
membuang parameter yang dapat diabaikan.
b. Formulasi numerik, setelah model matematika yang sederhana diperoleh,
tahap selanjutnya adalah memformulasikannya secara numerik, yaitu
Menentukan metode numerik yang akan digunakan beserta taksiran analisis
1
Modul Metode Numerik
error awal. Pemilihan metode didasarkan pada apakah metode tersebut teliti?
Dan apakah metode mudah diprogram dan waktu eksekusinya cepat?
c. Menyusun algoritma dari metode numerik yang dipilih.
d. Pemrograman, algoritma yang telah disusun diterjemahkan dalam program
komputer, kemudian dituliskan dalam bentuk program (dengan menggunakan
salah satu software yang dapat mendukung untuk mempermudah
pembuatannya, misalnya Matlab)
e. Operasional, program komputer dijalankan dengan data uji coba sebelum
menggunakan data sebenarnya.
f. Evaluasi, bila program sudah selesai dijalankan dengan menggunakan data
sesungguhnya, hasil yang diperoleh diinterpretasi. Interpretasi meliputi
analisis hasil perhitungan dan membandingkannya dengan prinsip dasar dan
hasil-hasil empiric untuk menentukan kualitas solusi numerik.
2
Modul Metode Numerik
3
Modul Metode Numerik
4
Modul Metode Numerik
B. Mathlab
Dengan bantuan komputer, langkah-langkah metode numerik diformulasikan
menjadi suatu program. Perkembangan teknologi yang antara lain mencakup
bahasa pemrograman telah melalui beberapa tahap. Pada awalnya bersifat Low
Level Language dengan diperkenalkannya bahasa assembly. Disusul perkembangan
bahasa dengan tingkat Middle dan High Level Language seperti FORTRAN, C++,
BASIC / Visual Basic, Pascal, COBOL dan lain-lain. Akhir-akhir ini bahasa script
pemrograman dijadikan alternatif bagi praktisi karena kemudahannya dalam
membuat suatu aplikasi program. Dalam membuat suatu program dapat dilakukan
dengan cara yang sangat mudah dengan waktu yang relatif lebih singkat
dibandingkan dengan menggunakan bahasa Middle dan High Level Language.
Program Matlab dapat ditulis dengan menggunakan perintah yang sangat
sederhana, namun dapat mencakup tuntutan untuk menyelesaikan persoalan
menganalisis data. Sekarang ini Matlab adalah salah satu bahasa pemrograman
yang banyak digunakan. Matlab mampu menangani perhitungan sederhana seperti
penambahan, pengurangan, perkalian dan pembagian. Matlab juga mampu
menyelesaikan perhitungan rumit, yang meliputi bilangan kompleks, akar dan
pangkat, logaritma dan fungi trigonometri. Seperti kalkulator yang dapat
diprogram, Matlab dapat digunakan untuk menyimpan dan mengambil data; dalam
Matlab juga dapat dibuat sekumpulan perintah untuk mengotomatisasi suatu
persamaan yang rumit, dan masih banyak lagi kemampuan lain dari Matlab. Dalam
lingkungan Matlab, kita dapat mengembangkan dan melaksanakan program atau
naskah, yang berisi perintah Matlab. Kita juga dapat melaksanakan perintah
Matlab, mengamati hasilnya, dan kemudian melaksanakan sebuah perintah Matlab
lainnya yang berinteraksi dengan data dalam memori, mengamati hasilnya.
5
Modul Metode Numerik
DAFTAR ISI
Halaman Judul 1
Pendahuluan 2
Daftar Isi 6
6
Modul Metode Numerik
BAB I
Pengantar
Dalam kehidupan sehari-hari, misalnya dalam bidang biologi, kedokteran, teknik
atau ekonomi, kita sering menjumpai permasalahan dalam rumus matematis yang
sulit dicari penyelesaian eksaknya. Hal ini biasanya terjadi karena persoalan yang
muncul dalam dunia nyata seringkali melibatkan bentuk dan proses yang rumit.
7
Modul Metode Numerik
Akibatnya nilai praktis penyelesaian metode analitik menjadi terbatas. Karena itu
komputasi numerik menjadi amat penting. Metode numerik adalah teknik yang
digunakan untuk memformulasikan persoalan matematik sehingga dapat
dipecahkan dengan sekumpulan operasi perhitungan atau aritmatika sederhana
(tambah, kurang, kali, dan bagi).
Solusi yang diperoleh melalui metode numerik biasanya adalah solusi yang
menghampiri atau mendekati solusi eksak. Solusi numerik disebut juga solusi
hampiran (approximation) atau solusi pendekatan, namun solusi hampiran dapat
dibuat seteliti yang kita inginkan. Solusi hampiran jelas tidak tepat sama dengan
solusi eksak, sehingga ada selisih antara keduanya. Solusi antara solusi eksak dan
solusi numerik tersebut biasa disebut sebagai error.
1.1 Algoritma
8
Modul Metode Numerik
c. Langkah-langkah
Perintah-perintah atau perhitungan-perhitungan yang dijalankan algoritma
untuk menyelesaikan masalah.
Contoh 1.1.1 Tuliskan algoritma untuk menentukan solusi atau akar-akar dari
persamaan kuadrat
ax 2 bx c 0
Penyelesaian:
Rumus dasar untuk mencari solusi persamaan di atas adalah:
b b 2 4ac
x1, 2
2a
Ada tiga kemungkinan, yaitu diperoleh 2 akar real berbeda, 1 akar real, dan 2 akar
kompleks. Ketiga kasus tersebut ditentukan berdasarkan nilai discriminant
D b 2 4ac
Dalam hal akarnya real, hasil disimpan di variabel x1 dan x2 . Bila akarnya
kompleks, hasil disimpan di variabel re (bagian real) dan im (imaginer).
Input: a, b, c
Output: x1 , x2 , re, im
Langkah-langkah:
1. Hitung D := b 2 4ac
2. Jika D 0 , maka x1 : b sqrt ( D ) / 2a
x2 : b sqrt ( D) / 2a
jika tidak, maka re : b / 2a
im : sqrt ( D ) / 2a
9
Modul Metode Numerik
Komputer menyajikan bilangan dalam dua mode, yaitu integer dan floating point.
Dalam perhitungan sehari-hari, kita lebih sering menggunakan bilangan dengan
basis 10 (decimal). Namun, hampir semua komputer memakai basis 2 (binary) atau
variannya seperti basis 8 (oktal) dan basis 16 (hexadecimal).
Penyelesaian:
a. Pada basis 2, semua bilangan terdiri dari 2 angka yaitu 0 dan 1.
Jadi (11011.01)2 = 1 24 + 1 23 + 0 22 + 1 21 + 1 20 + 0 2-1 + 1 2-2
= 27.25
b. Pada basis 16, semua bilangan dinyatakan dengan angka 0, 2, ..., 9, A, B, ..., F,
dengan A, B, ..., dan F berturut-turut mempunyai nilai 10, 11, ..., 15.
Jadi (A6.D2)16 = 10 161 + 6 160 + 13 16-1 + 2 16-2
= 166.8203125
10
Modul Metode Numerik
= dn bn + d n 1 bn-1 + ... + d 1 b1 + d 0 b0
(1.1)
Kemudian membagi kedua ruas persamaan (1.1) dengan b sehingga diperoleh
d
x
d n b n 1 d n 1 b n 1 ... d11 0
b b
int eger
x
dilanjutkan, maka d1 adalah sisa dari dibagi b, dan seterusnya.
b
Contoh 1.2.2 Tulislah bentuk binary dari bilangan decimal integer 25.
Penyelesaian:
2)25 Sisa
2)12 1 = d0
2)6 0 = d1
2)3 0 = d2
2)1 1 = d3
0 1 = d4
Jadi, 25 = (11001)2.
Perhatikan bahwa d 1 adalah bagian integer dari bx. Proses dilanjutkan dengan
mengalikan bagian pecahan dari bx dengan b, sehingga diperoleh d 2 , dan
seterusnya.
11
Modul Metode Numerik
Contoh 1.2.3 Tulislah bentuk binary dari bilangan decimal integer 0.59375.
Penyelesaian:
0.59375 integer
x2
1.18750 1 = d 1
x2
0.37500 0 = d 2
x2
0.75000 0 = d 3
x2
1.50000 1 = d4
x2
1.00000 1 = d 5
Penyelesaian:
Bilangan 25.59375 mempunyai bentuk integer 25 dan pecahan 0.59375. Dari
Contoh 1.2.2 dan 1.2.3 diperoleh
25 = (11001)2 dan 0.59375 = (.100011)2
Jadi, 25.59375 = (11001.100011)2.
Secara umum jika basis bilangan suatu komputer adalah b, maka suatu
bilangan non-zero x disimpan dalam bentuk
x (.d1d 2 d 3 ...)b .b e
12
Modul Metode Numerik
13
Modul Metode Numerik
Error = xT x A
(1.3)
Persamaan (1.3) disebut juga error mutlak/absolut. Selain error mutlak, pada
metode numerik juga didefinisikan error relatif, yaitu:
(1.4)
xT x A
Error Relatif =
xT
Error relatif hanya dapat digunakan bila nilai eksak dari besaran yang dilibatkan
bukan nol ( xT 0) . Dalam hal Error xT , error relatif sering dihampiri
dengan
xT x A (1.5)
Error Relatif =
xA
Contoh 1.3.1 Tentukan error absolut dan error relatif, jika nilai eksaknya diketahui
a. xT 3.141592 dan x A 3.14
Error = xT x A = 3.141592 – 3.14 = 0.001592
xT x A 0.001592
Error relatif = = = 0.000507
xT 3.141592
125
b. xT e dan x A
46
14
Modul Metode Numerik
125
Error = xT x A = e = 0.00089
46
xT x A 0.00089
Error relatif = = = 0.00033
xT e
Contoh 1.3.2 Terdapat tugas untuk mengukur panjang sebuah jembatan dan sebuah
paku. Hasil pengukuran menunjukkan bahwa panjang jembatan dan paku berturut-
turut adalah 9.999 dan 9 cm. Jika diketahui panjang sebenarnya dari jembatan
dan paku adalah 10.000 dan 10 cm, hitunglah (a) error dan (b) error relatif, untuk
setiap kasus.
Penyelesaian:
a. Untuk jembatan: Error = 10.000 – 9.999 = 1 cm
Untuk paku: Error = 10 – 9 = 1 cm
1
b. Untuk jembatan: Error relatif = = 0.0001 = 0.01%
10.000
1
Untuk paku: Error relatif = 0.1 10%
10
Jadi, meskipun sama-sama mempunyai error 1 cm, tetapi dapat dikatakan
pengukuran untuk jembatan lebih baik dari pada paku, karena persentase error yang
diperoleh (error relatif) lebih kecil.
Macam-macam Error
Error pembulatan adalah error yang timbul akibat pembulatan bilangan. Biasanya
pembulatan ini terjadi karena adanya keterbatasan pada alat hitung yang kita pakai.
Pembulatan artinya mengurangi cacah digit pada suatu nilai hampiran dengan cara
15
Modul Metode Numerik
membuang beberapa digit terakhir. Berikut ini adalah aturan cara melakukan
pembulatan suatu nilai hampiran.
a. Jika digit pertama yang dibuang kurang dari 5, maka digit di depannya
tidak berubah.
b. Jika digit pertama yang dibuang lebih atau sama dengan 5, maka nilai
digit di depannya ditambah 1.
Contoh 1.3.3
a. Misalkan kita menggunakan komputer dengan kemampuan menyimpan 5 ang-
ka desimal. Bila kita ingin menyimpan bilangan 2 3 0.666666... , maka
dalam komputer tersebut akan disimpan menjadi 0.66667, sehingga terjadi error
pembulatan.
b. Nilai-nilai 2.14158, -0.0025, 54.009982 jika dibulatkan berturut-turut sampai
dua, tiga, dan empat angka desimal di belakang koma, maka diperoleh 2.14,
-0.003 dan 54.0100.
Error pemotongan adalah error yang timbul akibat pemotongan rumus matematika
tertentu untuk menghampiri suatu besaran. Sebagai ilustrasi, misal ingin dihitung
nilai sin(0.1) memakai deret Mc Laurin. Dari kalkulus diketahui
x3 x5 x 7 x9
sin( x) x ...
3! 5! 7! 9!
Algoritma yang dikonstruksi untuk menghitung nilai sin(0.1) tidak dapat
menghitung seluruh suku di ruas kanan dari deret tersebut, sebab hitungan dalam
16
Modul Metode Numerik
suatu algoritma harus berhingga. Jadi biasanya ruas kanan dari deret tersebut
dihampiri sampai sejumlah suku tertentu saja, misalnya hanya sampai suku ke-3,
x5
yaitu . Dengan demikian diperoleh
5!
(0.1)3 (0.1)5
sin(0.1) 0.1
3! 5!
dengan error pemotongan sebesar
(0.1)7 (0.1)9
...
7! 9!
Contoh 1.3.4 Tentukan error pemotongan absolut dan relatif apabila nilai cos(1.5)
= 0.070737 dihampiri dengan deret Mc Laurin sampai suku ke-4.
Penyelesaian:
Dari kalkulus diketahui bahwa
x 2 x 4 x 6 x8 x10
cos( x ) 1 ...
2! 4! 6! 8! 10!
x6
Suku ke-4 dari deret cos(x) tersebut adalah , sehingga untuk x = 1.5 diperoleh
6!
non-zero di dalam xT .
17
Modul Metode Numerik
Contoh 1.4.1
1 1 1 2 3 4
a. xT 0.3 333..., x A 0.333, xT x A 0. 0 0 0 3
3
karena pada angka ke-4 errornya < 5, maka x A mempunyai 3 angka
signifikan, sehingga x A = 0.333.
1 1 1 2 3
b. xT 0.0 2138 , x A 0.02144 , xT x A 0.0 0 0 0 6
3
karena pada angka ke-3 errornya < 5, maka x A mempunyai 2 angka
signifikan, sehingga x A = 0.021.
1 2 3 4 5
c. xT 12.496 , x A 12.494 , xT x A 0 0 . 0 0 2
18
Modul Metode Numerik
EVALUASI
19
Modul Metode Numerik
BAB II
20
Modul Metode Numerik
Pengantar
Salah satu masalah yang umum dijumpai di dalam matematika dan teknik adalah
mencari akar suatu persamaan, yaitu bila diberikan suatu fungsi f (x ) , akan dicari
nilai c sedemikian sehingga f (c ) 0 . Termasuk dalam hal ini adalah
menentukan titik potong dua buah kurva. Apabila kurva-kurva tersebut dinyatakan
oleh fungsi g (x ) dan h( x ) , maka titik potong kedua kurva adalah akar-akar dari
f ( x ) g ( x ) h( x ) .
kompleks). Permasalahan yang timbul adalah ketika kita mendapati suatu fungsi
yang tidak dapat diselesaikan secara analitik atau memerlukan perhitungan yang
2
sangat rumit, misalnya fungsi g ( x) ( x 1) 2 3(e 2 x ) . Oleh karena itu, disinilah
peran metode numerik untuk mencari solusi pendekatan atau akar hampiran dari
fungsi tersebut.
Pada bab ini akan dibahas beberapa metode numerik untuk mencari akar
suatu persamaan, khususnya persamaan nonlinear. Metode-metode numerik untuk
pencarian akar suatu fungsi pada umumnya merupakan metode iterasi. Metode ini
dimulai dengan menentukan satu atau beberapa nilai (tebakan) awal terhadap akar
fungsi f ( x ) 0 . Selanjutnya diterapkan suatu rumus iterasi tertentu yang akan
membangkitkan barisan bilangan x0 , x1 , x2 ,... . Barisan ini diharapkan konvergen
ke akar dari f (x ) . Selain menentukan rumus iterasi, perlu ditetapkan juga kriteria
untuk menghentikan proses iterasi tersebut. Hal ini dimaksudkan untuk
menghindari proses iterasi yang terus-menerus sampai tak hingga iterasi.
21
Modul Metode Numerik
Secara umum terdapat dua tipe metode untuk mencari akar suatu fungsi, yaitu
metode tertutup dan metode terbuka.
1. Metode Tertutup. Metode tertutup sering disebut
juga metode pengurung (bracketing method). Pada metode penutup, akar yang
kita cari selalu diapit (dikurung) di dalam suatu interval tertutup a, b . Proses
yang dilakukan adalah membuat interval pengapit akar tersebut semakin lama
semakin kecil. Iterasi yang berlaku pada metode tertutup selalu konvergen,
sehingga metode ini dinamakan juga metode konvergen. Beberapa metode yang
termasuk metode tertutup adalah metode biseksi (metode bagi dua) dan metode
regula-falsi (metode titik palsu).
b. Metode Terbuka. Metode terbuka tidak memerlukan interval
tertutup a, b seperti pada metode tertutup. Pada metode terbuka yang
diperlukan adalah nilai (tebakan) awal akar, yang kemudian dengan prosedur
iterasi tertentu diharapkan diperoleh akar hampiran (pendekatan). Setiap iterasi,
akar hampiran yang lama dipakai untuk menghitung akar hampiran yang baru.
Namun, hampiran akar yang baru dapat mendekati akar sebenarnya
(konvergen) atau justru menjauhi (divergen). Oleh karena itu, metode terbuka
tidak selalu berhasil menemukan akar. Beberapa metode yang termasuk metode
terbuka adalah metode iterasi titik tetap, metode Newton-Raphson, dan metode
sekan.
Contoh 2.1.1 Tentukan nilai awal terhadap akar dari fungsi f ( x ) x sin( x ) x .
22
Modul Metode Numerik
Penyelesaian:
Untuk menggambar f ( x ) x sin( x ) x dengan 0 x 10 digunakan perintah
x = linspace(0,10);
y = x.*sin(x)-sqrt(x);
plot(x,y)
grid on
sehingga diperoleh
-2
-4
-6
-8
-10
0 1 2 3 4 5 6 7 8 9 10
baru untuk mengevaluasi masing-masing akar. Untuk mengubah inteval dari grafik
fungsi f ( x ) x sin( x ) x digunakan perintah berikut.
a = input('Titik awal interval : ');
b = input('Titik akhir interval : ');
x = linspace(a,b);
y = x.*sin(x)-sqrt(x);
clf
plot(x,y)
grid on 23
zoom on
Modul Metode Numerik
Kita akan mencari akar hampiran untuk r2 . Apabila perintah di atas dijalankan
dengan memasukkan input 1 dan 2, maka diperoleh
0.5
0.4
0.3
0.2
0.1
-0.1
-0.2
1 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 2
Interval dapat terus diperkecil untuk melihat letak akar dengan lebih akurat.
24
Modul Metode Numerik
0.3
0.25
0.2
0.15
0.1
0.05
-0.05
-0.1
-0.15
-0.2
1 1.05 1.1 1.15 1.2 1.25 1.3 1.35 1.4 1.45 1.5
0.15
0.1
0.05
-0.05
-0.1
-0.15
-0.2
1 1.05 1.1 1.15 1.2 1.25
0.025
0.02
0.015
0.01
0.005
-0.005
-0.01
-0.015
-0.02
-0.025
1.15 1.16 1.17 1.18 1.19 1.2 1.21
25
Modul Metode Numerik
Dari Gambar 2.5 diperoleh akar pendekatan yang lebih akurat, yaitu r2 1.175 .
Proses yang sama dapat dilakukan untuk mengevaluasi empat akar lainnya.
Penyelesaian:
Persamaan dapat diubah menjadi e x 4 x 2 , sehingga akar persamaan dari fungsi
x 2 e x 4 adalah titik potong antara fungsi y e dan y 4 x . Untuk
x 2
x = linspace(-2,2);
y1 = exp(x);
y2 = 4-x.^2;
plot(x,y1,x,y2)
grid on
Sehingga diperoleh
26
Modul Metode Numerik
8
y = ex
7 y = 4-x2
0
-2 -1.5 -1 -0.5 0 0.5 1 1.5 2
Metode biseksi termasuk metode tertutup, sehingga diperlukan 2 titik awal sebagai
interval yang mengapit akar yang akan dicari. Sebelum lebih lanjut membahas
mengenai metode biseksi, teorema nilai antara yang menjadi ide dasar dalam iterasi
metode biseksiue
Teorema 2.2.1
27
Modul Metode Numerik
a r r1 r3 b
b a r2
(a) (b)
Dari Gambar 2.2 dapat disimpulkan bahwa jika f (a ). f (b) 0 , maka jumlah akar
ganjil, paling tidak satu buah. Sedangkan jika f (a). f (b) 0 , maka jumlah akar
genap atau tidak akar. Hal ini dapat dilihat pada gambar berikut.
a b
a b
(a) (b)
28
Modul Metode Numerik
a b
r1 r2 r1 s1
a ` b
(c) (d)
ab
sebagai titik tengah dari interval a, b , yaitu c . Dengan demikian,
2
terbentuk dua subinterval, yaitu [ a, c ] dan [c, b] . Jika f (c ) 0 , maka c
adalah akar dari f (x ) . Jika f (c ) 0 , maka diambil salah satu dari kedua
subinterval yang terbentuk. Subinterval yang diambil untuk iterasi berikutnya
adalah subinterval yang memuat akar, sehingga terdapat dua kemungkinan.
(a) f (a). f (c) 0 , artinya akar berada pada interval a, c
(b) f (b). f (c) 0 , artinya akar berada pada interval c, b
Untuk iterasi berikutnya, interval yang dipilih dinamakan sebagai a dan b
yang baru. Jadi pada kasus (a), titik c menjadi titik b dan pada kasus (b), titik c
menjadi titik a. Perhatikan ilustrasi berikut.
29
Modul Metode Numerik
10
y f (x )
5
c2
0 a a0 c1 r c0 b b0
a0 b0
-5
a1 b1
a2 b2
-10
a0 b0
tengahnya c0 . Pada proses selanjutnya, interval yang memuat akar
2
a1 b1
dinamakan a1 ,b1 dan titik tengahnya c1 . Secara umum pada iterasi ke-
2
30
Modul Metode Numerik
Agar iterasi tidak berjalan terus menerus, maka diperlukan kriteria berhentinya
iterasi. Pada metode Biseksi, iterasi akan berhenti apabila bk ak , dengan
(eps) merupakan batas error atau nilai ketelitian yang ditentukan.
Contoh 2.2.1 Gunakan metode Biseksi untuk mencari akar dari persamaan
x 1 e x
dengan interval awal [1,1.4] dan nilai ketelitian 0.02 .
Penyelesaian:
Persamaan dapat diubah menjadi x 1 e x 0 , sehingga dapat dimisalkan
f ( x ) x 1 e x . Jadi, akar dari x 1 e x adalah nilai c sedemikian sehingga
31
Modul Metode Numerik
1.5
0.5
-0.5
-1
f=inline('x-1-exp(-x)','x');
disp(' ===============================================')
-1.5
disp(' METODE BISECTION ');
disp(' ===============================================')
-2
a = input(' 0 Masukkan 0.5 batas1 kiri interval
1.5 2 : ' 2.5 );
b = input(' Masukkan batas kanan interval : ' );
eps = input (' Nilai ketelitian (Toleransi) : ' );
itemax =Gambar
input 2.10.a
(' Grafik f ( x)
Masukkan jumlah e x pada interval
x 1 iterasi [0,2.5]
maksimum : ' );
disp(' ')
disp('
Dengan metode Biseksi, diperoleh hasil iterasi sebagai berikut. ')
disp(' Memulai Proses Iterasi ')
disp(' ===============================================')
disp(' k a Tableb2.1 c selisih')
disp(' ===============================================')
kselisihak = abs(b-a);
bk ck f (bk ) f (c k ) f (bk ). f (c k ) action bk ak
D=a;E=b;M=(a
0 1.0000 +
1.4000 b)/2;F=selisih;
1.2000 0.1534 -0.1000 0 ac 0.4000
format short
1 1.2000 1.4000 1.3000 0.1534 0.0270 0 bc 0.2000
tic
2 1.2000 1.3000
for k = 1:1:itemax
1.2500 0.0275 -0.0370 0 ac 0.1000
3 1.2500 1.3000
c = (a + b)/2;
1.2750 0.0275 -0.0044 0 ac 0.0500
4 1.2750 1.3000 1.2875
disp ([k-1,a,b,c,selisih])
0.0275 0.0115 0 bc 0.0250
5 1.2750 1.2875 0.0125
if (f(b)*f(c) <= 0)
a = c ;
elsedi atas terlihat bahwa iterasi berhenti pada iterasi ke-5, yaitu pada saat
Dari tabel
b = c;
5 0.0125 0.02 . Dengan demikian, akar hampiran dari persamaan
b5 aend
selisih = abs(b-a);
e x adalah r 1.2875 .
x 1D=[D;a];E=[E;b];M=[M;c];F=[F;selisih];
if (abs(b-a)) <= eps
break
Contohend2.2.1 juga dapat diselesaikan dengan perintah dalam Matlab berikut ini.
end
disp ([k,a,b,c,selisih])
disp(' ===============================================')
waktu = toc;
plot([D,E,M,F])
legend('a','b','c','selisih')
xlabel('Iterasi ke :')
ylabel('Iterasi metode Biseksi')
disp (' ')
disp ([' Akarnya adalah : ',num2str(c)]) 32
disp ([' Jumlah iterasi : ',num2str(k)])
disp ([' Selang waktu konvergensi : ',num2str(waktu)])
Modul Metode Numerik
===============================================
METODE BISECTION
===============================================
Masukkan batas kiri interval : 1
Jika perintah di atas
Masukkan dijalankan,
batas kanan maka diperoleh : 1.4
interval
Nilai ketelitian (Toleransi) : 0.02
Masukkan jumlah iterasi maksimum : 10
1.4
1.2
a
b
1 c
Iterasi metode Biseksi
selisih
0.8
0.6
0.4
0.2
0
1 1.5 2 2.5 3 3.5 4 4.5 5 5.5 6
Iterasi ke :
Contoh 2.2.2 Gunakan metode Biseksi untuk mencari titik potong antara
g ( x) x 1 dan h( x) e 2 x
2 2
Penyelesaian:
34
Modul Metode Numerik
Untuk melihat posisi akar dari fungsi f (x ) , terlebih dahulu digambar dengan
menjalankan perintah:
x = linspace(0,10);
y = (x+1).^2-exp(2-x.^2);
plot(x,y)
grid on
sehingga diperoleh
10
-2
-4
-6
-8
-2 -1.5 -1 -0.5 0 0.5 1 1.5 2
f ( x ) x 1 e 2 x
2 2
mempunyai dua akar, misalkan r1 dan r2 . Untuk
menentukan interval awal yang memuat masing-masing akar tersebut, maka dilihat
35
Modul Metode Numerik
-1
-2
-3
-1
-2
-3
Dari Gambar 2.12 dan 2.13 kita dapat menentukan interval awal untuk r1 dan r2
berturut-turut adalah [ 1.8,1.6] dan [0.8,1] .
Hasil iterasi untuk interval [ 1.8,1.6] dapat dilihat pada Tabel 2.2,
sedangkan untuk interval [0.8,1] dapat dilihat pada Tabel 2.3.
Table 2.2
36
Modul Metode Numerik
Table 2.3
Dari kedua tabel di atas terlihat bahwa iterasi berhenti pada iterasi ke-5, yaitu pada
saat b5 a5 0.00625 0.01 . Dengan demikian, titik potong hampiran antara
Misal diberikan invertal awal a0 ,b0 . Berdasarkan iterasi metode Biseksi, setiap
kali iterasi, panjang interval baru menjadi setengah dari panjang interval
sebelumnya. Dengan demikian diperoleh
1
b1 a1 (b0 a0 )
2
1 1
b2 a2 (b1 a1 ) (b0 a0 )
2 4
1 1
b3 a3 (b2 a2 ) (b0 a0 )
2 8
37
Modul Metode Numerik
1
Karena cn (an bn ) , sehingga
2
1
r cn bn an (b0 a0 )
2n
Dari pertidaksamaan tersebut diperoleh cn r untuk n . Hal ini menunjukkan
bahwa metode Biseksi untuk sebarang nilai awal yang berikan bersifat konvergen
menuju akar dari suatu fungsi. Selanjutnya, r cn jika
1
(b0 a0 ) .
2n
(b0 a0 )
2n
b a
log 2n log 0 0
b a
n log 2 log 0 0
b a0
log 0
n (2.2)
log 2
Contoh 2.2.3 Berapa jumlah iterasi dari metode Biseksi yang diperlukan untuk
menentukan solusi dari x 1 e x 0 , jika diambil interval awal [1,1.4] dan
nilai ketelitian 0.02 .
Penyelesaian:
Diketahui a0 1 , b0 1.4 , dan 0.02 . Sehingga diperoleh
b a0
log 0
n
log 2
38
Modul Metode Numerik
1.4 1
log
0.02
log 2
4.3219
Jadi, paling sedikit dibutuhkan 5 iterasi.
Contoh 2.2.4 Berapa jumlah iterasi dari metode Biseksi yang diperlukan untuk
menentukan titik potong antara
g ( x) x 1 dan h( x) e 2 x
2 2
Penyelesaian:
Diketahui a0 1.8 , b0 1.6 , dan 0.00001 . Sehingga diperoleh
b a0
log 0
n
log 2
1.6 1.8
log
0.00001
log 2
14.2877
Jadi, paling sedikit dibutuhkan 15 iterasi.
Metode Regula Falsi juga termasuk metode tertutup, yaitu untuk suatu fungsi
kontinu f (x ) diperlukan nilai awal a dan b dengan f (a ), f (b) 0 . Pada iterasi
metode ini diperlukan nilai f (a ) dan f (b) , dan dibuat garis lurus yang
menghubungkan titik (a, f ( a )) dan (b, f (b)) . Untuk pencarian interval baru
digunakan rumus
f (b)(b a)
c b .
f (b) f (a)
39
Modul Metode Numerik
35
30
f (b0 )
25
20
15
10
y f (x )
5
a0 c0 c1
0 r b0
-5
-10
f (a0 )
-15
0 1 2 3 4 5 6 7
f (b0 )(b0 a0 )
c0 b0 . Pada proses selanjutnya, interval yang memuat akar
f (b0 ) f ( a0 )
f (b1 )(b1 a1 )
dinamakan a1 ,b1 dan titik berikutnya adalah c1 b1 . Secara
f (b1 ) f ( a1 )
umum pada iterasi ke-k akan diperoleh interval ak , bk dan titik tengahnya
f (bk )(bk ak )
ck bk , k 0,1,2,... (2.3)
f (bk ) f (ak )
40
Modul Metode Numerik
Agar iterasi tidak berjalan terus menerus, maka diperlukan kriteria berhentinya
iterasi. Kriteria penghentian iterasi metode Biseksi tidak dapat diterapkan pada
iterasi metode Biseksi. Hal ini disebabkan ada kemungkinan terjadi iterasi tak
berhingga (infinite loop). Pada metode Regula Falsi, iterasi akan berhenti apabila
c k c k 1 , dengan (eps) merupakan nilai ketelitian yang ditentukan.
Contoh 2.3.1 Gunakan metode Regula Falsi untuk mencari akar dari persamaan
x 1 e x
dengan interval awal [1,1.4] dan nilai ketelitian 0.02 .
Penyelesaian:
Persamaan dapat diubah menjadi x 1 e x 0 , sehingga dapat dimisalkan
f ( x ) x 1 e x . Dengan metode Regula Falsi, diperoleh clama 2b a 1.8
Table 2.4
41
Modul Metode Numerik
Dari tabel di atas terlihat bahwa iterasi berhenti pada iterasi ke-2, yaitu pada saat
c k c k 1 0.0037 0.02 . Dengan demikian, akar hampiran dari persamaan
x 1 e x adalah r 1.27860 .
Contoh 2.3.1 juga dapat diselesaikan dengan perintah dalam Matlab berikut ini.
f=inline('x-1-exp(-x)','x');
disp(' ===============================================')
disp(' METODE REGULA FALSI ');
disp(' ===============================================')
a = input(' Masukkan batas kiri interval : ');
b = input(' Masukkan batas kanan interval : ');
eps = input (' Nilai ketelitian (Toleransi) : ');
itemax = input (' Masukkan jumlah iterasi maksimum : ');
disp(' ')
disp(' ')
disp(' Memulai Proses Iterasi ')
disp(' ===============================================')
disp(' k a b c selisih')
disp(' ===============================================')
clama = 2*b-a;
cD=a;E=b;M=2*b-a;F=selisih;
= b-((f(b)*(b-a))/(f(b)-f(a)));
selisih = abs(c-clama);
format short
tic
for k = 1:1:itemax
c = b-((f(b)*(b-a))/(f(b)-f(a)));
selisih = abs(c-clama);
disp ([k-1,a,b,c,selisih])
if (f(b)*f(c) <= 0)
a = c;
else
b = c;
end
D=[D;a];E=[E;b];M=[M;c];F=[F;selisih];
if (abs(c-clama)) <= eps
break
end
clama = c;
end
disp ([k,a,b,c,selisih])
waktu = toc;
plot([D,E,M,F])
legend('a','b','c','selisih')
xlabel('Iterasi ke :')
ylabel('Iterasi metode Regula Falsi')
disp (' ')
disp (['Akarnya adalah : ',num2str(c)]) 42
disp (['Jumlah iterasi : ',num2str(k)])
disp (['Selang waktu konvergensi : ',num2str(waktu)])
Modul Metode Numerik
===============================================
METODE REGULA FALSI
===============================================
Masukkan batas kiri interval : 1
Masukkan batas kanan interval : 1.4
Nilai ketelitian (Toleransi) : 0.02
Masukkan jumlah iterasi maksimum : 10
43
Modul Metode Numerik
1.8
a
1.6 b
c
1.4 selisih
Iterasi metode Regula Falsi
1.2
0.8
0.6
0.4
0.2
0
1 1.2 1.4 1.6 1.8 2 2.2 2.4 2.6 2.8 3
Iterasi ke :
1
berlaku sebaliknya. Contoh fungsi f ( x) 0.4 dengan nilai awal a 0.5 dan
x2
b 10 , serta nilai ketelitian 0.000001 akan membutuhkan 91 iterasi dengan
metode Regula FalsiMemulai
dan 24 iterasi
Prosesdengan metode Biseksi. Apabila diiterasikan,
Iterasi
===============================================
diperoleh hasil
k berikut.a b c selisih
===============================================
0 0.5000 10.0000 9.0714 10.4286
1.0000 0.5000 9.0714 8.2378 0.8336
===============================================
2.0000 0.5000 8.2378 7.4898 0.7480
3.0000 METODE7.4898
0.5000 REGULA FALSI
6.8189 0.6708
===============================================
4.0000 0.5000 6.8189 6.2178 0.6012
Masukkan batas
5.0000 0.5000kiri 6.2178
interval 5.6795
: 0.5 0.5383
Masukkan
6.0000 batas
0.5000kanan5.6795
interval 5.1980
: 10 0.4815
Nilai
………… ketelitian
………… (Toleransi)
………… : 0.000001
………… …………
Masukkan jumlah iterasi maksimum : 100
88.0000 0.5000 1.5811 1.5811 0.0000
89.0000 0.5000 1.5811 1.5811 0.0000
90.0000 0.5000 1.5811 1.5811 0.0000
91.0000 0.5000 1.5811 1.5811 0.0000
===============================================
16 a
b
14
c
12 selisih
Iterasi metode Regula Falsi
10
-2
0 10 20 30 40 50 60 70 80 90
Iterasi ke :
1
Gambar 2.16 Grafik iterasi metode Regula Falsi dari f ( x) 0.4
x2
2.4 Metode Newton (Metode Newton-Raphson)
45
Modul Metode Numerik
Pada metode Biseksi dan Regula Falsi diperlukan dua titik awal dengan nilai fungsi
yang berbeda tanda. Penentuan dua titik awal yang demikian seringkali tidak
mudah. Oleh karena itu dikembangkan metode yang titik awalnya lebih mudah
ditentukan, salah satunya metode Newton.
Metode Newton termasuk metode terbuka dan hanya memerlukan satu titik
awal. Selain itu, metode ini banyak digunakan dalam terapan sain dan rekayasa
karena konvergensinya paling cepat di antara metode-metode lain. Ada dua cara
pendekatan dalam mencari rumus metode Newton, yaitu secara geomerti dan
dengan menggunakan deret Taylor.
350
300
250
200
150 y f (x )
100
50
r
0
x1 x0
-50
0 1 2 3 4 5 6 7
Gambar 2.17 Iterasi Metode Newton
46
Modul Metode Numerik
Dari Gambar 2.17 diberikan fungsi kontinu f (x ) dan titik awal x0 . Prinsip
dasar metode Newton adalah dengan membuat garis singgung terhadap fungsi
f (x ) di titik ( x0 , f ( x0 )) . Jika digambar, maka garis singgung tersebut akan
Karena f ( x1 ) 0 , sehingga
y f ( x0 )
f ' ( x0 )
x x0 x1
f ( x0 )
x1 x0
f ' ( x0 )
dengan f ' ( xk ) 0 .
Teorema 2.4.1
f ( x ) Pn ( x ) Rn 1 ( x )
dengan Pn ( x) f ( xn )
x x0
f ' ( x0 ) ...
x x0 f ( n) ( x )
n
0
1! n!
Rn 1 ( x)
x x0 f ( n 1) ( )
n 1!
Untuk di antara x0 dan x.
47
Modul Metode Numerik
dengan K adalah suatu konstanta. Oleh karena itu metode Newton dikatakan
konvergen secara kuadratik ke akar f (x ) . Derajat konvergensi metode Newton
adalah p 2 .
Sekarang jika x0 , x1 , x2 ,... dekat dengan r, maka
r xk 1 K r xk
2
48
Modul Metode Numerik
K r xk 1 K r xk
2
K K r xk 1
2 2
K r xk 1
22
K r x0
2 k 1
itu xk r . Jadi, metode Newton konvergen jika titik awal x0 dipilih sedemikain
sehingga
1 2 f ' (r )
r x0 (2.6)
K f ' ' (r )
( xk r ) f ' ( )
Contoh 2.4.1 Gunakan metode Newton sebanyak dua iterasi untuk menentukan
akar hampiran dari persamaan x 1 e x dengan x0 1.2 .
Penyelesaian:
Persamaan dapat diubah menjadi x 1 e x 0 , sehingga dapat dimisalkan
f ( x ) x 1 e x . Dengan demikian, f ' ( x) 1 e x dan
f ( x0 )
x1 x0
f ' ( x0 )
f (1.2)
1.2
f ' (1.2)
0.1011942
1.2
1.3011942
1.2777703
f ( x1 )
x2 x1
f ' ( x1 )
50
Modul Metode Numerik
f (1.2777703)
1.2777703
f ' (1.2777703)
0.0008877
1.2777703
1.2786579
1.2784645
Jadi, diperoleh akar hampiran r 1.2784645 .
Contoh 2.4.2 Gunakan metode Newton untuk menentukan akar hampiran dari
fungsi x3 2 , dengan titik awal x0 2 dan nilai ketelitian 0.0001 .
Penyelesaian:
Persamaan dapat diubah menjadi
f=inline('x.^3-2','x'); x 3 2 0 , sehingga dapat dimisalkan
df=inline('3*x.^2','x');
disp(' ===========================')
( x) x 3 2 . Dengan METODE
fdisp(' demikian, f ' ( x) 3 x');
NEWTON
2
. Ilustrasi fungsi f ( x) x 3 2
disp(' ===========================')
dapat
x0 dilihat pada gambar
= input(' di bawah
Masukkan ini. awal
titik : ');
eps = input(' Nilai ketelitian (Toleransi) : ');
itemax = input
150
(' Masukkan jumlah iterasi maksimum : ');
disp(' ')
disp(' ')
disp(' 100 Memulai Proses Iterasi ')
disp(' ===========================')
disp(' k x selisih')
disp(' ===========================')
50
x = x0;
xbaru = x - (f(x)/df(x));
selisih = abs(xbaru-x);
0
D=x;F=selisih;
format short
disp ([' -50 0',' ',num2str(x)])
tic
for k = 1:1:itemax
if df(x)-100== 0
break;
else
-150
xbaru =
-5 x -
-4 (f(x)/df(x));
-3 -2 -1 0 1 2 3 4 5
end
selisih = abs(xbaru-x);
Gambar 2.18 Grafik f ( x) x 3 2
disp ([k,xbaru,selisih])
D=[D;xbaru];F=[F;selisih];
if abs(xbaru-x) <= eps
Akar daribreak;
fungsi f (x ) dapat dicari dengan perintah dalam Matlab berikut.
end
x = xbaru;
end
disp(' ===========================')
waktu = toc;
plot([D,F])
legend('x','selisih')
xlabel('Iterasi ke :')
ylabel('Iterasi metode Newton')
disp (' ')
disp (['Akarnya adalah : ',num2str(xbaru)]) 51
disp (['Jumlah iterasi : ',num2str(k)])
disp (['Selang waktu konvergensi : ',num2str(waktu)])
Modul Metode Numerik
Jadi dengan nilai ketelitian 0.0001, iterasi berhenti pada iterasi ke-5, dan diperoleh
akar hampiran r 1.2599 . Sedangkan hasil plot gambarnya dapat dilihat sebagai
berikut.
2
x
1.8 selisih
1.6
1.4
Iterasi metode Newton
1.2
0.8
0.6
0.4
0.2
0
1 1.5 2 2.5 3 3.5 4 4.5 5 5.5 6
Iterasi ke :
Pada metode Newton diperlukan turunan dari fungsi di setiap iterasinya. Namun,
seringkali dijumpai fungsi-fungsi yang tidak mudah dicari turunannya. Oleh karena
53
Modul Metode Numerik
itu dikembangkan metode alternatif yang tidak memerlukan turunan fungsi, yaitu
metode Secant. Metode ini merupakan modifikasi dari metode Newton.
Metode Secant dimulai dengan dua itik awal, yaitu x0 dan x1 . Kedua titik
awal tersebut tidak perlu mengapit akar fungsi yang akan dicari. Perhatikan
ilustrasi berikut ini.
35
30
f ( x1 )
25 D
20
15
10 y f (x )
5
x0 x2 x3 C
0 E r x1
-5
A B
-10
f ( x0 )
-15
0 1 2 3 4 5 6 7
f ( x1 )
Pada metode Newton diketahui x2 x1 . Sementara nilai f ' ( x1 ) adalah
f ' ( x1 )
y f ( x1 ) f ( x0 )
f ' ( x1 )
x x1 x0
54
Modul Metode Numerik
f ( x1 )
x2 x1 akan diperoleh
f ' ( x1 )
f ( x1 )
x2 x1
f ' ( x1 )
f ( x1 )
x2 x1
f ( x1 ) f ( x0 )
x1 x0
f ( x1 )( x1 x0 )
x2 x1
f ( x1 ) f ( x0 )
Persamaan tersebut juga dapat diperoleh dengan cara lain. Dengan menggunakan
sifat segitiga sebangun diperoleh
BD CD
BA CE
f ( x1 ) f ( x0 ) f ( x1 ) f ( x2 )
x1 x0 x1 x2
f ( x1 ) f ( x0 ) f ( x1 ) 0
x1 x0 x1 x2
f ( x1 )( x1 x0 )
x2 x1
f ( x1 ) f ( x0 )
Metode Secant dapat tidak konvergen untuk pemilihan titik awal x0 dan x1
tertentu. Metode Secant mempunyai derajat konvergensi sebesar
55
Modul Metode Numerik
(1 5 )
p 1.62
2
Akibatnya, metode Secant mempunyai orde konvergensi yang lebih lambat
dibanding metode Newton, namun masih lebih cepat dari metode Biseksi dan
metode Regula Falsi.
Contoh 2.5.1 Gunakan metode Secant sebanyak dua iterasi untuk menentukan akar
hampiran dari fungsi x 1 e x , dengan titik awal x0 1.3 dan x1 1.1 .
Penyelesaian:
Dari persamaan x 1 e x diperoleh f ( x) x 1 e x , sehingga
f ( x1 )( x1 x0 )
x2 x1
f ( x1 ) f ( x0 )
56
Modul Metode Numerik
f (1.1)(1.1 1.3)
1.1
f (1.1) f (1.3)
( 0.2328711)(0.2)
1.1
0.2603393
1.2788981
f ( x2 )( x2 x1 )
x3 x2
f ( x2 ) f ( x1 )
f (1.2788981)(1.2788981 1.1)
1.2788981
f (1.2788981) f (1.1)
(0.0005543)(0.1788981)
1.2788981
0.2334254
1.2784733
Jadi, diperoleh akar hampiran r 1.2784733 .
Contoh 2.5.2 Gunakan metode Secant untuk menentukan akar hampiran dari
fungsi x3 2 , dengan titik awal x0 2 dan x1 1.75 , serta diberikan nilai
ketelitian 0.0001 .
D=x1;F=selisih;
format short
Penyelesaian:
disp ([' 0',' ',num2str(x0)])
disp ([' 3 1',' ',num2str(x1),'
Dari persamaan x 2 diperoleh f ( x) x 3 2 . Akar dari fungsi f (x ) dapat
',num2str(selisih)])
tic dengan perintah dalam Matlab berikut ini.
dicari
for k = 1:1:itemax
P = f(x1) * (x1 - x0);
Q = f(x1) - f(x0);
f=inline('x.^3-2','x');
if ((f(x1) - f(x0)) / (x1 - x0)) == 0
disp('break; ===========================')
disp('
else METODE SECANT ');
disp('xbaru===========================')
= x1 - (P / Q);
x0 end= input(' Masukkan titik awal pertama : ');
x1 selisih
= input(' Masukkan
= abs(xbaru-x1); titik awal kedua : ');
epsdisp
= input(' Nilai ketelitian (Toleransi)
([k+1,xbaru,selisih]) : ');
itemax = input (' Masukkan jumlah iterasi maksimum : ');
D=[D;xbaru];F=[F;selisih];
disp('
if abs(xbaru-x1) <= eps ')
disp('xakar = xbaru; ')
disp('break; Memulai Proses Iterasi ')
disp('
end ===========================')
disp('
x0 = x1; k x selisih')
disp(' ===========================')
x1 = xbaru;
xbaru = x1 - ((f(x1) * (x1 - x0))/ (f(x1) - f(x0)));
end
selisih = ===========================')
disp(' abs(x1-x0);
waktu = toc;
plot([D,F])
legend('x','selisih')
xlabel('Iterasi ke :')
ylabel('Iterasi metode Secant')
disp (' ')
disp (['Akarnya adalah : ',num2str(xakar)]) 57
disp (['Jumlah iterasi : ',num2str(k)])
disp (['Selang waktu konvergensi : ',num2str(waktu)])
Modul Metode Numerik
===========================
METODE SECANT
===========================
Masukkan titik awal pertama : 2
Masukkan titik awal kedua : 1.75
Nilai ketelitian (Toleransi) : 0.0001
Masukkan jumlah iterasi maksimum : 10
Jadi dengan nilai ketelitian 0.0001, iterasi berhenti pada iterasi ke-6, dan diperoleh
akar hampiran r 1.2599 . Sedangkan hasil plot gambarnya dapat dilihat sebagai
berikut.
1.8
x
1.6 selisih
1.4
1.2
Iterasi metode Secant
0.8
0.6
0.4
0.2
0
1 2 3 4 5 6 7
Iterasi ke :
59
Modul Metode Numerik
Dari beberapa metode numerik untuk mencari akar persamaan nonlinear, maka
diperoleh kesimpulan sebagai berikut.
EVALUASI
60
Modul Metode Numerik
mempunyai dua akar, satu terletak pada interval 1,0 dan akar lain pada
0,1 . Dengan nilai ketelitian 106 , tentukan akar hampiran polinomial
tersebut dengan menggunakan metode (a) Secant, dan (b) Regula Falsi.
Gunakan Matlab untuk menentukan akar hampiran tersebut.
BAB III
61
Modul Metode Numerik
Pengantar
Sistem persamaan linear merupakan salah satu model matematika yang banyak
dijumpai dalam berbagai disiplin ilmu, seperti fisika, biologi, dan teknik. Suatu
sistem persamaan linear adalah sistem persamaan yang terdiri dari sejumlah
berhingga persamaan dan sejumlah berhingga variabel.
Secara umum terdapat dua tipe metode untuk mencari solusi suatu sistem
persamaan linear, yaitu metode langsung dan tak langsung.
1. Metode langsung. Metode langsung terdiri dari metode eliminasi Gauss,
metode eliminasi Gauss-Jordan, metode matriks invers, aturan Cramer, dan
metode dekomposisi LU.
2. Metode tak langsung. Metode tak langsung disebut juga metode iterasi,
yang terdiri dari metode iterasi Jacobi dan metode iterasi Gauss-Seidel, di
62
Modul Metode Numerik
mana dalam metode iterasi ini harus diberikan nilai (solusi) awal. Teknik
iteratif jarang digunakan untuk menyelesaikan sistem persamaan linear (SPL)
berukuran kecil karena metode-metode langsung lebih efisien daripada
metode iteratif. Akan tetapi, untuk SPL berukuran besar, teknik iteratif lebih
efisien daripada metode langsung dalam hal penggunaan memori komputer
maupun waktu komputasi.
63
Modul Metode Numerik
di mana xi adalah variabel, dan aij dan bi adalah koefisien konstanta dengan
i, j 1,2,...n .
di mana
a11 a12 a1n
a a2 n
A aij 21
a22
an1 an 2 ann
64
Modul Metode Numerik
Grafik kedua persamaan ini merupakan garis lurus, misal l1 dan l2 . Karena suatu
titik (x, y) terletak pada garis tersebut jika hanya jika memenuhi persamaan yang
bersangkutan, maka solusi-solusi dari sistem persamaan tersebut adalah titik-titik
potong l1 dan l2 . Terdapat dua kemungkinan, yaitu:
(a) Garis l1 dan l2 berpotongan pada satu titik, akibatnya sistem hanya
memiliki tepat satu solusi.
(b) Garis l1 dan l2 sejajar, yang berarti kedua garis tidak berpotongan,
akibatnya sistem persamaan tidak memiliki solusi.
(c) Garis l1 dan l2 berhimpitan, yang berarti titik potongnya tak berhingga,
akibatnya sistem persamaan memiliki tak berhingga banyak solusi.
Tiga kemungkinan tersebut juga berlaku untuk sebarang sistem persamaan linear.
3 x y 13
Penyelesaian:
Kedua persamaan tersebut dapat diilustrasikan dengan perintah
x = 0:0.01:10;
y1 = (2/3)*x-5/3;
y2 = -3*x+13;
plot(x,y1,x,y2)
65
Modul Metode Numerik
15
2x-3y = 5
3x+y = 13
10
-5
-10
-15
-20
0 1 2 3 4 5 6 7 8 9 10
Gambar 3.1 menunjukkan bawah kedua garis memiliki satu titik potong, akibatnya
sistem persamaan linear memiliki satu solusi. Secara manual, solusi tersebut dapat
dicari dengan menggunakan substitusi atau eliminasi. Dengan menggunakan
Matlab, solusi sistem dapat dicari dengan perintah berikut.
[x,y] = solve('2*x - 3*y = 5',
'3*x + y = 13')
Maka diperoleh
x = 4
y = 1
2x 2 y 6
Penyelesaian:
Sistem persamaan dapat diilustrasikan dalam grafik berikut.
66
Modul Metode Numerik
4
x+y = 4
3.5 2x+2y = 6
2.5
1.5
0.5
-0.5
-1
0 0.5 1 1.5 2 2.5 3 3.5 4
Gambar 3.2 menunjukkan bahwa kedua garis sejajar, dan dengan perintah
[x,y] = solve('x + y = 4',
'3*x + 2*y = 6')
maka diperoleh
Warning: Explicit solution could
not be found.
x = [ empty sys ]
y = []
4x 4 y 6
Penyelesaian:
Sistem persamaan dapat diilustrasikan dalam grafik berikut.
67
Modul Metode Numerik
10
-2
0 1 2 3 4 5 6 7 8 9 10
Gambar 3.3 menunjukkan kedua garis saling berhimpitan, dan dengan perintah
[x,y] = solve('2x + 2y = 3',
'4*x + 4*y = 6')
maka diperoleh
x = y + 3/2
y = y
68
Modul Metode Numerik
( A1 A) x A1b
Jadi diperoleh solusi tunggal, yaitu x A1b . Namun, jika A adalah matriks
singular ( det( A) 0 ), maka SPL mempunyai dua kemungkinan, yaitu mempunyai
banyak tak hingga solusi atau tidak punya solusi.
2 x1 5 x2 3 x3 3
x1 8 x3 17
Penyelesaian:
Dalam bentuk matriks sistem tersebut dapat ditulis sebagai Ax b , di mana
1 2 3 x1 5
A 2 5
3 , x x2 , b 3
1 0 8 x3 17
atau x1 1 , x2 1 , dan x3 2 .
A = [1 2 3; 2 5 3; 1 0 8]
B = [A eye(3)]
C = rref(B)
69
Modul Metode Numerik
A =
1 2 3
2 5 3
1 0 8
B =
1 2 3 1 0 0
2 5 3 0 1 0
1 0 8 0 0 1
C =
1 0 0 -40 16 9
0 1 0 13 -5 -3
0 0 1 5 -2 -1
A = [1 2 3; 2 5 3; 1 0 8];
B = inv(A)
B =
-40 16 9
13 -5 -3
5 -2 -1
A = [1 2 3; 2 5 3; 1 0 8];
B = inv(A);
b = [5; 3; 17];
x = B*b
x =
1
-1
2
70
Modul Metode Numerik
Aturan Cramer adalah salah satu cara untuk mencari penyelesaian dari suatu sistem
persamaan linear (SPL) dengan menggunakan determinan. Aturan Cramer
dinyatakan dalam teorema berikut.
Teorema 3.4.1
Definisi 1.4.1
Jika Ax = b adalah suatu sistem persamaan linear (SPL) dengan n variabel dan
diketahui det(A) 0, maka penyelesaian dari SPL tersebut adalah
, , ... ,
di mana Aj adalah matriks yang diperoleh dari matriks A dengan mengganti
x1 + 2x2 + 3x3 = 14
x1 + 4x2 + 9x3 = 36
Teorema 2.2.1
Penyelesaian:
Sistem persamaan linear tersebut dapat diubah ke dalam bentuk persamaan matriks
1 1 1 x1 6
1 2 3
x = 14 .
2
1 4 9
x3 36
71
Modul Metode Numerik
det( A1 ) 2
x1 = 1,
det( A) 2
det( A2 ) 4
x2 = 2 , dan
det( A) 2
det( A3 ) 6
x3 = = 3.
det( A) 2
x =
1
2
3
72
Modul Metode Numerik
Contoh 3.5.1 Selesaikan sistem persamaan linear berikut ini dengan menggunakan
metode eliminasi Gauss
x1 2 x2 x3 6
x1 3 x2 2 x3 9
2 x1 x2 2 x3 12
Penyelesaian:
Matriks yang diperbesar untuk sistem persamaan linear tersebut adalah
1 2 1 6
1 3 2 9
2 1 2 12
1 2 1 6 B2 B1
1 2 1 6 B3 2 B1
1 2 1 6
1 9 0 3 0 3
3 2 ~ 1 1 ~ 1 1
2 1 2 12 2 1 2 12 0 3 0 0
1
B3 3 B 2
1 2 1 6 B 3
3
1 2 1 6
0 1 1 3 0 1 1 3
~ ~
0 0 3 9 0 0 1 3
x2 x3 3
x3 3
x2 3 3 , x2 0
x1 2.0 3 6 , x1 3
73
Modul Metode Numerik
B 2 B3
1 0 0 3
0 0
~ 1 0
0 0 1 3
Matriks eselon baris tereduksi diubah kembali menjadi sistem persamaan linear:
x1 3 , x2 0 , x3 3
Sistem persamaan linear dalam ukuran kecil masih dapat diselesaikan secara
manual. Namun dalam aplikasinya, seringkali kita menjumpai sistem persamaan
linear yang besar yang harus diselesaikan dengan komputer. Algoritma komputer
yang biasa digunakan untuk menyelesaikan sistem semacam ini didasarkan pada
eliminasi Gauss atau eliminasi Gauss-Jordan, tetapi prosedur dasarnya seringkali
dimodifikasi untuk menghadapi beberapa masalah, seperti
1. Mengurangi kesalahan pembulatan
2. Meminimalkan penggunaan memori komputer
3. Memaksimalkan penyelesaikan sistem persamaan linear
74
Modul Metode Numerik
Metode Jacobi dikenalkan oleh Carl Jacobi (1804 – 1851). Metode ini merupakan
suatu teknik penyelesaian sistem persamaan linear (SPL) berukuran n n . Dalam
menentukan penyelesaian sistem persamaan linear, metode Jacobi menggunakan
algoritma secara rekursif. Algoritma tersebut dilakukan sampai diperoleh suatu
nilai yang konvergen dengan nilai ketelitian (toleransi) yang diberikan. Perhatikan
sistem persamaan linear dengan n persamaan dengan n variabel x1 , x2 ,..., xn
berikut.
a11 x1 a12 x2 ... a1n xn b1
a21 x1 a22 x2 ... a 2 n xn b2
(3.6)
an1 x1 a2 x2 ... ann xn bn
75
Modul Metode Numerik
1 n
a
( k 1) (k )
xi bi ij xj , i 1,2,..., n , k 0,1,2,... (3.10)
aii j 1, j i
Untuk menyelesaikan sistem persamaan linear dengan metode Jacobi diperlukan
suatu nilai titik (pendekatan) awal, yaitu x ( 0 ) . Nilai x ( 0 ) biasanya tidak diketahui
dan dipilih x ( 0 ) 0 .
e(3) Ge( 2) G (G 2e ( 0) ) G 3e ( 0 )
e ( k ) G k e ( 0) (3.14)
Pada persamaan (3.14), tampak bahwa e( k ) 0 untuk k jika dan hanya jika
G k 0 untuk k . Dengan mengambil norm persamaan (3.13) diperoleh
e ( k ) G k e( 0 ) G k . e ( 0)
76
Modul Metode Numerik
0 aa12 aa1n
a21 11
a2 n
11
a22 0 a22 .
G
a an 2
ann ann 0
n1
atau dengan kata lain syarat cukup agar metode Jacobi konvergen adalah
n aij
j 1, j i aii
1 , i 1,2,..., n .
Sebuah mtriks yang memenuhi kondisi (3.15) disebut sebagai matriks yang
dominan secara diagonal (strictly diagonally dominant). Jadi, metode Jacobi akan
konvergen jika matriks koefisien dominan secara diagonal.
77
Modul Metode Numerik
Contoh 2.8.1 Tuliskan dua iterasi metode Jacobi dengan titik awal x ( 0 ) 0 dari
sistem persamaan linear berikut.
3 x1 x2 x3 6
x1 4 x2 x3 8
78
Modul Metode Numerik
x1 2 x2 4 x3 9
Penyelesaian:
Dari baris pertama, kedua, dan baris ketiga berturut-turut diperoleh
x1 1
3
6 x2 x3
x2 1
4
8 x1 x3
x3 14 9 x1 2 x2
Dengan demikian, prosedur iterasi metode Jacobi adalah
x1
( k 1)
13 6 x2 x3
(k ) (k )
8 x x
( k 1) 1 (k ) (k )
x2 4 1 3
9 x 2 x
( k 1) 1 (k ) (k )
x3 4 1 2
dengan k 0,1,2,... .
Diketahui titik awal x ( 0 ) 0 , sehingga untuk k 0 diperoleh
(1)
x1 13 6 x2 x3
(0) (0)
13 (6 0 0)
2
(1)
x2 14 8 x1 x3
( 0) (0)
14 (8 0 0)
2
(1)
x3 14 9 x1 2 x2 (0) ( 0)
14 9 0 2(0)
94
dan untuk k 1 diperoleh
( 2)
x1 13 6 x2 x3
(1) (1)
79
Modul Metode Numerik
13 6 2 94
7
12
x2
( 2)
(1)
14 8 x1 x3
(1)
14 8 2 94
33
16
x3
( 2)
14 9 x1 2 x2
(1) (1)
14 9 2 2(2)
34
Contoh 2.8.2 Tentukan solusi hampiran dari sistem persamaan linear pada Contoh
2.8.1 dengan metode Jacobi, dengan titik awal x ( 0 ) 0 dan nilai ketelitian
(toleransi) sebesar 5 1011 .
Penyelesaian:
Solusi hampiran dapat dicari dengan menggunakan perintah berikut ini.
%Matriks koefisien
A=[3 1 -1;1 4 1;1 2 -4];
%Elemen matriks b
b=[6;8;9];
%Titik awal
x0=[0;0;0];
disp(' METODE JACOBI ')
disp(' ====================================')
eps = input('Masukkan nilai ketelitian : ');
itemax = input('Masukkan jumlah iterasi maksimum : ');
disp(' ')
disp(' Memulai Proses Iterasi ')
disp(' ====================================')
disp(' k x1 x2 x3 ')
n = length(b);
x1 = x0 ;
format short
for k=1:1:itemax,
80
Modul Metode Numerik
for i=1:n,
S=b(i)-A(i,1:i-1)*x0(1:i-1)-A(i,i+1:n)*x0(i+1:n);
x1(i)=S/A(i,i);
end
g=abs(x1-x0);
err=norm(g);
relerr=err/(norm(x1));
disp([k, x1'])
x0=x1;
if(err<eps)|(relerr<eps),
break,
end
end
Sehingga diperoleh
METODE JACOBI
====================================
Masukkan nilai ketelitian : 0.00000000005
Masukkan jumlah iterasi maksimum : 25
81
Modul Metode Numerik
Metode Gauss-Seidel dikenalkan oleh Johann Carl Friedrich Gauss (1777 – 1855)
dan Philipp Ludwig von Seidel (1821 – 1896). Metode Gauss-Seidel pada
( k 1)
prinsipnya hampir sama dengan metode Jacobi. Pada metode Jacobi, xi
dihitung dari x1( k ) , x2( k ) ,..., xn( k ) , tetapi nilai estimasi baru dari
x1( k 1) , x2( k 1) ,..., xi(k11) sudah dihitung. Dalam metode Gauss-Seidel, nilai estimasi
atau
n
aii x1 a
j 1, j i
ij x j bi
atau
1 n
xi
aii
bi a ij xj
j 1, j i
atau
1 i 1 n
xi bi aij x j a ij xj .
aii j 1 j i 1
( k 1)
Karena nilai estimasi baru x1 , x2( k 1) ,..., xi(k11) digunakan dalam perhitungan,
82
Modul Metode Numerik
4. Untuk i 1,2,..., n
x[i ] xbaru[i ]
5. Jika error < eps maka ‘selesai’
6. iter = iter + 1
7. Jika iter > itemax
maka ‘proses belum konvergen’, stop
8. Kembali ke langkah 2
83
Modul Metode Numerik
Contoh 2.9.1 Tuliskan dua iterasi metode Gauss-Seidel dengan titik awal x ( 0 ) 0
dari sistem persamaan linear berikut.
3 x1 x2 x3 6
x1 4 x2 x3 8
x1 2 x2 4 x3 9
Penyelesaian:
Dari baris pertama, kedua, dan baris ketiga berturut-turut diperoleh
x1 1
3
6 x2 x3
x2 1
4
8 x1 x3
x3 14 9 x1 2 x2
Dengan demikian, prosedur iterasi metode Gauss-Seidel adalah
x1
( k 1)
13 6 x2 x3
(k ) (k )
x2
( k 1)
14 8 x1
( k 1)
x3
(k )
x3
( k 1)
14 9 x1 ( k 1)
2 x2
( k 1)
dengan k 0,1,2,... .
Karena diambil titik awal x ( 0 ) 0 , maka untuk k 0 diperoleh
(1)
x1 13 6 x2 x3 ( 0) (0)
13 (6 0 0)
2
(1)
x2 14 8 x1 x3 (1) (0)
14 (8 2 0)
3
2
(1)
x3 14 9 x1 2 x2 (1) (1)
14 9 2 2( 32 )
1
84
Modul Metode Numerik
x2
( 2)
14 8 x1 x3
( 2) (1)
14 8 76 1
47
24
x3
( 2)
( 2)
14 9 x1 2 x2
( 2)
14 9 76 2( 47
24
)
47
48
Contoh 2.9.2 Tentukan solusi hampiran dari sistem persamaan linear pada Contoh
2.9.1 dengan metode Gauss-Seidel, dengan titik awal x ( 0) 0 dan nilai ketelitian
(toleransi) sebesar 5 1011 .
Penyelesaian:
Solusi hampiran dapat dicari dengan menggunakan perintah berikut ini.
%Matriks koefisien
A=[3 1 -1;1 4 1;1 2 -4];
%Elemen matriks b
b=[6;8;9];
%Titik awal
x0=[0;0;0];
disp(' METODE GAUSS-SEIDEL ')
disp(' ====================================')
eps = input('Masukkan nilai ketelitian : ');
itemax = input('Masukkan jumlah iterasi maksimum : ');
disp(' ')
disp(' Memulai Proses Iterasi ')
disp(' ====================================')
disp(' k x1 x2 x3 ')
n = length(b);
x1 = x0 ;
format short
for k=1:1:itemax,
85
Modul Metode Numerik
for i=1:n,
S=b(i)-A(i,1:i-1)*x1(1:i-1)-A(i,i+1:n)*x0(i+1:n);
x1(i)=S/A(i,i);
end
g=abs(x1-x0);
err=norm(g);
relerr=err/(norm(x1));
disp([k, x1'])
x0=x1;
if(err<eps)|(relerr<eps),
break,
end
end
Sehingga diperoleh
METODE GAUSS-SEIDEL
====================================
Masukkan nilai ketelitian : 0.00000000005
Masukkan jumlah iterasi maksimum : 20
Dari hasil tersebut, terlihat bahwa dengan metode Gauss-Seidel hanya dibutuhkan
14 iterasi untuk memperoleh solusi hampiran x1 1 , x2 2 , dan x3 1 .
Sedangkan metode Jacobi membutuhkan 23 iterasi. Dengan demikian, metode
Gauss-Seidel memiliki konvergensi lebih cepat daripada metode Jacobi.
86
Modul Metode Numerik
EVALUASI
2 x1 5 x2 x3 1
2 x1 x2 4 x3 6
b. 3 x1 x2 x3 3
x1 5 x2 2 x3 0
2 x1 2 x2 5 x3 1
87
Modul Metode Numerik
BAB IV
Pengantar
Data yang sering dijumpai di lapangan oleh ahli ilmu alam atau rekayasawan sering
dalam bentuk data diskrit, yang umumnya disajikan dalam bentuk tabel. Sebagai
contoh, berikut ini adalah data suhu kota Padang pada suatu hari.
Pukul 1 2 3 4 5 6 7 8 9 10 11 12
Suhu
19 17 18 20 21 24 27 29 32 31 33 34
(dalam oC)
Masalah yang sering dijumpai terhadap data tersebut adalah menentukan suatu nilai
di antara titik-titik tersebut, tanpa melakukan pengukuran lagi. Misalkan kita ingin
88
Modul Metode Numerik
mengetahui berapa suhu kota Padang pada pukul 1 lebih 30 menit? Pertanyaan ini
tidak dapat terjawab secara langsung, karena fungsi yang menghubungkan antara
variabel waktu dan suhu tidak diketahui. Salah satu solusinya adalah dengan
mencari fungsi yang mencocokkan (fit) titik-titik dalam tabel tersebut. Pendekatan
semacam ini disebut pencocokan kurva (curve fitting) dan fungsi yang diperoleh
dengan pendekatan ini merupakan fungsi hampiran, sehingga nilai fungsi yang
diperoleh juga merupakan nilai hampiran. Meskipun demikian, cara pendekatan ini
dalam praktek sudah mencukupi, karena rumus yang menghubungkan dua variabel
atau dua besaran seringkali sulit ditemukan.
Pencocokkan kurva adalah sebuah metode yang mencocokkan titik data
dengan sebuah kurva fungsi. Hal ini dibedakan menjadi dua metode, yaitu
5. Regresi
Data hasil pengukuran umumnya mengandung error yang cukup berarti,
karena data ini tidak terlalu teliti, maka kurva yang mencocokan titik –titik data itu
tidak perlu melalui semua titik. Strategi yang digunakan adalah menentukan kurva
yang mewakili kecenderungan titik data, yakni kurva mengikuti pola titik sebagai
kelompok. Perhatikan gambar berikut ini.
89
Modul Metode Numerik
Kurva tersebut dibuat sedemikian sehingga selisih antara titik data dengan
titik hampirannya di kurva sekecil mungkin. Metode pencocokkan kurva seperti ini
dinamakan regresi kuadrat terkecil (least square regression). Error yang timbul,
mungkin disebabkan oleh kesalahan pengukuran, ketidaktelitian alat ukur yang
digunakan atau karena sifat sistem yang diukur.
6. Interpolasi
Jika data yang diketahui mempunyai ketelitian yang sangat tinggi, maka
kurva cocokannya dibuat melalui setiap titik dalam data. Metode seperti ini
dinamakan interpolasi titik-titik data dengan sebuah fungsi. Perhatikan gambar
berikut ini.
y
90
Modul Metode Numerik
( x4 , y41 )
( x1 , y1 )
( a, pn ( a ))
( x3 , y3 ) ( xn , y n )
( xn 1 , yn 1 )
( x0 , y0 ) ( a, pn ( a ))
( x2 , y 2 )
x0 xa xn x a
91
Modul Metode Numerik
Interpolasi linear adalah interpolasi dua buah titik dengan sebuah garis
lurus. Misalkan dua buah titik, ( x0 , y 0 ) dan ( x1 , y1 ) . Polinom yang menginter-
polasi kedua titik tesebut adalah sebuah persamaan garis lurus yang berbentuk
p1 ( x ) a 0 a1 x (4.1)
dengan a0 dan a1 adalah koefisien konstan. Garis yang menginterpolasi titik-titik
( x 0 , y 0 ) dan ( x1 , y1 ) dapat diilustrasikan sebagai berikut.
y
( x1 , y1 )
( x0 , y0 )
x
x0 x1
92
Modul Metode Numerik
y1 a 0 a1 x1
dan
y1 y 0
a1 (4.3)
x1 x 0
93
Modul Metode Numerik
Contoh 4.1.1 Perkirakan jumlah penduduk Amerika Serikat (dalam jutaan) pada
tahun 1968 berdasarkan data pada table berikut.
Penyelesaian:
Misal x 0 1960 , y0 179.3 dan x1 1970 , y1 203.2 . Dengan
menggunakan persamaan (4.5), maka diperoleh
(203.2 179.3)(1968 1960)
p1 (1968) 179.3
1970 1960
198.4
Jadi taksiran jumlah penduduk AS pada tahun 1968 adalah 198.4 juta.
Contoh 4.1.2 Dari data, diketahui bahwa ln(9.0) = 2.1972 dan ln(9.5) = 2.2513.
Tentukan nilai ln(9.2) dengan interpolasi linear sampai 5 angka dibelakang koma.
Bandingkan hasilnya dengan nilai eksaknya, yaitu ln(9.2)= 2.2192.
Penyelesaian:
Misal x0 9.0 , y0 2.1972 dan x1 9.5 , y1 2.2513 . Dengan
menggunakan persamaan (4.5), maka diperoleh
( 2.2513 2.1972)(9.2 9.0)
p1 (9.2) 2.1972
9.5 9.0
2.2188
Karena nilai eksak ln(9,2) = 2,2192, sehingga
Error = 2.2192-2.2188
= 0.0004.
Dari hasil tersebut terlihat bahwa interpolasi linear tidak cukup untuk memperoleh
ketelitian sampai 5 angka signifikan, hanya sampai 3 angka signifikan.
94
Modul Metode Numerik
( x1 , y1 )
( x0 , y0 )
( x2 , y 2 )
a 0 a1 x1 a 2 x12 y1 (4.7)
a 0 a1 x 2 a 2 x 22 y 2
95
Modul Metode Numerik
Contoh 4.1.3 Diberikan titik data ln(8.0) = 2.0794, ln(9.0) = 2.1972, dan ln(9.5) =
2.2513. Tentukan nilai ln(9.2) dengan interpolasi kuadratik.
Penyelesaian:
Misal x0 8.0 , y0 2.0794 , x1 9.0 , y1 2.1972 , dan x2 9.5 ,
y2 2.2513 . Dengan menggunakan persamaan (4.6), maka diperoleh
a 0 8,0a1 64,00a 2 2,0794
Jadi diperoleh p2 (9.2) 2.2192 . Hasil perhitungan ini sama dengan nilai
eksaknya, yaitu sampai 5 angka signifikan.
y
( x1 , y1 )
( x4 , y4 )
96
Modul Metode Numerik
( x0 , y0 )
( x2 , y 2 )
x
a 0 a1 x 2 a 2 x 22 a3 x 23 y 2 (4.9)
a0 a1 x3 a 2 x32 a3 x33 y 3
97
Modul Metode Numerik
a0 a1 x 2 a 2 x 22 a3 x 23 ... a n x 2n y 2 (4.11)
… … …. ….. … … .
a 0 a1 x n a 2 x n2 a3 x n3 ... a a x nn y n .
Contoh yang sederhana dalam interpolasi adalah plot Matlab. Matlab secara
otomatis akan menggambar garis lurus yang menghubungkan titik-titik data.
Interpolasi ini dikatakan linear dan memperkirakan bahwa nilai-nilai antara berada
pada garis lurus tersebut. Jelas bahwa ketika jumlah data semakin banyak dan jarak
masing-masing titik semakin kecil, maka tingkat akurasi dari interpolasi akan
semakin tinggi.
x1 = linspace(0,2*pi,5);
x2 = linspace(0,2*pi,50);
plot(x1,sin(x1),x2,sin(x2));
grid on
98
Modul Metode Numerik
0.8
0.6
0.4
0.2
-0.2
-0.4
-0.6
-0.8
-1
0 1 2 3 4 5 6 7
Dari dua grafik sinus di atas, jelas bahwa yang diplot dengan jumlah titik sebanyak
50 data memiliki tingkat akurasi yang lebih tinggi daripada 5 data, sehingga untuk
mengestimasi nilai-nilai fungsi di antara titik-titik yang sudah diketahui juga akan
semakin mendekati kebenaran. Sebagai ilustrasi, perhatikan contoh berikut.
Pukul 1 2 3 4 5 6 7 8 9 10 11 12
Suhu
19 17 18 20 21 24 27 29 32 31 33 34
(dalam oC)
Data di atas dapat disimpan dalam Matlab dengan dua variabel, yaitu waktu dan
suhu, dengan perintah
waktu = 1:12;
suhu = [19 17 18 20 21 24 27 29 32 31
33 34];
plot(waktu,suhu,waktu,suhu,'+')
title('Suhu di Kota Padang')
xlabel('Waktu'), ylabel('Derajat 99
Celcius')
grid on
Modul Metode Numerik
32
30
28
Derajat Celcius
26
24
22
20
18
16
0 2 4 6 8 10 12
Waktu
100
Modul Metode Numerik
waktu = 1:12;
suhu = [19 17 18 20 21 24 27 29 32 31
33 34];
t1 = interp1(waktu,suhu,4.25)
t2 = interp1(waktu,suhu,9.5)
dengan t1 dan t2 berturut-turut adalah perkiraan suhu pada pukul 4 lewat 15 menit
dan pukul 9 lewat 30 menit. Jika perintah di atas dijalankan, maka diperoleh
t1 =
20.2500
t2 =
31.5000
Jadi, dperoleh suhu pada pukul 04.15 sebesar 20.25oC dan suhu pada pukul 09.30
sebesar 31.5oC.
Fungsi interp1 yang digambarkan dalam interp1( x, y , x0 ), di mana x adalah
variabel bebas, y adalah variabel terikat, dan x0 adalah array dari nilai yang akan
diinterpolasi. Penggunaan interpolasi ini disebut linear interpolasi.
101
Modul Metode Numerik
Contoh 4.2.3 Akan diperkirakan suhu pada pukul 5 lewat 15 menit dengan
interpolasi kubik, maka dapat digunakan perintah
waktu = 1:12;
suhu = [19 17 18 20 21 24 27 29 32 31
33 34];
t = interp1(waktu,suhu,4.25,’spline’)
Sehingga diperoleh
t =
20.2559
4.3 Regresi
102
Modul Metode Numerik
x 1 2 3 4 5 6 7 8 9 10
Jika melihat sebaran data, maka best fit dapat dilihat dengan perintah ‘polyfit’
x = [1 2 3 4 5 6 7 8 9 10];
y = [1 1.44 1.49 2.33 2.78 3.22
3.67 4.11 4.56 5];
polyfit(x,y,2)
Sehingga diperoleh
ans =
0.0015 0.4403 0.4800
Perintah polyfit(x, y, 2) menggambarkan best fit untuk sebaran data x dan y, dan
polinomial 0.0015 x 2 0.4403x 0.48 adalah fungsi yang paling mendekati
pasangan sebaran data yang diberikan.
EVALUASI
103
Modul Metode Numerik
x 2 169
Daftar Pustaka
104
Modul Metode Numerik
Faires and Burden. 2002. Numerical Method, Third Edition. Brooks Cole.
Yang, W. Y. 2005. Applied Numerical Methods Using Matlab. A John Wiley &
Sons, Inc.
105