Anda di halaman 1dari 98

Diktat MA3171 Matematika Numerik 1

Daftar Isi
1 Pendahuluan 1

2 Penyelesaian Persamaan Tak Linear 8


2.1 Metode Bagi Dua . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.2 Metode Posisi Palsu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.3 Masalah Tebakan Awal / Lokalisasi Akar . . . . . . . . . . . . . . . . . . . . 14
2.3.1 Lokalisasi Akar Polinom . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.4 Metode Modifikasi Posisi Palsu . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.5 Metode Newton-Raphson . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.6 Metode Tali Busur / Sekan . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.7 Perbandingan antara metode Pengurung dan Terbuka . . . . . . . . . . . . . 27
2.8 Modifikasi Metode Newton untuk Polinom . . . . . . . . . . . . . . . . . . . 27

3 Matriks dan Sistem Persamaan Linear 30


3.1 Bentuk-Bentuk Matriks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
3.2 Sistem Persamaan Linear (SPL) . . . . . . . . . . . . . . . . . . . . . . . . . 30
3.3 Sistem Persamaan Linear Segitiga Atas dan Bawah . . . . . . . . . . . . . . 31
3.4 Metode Eliminasi Gauss . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
3.5 Teknik Penumpuan pada Eliminasi Gauss . . . . . . . . . . . . . . . . . . . 38
3.6 Beberapa SPL dengan matriks koefisien sama . . . . . . . . . . . . . . . . . 41
3.7 Perhitungan Determinan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3.8 Perhitungan Invers Matriks . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
3.9 Modifikasi Elimninasi Gauss untuk SPL Tridiagonal . . . . . . . . . . . . . . 46
3.10 Dekomposisi / Faktorisasi Segitiga . . . . . . . . . . . . . . . . . . . . . . . 48
3.10.1 Decomposisi Doolitle . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
3.10.2 Decomposisi Crout . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
3.10.3 Decomposisi Cholesky . . . . . . . . . . . . . . . . . . . . . . . . . . 49
3.11 Metode Iterasi untuk menyelesaikan SPL . . . . . . . . . . . . . . . . . . . . 50
3.11.1 Metode Jacobi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
3.11.2 Metode Gauss Seidel . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

4 Pencocokan Kurva / Curve Fitting 57


4.1 Regresi Kuadrat Terkecil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
4.2 Regresi Polinom . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
4.3 Polinom Interpolasi Lagrange . . . . . . . . . . . . . . . . . . . . . . . . . . 68
4.4 Polinom Interpolasi (Beda Terbagi) Newton . . . . . . . . . . . . . . . . . . 72

6 Hampiran Turunan 1

7 Pengintegralan Numerik 5

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


MA-3171 : Metode Numerik (4 kredit)
1. Buku Rujukan
Numerical Methods for Mathematics, Science and Engineering, 2nd ed., John H.
Matthews, Prentice-Hall, 1992.

2. Bahan Perkuliahan
a. Pendahuluan (Bab 1)
b. Solusi Persamaan Tak Linear (Bab 2.1 s/d 2.4)
c. Solusi Sistem Persamaan Linear (Bab 3.3 s/d 3.7)
d. Pencocokan Kurva dengan Metode Interpolasi (Bab 4.2 s/d Bab 4.4)
e. Pencocockan Kurva dengan Metode Regresi (Bab 5.1 dan 5.2)
f. Hampiran Turunan (Bab 6)
g. Pengintegralan Numerik (Bab 7.1 s/d 7.4)
h. Solusi Persamaan Diferensial secara Numerik (Bab 9)
i. Masalah Nilai Karakteristik (Bab 11.1 s/d 11.2)

3. Perkuliahan
Tatap muka di kelas : 2 x 2 jam / minggu
Praktikum : 1 x 2 jam / minggu (kira-kira 10 - 11 kali)
Selama perkuliahan mahasiswa wajib membawa scientific calculator.

4. Penilaian
a. Test sebanyak dua kali (close book), bobot masing-masing : 45%
b. Praktikum : 10%

5. Kehadiran
Kehadiran perkuliahan, min 80%.
Keterlambatan masuk kuliah < 10 menit dari jadwal yang ditentukan.
Diktat MA3171 Matematika Numerik 1

1 Pendahuluan
Metode Numerik adalah metode/teknik/skema/prosedur yang diterapkan untuk memec-
ahkan masalah-masalah matematika memakai tatacara aproksimasi tertentu agar dapat dis-
elesaikan dengan hitungan yang sederhana.

Alasan pemakaian metode numerik:

a. Permasalahan sukar untuk diselesaikan secara analitik.


Contoh:
1. Tentukan nilai dari sin(3)
2. Tentukan akar dari f (x) = x2 + cos(x) ln(x)
R5 p
3. Tentukan 1 esin(x) tan( x2 + cos(x)) dx

a. Permasalahan Menyangkut Hitungan yang sangat besar.


Contoh:
1. Sistem Persamaan Linear (SPL) berukuran besar.
2. Penghampirasn suatu solusi dengan metode iteratif.

Karakteristik dari Metode Numerik:

a. Mencakup sejumlah besar perhitungan yang bentuknya serupa.


b. Memerlukan alat bantu komputer.
c. Kalkulator dipakai untuk membantu memahami proses perhitungan suatu metode.
d. Penyelesaian yang diperoleh selalu berupa hampiran (sangat jarang sekali diper-
oleh nilai eksak, kecuali masalahnya istimewa).

Tahap-tahap Penyelesaian Masalah Secara Numerik:

a. Pemodelan, yaitu memformulasikan masalah fisik menjadi masalah matematika.


Contoh: model pertumbuhan bakteri y ′ = ky.
b. Pemilihan metode numerik untuk menyelesaikan permasalahan matematika.
c. Pemrograman: Pembuatan algoritma dan proses koding.
d. Penafsiran hasil.

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 2

Pada kuliah ini, yang akan dipelajari adalah tahap (b), (c) dan (d). Tahap (a) diberikan
secara terpisah pada mata kuliah khusus mengenai pemodelan matematika.

Review Algoritma
Algoritma adalah prosedur/perintah yang terdiri dari serangkaian berhingga operasi yang
mempunyai arti tunggal yang dipakai untuk menyelesaikan sebuah masalah.

Karakteristik Sebuah Algoritma

a. Tiap langkah harus didefinisikan dengan persis sehingga mempunyai arti yang jelas
dan maksud yang tunggal.
b. Harus sampai pada solusi/penyelesaian dari masalah setelah berhingga langkah.
c. Bersifat umum, misalnya algoritma untuk penyelesaian sebuah SPL harus dapat
dipakai untuk SPL ukuran berapapun.

Penulisan Algoritma

a. Flow Chart / Diagram Alir


Algoritma dituliskan dalam bentuk diagram yang menggunakan simbol-simbol ter-
tentu yang artinya sudah distandardkan. Aliran perintah digambarkan dengan
garis dan anak panah dari satu simbol ke simbol lainnya. Penulisan dengan cara ini
sudah mulai ditinggalkan karena menimbulkan kerumitan dan panjang. Diagram
alir biasanya hanya dipakai untuk menggambarkan garis besar dari algoritma.
b. Pseudo Code / Kode Semu
Algoritma ditulis memakai kalimat-kaliamat biasa. Kalimat-kalimat yang dipakai
biasanya dibakukan dan sudah dekat dengan sintaks dari bahasa pemrograman
komputer.

Komponen-Komponen Algoritma

a. Masukan / Input
Berupa data-data yang diperlukan untuk melakukan perhitungan yang akan menye-
lesaikan masalah.
b. Keluaran / Output
Data-data yang ingin dihasilkan dari perhitungan algoritma.
c. Langkah-Langkah
Perintah-perintah dan perhitungan-perhitungan yang dijalankan algoritma untuk
menyelesaikan masalah.

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 3

Contoh-contoh Algoritma

1. Diberikan suatu vektor ~a dengan n elemen


P yang berisikan bilangan-bilangan real.
Algoritma berikut ini menghitung D = ni=1 ai .

Masukan: n ukuran vektor


a[i], i := 1, 2, ..., n isi vektor
Keluaran: D
Langkah-Langkah:
1. D := 0
2. Untuk i := 1, 2, .., n
D := D + a[i]

2. Diberikan koefisien dari persamaan kuadrat ax2 + bx + c = 0. Algoritma berikut


menghitung akar-akar dari persamaan tersebut. Dalam hal akarnya real, hasil dis-
impan di variabel x1 dan x2. Bila akarnya kompleks, hasil disimpan di variabel re
(bagian real) dan im (bagian imaginer).

Masukan: a, b, c koefisien polinom


Keluaran: x1, x2 atau re, im
Langkah-Langkah:
1. D := b*b - 4*a*c
2. pembagi := 2*a
3. Jika D >= 0
maka x1 := (-b + sqrt(D)) / pembagi
x2 := (-b - sqrt(D)) / pembagi
jika tidak
re := -b / pembagi
im := sqrt(-D) / pembagi

Latihan: Tuliskan algoritma untuk menentukan apakah sebuah bilangan bulat termasuk
bilangan prima atau bukan.

Galat/Error
Galat adalah perbedaan nilai dari suatu besaran anatara nilai eksak dengan nilai hampiran-
nya.

E = x - x∗
x adalah nilai eksak dari besaran.
Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014
Diktat MA3171 Matematika Numerik 4

x∗ adalah nilai hampirannya.


E disebut galat mutlak/absolut dari x.
Selain galat mutlak, pada metode numerik didefinisikan galat yang lain, yaitu galat relatif.
Bentuknya:

e = (x - x∗) / x
Galat relatif hanya dapat digunakan bila nilai eksak dari besaran yang dilibatkan bukan nol.
Dalam hal |E| << X, galat relatif sering dihampiri dengan
e = (x - x∗) / x∗
Pertanyaan: Mana yang lebih baik untuk pengukuran gala, apakah galat absolut atau galat
relatif ? Untuk mendapatkan jawabannya, perhatikan tiga ilustrasi berikut ini:

1. x = 3, 141592 dan x∗ = 3.14


Ex = x − x∗ = 0, 001592
x−x∗
ex = x
= 0, 000507

2. y = 2.000.000 dan y ∗ = 2.000.004


Ey = y − y ∗ = −4
y−y∗
ey = y
= 0, 000002

3. z = 0, 000012 dan z ∗ = 0, 000015


Ez = z − z ∗ = −0, 000003
z−z ∗
ez = z
= 0, 25

Dari tiga ilustrasi tersebut, kesimpulan apa yang dapat diperoleh ?

Pada metode numerik, ada dua sumber galat yang selalu dihadapi, yaitu galat pemotongan
dan galat pembulatan.

Galat Pemotongan adalah galat yang timbul akibat pemotongan rumus matematika ter-
tentu untuk menghampiri suatu besaran.

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 5

Sebagai ilustrasi, misalkan kita ingin menghitung nilai sin(0, 1) memakai hampiran deret
3 5 7 9
Mc Laurin. Dari Kalkulus diketahui sin(x) = x − x3! + x5! − x7! + x9! − · · ·. Algoritma yang
dikonstruksi untuk menghitung nilai sin(0, 1) tidak dapat menghitung seluruh suku di ruas
kanan dari deret tersebut, sebab hitungan dalam suatu algoritma harus berhingga. Jadi
biasanya ruas kanan dari deret tersebut diaproksimasi sampai sejumlah suku tertentu saja,
5
misalnya hanya sampai suku x5! . Dengan demikian diperoleh hasil:
0,13 0,15
sin(0, 1) ≈ 0, 1 − 3!
+ 5!

dengan galat pemotongan sebesar


7 0,19
− 0,1
7!
+ 9!
−···

Galat Pembulatan Galat pembulatan adalah galat yang timbul akibat pembulatan bilan-
gan. Biasanya pembulatan ini terjadi karena adanya keterbatasan pada alat hitung yang
kita pakai. Untuk memahami galat pembulatan ini, berikut dijelaskan representasi sebuah
bilangan di dalam komputer/kalkulator.

Di dalam komputer/kalkulator, sebuah bilangan disimpan dalam memori menggunakan basis


bilangan biner. Basis ini dipilih karena sebuah komputer/kalkulator digital bekerja atas
dasar ada arus (digit 1) dan tidak ada arus (digit nol). Namun untuk memahami adanya
galat pembulatan, kita pandang bahwa bilangan tersebut masih dalam basis desimal. Sebuah
bilangan real dalam komputer direpresentasikan sebagai berikut:

0, xxxxxxxxxxEyy

Bagian di sebelah kiri huruf E disebut bagian mantisa, sedangkan di kanan E disebut ek-
sponen. Sebagai contoh bilangan 0, 45627E − 5 mempunyai nilai 0, 45627 × 10−5 . Karena
keterbatasan memori pada komputer, panjang suatu mantisa pada tiap bahasa pemrogra-
man dibatasi. Bila sebuah bilangan memiliki mantisa yang lebih panjang dari kemam-
puan komputer tersebut, maka mantisa tersebut akan dipotong/dibulatkan sampai sejumlah
maksimum yang dapat disimpan oleh komputer tersebut. Sebagai contoh, misalkan kita
menggunakan komputer dengan kemampuan menyimpan 5 angka desimal. Bila kita ingin
menyimpan bilangan 32 = 0, 6666666 · · ·, maka dalam komputer bilangan tersebut akan dis-
impan menjadi 0, 66667. Jadi disini terjadi galat pembulatan.

Galat pembulatan biasanya akan merambat terus selama kita melakukan operasi perhitungan
dalam komputer. Berikut ini disajikan perambatan galat akibat proses operasi aljabar.
Misalkan: x dan y dua buah besaran eksak dan nilai hampirannya x∗ dan y ∗. Dari definisi
galat, Ex = x − x∗ dan Ey = y − y ∗ . Bila kita melakukan operasi aljabar pada bilangan
tersebut maka:

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 6

Ex+y = Ex + Ey

Ex−y = Ex − Ey

exy = ex + ey

ex/y = ex − ey

Latihan: Coba anda buktikan rumus ke (1) dan ke (3).

Galat pembulatan yang terjadi dalam suatu perhitungan rumus, kadang-kadang dapat diperke-
cil dengan cara mengubah urtan perhitungan dalam rumus tersebut. Sebagai ilustrasi, per-
hatikan perhitungan berikut:
√ √
f (x) = x( x + 1 − x)

Misalkan kita ingin menghitung nilai f (500) menggunakan komputer dengan ketelitian 6
angka desimal.
√ √
f (500) = 500 ( 501 − 500) = 500 (22, 3630 − 22, 3607) = 500 (0, 02230) = 11, 1500

Sekarang, f(x) akan kita tulis dalam bentuk lain yaitu:


x
g(x) = √ √
x+1+ x

Secara metematika, f(x) dan g(x) adalah sama, tunjukkan !

500 500 500


g(500) = √ √ = = = 11, 1748
501 + 500 22, 3630 + 22, 3607 44, 7437

Nilai eksaknya f (500) = g(500) = 11, 174755300747198

Dari ilustrasi di atas terlihat bahwa rumus yang secara matematika sama, bila dihitung den-
gan komputer hasilnya berbeda.

Dari hitungan di atas diperoleh satu kesimpulan yaitu operasi pengurangan dua buah
bilangan yang nilainya hampir sama akan menyebabkan galat yang besar.

Hitungan Langsung dan Tak Langsung Dalam metode numerik, secara umum dikenal
metode hitungan langsung dan tak langsung. Yang dimaksud dengan hitungan langsung

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 7

adalah proses pencarian solusi dengan menggunakan rumus-rumus yang ada untuk dapat
sampai pada penyelesaiannya. Sebagai ilustrasi, perhatikan sistem persamaan linear (SPL)
berikut.

5x + 2y = 7
x + 3y = 4

Dengan hitungan langsung, solusinya dapat dihitung memakai rumus:

7 2
4 3 21 − 8 13
x= = = =1
5 2 15 − 2 13
1 3

Pada hitungan Tak Langsung (metode iteratif), mula-mula solusinya ditebak dahulu,
sebut x0 = 0 dan y0 = 1. Selanjutnya kita turunkan rumus iterasinya, didasarkan pada
persamaan semula.

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 8

2 Penyelesaian Persamaan Tak Linear


Perhatikan suatu persamaan berbentuk g(x) = h(x) dengan g(x) dan h(x) merupakan ek-
spresi dalam x ∈ R. Bilangan real x0 dinamakan penyelesaian dari persamaan tersebut
bila memenuhi hubungan g(x0 ) = h(x0 ). Untuk kasus g(x) dan h(x) berupa ekspresi lin-
ear (polinom derajat satu), maka penyelesaiannya dapat dilakukan secara analitis dengan
mudah. Dalam kasus umum dimana g(x) atau h(x) merupakan ekspresi yang rumit, pen-
carian√penyelesaian secara analitis sukar dilakukan. Sebagai ilustrasi misalnya persamaan
x2 + x = ex .

Pada pasal ini kita akan membahas beberapa metode numerik untuk menyelesaikan su-
atu persamaan, khususnya persamaan tak linear. Untuk menyelesaikan suatu persamaan
berbentuk g(x) = h(x), langkah pertama yang kita lakukan adalah mengubah bentuk terse-
but menjadi g(x) − h(x) = 0. Sebut f (x) = g(x) − h(x). Dari bentuk terakhir, terlihat
bahwa proses pencarian penyelesaian persamaan g(x) = h(x) adalah ekivalen dengan proses
pencarian akar dari fungsi f (x). Untuk selanjutnya pembahasan akan ditujukan pada proses
pencarian akar fungsi dan dibatasi hanya pada akar real.

Metode-metode numerik untuk pencarian akar suatu fungsi pada umumnya merupakan
metode iterasi (metode tak langsung). Metode ini dimulai dengan menentukan satu atau
beberapa tebakan awal terhadap akar fungsi f (x) = 0. Selanjutnya kita terapkan suatu
rumus iterasi/rekursif tertentu yang akan membangkitkan barisan bilangan x0 , x1 , x2 , · · · ,.
Barisan ini diharapkan konvergen ke akar dari f (x). Secara numerik tentunya kita tidak
mungkin menghitung suku barisan tersebut sampai ’takhingga’. Jadi selain memerlukan
rumus iterasi untuk menghasilkan berisan tersebut, kita juga memerlukan kriteria untuk
menghentikan proses iterasinya.

Metode numerik untuk mecari akar fungsi secara umum terbagi atas dua tipe yaitu metode
pengurung dan metode terbuka. Pada metode pengurung, akar yang kita cari selalu
diapit/dikurung di dalam suatu interval. Proses yang dilakukan adalah membuat interval
pengapit akar tersebut makin lama makin pendek. Sebaliknya, pada metode terbuka, akar
tidak perlu diapit. Kedua tipe metode ini mempunyai kelebihan dan kekurangan masing-
masing. Hal ini akan kita bandingkan pada akhir pasal ini.

2.1 Metode Bagi Dua


Metode ini termasuk dalam tipe metode pengurung. Misalkan f (x) suatu fungsi kontinu
dengan akar r (nilai r belum diketahui). Untuk menerapkan metode Bagi Dua, mula-mula
kita tentukan dua buah titik misalkan a dan b (a < b) yang nilai fungsinya berlawanan tanda,
yaitu f (a)f (b) < 0. Kedua titik ini dinamakan tebakan awal. Berdasarkan teorema nilai
antara, maka interval [a, b] akan memuat akar f (x) (jelanskan !). Akar yang termuat pada
interval tersebut ada kemungkinan lebih dari satu buah (lihat gambar 1).

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 9

15 10

10
5
5
y=f(x) y=f(x)
0 r
1
r 0
r r
2 3
−5

−10 −5
1 a 1.5 2 2.5 b 3 1 a 1.5 2 2.5 b 3

Gambar 1: fungsi kontinu dengan sifat f (a)f (b) < 0. Pada gambar sebelah kiri terlihat [a, b] hanya
memuat satu akar, sedangkan pada gambar sebelah kanan terlihat [a, b] memuat lebih dari satu akar.

Pada metode Bagi Dua, Mula-mula kita tetapkan titik tengah dari interval [a, b]. Sebut titik
tersebut c. Jadi c := a+b
2
. Dengan demikian, sekarang ada tiga kemungkinan yang terjadi:

a. f (c) = 0, artinya titik c adalah akar dari f (x).


b. f (a)f (c) < 0, artinya akar berada pada interval [a, c]
c. f (b)f (c) < 0, artinya akar berada pada interval [c, b]

y=f(x)
y=f(x)
y=f(x)

r a b
a c b c b a c

Gambar 2: Penerapan satu iterasi Bagi Dua pada fungsi f (x) dengan tebakan awal a dan b. Pada
gambar paling kiri, titik c tepat sama dengan nilai akar r. Pada gambar di tengah, akar diapit oleh [a, c]
sedangkan pada gambar terakhir, akar terapit oleh interval [c, b]

Bila kasus (a) terjadi maka proses selesai. Pada kasus (b) atau (c), panjang interval yang
mengapit akar akan menjadi setengah dari panjang interval semula. Untuk iterasi selanjut-
nya interval pengapit akar tersebut kita namakan sebagai a dan b yang baru, lalu proses

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 10

yang sama kita ulangi lagi.

Untuk memudahkan penjelasan, kita akan menggunakan indeks untuk menamakan titik yang
dihitung. Untuk itu interval mula-mula kita namakan [a0 , b0 ]. Selanjutnya titik tengahnya
kita namakan c0 . Jadi c0 := a0 +b 2
0
. Pada proses selanjutnya (bila kasus b atau c terjadi),
interval yang mengapit akar kita namakan [a1 , b1 ], lalu kita hitung c1 := a1 +b
2
1
. Jelas panjang
b0 −a0
b1 − a1 = 2 . Secara umum pada iterasi ke k kita akan memperoleh interval [ak , bk ] dan
ck := ak +b
2
k
. Dengan mudah dapat ditunjukan bk − ak = b02−a k
0
. Karena akar r dari fungsi
f (x) berada pada interval [ak , bk ] maka

bk − ak b0 − a0
|ck − r| ≤ ≤ k+1
2 2
Hal ini menunjukan barisan c0 , c1 , c2 , · · · akan konvergen ke akar r. Seperti telah dijelaskan
pada awal pasal ini, dalam implementasinya di komputer, kita memerlukan kriteria untuk
menghentikan proses perhitungan iterasi tersebut. Pada metode Bagi Dua kriteria penghen-
tian iterasi yang digunakan adalah bk − ak ≤ eps, dengan eps merupakan batas galat yang
diijinkan/ditentukan.

Pada tabel berikut ini disajikan hasil penerapan metode Bagi Dua terhadap fungsi f (x) =
x sin(x) − 1 dengan tebakan awal a = 0, b = 2 dan batas galat eps = 10−6 . Proses konvergen
pada iterasi ke 20.

k ak bk ck f (ak ) f (bk ) f (ck )


0 0.00000000 2.00000000 1.00000000 -1.00000000 0.81859485 -0.15852902
1 1.00000000 2.00000000 1.50000000 -0.15852902 0.81859485 0.49624248
2 1.00000000 1.50000000 1.25000000 -0.15852902 0.49624248 0.18623077
3 1.00000000 1.25000000 1.12500000 -0.15852902 0.18623077 0.01505104
4 1.00000000 1.12500000 1.06250000 -0.15852902 0.01505104 -0.07182663
5 1.06250000 1.12500000 1.09375000 -0.07182663 0.01505104 -0.02836172
..
.
17 1.11415100 1.11416626 1.11415863 -0.00000853 0.00001266 0.00000207
18 1.11415100 1.11415863 1.11415482 -0.00000853 0.00000207 -0.00000323
19 1.11415482 1.11415863 1.11415672 -0.00000323 0.00000207 -0.00000058
20 1.11415672 1.11415863 1.11415768 -0.00000058 0.00000207 0.00000074

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 11

Algoritma Bagi Dua

Masukan: f(x) fungsi yang dicari akarnya


a, b tebakan awal
eps batas galat
Keluaran: akar akar dari fungsi f(x)
Langkah-Langkah:
1. fa := f(a)
2. fb := f(b)
3. Jika fa*fb > 0 maka "proses gagal", stop
4. c := (a+b)/2
5. fc := fc
6. Jika fa * fc < 0
maka b := c
fb := fc
jikatidak
a := c
fa := fc
7. Jika (b-a) < eps maka akar := c, selesai
8. kembali ke langkah 4

Untuk efisiensi memori di komputer, pada algoritma di atas kita tidak menggunakan variabel
vektor untuk perhitungannya. Hal ini dimungkinkan karena nilai lama yang tidak terpakai
lagi dapat digantikan dengan nilai hasil iterasi yang baru. Hal lain yang perlu diperhatikan,
pada algoritma tersebut tidak ada proses pengujian f (c) = 0. Carilah penjelasannya !

2.2 Metode Posisi Palsu


Metode posisi palsu (sering juga dinamakan metode regula falsi) merupakan salah satu
metode yang cukup populer. Metode ini dikembangkan dengan harapan memiliki kekon-
vergenan yang lebih cepat dari metode Bagi Dua. Metode ini juga termasuk pada tipe
metode pengurung.

Seperti pada metode Bagi Dua, kita berangkat dari fungsi kontinu f (x) dan tebakan awal a, b
dengan f (a)f (b) < 0. Pada metode Posisi Palsu, kita buat garis lurus yang menghubungkan
titik (a, f (a) dan (b, f (b)). Garis ini pasti akan memotong sumbu-x dengan titik potongnya,
sebut titik c, terletak diantara a dan b (mengapa ?). Dengan mudah dapat ditunjukkan
bahwa
b−a
c = b − f (b) .
f (b) − f (a)
Selanjutnya seperti pada metode Bagi Dua, akar fungsi akan terapit oleh salah satu dari
interval [a, c] atau [c, b]. Untuk iterasi berikutnya interval yang mengapit akar kita namakan

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 12

sebagai a dan b yang baru dan proses yang sama ulangi lagi. Gambar (3) memeperlihatkan
cara kerja metode Posisi Palsu secara geometri.

80 Iterasi Posisi Palsu untuk mencari akar fungsi

c := b − f(b) * (b−a) / (f(b) − f(a))

60

40

y=f(x)
20

a c
0
r b

1 2 3 4

Gambar 3: Penerapan satu iterasi metode Posisi Palsu pada fungsi (x) dengan tebakan awal a dan b.

Bila pada setiap langkah iterasi variabel a, b, dan c kita beri indeks (dimulai dari nol), maka
pada iterasi ke k kita akan memperoleh rumus iterasi:

bk − ak
ck = bk − f (bk ) k = 0, 1, · · · (1)
f (bk ) − f (ak )

Untuk kriteria penghentian iterasi Posisi Palsu kita tidak dapat menggunakan aturan seperti
pada metode Bagi Dua. Bila kriteria penghentian iterasi metode Bagi Dua diterapkan di
sini ada kemungkinan terjadi iterasi tak berhingga (infinite loop) (berikan contoh secara
ilustrasi gambar). Sebagai kriteria penghentian iterasi, metode Posisi Palsu menggunakan
|ck+1 −ck |
|ck+1 |
< eps dengan eps adalah batas galat.

Pada tabel berikut ini disajikan hasil penerapan iterasi metode Posisi Palsu terhadap fungsi
f (x) = x sin(x) − 1 dengan tebakan awal a = 0, b = 2 dan batas galat eps = 10−6 . Proses
konvergen pada iterasi ke 4.

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 13

k ak bk ck f (ak ) f (bk ) f (ck )


0 0.00000000 2.00000000 1.09975017 -1.00000000 0.81859485 -0.02001921
1 1.09975017 2.00000000 1.12124074 -0.02001921 0.81859485 0.00983461
2 1.09975017 1.12124074 1.11416119 -0.02001921 0.00983461 0.00000563
3 1.09975017 1.11416119 1.11415714 -0.02001921 0.00000563 0.00000000
4 1.09975017 1.11415714 1.11415714 -0.02001921 0.00000000 0.00000000

Hasil di atas memperlihatkan bahwa metode Posisi Palsu mempunyai kekonvergenan yang
lebih cepat dari metode Bagi dua. Pada kebanyakan fungsi hal ini memang benar, tetapi
ada beberapa kelas fungsi tertentu dimana keadaan berlaku sebaliknya. Hal ini akan diper-
lihatkan pada pembahasan metode Modifikasi Posisi Palsu.

Algoritma Posisi Palsu

Masukan: f(x) fungsi yang dicari akarnya


a, b tebakan awal
eps batas galat
Keluaran: akar akar dari fungsi f(x)
Langkah-Langkah:
1. fa := f(a)
2. fb := f(b)
3. Jika fa*fb > 0 maka "proses gagal", stop
4. clama := 2*b-a
5. c := b - fb*(b-a)/(fb-fa)
6. fc := fc
7. Jika fa * fc < 0
maka b := c
fb := fc
jikatidak
a := c
fa := fc
8. delta := |c - clama|
9. clama := c
7. Jika delta < eps maka akar := c, selesai
8. kembali ke langkah 5

Untuk efisiensi memori komputer, pada algoritma ini kembali kita menghindari pemakaian
variabel vektor. Perhatikan perintah pada langkah 4. Dapatkah anda jelaskan apa tujuan
dari langkah tersebut. Apakah pemberian nilai awal dari variabel clama dapat diambil yang
lain, jelaskan.

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 14

Catatan: Dalam beberapabuku teks rumus itersi Metode Posisi Palsu mempunai bentuk
bk − ak
ck = ak − f (ak ) . Rumus ini ekivalen dengan rumus (1). Tunjukan !
f (bk ) − f (ak )

2.3 Masalah Tebakan Awal / Lokalisasi Akar


Dari dua metode yang telah dibahas, terlihat bahwa kita memerlukan tebakan awal (dua
titik yang nilai fungsinya berlawanan tanda) untuk memulai proses iterasi. Tebakan awal ini
tidak selalu mudah ditentukan. Pada bagian ini kita akan membahas beberapa cara untuk
membantu menentukan tebakan awal.

Perhatikan suatu fungsi kontinu y = f (x). Salah satu cara untuk menentukan tebakan awal
adalah dengan menggunakan tabulasi nilai. Pada cara ini kita buat tabel nilai dari fungsi
f (x) pada beberapa titik tertentu. Untuk kemudahan perhitungan, terutama bila menggu-
nakan komputer, titik-titik yang digunakan umumnya diambil berjarak sama.

x f(x) Tabel di samping pepmerlihatkan penggunaan cara tabulasi data untuk


-2.0 3.3378 mencari lokasi akar dari fungsi f (x) = x2 − 1.8 e0.5x . Dari tabel tersebut
-1.0 -0.0918 dapat disimpulkan f (x) memiliki akar pada interval [−2, −1], [2, 3] dan
0.0 -1.8000 [5, 6], mengapa ?
1.0 -1.9677
2.0 -0.8929 Pada tabel ini kita memilih titik-titik sampel yang jaraknya satu. ten-
3.0 0.9330 tunya hal ini tidak menjamin bahwa lokasi akar yang diperoleh sudah
4.0 2.6997 lengkap semua (mengapa?). Demikian pula untuk daerah x < −2 dan
5.0 3.0715 daerah x > 7, masih memungkinkan adanya akar dari f (x). Bila kita
6.0 -0.1540 ingin memeriksanya dengan lebih rinci, maka cara tabulasi masih belum
7.0 -10.6078 cukup memadai. Hal ini dapat dilengkapi dengan cara grafik.

Cara lain untuk menentukan lokasi akar adalah dengan menggunakan cara grafik. Ada dua
macam cara grafik yaitu grafik tunggal dan grafik ganda. Pada grafik tunggal, kita
gambarkan grafik dari fungsi f (x) di bidang x − y. Akar fungsi akan terletak pada titik
potong grafik tersebut dengan sumbu-x.
Bila fungsi f (x) bentuknya rumit, biasanya lebih memudahkan dengan menggunakan grafik
ganda. Caranya adalah dengan memecah f (x) menjadi selisih dua fungsi f (x) = g(x)−h(x).
selanjutnya kita gambarkan grafik fungsi g(x) dan h(x) pada bidang koordinat yang sama.
Akar f (x) akan terletak pada titik potong kedua grafik tersebut (mengapa !). Ilustrasi dari
pemakaian cara grafik ini dapat dilihat pada gambar (4).

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 15

10
40

30
5
f(x)
20 g(x)

0
10 h(x)

0
−5
−2 0 2 4 6 −2 0 2 4 6

Gambar 4: Lokalisasi akar menggunakan grafik tunggal dan grafik ganda. Gambar sebelah kiri adalah
grafik tunggal dari f (x) = x2 −1.8 e0.5x . Grafik ini memperlihatkan adanya tiga akar dari f (x). Gambar
sebelah kanan merupakan grafik ganda dari f (x) yang dipecah menjadi g(x) = x2 dan h(x) = 1.8 e0.5x .
Akar dari f (x) terletak pada titik potong kedua grafik tersebut.

Dalam mencari lokasi akar, ada beberapa hal yang menimbulkan kesulitan, diantaranya
adalah:

a. adanya dua buah akar yang jaraknya sangat berdekatan.


b. Adanya akar ganda, misalnya akar x = 1.0 pada fungsi f (x) = x3 − x2 − x + 1.

Carilah penjelasan mengapa kedua hal di atas menyebabkan kesulitan dalam menentukan
lokasi akar.

2.3.1 Lokalisasi Akar Polinom


Untuk menentukan lokasi akar dari polinom, kita dapat menggunakan tabulasi/grafik seperti
yang sudah dibahas. Namun demikian, suatu polinom memiliki sifat-sifta khusus yang akan
membantu pelokasian akar dengan cara lain.

Perhatikan suatu polinom derajat n, p(x) = a0 + a1 x + a2 x2 + · · · + an xn , an 6= 0. Dalam


Lapangan bilangan kompleks, polinom ini tepat mempunyai n buah akar. Yang akan kita
cari adalah akar-akar yang berupa bilangan real (komponen imaginernya bernilai nol). Un-
tuk itu kita gunakan aturan Descarters sebagai berikut:

1. Lokasi Akar Positif. Misalkan u menyatakan banyaknya pergantian tanda koefisien


polinom p(x). Pada saat menentukan nilai u, koefisien yang nilainya nol tidak diper-
hatikan. Misalkan np menyatakan banyaknya akar-akar real positif dari p(x), maka

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 16

berlaku:
a. np ≤ u
b. u - np bilangan genap.

2. Lokasi Akar Negatif. Misalkan v menyatakan banyaknya pergantian tanda koefisien


p(−x) dan ng adalah banyaknya akar negatif dari p(x), maka berlaku:
a. ng ≤ v
b. v - ng bilangan genap.

Contoh: Perkirakan akar-akar real dari polinom p(x) = x5 − 3x3 + x2 − 1.

Penyelesaian: Misalkan banyaknya akar positif dari p(x) adalah np . Banyaknya perubahan
tanda koefisien dari p(x) adalah u=3. Berdasarkan aturan Descartes maka u-np = 0 atau 2.
Jadi kemungkinan nilai np adalah 3 atau 1.
Selanjutnya misalkan banyaknya akar negatif dari p(x) adalah ng . p(−x) = −x5 + 3x3 −
x2 − 1. Perubahan tanda koefisien dari p(−x) adalah v=2. Jadi v - ng bernilai 0 atau 2.
Kemungkinan nilai ng adalah 2 atau 0.
Dengan mengingat banyaknya akar kompleks dari p(x) berjumlah 5, maka kemungkinan
akar-akarnya adalah salah satu dari pernyataan berikut:
a. 3 akar positif dan 2 akar negatif
b. 3 akar positif dan 2 akar kompleks
c. 1 akar positif, 2 akar negatif dan 2 akar kompleks
d. 1 akar positif dan 4 akar kompleks.

Sifat berikut ini dapat ikut membantu kita dalam menentukan lokasi akar dari suatu polinom.

ak
Sifat 1 Misalkan r = 1 + | max | maka semua akar real dari polinom p(x) akan terletak
0≤k≤n an
pada interval [−r, r].

ak
Pada contoh terakhir nilai, r = 1 + | max | = 4. Dengan demikian semua akar real dari
0≤k≤5 an
p(x) terletak pada interval [−4, 4].

2.4 Metode Modifikasi Posisi Palsu


Secara umum metode Posisi Palsu mempunyai kekonvergenan yang lebih cepat dari metode
Bagi Dua. Akan tetapi hal ini tidak selalu benar. Untuk itu perhatikan ilustrasi pada
gambar (5). Penerapan metode Posisi Palsu pada fungsi di gambar tersebut menghasilkan

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 17

kekonvergenan yang sangat lambat. Hal ini disebabkan karena sifat kecekungan fungsi yang
membuat titik ujung kiri tidak pernah mengalami pergantian.

3 Ilustrasi ketidakharmonisan metode Posisi Palsu

y=f(x)

b
0
a

0 1 2 3 4 5 6 7 8 9 10

Gambar 5: Penerapan metode Posisi Palsu pada fungsi f (x) dengan tebakan awal a dan b. Gambar
memperlihatkan 11 kali iterasi Posisi Palsu. Selama iterasi terlihat bahwa titik a selalu tetap, tidak per-
nah mengalami pergantian. Hal ini menyebabkan lambatnya proses iterasi (silakan bandingkan dengan
metode Bagi Dua).

Untuk mempercepat kekonvergenan, maka dilakukan modifikasi sebagai berikut: Bila se-
lama dua atau lebih iterasi yang berturutan salah satu ujung interval pengapit akar tidak
mengalami perubahan, maka nilai fungsi pada titik tersebut dibuat menjadi setengah dari
nilai pada iterasi sebelumnya. Proses ini diilustrasikan pada gambar (6).

Perhatikan gambar (6). Pada iterasi ke 1 dan 2 titik ujung kiri tidak mengalami perubahan,
maka pada iterasi ketiga, nilai fungsi di titik ujung kiri tersebut dibuat jadi setengah dari
sebelumnya. Pada iterasi ketiga, titik ujung tersebut tetap tidak mengalami perubahan, se-
hingga pada iterasi keempat nilai fungsi di titik ujung tersebut kembali dibuat jadi setengah
dari sebelumnya. Bila proses iterasi diteruskan, maka pada iterasi keenam ujung kiri akan
mengalami pergantian nilai (diperlihatkan secara animasi pada komputer). Ilustrasi dari
metode Modifikasi Posisi Palsu diperlihatkan pada gambar (6).

Dua tabel berikut ini menyajikan perbandingan hasil perhitungan akar fungsi memakai
metode Posisi Palsu dan metode Modifikasi Posisi Palsu. Fungsi yang digunakan dipilih
yang memiliki tanjakan sangat tajam di sebelah kiri dari akar fungsi dan sangat landai di

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 18

Iterasi Modifikasi Posisi Palsu untuk mencari akar fungsi

y=f(x)
0

1 3

5
6 b
0
a

0 1 2 3 4 5 6 7 8 9 10

Gambar 6: Iterasi metode Modifikasi Posisi Palsu. Nomor disebelah garis-garis putus menyatakan nomor
itersi. Box di kanan atas adalah perbesaran gambar disekitar akar.

sebelah kanan dari akar fungsi tersebut. Hasil pada tabel memperlihatkan metode modifikasi
Posisi Palsu memerlukan jumlah iterasi yang jauh lebih sedikit.

Tabel berikut menyajikan hasil perhitungan akar fungsi f (x) = x12 − 0, 4 dengan tebakan
awal a = 0.5, b = 10 dan batas galat eps = 1.0E-6 memakai metode Posisi Palsu. Proses
konvergen pada itersi ke 88.
k ak bk ck f (ak ) f (bk ) f (ck )
0 0.50000000 10.00000000 9.07142857 3.60000000 -0.39000000 -0.38784798
1 0.50000000 9.07142857 8.23779318 3.60000000 -0.38784798 -0.38526405
2 0.50000000 8.23779318 7.48976407 3.60000000 -0.38526405 -0.38217360
3 0.50000000 7.48976407 6.81894869 3.60000000 -0.38217360 -0.37849373
..
.
86 0.50000000 1.58115142 1.58114951 3.60000000 -0.00000637 -0.00000540
87 0.50000000 1.58114951 1.58114789 3.60000000 -0.00000540 -0.00000458
88 0.50000000 1.58114789 1.58114651 3.60000000 -0.00000458 -0.00000389

Tabel berikut menyajikan hasil perhitungan akar fungsi f (x) = x12 − 0.4 dengan tebakan
awal a = 0.5, b = 10 dan batas galat eps = 1.0E-6 memakai metode Modifikasi Posisi Palsu.
Proses konvergen pada iterasi ke 11.

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 19

k ak bk ck f (ak ) f (bk ) f (ck )


0 0.50000000 10.00000000 9.07142857 3.60000000 -0.39000000 -0.38784798
1 0.50000000 9.07142857 8.23779318 3.60000000 -0.38784798 -0.38526405
2 0.50000000 8.23779318 6.87361317 1.80000000 -0.38526405 -0.37883444
3 0.50000000 6.87361317 4.98553127 0.90000000 -0.37883444 -0.35976749
..
.
9 1.53977429 1.58115626 1.58112277 0.01088995 -0.00000882 0.00000812
10 1.58112277 1.58115626 1.58113883 0.00000812 -0.00000882 -0.00000000
11 1.58112277 1.58113883 1.58113883 0.00000812 -0.00000000 0.00000000

Algoritma Modifikasi Posisi Palsu

Masukan: f(x) fungsi yang dicari akarnya


a, b tebakan awal
eps batas galat
Keluaran: akar akar dari fungsi f(x)
Langkah-Langkah:
1. fa := f(a)
2. fb := f(b)
3. Jika fa*fb > 0 maka "proses gagal", stop
4. clama := 2*b-a
5. kiri := 0
6. kanan :=0
5. c := b - fb*(b-a)/(fb-fa)
6. fc := fc
7. Jika fa * fc < 0
maka b := c
fb := fc
kanan := 0
kiri := kiri + 1
Jika kiri >= 2 maka fa := fa / 2
jikatidak
a := c
fa := fc
kiri := 0
kanan := kanan + 1
Jika kanan >=2 maka fb := fb / 2
8. delta := |c - clama|
9. clama := c
7. Jika delta < eps maka akar := c, selesai
8. kembali ke langkah 5

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 20

Algoritma di atas pada prinsipnya sama dengan algoritma metode Posisi Palsu, hanya kita
menambahkan counter yaitu variabel kiri dan kanan untuk menghitung berapa kali titik
ujung tidak berubah selama iterasi yang berturutan. Setiap kali titik ujung mengalami pe-
rubahan, counternya kita buat jadi nol.

2.5 Metode Newton-Raphson


Pada metode-metode yang telah dibahas terlihat bahwa kita memerlukan dua tebakan awal
yang nilai fungsinya berlawanan tanda. Untuk fungsi penentuan dua tebakan awal tersebut
seringkali tidak mudah. Untuk itu dikembangkan metode yang tebakan awalnya lebih mudah
ditentukan. Salah satunya adalah metode Newton (metode Newton-Raphson).

Metode Newton-Raphson hanya memerlukan satu buah tebakan awal. Misalkan f (x) fungsi
kontinu dan x0 tebakan awal terhadap akar dari fungsi tersebut. Prinsip dari metode Newton-
Raphson adalah dengan membuat garis singgung terhadap fungsi f (x) di titik (x0 , f (x0 )).
Bila f ′ (x0 ) 6= 0 maka garis singgung tersebut akan memotong sumbu-x (mengapa ?). Sebut
titik potongnya adalah x1 . Dengan mudah dapat dibuktikan x1 = x0 − ff′(x 0)
(x0 )
. Ilustrasi
geometri dari metode ini dapat dilihat pada gambar (7). Selanjutnya proses yang sama kita
lakukan dengan tebakan awal yang baru yaitu x1 . Bila proses ini diteruskan, maka kita akan
memperoleh barisan x0 , x1 , · · · , xn , · · · dengan
f (xk )
xk+1 := xk − k = 0, 1, . . . (2)
f ′ (xk )

Sifat 2 Misalkan x0 , x1 , · · · , xn , · · · merupakan barisan yang dihasilkan dari itersi Newton-


Raphson terhadap fungsi f (x). Bila barisan tersebut konvergen, maka limitnya adalah akar
dari f (x).

Bukti: Misalkan barisan x0 , x1 , · · · , xn , · · · konvergen ke titik p. Berdasarkan rumus itersi


Newton-Raphson maka:
 
f (xn )
lim xn+1 = lim xn − ′
n→∞ n→∞ f (xn )
lim f (xn )
n→∞
lim xn+1 = lim xn −
n→∞ n→∞ lim f ′ (xn )
n→∞
 
f lim xn
lim xn+1 = lim xn − n→∞ 
n→∞ n→∞
f ′ lim xn
n→∞

f (p)
p=p−
f ′ (p)

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 21

80 Iterasi Newton untuk mencari akar fungsi


x := x − f(x ) / f (x )
1 0 0 0 y=f(x)

60

40

20

0
x x
1 0

1 2 3 4

Gambar 7: Iterasi Newton-Raphson untuk menentukan akar dari f (x) dengan tebakan awal x0 .

f (p)
=0
f ′ (p)

f (p) = 0

Pernyataan terakhir menunjukan bahwa p merupakan akar dari fungsi f (x) .


Beri alasan yang menjamin keabsahan pada tiap langkah dari bukti di atas !

Kriteria penghentian iterasi pada metode Newton-Raphson mempunyai bentuk yang sama
|x −xk|
dengan kriteria pada metode Posisi Palsu, yaitu k+1|xk+1 |
≤ eps dengan eps adalah batas
toleransi galat. Perlu diperhatikan bahwa metode Newton-Raphson tidak menjamin proses
akan konvergen. Untuk mengatasi terjadinya looping karena proses yang tidak konvergen,
maka kita perlu memberi batas jumlah maksimum iterasinya.

Tabel berikut ini menyajikan hasil perhitungan metode Newton-Raphson pada fungsi f (x) =
x3 − 3x + 2 dengan tebakan awal x0 = −2.4. Proses konvergen pada iterasi ke 5.

k xk f (xk ) f ′ (xk )
0 -2.4000000000 -4.6240000000 14.2800000000
1 -2.0761904762 -0.7209865025 9.9317006803
2 -2.0035960107 -0.0324417303 9.0431909220
3 -2.0000085900 -0.0000773102 9.0001030799
4 -2.0000000001 -0.0000000005 9.0000000006
5 -2.0000000000 0.0000000000 9.0000000000

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 22

Tabel berikut ini menyajikan hasil perhitungan metode Newton-Raphson pada fungsi f (x) =
x3 − 3x + 2 dengan tebakan awal x0 = 1.2. Proses konvergen pada iterasi ke 18.

k xk f (xk ) f ′ (xk )
0 1.2000000000 0.1280000000 1.3200000000
1 1.1030303030 0.0329394218 0.6500275482
2 1.0523564172 0.0083671024 0.3223620865
3 1.0264008141 0.0021094104 0.1604958933
..
.
16 1.0000032414 0.0000000000 0.0000194483
17 1.0000016514 0.0000000000 0.0000099083
18 1.0000011006 0.0000000000 0.0000066038

Dari hasil di atas mungkin timbul pertanyaan, ”mengapa untuk fungsi yang sama, dengan
tebakan awal yang berbeda, jumlah iterasinya berbeda jauh ?” Permasalahannya bukan pada
fungsi yang sama, tetapi pada bentuk kecekungan fungsi disekitar akar yang dicari. Fungsi
f (x) = x3 − 3 ∗ x + 2 memiliki akar eksak x1 = −2 dengan multiplisitas satu dan x2 = 1
dengan multiplisitas 2 (akar ganda). Metode Newton-Raphson akan lebih lambat konvergen
bila akar yang dicari mempunyai multiplisitas lebih dari satu. Hal ini dijelaskan oleh sifat
berikut ini.
Definisi 1 (Pengertian orde Kekonvergenan). Misalkan barisan {xn }∞ n=0 konvergen
ke akar r dari fungsi f (x). Jika terdapat konstanta A 6= 0 dan R > 0 dengan
|r − xn+1 | |en+1 |
lim R
= lim =A
n→∞ |r − xn | n→∞ |en |R

maka barisan tersebut disebut konvergen dengan orde kekonvergenan R.


Sifat 3 (Orde kekonvergenan metode Newton-Raphson) Misalkan iterasi Newton-
Raphson menghasilkan barisan {xn }∞
n=0 yang konvergen ke akar r dari fungsi f (x).
|en+1 | |f ”(r)|
a. Bila r akar sederhana (multiplisitas=1) maka 2
=
|en | 2|f ′(r)|
|en+1 | M −1
b. Bila r akar dengan multiplisitas M maka =
|en | M

Dari sifat di atas terlihat bahwa untuk akar simpel orde kekonvergenannya 2, sedangkan
untuk akar dengan multiplisitas lebih dari satu orde kekonvergenannya satu.

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 23

Pertanyaan: Mana yang lebih baik, orde kekonvergenan besar atau kecil, beri alasan ter-
hadap jawaban anda.

Algoritma Metode Newton-Raphson

Masukan: f(x) fungsi yang dicari akarnya


df(x) fungsi turunan dari f(x)
x0 tebakan awal
eps batas galat
maks batas maksimum iterasi
Keluaran: akar akar dari fungsi f(x)
Langkah-Langkah:
1. iter := 1;
2. d := df(x0)
3. Jika |d| < 1.0E-12 maka ’proses gagal’, stop
4. xbaru := x0 - f(x0) / d
5. delta := |xbaru - x| / |xbaru|
6. Jika delta < eps maka akar := xbaru, selesai
7. x := xbaru;
8. iter := iter + 1;
9. Jika iter > maks maka ’proses belum konvergen’, stop
10. kembali ke langkah 2

Sebagai metode terbuka, kekonvergenan dari metode Newton-Raphson tidak selalu dijamin.
Berikut ini dikemukakan beberapa hal yang menjadi penyebab gagalnya metode Newton.
a. Terjadinya turunan fungsi yang bernilai nol (atau hampir nol) pada saat proses
iterasi berlangsung. Hal ini mengakibatkan iterasi beikutnya tidak dapat dihitung.
b. Terjadinya proses siklis. Dalam hal ini proses iterasi tidak konvergen karena hasil
iterasi nilainya berosilasi. Hal ini dilustrasikan pada gambar (8).
c. Fungsi f (x) bersifat cekung ke atas dengan asimptot datar y = 0. Pada kondisi
ini iterasi Newton akan divergen ke ∞. (ilustrasikan !).

Pemercepat Kekonfergenan
Dari pembicaraan sebelumnya, terlihat bahwa pencarian akar suatua fungsi yang bermulti-
plisitas M > 1 mempunyai laju kekonvergenan linear (lambat). Proses ini dapat dipercepat
dengan melakukan modifikasi sesuai dengan sifat berikut:

Sifat 4 (Pemercepat Iterasi Newton-Raphson Mislakan iterasi metode Newton-Raphson


menghasilkan barisan yang konvergen linear terhadap akar r yang bermultiplisitas M dari
fungsi f (x), maka iterasi modifikasi Newton-Raphson berikut ini mempunyai kekonvergenan

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 24

x1 x2 x3 x0
0

y=f(x)
−5

−10

−15

−20 Proses Siklis pada iterasi Newton

−25

−29
−3 −2 −1 0 1 2

Gambar 8: Proses Siklis pada iterasi Newton. Proses hampiran akar dimulai pada titik x0 .
Selanjutnya dari rumus iterasi Newton diperoleh barisan x0 , x1 , x2 , x3 , x0 , x1 , · · ·

kuadratik.
M f (xk )
xk+1 = xk −
f ′ (xk )

Tabel di bawah ini memperlihatkan penerapan metode modifikasi Newton-Raphson untuk


mencari akar r = 1 yang bermultiplisitas m = 2 dari fungsi F (x) = x3 − 3x + 2. Tebakan
awal yang digunakan adalah x0 = 1.2

Tabel berikut ini menyajikan hasil iterasi modifikasi metode Newton-Raphson pada fungsi
f (x) = x3 − 3x + 2 dengan tebakan awal x0 = 1.2. Pada masalah ini, multiplisitas akar yang
dicari yaitu r = 1 adalah 2. Proses konvergen pada iterasi ke 3.

k xk f (xk ) f ′ (xk )
0 1.2000000000 0.1280000000 1.3200000000
1 1.0060606061 0.0001104154 0.0364738292
2 1.0000061033 0.0000000001 0.0000366201
3 1.0000000000 0.0000000000 0.0000000000
4 1.0000000000 0.0000000000 0.0000000000

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 25

Latihan: Tuliskan Algoritma modifikasi Newton-Raphson untuk mencari akar bermultiplisi-


tas M dari fungsi f (x) dengan tebakan awal x0 dan batas galat eps.

2.6 Metode Tali Busur / Sekan


Pada metode Newton kita memerlukan turunan dari fungsi yang akan dicari akarnya. Metode
Tali Busur (dinamakan juga metode Sekan) merupakan metode alternatif yang bertujuan
menghilangkan fungsi turunan tersebut didalam proses iterasi.

Metode Tali Busur dimulai dengan dua tebakan awal x0 dan x1 terhadap akar dari fungsi
f (x). Nilai tebakan awal ini tidak perlu mengapit akar, jadi disini penetapannya dapat
dilakukan dengan mudah. Selanjutnya kita melakukan proses iterasi seperti pada metode
Newton, hanya perhitungan f ′ (x0 ) dimodifikasi oleh nilai f (xx11)−f
−x0
(x0 )
. Bila diperhatikan nilai
tersebut merupakan gradien dari garis yang menghubungkan titik (x0 , f (x0 )) dan (x1 , f (x1 )).
Jadi yang kita hitung adalah nilai x2 := x0 − f (x0 ) f (xx11)−f
−x0
(x0 )
. Setelah titik x2 diperoleh,
pada iterasi berikutnya kita ambil x1 dan x2 sebagai tebakan akar yang baru dan proses
yang sama diulangi untuk mendapatkan hampiran x3 . Secara umum rumus iterasi metode
Tali Busur adalah sebagai berikut:
xk − xx−1
xk+1 := xk − f (xk ) k = 1, 2, · · · (3)
f (xk ) − f (xk−1 )

Penjelasan geometri dari metode Tali Busur dapat dilihat pada gambar (9).

Sifat 5 Misalkan {xn }∞


n=1 adalah barisan yang dihasilkan dari iterasi Tali Busur untuk
menghampiri akar dari f (x). Bila barisan tersebut konvergen maka limitnya adalah akar
dari f (x).

Bukti dari sifat di atas analog dengan pembuktian sifat (2)

Kriteria penghentian iterasi metode Tali Busur sama dengan kriteria penghentian iterasi
Newton, yaitu |xk+1 −xk |
|xk+1 |
< eps dengan eps adalah batas galat yang diijinkan. Selain itu kita
juga perlu membatasi jumlah maksimum iterasi karena prosesnya ada kemungkinan divergen.

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 26

80 Iterasi Sekan untuk mencari akar fungsi

x := x − f(x ) * (x1−x0) / (f(x1) − f(x0))


2 0 0
y=f(x)

60

40

20

0
x1 x2 x0

1 2 3 4

Gambar 9: Iterasi metode Tali Busur terhadap fungsi f (x) dengan tebakan awal x0 dan x1
.

k xk f (xk ) Tabel disamping ini menyajikan hasil perhitungan


metode Tali Busur pada fungsi f (x) = x3 − 3x + 2
0 -2.6000000000 -7.7760000000 dengan tebakan awal x0 = −2.6 dan x1 = −2.4.
1 -2.4000000000 -4.6240000000 Proses konvergen pada iterasi ke 7.
2 -2.1065989848 -1.0287822451
3 -2.0226414123 -0.2068601188
4 -2.0015110973 -0.0136135799
5 -2.0000225365 -0.0002028314
6 -2.0000000227 -0.0000002042
7 -2.0000000000 0.0000000000

Sifat 6 (Orde kekonvergenan metode Tali Busur. Misalkan r adalah akar simpel
(multiplisitas 1) dari fungsi f (x). dan {xn }∞
n=1 adalah barisan yang dihasilkan dari iterasi
|e | f ′′ (r) 0.618
Tali Busur dan konvergen r. Sebut ek = r − xk . Maka |ek+1 | R = | 2f ′ (r | dengan R =
√ k

(1 + 5)/2

Dari sifat di atas terlihat orde kekonvergenen metode Tali Busur adalah R ≈ 1.618. Diband-
ingkan metode Newton, metode tali busur mempunyai orde kekonvergenen yang lebih lambat,
tetapi masih lebih cepat dari metode Bagi Dua dan Posisi Palsu.

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 27

Latihan: Susunlah algoritma perhitungan metode Tali Busur.

2.7 Perbandingan antara metode Pengurung dan Terbuka


Berikut ini disajikan perbandingan antara metode pengurung dengan metode terbuka:

No. Metode Pengurung Metode Terbuka


1. Selama proses akar fungsi selalu diapit Selama proses akar fungsi tidak perlu di-
interval apit interval
2. Proses pasti konvergen. Proses tidak selalu konvergen.
3. Kekonvergenan lebih lambat. Kekonvergenen lebih cepat.

Latihan: Tuliskan persamaan dan perbedaan antara metode Posisi Palsu dengan metode
Tali Busur.

2.8 Modifikasi Metode Newton untuk Polinom


Rumus (2) pada metode Newton merupakan bentuk umum yang dapat diterapkan pada se-
barang fungsi. Bila fungsi yang akan dicari akarnya berupa polinom, maka perhitungan pada
rumus tersebut dapat dibuat efisien, dalam arti lebih singkat dan akurat (proses pembulatan
di komputer menjadi lebih sedikit). Hal ini dilakukan dengan mengoptimalkan proses pada
perhitungan nilai fungsi dan nilai turunannya.

Perhatikan suatu polinom derajat n, p(x) = a0 + a1 x + a2 x2 + · · · + an xn , an 6= 0. di


dalam komputer/kalkulator, untuk menghitung xn setara dengan proses perkalian sebanyak
n kali. Misalkan z suatu bilangan real. Bila kita menghitung nilai p(z) dari rumus tersebut
secara langsung, yaitu p(z) = a0 + a1 z + a2 z 2 + · · · + an z n , maka banyaknya operasi perkalian
yang dilakukan adalah 1 + 2 + · · · + n = 21 n(1 + n) = 12 (n + n2 ). Jadi operasi perkaliannya
berorde O(n2 ). Untuk penerapan metode Newton, kita juga perlu menghitung p ′ (z) dan
jumlah operasi perkaliannya berorde O(n2 ). Pada pasal ini kita akan membahas metode
untuk menghitung nilai tersebut dengan cara yang lebih efisien.

Catatan: Pada perhitungan di ataS kita tidak memperdulikan operasi pertambahan karena
operasi ini memerlukan waktu komputasi yang jauh lebih kecil dari operasi perkalian.

Untuk mengefisienkan perhitungan p(z), kita susun urutan operasi perhitungannya sebagai
berikut:

p(z) = ao + a1 + (a2 + ( · · · an−3 + (an−2 + (an−1 + an z)z)z · · · )z)z

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 28

Dengan cara seperti di atas,maka operasi kali yang diperlukan hanya sebanyak n buah, su-
atu penurunan yang sangat drastis dari operasi perhitungan langsung. Cara seperti ini
dinamakan perkalian bersarang yang ekivalen dengan metode Horner.

Dalam bentuk algoritma, proses perkalian tersebut dapat dilakukan sebagai berikut:

1. bn := an
2. Untuk i := n − 1, n − 2, ..., 0 (4)
bi := ai + bi+1 ∗ z

Bila algoritma tersebut dijalankan maka nilai p(z) akan tersimpan pada variabel b0 .

Sifat 7 Misalkan bn , bn−1 , · · · , b1 adalah koefisien-koefisien yang dihasilkan dari algoritma


(4). Sebut q(x) = bn xn−1 + bn−1 xn−2 + · · · + b2 x + b1 , maka p(x) = (x − z) q(x) + b0 .

Dari sifat di atas maka p ′ (x) = q(x)+(x−z)q ′ (x). Dengan demikian p ′(z) = q(z). Kesimpu-
lan p ′ (z) = bn z n−1 +bn−1 z n−2 +· · ·+b2 z +b1 . Untuk Kembali kita terapkan metode perkalian
bersarang untuk menghitung nilai p ′ (z). Bila algoritma perhitungan p(z) dan p ′ (z) ditulis
bersamaan maka bentuknya adalah:

1. bn := an
2. cn := bn
3. Untuk i := n − 1, n − 2, ..., 1
bi := ai + bi+1 ∗ z (5)
ci := bi + ci+1 ∗ z
4. b0 := a0 + b1

Bila algoritma (5) dijalankan maka p(z) dan p ′(z) akan tersimpan di variabel b0 dan c1 .

Berdasarkan metode perkalian bersarang, maka algoritma penerapan metode Newton untuk
polinom akan berbentuk sebagai berikut:

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 29

Algoritma Metode Newton-Raphson untuk Polinom

Masukan: n derajat polinom


a[i], i:= 0,1, ..., n koefisien-koefisien polinom
z tebakan awal
eps batas galat
maks batas maksimum iterasi
Keluaran: akar akar dari fungsi f(x)
Langkah-Langkah:
1. iter := 1;
2. b[n] := a[n]
3. c[n] := b[n]
4. Untuk i := n-1, n-2, ..., 1
b[i] := a[i] + b[i+1] * z
c[i] := b[i] + c[i+1] * z
5. b[0] := a[0] + b[1] * z
6. Jika |c[1]| < 1.0E-12 maka ’proses gagal’, stop
7. zbaru := z - b[0] / c[1]
8. delta := |zbaru - z| / |zbaru|
9. Jika delta < eps maka akar := zbaru, selesai
10. z := zbaru;
11. iter := iter + 1;
12. Jika iter > maks maka ’proses belum konvergen’, stop
13. kembali ke langkah 2

Catatan: Pada algoritma di atas, penulisan indeks dilakukan memakai kurung siku, jadi
b[i] artinya bi .

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 30

3 Matriks dan Sistem Persamaan Linear

3.1 Bentuk-Bentuk Matriks


     
x 0 0 0 0 0 x x x x x x x 0 0 0 0 0
 0 x 0 0 0 0   0 x x x x x   x x 0 0 0 0 
     
 0 0 x 0 0 0   0 0 x x x x   x x x 0 0 0 
     
 0 0 0 x 0 0   0 0 0 x x x   x x x x 0 0 
     
 0 0 0 0 x 0   0 0 0 0 x x   x x x x x 0 
0 0 0 0 0 x 0 0 0 0 0 x x x x x x x
matriks diagonal matriks segitiga atas matriks segitiga bawah
aij = 0 untuk i 6= j aij = 0 untuk i > j aij = 0 untuk i < j

   
x x 0 0 0 0 x x x 0 0 0
 x x x 0 0 0   x x x x 0 0  Pada kelima matriks terse-

 0 x x x 0 0 
 
 x x x x x 0 
 but tanda ’x’ boleh bernilai

 0 0 x x x 0 
 
 0 x x x x x 
 nol.
   
 0 0 0 x x x   0 0 x x x x 
0 0 0 0 x x 0 0 0 x x x
matriks tridiagonal matriks Hessenberg
aij = 0 untuk |i − j| ≥ 2 aij = 0 untuk |i − j| ≥ 3

3.2 Sistem Persamaan Linear (SPL)


Bentuk umum:



 a11 x1 + a12 x2 + a13 x3 + · · · + a1n xn = b1
 a21 x1 + a22 x2 + a23 x3 + · · · + a2n xn = b2



a31 x1 + a32 x2 + a33 x3 + · · · + a3n xn = b3 (6)
 .. .. ..



 . . .
 a x + an2 x2 + an3 x3 + · · · + ann xn = bn
n1 1

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 31

Contoh-contoh:
3x1 + 4x2 = 11 3x1 + 4x2 = 11 3x1 + 4x2 = 11
4x1 − 3x2 = −2 6x1 + 8x2 = 22 6x1 + 8x2 = 14

Diskusi: Bahas penyelesaian dari ketiga SPL di atas.

Matriks Koefisien dan Matriks Lengkap SPL:


   
a11 a12 a13 · · · a1n a11 a12 a13 · · · a1n | a1,n+1
 a21 a22 a23 · · · a2n   a21 a22 a23 · · · a2n | a2,n+1 
   
 a31 a32 a33 · · · a3n   a31 a32 a33 · · · a3n | a3,n+1 
 .. ..   .. .. .
   
| ..

 . .   . . 
an1 an2 an3 · · · ann an1 an2 an3 · · · ann | an,n+1

Operasi Baris Elementer:

• Menukarkan dua buah baris


• Mengalikan suatu baris dengan suatu konstanta tak nol
• Menambahkan k kali baris ke-i pada baris ke-j.

Sifat: OBE tidak mengubah penyelesaian SPL.

3.3 Sistem Persamaan Linear Segitiga Atas dan Bawah


Sistem Persamaan linear (SPL) segitiga atas adalah SPL dengan matriks koefisien berbentuk
matrik segitiga atas. Bentuk umum dari SPL segitiga atas adalah sebagai berikut:


 a11 x1 + a12 x2 + a13 x3 + · · · + a1,n−1 xn−1 + a1n xn = b1
a x + a x + · · · + a x + a2n xn = b2



 22 2 23 3 2,n−1 n−1
a33 x3 + · · · + a3,n−1 xn−1 + a3n xn = b3


. .. .. (7)


 .



 an−1,n−1 xn−1 + an−1,n xn = bn−1
 a x = b
nn n n

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 32

Penulisan SPL tersebut dalam bentuk matriks lengkap akan berbentuk:

 
a11 a12 a13 · · · a1,n−1 a1n | b1

 a22 a23 · · · a2,n−1 a2n | b2 

 a33 · · · a3,n−1 a3n | b3 
.. (8)
 
..
.
 

 . | 

 an−1,n−1 an−1,n | bn−1 
ann xn | bn

Sifat 8 SPL segitiga atas mempunyai penyelesaian tunggal jika dan hanya jika setiap ele-
men diagonal dari matriks koefisiennya tidak nol, yaitu akk 6= 0, k = 1, 2, · · · , n.

Untuk mendapatkan penyelesaian dari SPL segitiga atas, secara berturutan kita hitung:

xn := bn / ann




xn−1 := (bn−1 − an−1,n xn ) / an−1,n−1









 xn−2 := (bn−2 − (an−2,n−1 xn−1 + an−2,n xn )) / an−2,n−2
..




 .
 n
 (9)
P
xk := bk − ak,i xi / akk





 i=k+1

 ..
.




  
n


 P
 x

1 := b − 1 a x /a
k,i i 11
i=2

Proses perhitungan di atas dinamakan penyulihan mundur (back substitution) karena


kita menghitung mulai dari solusi dengan indeks terbesar yaitu xn dan berakhir dengan x1 .

Berikut ini disajikan algoritma untuk mencari solusi SPL segitiga atas. Dalam setiap iterasi,
sebelum nilai xk dihitung, dilakukan pemeriksaan terhadap elemen diagonalnya akk . Bila ni-
lai elemen tersebut bernilai nol maka proses dihentikan. Untuk memudahkan pemrograman
di komputer, matriks koefisien dan nilai SPL (vektor ~b) akan disimpan pada matriks yang
sama yaitu A. Nilai SPL tersebut akan diletakkan pada kolom ke n+1 dari matriks A.

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 33

Algoritma Penyulihan Mundur

Masukan: n ukuran SPL


a[i,j] i := 1,2, ...,n j := i, i+1 , ...,n, n+1
Keluaran: x[i] i := 1,2, ...,n solusi SPL
Langkah-Langkah:
1. Jika |a[n,n]| < 1E-15 maka ’proses gagal’, stop
2. x[n] := a[n, n+1] / a[n,n]
3. Untuk k := n-1, n-2, ..., 1
jika |a[k,k]| < 1E-15 maka ’proses gagal’, stop
s := 0
Untuk i := k+1, k+2, ..., n
s := s + a[k,i] * x[i]
x[k] := (a[k,n+1] - s) / a[k,k]

Suatu SPL disebut SPL segitiga bawah bila matriks koefisien dari SPl tersebut berbentuk
segitiga bawah.

Latihan: Tuliskan bentuk umum SPL segitiga bawah dalam bentuk umum dan dalam repre-
sentasi matriks lengkap, lalu buat algoritma untuk mencari penyelesaiannya. Algoritmanya
dinamakan Penyulihan maju.

Dari pembicaraan pada subpasal ini terlihat untuk SPL segitiga atas/bawah pencarian penye-
lesaiannya relatif sangat mudah. Pada bahasan berikutnya kita akan memperumum per-
masalahan pada SPL umum.

3.4 Metode Eliminasi Gauss


Pada bagian ini kita akan membahas metode untuk menyelesaikan persamaan linear umum.
Meskipun yang dibahas adalah SPL umum, tetapi akan dibatasi pada SPl dengan ukuran
n × n.

Bentuk umum dari SPL umum ukuran n × n adalah sebagai berikut:



 a11 x1 + a12 x2 + a13 x3 + · · · + a1n xn = b1
 a21 x1 + a22 x2 + a23 x3 + · · · + a2n xn = b2



a31 x1 + a32 x2 + a33 x3 + · · · + a3n xn = b3 (10)
 .. .. ..



 . . .
 a x + an2 x2 + an3 x3 + · · · + ann xn = bn
n1 1

Salah satu metode numerik yang banyak digunakan untuk mencari penyelesaian dari SPL
tersebut adalah metode Eliminsai Gauss. Metode ini terdiri dari dua langkah besar.

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 34

Langkah pertama dinamakan proses eliminasi, yaitu mengubah SPL semula menjadi SPL
segitiga atas melalui serangkaian operasi baris elementer (OBE). Seperti telah dijelaskan
di bagian pendahuluan, operasi ini tidak mengubah solusi dari SPL semula. Selanjutnya
tahap kedua adalah menyelesaikan SPL segitiga atas yang terbentuk dengan menggunakan
penyulihan mundur.

Berikut ini akan dijelaskan proses rinci dari tahap eliminasi Gauss. Rincian proses ini perlu
dipahami untuk dapat menyusun algoritmanya. Perhatikan SPL (10) yang dituliskan dalam
bentuk matriks lengkap sebagai berikut:
 
a11 a12 a13 · · · a1n | a1,n+1
 a21 a22 a23 · · · a2n | a2,n+1 
 
 a31 a32 a33 · · · a3n | a3,n+1 
(11)
 .. .. ..
 

 . . | . 
an1 an2 an3 · · · ann | an,n+1

Untuk memudahkan penjelasan, notasi {b}k dipakai untuk menyatakan baris ke k dari ma-
triks lengkap SPL. Jadi penulisan {b}3 − 7{b}5 artinya ”isi baris ke 3 dikurangi dengan 7
kali isi baris ke lima”.

Langkah pertama dari tahap eliminasi adalah membuat agar elemen-elemen kolom pertama
mulai baris ke 2, 3 sampai ke n (a11 , a21 , · · ·, an1 ) menjadi nol. Gambarannya adalah sebagai
berikut:
   
a11 a12 a13 · · · a1n | a1,n+1 a11 a12 a13 · · · a1n | a1,n+1
 a21 a22 a23 · · · a2n | a2,n+1   0 a22 a23 · · · a2n | a2,n+1 
   
 a31 a32 a33 · · · a3n | a3,n+1   0 a a · · · a | a
 ∼  (12)
32 33 3n

3,n+1 
 .. .. ..  .. .. ..

 
 . . | .   . . | . 
an1 an2 an3 · · · ann | an,n+1 0 an2 an3 · · · ann | an,n+1

Catatan:
a. Notasi ’∼’ diantara kedua matriks di atas menyatakan bahwa proses yang dilakukan
adalah melalui serangkaian OBE sehingga penyelesaian SPL tidak berubah.
b. Pada kedua matriks lengkap di atas, meskipun kita menggunakan notasi yang
sama untuk menyatakan elemen-elemennya tetapi isinya tidak perlu sama. Jadi
nilai ai,j pada SPL di kiri mungkin berbeda dengan ai,j pada SPL di sebelah kanan.
Pemakaian notasi yang sama ditujukan untuk keperluan pada pemrograman kom-
puter.

Berikut ini disajikan rincian langkah perlangkah untuk melakukan transformasi seperti digam-
barkan pada (12). Untuk membuat nol elemen a2,1 dari (10) kita lakukan OBE: (b)2 − p(b)1

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 35

(isi baris 2 dikurangi dengan p kali isi baris pertama kemudian hasilnya ditimpakan pada isi
baris ke dua) dengan p = a21 /a11 . Proses yang terjadi dapat dilihat pada (13).
   
a11 a12 a13 · · · a1n | a1,n+1 a11 a12 a13 · · · a1n | a1,n+1
 a21 a22 a23 · · · a2n | a2,n+1   0 a22 a23 · · · a2n | a2,n+1 
   
 a31 a32 a33 · · · a3n | a3,n+1   a31 a32 a33 · · · a3n | a3,n+1 
 ∼   (13)
 .. .. ..  .. .. ..

 
 . . | .   . . | . 
an1 an2 an3 · · · ann | an,n+1 an1 an2 an3 · · · ann | an,n+1

Penggalan algoritma di samping meru- 1. p := a[2,1] / a[1,1]


pakan rincian dari proses mengeliminasi 2. Untuk j := 2, 3, ..., n+1
elemen a2,1 a[2,j] := a[2,j] - p * a[1,j]
3. a[2,1] := 0;

Untuk selanjutnya kita lakukan proses 1. p := a[3,1] / a[1,1]


perhitungan (b)3 − p(b)1 dengan 2. Untuk j := 2, 3, ..., n+1
p = a31 /a11 . Proses ini akan men- a[3,j] := a[3,j] - p * a[1,j]
gakibatkan elemen a3,1 menjadi nol. 3. a[3,1] := 0;
Algoritmanya dapat dilihat di samping
kanan.

Proses yang sama kita teruskan un- Untuk i := 2, 3, ..., n


tuk mengeliminasi elemen-elemen
p := a[i,1] / a[1,1]
a4,1 , a5,1 , · · · , an, 1. Keseluruhan langkah
Untuk j := 2, 3, ..., n+1
eliminasi pada kolom pertama dari (10) a[i,j] := a[i,j] - p * a[1,j]
dapat dilihat pada algoritma di samping a[i,1] := 0;
kanan. Bila algoritma tersebut dijalankan  
maka hasilnya adalah matriks seperti a11 a12 a13 · · · a1n | a1,n+1
 0 a22 a23 · · · a2n | a2,n+1 
pada (14).  
 0 a32 a33 · · · a3n | a3,n+1 
 (14)
 .. .. ..


 . . | . 
0 an2 an3 · · · ann | an,n+1
Langkah kedua adalah mengeliminasi kolom ke dua dari matriks lengkap SPL (14). Proses
yang dilakukan persis sama dengan tahap eliminasi kolom pertama, hanya sekarang kita
kenakan pada submatriks:
 
a22 a23 · · · a2n | a2,n+1
 a32 a33 · · · a3n | a3,n+1 
 .. .. .. (15)
 

 . . | . 
an2 an3 · · · ann | an,n+1

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 36

Berikut ini disajikan algoritma untuk mengeliminasi kolom ke dua dari matriks lengkap SPL
(14) dan hasilnya adalah matriks pada (16).
 
Untuk i := 3, ..., n a11 a12 a13 · · · a1n | a1,n+1
 0 a22 a23 · · · a2n | a2,n+1 
p := a[i,2] / a[2,2]  
 0 0 a · · · a | a
Untuk j := 3, 4, ..., n+1 (16)
33 3n

3,n+1 
 .. .. ..

a[i,j] := a[i,j] - p * a[2,j]

 . . | . 
a[i,2] := 0; 0 0 an3 · · · ann | an,n+1
Selanjutnya kita lakukan langkah 3, 4, ..., n-1 secara berturutan untuk mengeliminasi kolom
ke 3, 4, ..., n-1. Hasilnya akhir dari tahap eliminasi ini adalah suatu SPL segitiga atas.
Penyelesaian SPL dapat diperoleh dengan menjalankan algoritma penyulihan mundur ter-
hadapa SPL segitiga atas tersebut (lihat halaman 33).

Algoritma Eliminasi Gauss

Masukan: n ukuran SPL


a[i,j] i := 1,2, ...,n j := 1, 2, ...,n, n+1
Keluaran: x[i] i := 1,2, ...,n solusi SPL
Langkah-Langkah:
1. (* tahap eliminasi *)
Untuk k := 1, 2, ..., n-1
Jika |a[k,k]| < 1E-15 maka ’proses gagal’, stop
Untuk i := k+1, k+2, ..., n
p := a[i,k] / a[k,k]
Untuk j := k+1, k+2, ..., n+1
a[i,j] := a[i,j] - p * a[k,j]
a[i,k] := 0
2. (* tahap penyulihan mundur *)
Jika |a[n,n]| < 1E-15 maka ’proses gagal’, stop
x[n] := a[n,n+1] / a[n,n]
Untuk k := n-1, n-2, ..., 1
s := 0
Untuk i := k+1, k+2, ..., n
s := s + a[k,i] * x[i]
x[k] := (a[k,n+1] - s) / a[k,k]

Catatan: elemen pembagi pada tahap eliminasi, yaitu a[k,k]) dinamakan sebagai elemen
penumpu (pivot).

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 37

Contoh: Tuliskan SPL berikut ini dalam bentuk matriks lengkap lalu terapkan metode
Eliminasi Gauss untuk mencari penyelesaiannya:



 x1 + 2x2 + x3 + 4x4 = 13
2x1 + 4x3 + 3x4 = 28

(17)

 4x1 + 2x2 + 2x3 + x4 = 20
−3x1 + x2 + 3x3 + 2x4 = 6

Jawab:
   
1 2 1 4 13 1 2 1 4 13
b2 ← b2 − 21 b1  −6
 2 0 4 3 28  0 −4 2 −5 2 
 b3 ← b3 − b2
  b3 ← b3 − 41 b1  −4
7
4 2 2 1 20  0 −6 −2 15 −32  b4 ← b4 − b2
b4 ← b4 − −3
  −4
1 b1
−3 1 3 2 6 0 7 6 14 45
   
1 2 1 4 13 1 2 1 4 13

 0 −4 2 −5 2  
 b4 ← b4 − 9.5 b3  0 −4 2 −5 2 

 0 0 −5 −7.5 −35  −5  0 0 −5 −7.5 −35 
0 0 9.5 5.25 48.5 0 0 0 −9 −18

Selanjutnya penyelesaian SPL dicari dengan penyulihan mundur dan diperoleh:

x4 := 2, x3 := 4, x2 := −1, x1 := 3.

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 38

3.5 Teknik Penumpuan pada Eliminasi Gauss


Bila dicermati, algoritma eliminasi Gauss yang telah dibahas memepunyai beberapa kelema-
han, diantaranya:

1. Proses eliminasi tidak dapat dilakukan bila elemen penumpu/pivot bernilai nol.
2. Bila nilai mutlak dari elemen pivot sangat kecil maka pada realisasi di komputer
akan menimbulkan perambatan galat pembulatan yang besar.
Untuk memperbaikinya, kita perlu memilih elemen penumpu yang nilai mutlaknya besar.
Hal ini direalisasikan dengan melakukan pertukaran baris dan/atau kolom pada matriks
lengkap SPL. Pertukaran baris tidak akan mengubah penyelesaian SPL (mengapa), sedan-
gkan pertukaran kolom akan menyebabkan urutan x1 , x2 , · · · , xn jadi berubah. Teknik pemil-
ihan elemen penumpu ini dinamakan teknik penumpuan/pivoting.

Ada beberapa macam teknik penumpuan yang dikenal, diantaranya adalah penumpuan
total, penumpuan parsial dan penumpuan parsial terskala.

Perhatikan langkah ke k dari tahap eliminasi. Pada penumpuan total elemen penumpu dip-
ilih dari max |ai,j |. Pada penumpuan parsial, elemen penumpunya diambil dari max |ai,k |,
k≤i,j≤n k≤i≤n
sedngkan pada penumpuan parsial terskala elemen penumpu ditentukan dari max |ai,k /ak,k |.
k≤i≤n
Setelah elemen penumpu tersebut dipilih, kita harus menempatkannya pada posisi (k,k) dari
matriks lengkap SPL. Untuk penumpuan total perlu dilakukan pertukaran baruis dan kolom,
sedangkan pada penumpuan parsial terskala hanya memerlukan pertukaran baris saja karena
elemen penumpunya sudah diambil dari kolom ke k.

Berikut ini disajikan proses pencarian penyelesaian SPL pada pasal sebelumnya memakai
teknik penumpuan parsial. Elemen yang diberi kotak adalah elemen penumpu.
   
1 2 1 4 13 4 2 2 1 20
 2 0 4 3 28   2 0 4 3 28  b2 ← b2 − 24 b1

 4 2 2 1 20 
 b1 ←→ b3 
 1 2 1 4 13 
 b3 ← b3 − 14 b1
b4 ← b4 − −34 b1
−3 1 3 2 6 −3 1 3 2 6
   
4 2 2 1 20 4 2 2 1 20
 0 −1 3 2.5 18   0 2.5 4.5 2.75 21  b3 ← b3 − 1.5 b2
 b2 ←→ b4 2.5
 0 1.5 0.5 3.75 8  b4 ← b4 − −1
  
 0 1.5 0.5 3.75 8  2.5 b2
0 2.5 4.5 2.75 21 0 −1 3 2.5 18
   
4 2 2 1 20 4 2 2 1 20
 0 2.5 4.5 2.75 21   0 2.5 4.5 2.75 21 
b3 ←→ b4 b ← b4 − −2.2 b3
4.8 3.6 26.4  4
 
 0 0 −2.2 2.1 −4.6   0 0 4.8

0 0 4.8 3.6 26.4 0 0 −2.2 2.1 −4.6

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 39

 
4 2 2 1 20
 0 2.5 4.5 2.75 21 
 
 0 0 4.8 3.6 26.4 
0 0 0 3.75 7.5

x4 := 7.5/3.75 = 2
x3 := (26.4 − 2 ∗ 3.6)/4.8 = 4
x2 := (21 − 4.5 ∗ 4 − 2.75 ∗ 2)/2.5 = −1
x4 := (20 − 2 ∗ (−1) − 2 ∗ 4 − 1 ∗ 2)/4 = 3

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 40

Algoritma Eliminasi Gauss dengan Penumpuan Parsial

Masukan: n ukuran SPL


a[i,j] i := 1,2, ...,n j := 1, 2, ...,n, n+1
Keluaran: x[i] i := 1,2, ...,n solusi SPL
Langkah-Langkah:
1. (* tahap eliminasi *)
Untuk k := 1, 2, ..., n-1

m := k;
Untuk i := k+1, k+2, ..., n
Jika |a[i,k]| > |a[m,k]| maka m := i;
Jika m <> k maka
Untuk j := k, k+1, ..., n+1
s := a[k,j]
a[k,j] := a[m,j]
a[m,j] := s

Jika |a[k,k]| < 1E-15 maka ’proses gagal’, stop


Untuk i := k+1, k+2, ..., n
p := a[i,k] / a[k,k]
Untuk j := k+1, k+2, ..., n+1
a[i,j] := a[i,j] - p * a[k,j]
a[i,k] := 0
2. (* tahap penyulihan mundur *)
Jika |a[n,n]| < 1E-15 maka ’proses gagal’, stop
x[n] := a[n,n+1] / a[n,n]
Untuk k := n-1, n-2, ..., 1
s := 0
Untuk i := k+1, k+2, ..., n
s := s + a[k,i] * x[i]
x[k] := (a[k,n+1] - s) / a[k,k]

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 41

3.6 Beberapa SPL dengan matriks koefisien sama


Perhatikan
 dua SPL berikut ini: 

 x1 + 2x2 + x3 + 4x4 = 13 
 x1 + 2x2 + x3 + 4x4 = 8
2x1 + 4x3 + 3x4 = 28 2x1 + 4x3 + 3x4 = 9
 

 4x1 + 2x2 + 2x3 + x4 = 20 
 4x1 + 2x2 + 2x3 + x4 = 9
−3x1 + x2 + 3x3 + 2x4 = 6 −3x1 + x2 + 3x3 + 2x4 = 3
 

Kedua SPL tersebut mempunyai matriks koefisien yang sama. Proses untuk penyelesaianya
dapat dilakukan secara simultan dengan menuliskan dalam bentuk matriks lengkap sebagai
berikut:

 
1 2 1 4 | 13 8
 2 0 4 3 | 28 9 

 4
 (18)
2 2 1 | 20 9 
−3 1 3 2 | 6 3

Selanjutnya melalui serangkaian OBE, kita ubah matriks lengkap tersebut menjadi SPL se-
gitiga atas sbb:

 
x x x x | x x
 0 x x x | x x 
 
 0 0 x x | x x 
0 0 0 x | x x

Langkah terakhir adalah melakukan proses penyulihan mundur pada masing masing SPL
segitiga atas tersebut.

Latihan: Selesaikan SPL (18) secara simultan dengan menggunakan eliminasi Gauss memakai
penumpuan parsial.

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 42

3.7 Perhitungan Determinan


n
Q
Sifat 9 Misalkan [A]n×n matriks segitiga atas, maka det(A) = aii
i=1

Untuk melakukan perhitungan determinan terhadap matriks sebarang, kita lakukan serangka-
ian OBE terhadap metriks tersebut untuk mengubahnya menjadi matriks segitiga atas. be-
berapa hal perlu diperhatikan pada saat melakukan proses OBE, yaitu:

1. Penukaran dua buah baris akan membuat nilai determinan matriks yang baru
merupakan negatif dari determinan matriks semula.
2. Bila suatu baris dikali dengan konstanta k maka nilai determinannya menjadi k
kali nilai determinan matriks semula.
3. Bila suatu baris ditambah dengan k kali baris yang lain, nilai determinannya tidak
berubah.

Contoh: Gunanakn metode eliminasi Gauss dengan penumpuan parsial untuk menentukan
nilai determinan dari:

 
4.000 −5.000 −2.500 −0.500
 −2.000 2.000 −3.000 1.000 
 
 −2.000 −4.500 2.500 −5.000 
4.500 1.000 −3.500 3.000

Latihan: Tuliskan Algoritma Eliminasi Gauss dengan penumpuan parsial untuk menghitung
determinan dari suatu matriks.

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 43

3.8 Perhitungan Invers Matriks


 
a11 a12 a13 a14
 a21 a22 a23 a24 

 a31
 (19)
a32 a33 a34 
a41 a42 a43 a44
 
a11 a12 a13 a14 | 1 0 0 0
 a21 a22 a23 a24 | 0 1 0 0 
 
 a31 a32 a33 a34 | 0 0 1 0 
a41 a42 a43 a44 | 0 0 0 1

Lakukan OBE untuk mengubah bentuk di atas menjadi:

 
1 0 0 0 | x x x x
 0 1 0 0 | x x x x 

 0
 (20)
0 1 0 | x x x x 
0 0 0 1 | x x x x

Invers dari matriks (19) adalah matriks pada bagian kanan dari 20.

Contoh: Terapkan metode Gauss-Jordan dengan penumpuan Parsial untuk menentukan


matriks invers dari:

 
4.000 −5.000 −2.500 −0.500
 −2.000 2.000 −3.000 1.000 
 
 −2.000 −4.500 2.500 −5.000 
4.500 1.000 −3.500 3.000

Jawab:

 
4.000 −5.000 −2.500 −0.500 | 1.000 0.000 0.000 0.000
 −2.000 2.000 −3.000 1.000 | 0.000 1.000 0.000 0.000 
 ∼
 −2.000 −4.500 2.500 −5.000 | 0.000 0.000 1.000 0.000 
4.500 1.000 −3.500 3.000 | 0.000 0.000 0.000 1.000
 
4.500 1.000 −3.500 3.000 | 0.000 0.000 0.000 1.000
 −2.000 2.000 −3.000 1.000 | 0.000 1.000 0.000 0.000 
 ∼
 −2.000 −4.500 2.500 −5.000 | 0.000 0.000 1.000 0.000 
4.000 −5.000 −2.500 −0.500 | 1.000 0.000 0.000 0.000

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 44

 
1.000 0.222 −0.778 0.667 | 0.000 0.000 0.000 0.222
 −2.000 2.000 −3.000 1.000 | 0.000 1.000 0.000 0.000 
 ∼
 −2.000 −4.500 2.500 −5.000 | 0.000 0.000 1.000 0.000 
4.000 −5.000 −2.500 −0.500 | 1.000 0.000 0.000 0.000
 
1.000 0.222 −0.778 0.667 | 0.000 0.000 0.000 0.222
 0.000 2.444 −4.556 2.333 | 0.000 1.000 0.000 0.444 
 ∼
 0.000 −4.056 0.944 −3.667 | 0.000 0.000 1.000 0.444 
0.000 −5.889 0.611 −3.167 | 1.000 0.000 0.000 −0.889
 
1.000 0.222 −0.778 0.667 | 0.000 0.000 0.000 0.222
 0.000 −5.889 0.611 −3.167 | 1.000 0.000 0.000 −0.889 
 ∼
 0.000 −4.056 0.944 −3.667 | 0.000 0.000 1.000 0.444 
0.000 2.444 −4.556 2.333 | 0.000 1.000 0.000 0.444
 
1.000 0.222 −0.778 0.667 | 0.000 0.000 0.000 0.222
 0.000 1.000 −0.104 0.538 | −0.170 0.000 0.000 0.151 
 ∼
 0.000 −4.056 0.944 −3.667 | 0.000 0.000 1.000 0.444 
0.000 2.444 −4.556 2.333 | 0.000 1.000 0.000 0.444
 
1.000 0.000 −0.755 0.547 | 0.038 0.000 0.000 0.189
 0.000 1.000 −0.104 0.538 | −0.170 0.000 0.000 0.151 
 ∼
 0.000 0.000 0.524 −1.486 | −0.689 0.000 1.000 1.057 
0.000 0.000 −4.302 1.019 | 0.415 1.000 0.000 0.075
 
1.000 0.000 −0.755 0.547 | 0.038 0.000 0.000 0.189
 0.000 1.000 −0.104 0.538 | −0.170 0.000 0.000 0.151 
 ∼
 0.000 0.000 −4.302 1.019 | 0.415 1.000 0.000 0.075 
0.000 0.000 0.524 −1.486 | −0.689 0.000 1.000 1.057
 
1.000 0.000 −0.755 0.547 | 0.038 0.000 0.000 0.189
 0.000 1.000 −0.104 0.538 | −0.170 0.000 0.000 0.151 
 ∼
 0.000 0.000 1.000 −0.237 | −0.096 −0.232 0.000 −0.018 
0.000 0.000 0.524 −1.486 | −0.689 0.000 1.000 1.057
 
1.000 0.000 0.000 0.368 | −0.035 −0.175 0.000 0.175
 0.000 1.000 0.000 0.513 | −0.180 −0.024 0.000 0.149 
 ∼
 0.000 0.000 1.000 −0.237 | −0.096 −0.232 0.000 −0.018 
0.000 0.000 0.000 −1.362 | −0.638 0.122 1.000 1.066
 
1.000 0.000 0.000 0.368 | −0.035 −0.175 0.000 0.175
 0.000 1.000 0.000 0.513 | −0.180 −0.024 0.000 0.149 
 ∼
 0.000 0.000 1.000 −0.237 | −0.096 −0.232 0.000 −0.018 
0.000 0.000 0.000 1.000 | 0.469 −0.089 −0.734 −0.783

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 45

 
1.000 0.000 0.000 0.000 | −0.208 −0.143 0.271 0.464
 0.000 1.000 0.000 0.000 | −0.420 0.022 0.377 0.551 
 
 0.000 0.000 1.000 0.000 | 0.014 −0.254 −0.174 −0.203 
0.000 0.000 0.000 1.000 | 0.469 −0.089 −0.734 −0.783

Algoritma Gauss-Jordan Gauss dengan Penumpuan Parsial

Masukan: n ukuran SPL


a[i,j] i := 1,2, ...,n j := 1, 2, ...,n
Keluaran: a[i,j] i := 1,2, .., n j := n+1, n+2, ..., 2*n
Langkah-Langkah:
1. (* Menambahkan matriks satuan *)
n2 := n * 2
Untuk i := 1, 2, ..., n
Untuk j := n+1, n+2, ...,n2
Jika i=j-n maka a[i,j] := 1 Jika tidak a[i,j] := 0
2. (* tahap eliminasi *)
Untuk k := 1, 2, ..., n

m := k;
Untuk i := k+1, k+2, ..., n
Jika |a[i,k]| > |a[m,k]| maka m := i;
Jika m <> k maka
Untuk j := k, k+1, ..., n2
s := a[k,j]
a[k,j] := a[m,j]
a[m,j] := s

Jika |a[k,k]| < 1E-15 maka ’proses gagal’, stop

p := a[k,k]
Untuk j := k, k+1, ..., n2
a[k,j] := a[k.j] /p

Untuk i := 1, 2, ..., n
Jika i <> k maka
p := a[i,k]
Untuk j := k+1, k+2, ..., n2
a[i,j] := a[i,j] - p * a[k,j]
a[i,k] := 0

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 46

3.9 Modifikasi Elimninasi Gauss untuk SPL Tridiagonal


Perhatikan SPL tridiagonal berikut:


 a11 x1 + a12 x2 = b1
a21 x1 + a22 x2 + a23 x3 = b2




a32 x2 + a33 x3 + a34 x4 = b3

(21)

 a43 x3 + a44 x4 + a45 x5 = b4
a54 x4 + a55 x5 + a56 x6 = b5




a65 x5 + a66 x6 = b6

Bila SPL (21) kita simpan dalam bentuk matriks lengkap, maka diperlukan memori sebanyak
n × n+1 buah. Sedangkan pada SPL tersebut banyak sekali yang koefisiennya bernilai nol.
Untuk itu, penyimpanan datanya tidak digunakan matriks tapi menggunakan empat buah
~ ~cdan~b sebagai berikut.
vektor ~a, d,


 d1 x1 + c1 x2 = b1
a x + d x + c x = b2

2 1 2 2 2 3



a3 x2 + d3 x3 + c3 x4 = b3


 a x
4 3 + d x
4 4 + c x
4 5 = b4
a5 x4 + d5 x5 + c5 x6 = b5




a6 x5 + d6 x6 = b6

Dalam bentuk matriks lengkap (menggunakan 4 buah vektor) bentuknya adalah sebagai
berikut:
 
d 1 c1 | b1
 a2 d2 c2 | b2 
 

 a3 d3 c3 | b3 


 a4 d4 c4 | b4 

 a5 d5 c5 | b5 
a6 d6 | b6

Selanjutnya SPL tersebut dapat diselesaikan dengan eliminasi Gauss. Agar bentuk tridiag-
onal ini dipertahankan, maka proses penumpuan tidak diijinkan. Jadi untuk SPL ini kita
hanya menggunakan metode eliminasi Gauss naif (tanpa penumpuan).

Latihan: Terapkan algoritma modifikasi eliminasi Gauss untuk mencari penyelesaian SPL
berikut ini:


 4x1 + 6x2 = 14
 2x1 − 3x2 + x3 = 3


9x2 − 4x3 − x4 = 0
5x3 − x4 − 2x5 = 5




− 4x4 + 4x5 = 4

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 47

Algoritma Modifikasi Eliminasi Gauss untuk SPL Tridiagonal

Masukan: n ukuran SPL


a[i], d[i], c[i], b[i] i := 1,2, ...,n

Keluaran: x[i] i := 1,2, .., n

Langkah-Langkah:
1. (* tahap eliminasi *)
Untuk k := 1, 2, ..., n-1
Jika |d[k]| < 1E-15 maka ’proses gagal’, stop
p := a[k+1] / d[k]
d[k+1] := d[k+1] - p * c[k]
b[k+1] := b[k+1] - p * b[k]
a[k+1] := 0

2. (* tahap penyulihan mundur *)


Jika |d[n]| < 1E-15 maka ’SPL singular’, stop
x[n] := b[n] / d[n]
Untuk k := n-1, n-2, ..., 1
x[k] := (b[k] - c[k] * x[k+1]) / d[k]

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 48

3.10 Dekomposisi / Faktorisasi Segitiga


Pada pasal ini akan dipelajari cara untuk memfaktorkan suatu matriks Anxn atas faktor ma-
triks segitiga atas dan segitiga bawah.

A = LU (22)
dengan L matriks segitiga bawah dan U matriks segitiga atas.

Salah satu kegunaan dari faktorisasi segitiga ini adalah untuk menyelesaikan suatu SPL yang
matriks koefisiennya sama tetapi nilai SPL-nya (ruas kanan SPL) berbeda-beda.
Misalkan kita mempunyai SPL A~x = ~b dan matriks A telah difaktorkan menjadi A = LU.
Langkan untuk mencari penyelesaiannya adalah sebagai berikut:

A~x = ~b

(LU) ~x = ~b

L (U~x) = ~b

Misalkan ~y = U~x. Kita selesaikan SPL segitiga bawah L~y = ~b dengan penyulihan maju.
Setelah vektor ~y diperoleh selanjutnya vektor ~x dapat dicari dari persamaan U~x = ~y dengan
memakai penyulihan mundur.

Secara umum, faktorisasi (22) tidak tunggal. Agar hasilnya tunggal biasanya dilakukan
dengan memilih matriks L atau U yang memiliki sifat tertentu.
Beberapa faktorisasi yang dikenal:

a. Pada Dekomposisi Doolitle, elemen diagonal dari matriks L dipilih bernilai 1.


b. Pada Dekomposisi Crout, elemen diagonal dari matriks U dipilih bernilai 1.
c. Bila matriks A bersifat simetri, matriks U dibuat sama dengan Lt . Metode ini
dinamakan dekomposisi Cholesky.

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 49

3.10.1 Decomposisi Doolitle


     
a11 a12 a13 · · · a1n 1 0 0 ··· 0 u11 u12 u13 · · · u1n
     
 a21 a22 a23 · · · a2n   l21 1 0 ··· 0   0 u22 u23 · · · u2n 
     
     
 a31 a32 a33 · · · a3n   l31 l32 1 ··· 0  · 0 0 u33 · · · u3n 
 =   
 . ..  .. ..  .. .. 
 ..
 
 .  
  . .  
  . . 

     
an1 an2 an3 · · · ann ln1 ln2 ln3 ··· 1 0 0 0 · · · unn

Langkah-langkah Perhitungan Dekomposisi Doolitle


• Kalikan baris satu dari matriks L dengan matriks U,
diperoleh nilai-nilai u11 , u12 , u13, · · · , u1n .
• Kalikan matriks L dengan kolom satu dari matriks U,
diperoleh nilai-nilai l21 , l31 , l41 , · · · , ln1 .
• Kalikan baris dua dari matriks L dengan matriks U,
diperoleh nilai-nilai u22 , u23 , u24, · · · , u2n .
• Kalikan matriks L dengan kolom dua dari matriks U,
diperoleh nilai-nilai l32 , l42 , l52 , · · · , ln2 .
• Proses yang serupa dilakukan sampai elemen-elemen matriks L dan U semuanya ter-
hitung.

3.10.2 Decomposisi Crout


     
a11 a12 a13 · · · a1n l11 0 0 ··· 0 1 u12 u13 · · · u1n
     
 a21 a22 a23 · · · a2n   l21 l22 0 ··· 0   0 1 u23 · · · u2n 
     
 a31 a32 a33 · · · a3n l31 l32 l33 · · · 0 · 0 0 1 · · · u3n 
     
=
 
   
 . .. .. ..  .. .. 
 ..
  
 .  
  . .  
  . . 

     
an1 an2 an3 · · · ann ln1 ln2 ln3 · · · lnn 0 0 0 ··· 1

3.10.3 Decomposisi Cholesky


     
a11 a12 a13 · · · a1n l11 0 0 ··· 0 l11 l21 l31 · · · ln1
     
 a12 a22 a23 · · · a2n   l21 l22 0 ··· 0   0 l22 l32 · · · ln2 
     
 a13 a23 a33 · · · a3n   l31 l32 l33 · · · 0 · 0 0 l33 · · · un3 
     
 =   
 . . .. ..  .. .. 
 .. ..  
  
   . .  
  . . 

     
a1n a2n a3n · · · ann ln1 ln2 ln3 · · · lnn 0 0 0 · · · lnn

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 50

3.11 Metode Iterasi untuk menyelesaikan SPL


3.11.1 Metode Jacobi


 a11 x1 + a12 x2 + a13 x3 + · · · + a1n xn = b1
 a21 x1 + a22 x2 + a23 x3 + · · · + a2n xn = b2



a31 x1 + a32 x2 + a33 x3 + · · · + a3n xn = b3 (23)
 .. .. ..



 . . .
 a x + a x + an3 x3 + · · · + ann xn = bn
n1 1 n2 2

Bentuk rumus iterasi:

 k+1 

 x1 = b1 − (a12 xk2 + a13 xk3 + · · · + a1n xkn ) /a11


 xk+1 b2 − (a21 xk1 + a23 xk3 + · · · + a2n xkn ) /a22

=


2
.. (24)

 .

 
 xk+1 = bn − (an1 xk1 + an2 xk2 + · · · + an,n−1 xkn−1 ) /ann


n

atau secara umum:


 
n
X
xk+1 := bi − aij xkj  /aii
 
i
j=1
j6=i

Catatan: indeks k pada rumus iterasi di atas bukan menyatakan pangkat, tetapi merupakan
nomor iterasi.

Ambil Tebakan awal ~x = (x01 , x02 , · · · , x0n ).

Kriteria penghentian iterasi:

ak+1
i − aki
max | | < eps
1≤i≤n ak+1
i

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 51

Contoh: Terapkan iterasi Jacobi pada SPL berikut ini:



 8.00x1 + 3.00x2 + −2.00x3 + 1.00x4 = 2.00
4.00x1 + 12.00x2 + 4.00x3 + 3.00x4 = −7.00


 2.00x1 + −2.00x2 + 9.00x3 + 3.00x4 = 10.00
1.00x1 + 2.00x2 + 4.00x3 + 8.00x4 = −5.00

Rumus iterasi Jacobi untuk SPL dI atas adalah:

 k+1

 x1 = (2.00 − 3.00xk2 + 2.00xk3 − 1.00xk4 )/8.00

 xk+1 = (−7.00 − 4.00xk1 − 4.00xk3 − 3.00xk4 )/12.00


2


 xk+1
3 = (10.00 − 2.00xk1 + 2.00xk2 − 3.00xk4 )/9.00

 xk+1 = (−5.00 − 1.00xk1 − 2.00xk2 − 4.00xk3 )/8.00


4

Dengan menggunakan tebakan awal X 0 = (2, 2, 6, 3) dan kriteria galat eps = 1E-6, diperoleh
hasil sebagai berikut:

k x1 x2 x3 x4

1 0.62500 −4.00000 0.11111 −4.37500


2 2.32465 0.26505 1.54167 0.24132
3 0.50586 −1.93244 0.57298 −1.75268
4 1.33699 −0.50478 1.15349 −0.49161
5 0.78912 −1.29059 0.86570 −1.24268
.. .. .. .. ..
. . . . .
26 1.00000 −1.00000 1.00000 −1.00000
27 1.00000 −1.00000 1.00000 −1.00000
28 1.00000 −1.00000 1.00000 −1.00000
29 1.00000 −1.00000 1.00000 −1.00000
30 1.00000 −1.00000 1.00000 −1.00000
31 1.00000 −1.00000 1.00000 −1.00000

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 52

Algoritma Jacobi

Masukan: n ukuran SPL


a[i,j] i := 1,2, ...,n j := 1, 2, ...,n
b[i] i := 1,2, ...,n
x[i] i := 1,2, ...,n
eps
maxiter
Keluaran: x[i] i := 1,2, ...,n solusi SPL
Langkah-Langkah:
1. iter := 0;
2. galat := 0
3. Untuk i := 1, 2, ..., n
s := 0;
Untuk j := 1, 2, ..., n
Jika j <> i maka s := s + a[i,j] * x[j]
xbaru[i] := (b[i] - s) / a[i,i]
s := abs((xbaru[i] - x[i]) / xbaru[i])
Jika s > galat maka galat := s
4. Untuk i := 1, 2, ..., n
x[i] := xbaru[i]
5. Jika galat < eps maka ’selesai’
6. iter := iter + 1;
7. Jika iter > maxiter maka ’proses belum konvergen’, stop
8. Kembali ke langkah 2

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 53

3.11.2 Metode Gauss Seidel




 a11 x1 + a12 x2 + a13 x3 + · · · + a1n xn = b1
 a21 x1 + a22 x2 + a23 x3 + · · · + a2n xn = b2



a31 x1 + a32 x2 + a33 x3 + · · · + a3n xn = b3 (25)
 .. .. ..



 . . .
 a x + a x + an3 x3 + · · · + ann xn = bn
n1 1 n2 2

 k+1
b1 − (a12 xk2 + a13 xk3 + · · · + a1n xkn ) /a11


 x1 =


xk+1 b2 − (a21 xk+1

= + a23 xk3 + · · · + a2n xkn ) /a22


 2 1
..





 .
(26)
xk+1 b2 − (a31 xk+1 + a32 xk+1 + · · · + a2n xkn ) /a22

 3 = 1 3
..





 .


bn − (an1 xk+1 + an2 xk+1 + · · · + an,n−1 xk+1

 xk+1

= n−1 ) /ann


n 1 2

atau secara umum:


i−1 n
!
X X
xk+1
i := bi − aij xk+1
j + aij xkj /aii
j=1 j=i+1

Ambil Tebakan awal ~x = (x01 , x02 , · · · , x0n ).

Kriteria penghentian iterasi:

ak+1
i − aki
max | | < eps
1≤i≤n ak+1
i

Contoh: Terapkan iterasi Jacobi pada SPL berikut ini:



 8.00x1 + 3.00x2 + −2.00x3 + 1.00x4 = 2.00
4.00x1 + 12.00x2 + 4.00x3 + 3.00x4 = −7.00


 2.00x1 + −2.00x2 + 9.00x3 + 3.00x4 = 10.00
1.00x1 + 2.00x2 + 4.00x3 + 8.00x4 = −5.00

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 54

Rumus iterasi Gauss-Seidel untuk SPL dI atas adalah:

 k+1

 x1 = (2.00 − 3.00xk2 + 2.00xk3 − 1.00xk4 )/8.00

 xk+1 = (−7.00 − 4.00xk+1 − 4.00xk3 − 3.00xk4 )/12.00


2 1


 xk+1
3 = (10.00 − 2.00xk+1
1 + 2.00xk+1
2 − 3.00xk4 )/9.00

 xk+1 = (−5.00 − 1.00xk+1 − 2.00xk+1 − 4.00xk+1

3 )/8.00

4 1 2

Dengan menggunakan tebakan awal X 0 = (2, 2, 6, 3) dan kriteria galat eps = 1E-6, diperoleh
hasil sebagai berikut:

k x1 x2 x3 x4

0 0.62500 −3.54167 −0.81481 0.58970


1 1.30071 −0.89272 0.42712 −0.77797
2 0.78880 −0.79415 1.01867 −1.03440
3 0.93177 −0.97488 1.03221 −1.01386
.. .. .. .. ..
. . . . .
8 0.99996 −0.99999 1.00002 −1.00001
9 1.00000 −1.00001 1.00000 −1.00000
10 1.00000 −1.00000 1.00000 −1.00000
11 1.00000 −1.00000 1.00000 −1.00000
12 1.00000 −1.00000 1.00000 −1.00000

Dengan membandingkan hasil di atas dengan hasil iterasi metode Jacobi di halaman 51,
terlihat metode Gauss-Seidel mempunyai kekonvergenan yang lebih cepat.

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 55

Algoritma Gauss Seidel

Masukan: n ukuran SPL


a[i,j] i := 1,2, ...,n j := 1, 2, ...,n
b[i] i := 1,2, ...,n
x[i] i := 1,2, ...,n
eps
maxiter
Keluaran: x[i] i := 1,2, ...,n solusi SPL
Langkah-Langkah:
1. iter := 0;
2. galat := 0;
2. Untuk i := 1, 2, ..., n
s := 0;
Untuk j := 1, 2, ..., n
Jika j <> i maka s := s + a[i,j] * x[j]
xbaru := (b[i] - s) / a[i,i]
s := abs((xbaru - x[i]) / xbaru)
Jika s > galat maka galat := s
x[i] := xbaru
3. Jika galat < eps maka ’selesai’
4. iter := iter + 1;
5. Jika iter > maxiter maka ’proses belum konvergen’, stop
6. Kembali ke langkah 2

Perlu diperhatikan bahwa metode Jacobi dan Gauss-Seidel tidak selalu konvergen. Syarat
cukup agar metode tersebut konvergen adalah matriks koefisien SPL bersifat dominan
n
X
secara diagonal, artinya: |aii | > |aij | , i := 1, 2, · · · , n.
j=1
j6=i

Jadi sebelum metode iterasi Jacobi dan Gauss Seidel digunakan, perlu dilakukan pemerik-
saan agar matriks koefisien SPL bersifat dominan diagonal. Salah satu caranya adalah
dengan menukarkan baris-baris dari SPL tersebut. Bila dengan proses penukaran baris, hal
ini tidak dapat dicapai, maka biasanya metode iterasi tidak digunakan.
Latihan: Latihan ini memperlihatkan kedivergenen dari iterasi Jacobi. Tanpa melakukan
pertukaran baris, terapkan metode Jacobi pada SPL berikut:



 8.00x1 + 3.00x2 + −2.00x3 + 1.00x4 = 2.00
4.00x1 + 12.00x2 + 4.00x3 + 3.00x4 = −7.00


 1.00x1 + 2.00x2 + 4.00x3 + 8.00x4 = −5.00
2.00x1 + −2.00x2 + 9.00x3 + 3.00x4 = 10.00

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 56

Metode Gauss Seidel dan Jacobi untuk SPL Tridiagonal

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 57

4 Pencocokan Kurva / Curve Fitting


Diberikan n buah titik dalam bidang

(x1 , y1 ), (x2 , y2 ), · · · , (xn , yn )

yang berasal dari sebuah fungsi / data hasil pengamatan.

Permasalahan: Ingin diketahui nilai dari fungsi tersebut di suatu titik x yang tidak berada
dalam data tersebut.

Salah satu metode numerik untuk menyelesaikan masalah ini adalah dengan memkonstruk-
sikan sebuah kurva yang menghampiri titik-titik tersebut. Istilah menghampiri di sini,
artinya kurva yang dibangun diformulasikan sehingga galat yang terjadi seminimal mungkin.
Selain untuk tujuan di atas, pencocokan kurva juga banyak digunakan untuk menghampiri
sebuah fungsi yang rumit dengan fungsi yang sederhana. Sebagai ilustrasi, perhatikan fungsi
f (x) = ex∗tan(x) ∗ sin(ln(x)). Dari fungsi ini, kita tentukan ambil beberapa titik data, lalu
dibangun kurva baru yang lebih sederhana (misalnya polinom) yang menghampiri titik-titik
data tersebut.

Dalam metoide numerik dikenal dua macam teknik pencocokan kurva, yaitu teknik regresi
dan interpolasi/ekstrapolasi.

Teknik regresi digunakan bila sumber data yang digunakan mempunyai tingkat galat yang
cukup tinggi. Dalam hal ini, kurva yang dibangun tidak perlu melalui titik-titik data
tersebut, tetapi cukup mengikuti kecenderungannya saja (lihat ilustrasi).

Teknik interpolasi/ekstrapolasi digunakan bila sumber data yang digunakan mempunyai


ketelitian yang sangat tinggi. Dalam hal ini kurva yang dibangun harus melalui semua
titik-titik data yang digunakan (lihat ilustrasi).

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 58

Gambar 10: Ilustrasi pencocokan kurva dengan teknik regresi

Gambar 11: Ilustrasi pencocokan kurva dengan teknik interpolasi/ekstrapolasi

4.1 Regresi Kuadrat Terkecil


Regresi Linear
Perhatikan titik-titik data (x1 , y1 ), (x2 , y2 ), · · · , xn , yn ). Pada regresi linear, kita konstruk-
sikan sebuah garis lurus yang menghampiri titik-titik data tersebut (lihat ilustrasi). Garis
lurus tersebut disebut garis/kurva regresi.

Misalkan garis regresi tersebut dinyatakan sebagai:

y = a0 + a1 x

Masalahnya, bagaimana kita menentukan koefisien a0 dan a1 agar garis regresi tersebut

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 59

Gambar 12: Pencocokan kurva memakai regresi linear

sedekat mungkin fungsi semula yang hanya diketahui nilainya pada titik-titik data yang
diberikan ?

Pengukuran galat antara garis regresi dengan fungsi semula, jelas hanya dapat kita ukur pada
titik-titik x1 , x2 , · · · , xn , karena dilura itu kita tidak mengetahui nilai dari fungsi semula.
Pada regresi kuadrat terkecil, didefinisikan galatnya sebagai berikut:
v
u n
uX
E=t (yi − (a0 + a1 xi ))2 (27)
i=1

Perhatikan bahwa yi pada rumus galat di atas menyatakan ordinat dari titik-titik data yang
diberikan sedangkan bagian a0 + a1 xi menyatakan ordinat dari kurva regresi yang dibangun.
Jadi ekspresi (yi − (a0 + a1 xi )) menyatakan perbedaan ordinat antara data yang diberikan
dengan kurva regresi.

Bahan diskusi: Mengapa pada rumus galat di atas nilai (yi − (a0 + a1 xi )) perlu dikuadrat-
kan?, Apa akibatnya bila kita hanya memangkatkan satu atau tiga atau empat?

Selanjutnya kita akan menentukan nilai a0 dan a1 yang meminimumkan nilai galat E. Untuk
itu, kita pandang rumus galat E tersebut sebagai fungsi dari a0 dan a1 . Dari kalkulus kita
ketahui, bila E mencapai minimum maka haruslah berlaku:
∂E ∂E
= 0 dan =0
∂a0 ∂a1
Untuk memudahkan perhitungan, pada masalah ini yang akan kita lakukan bukanlah mem-
inimumkan E, tetapi meminimumkan E2 . Mengapa hal ini boleh dilakukan ?.

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 60

Sebut D = E2 , yaitu
n
X
D= (yi − (a0 + a1 xi ))2
i=1

 ∂∂aD =

0
=0
(28)
 ∂D = =0
∂a1

Persamaan (28) dapat kita susun sehingga bentuknya menjadi sistem persamaan linear dalam
a0 dan a1 sebagai berikut:

Pn Pn


 n a0 + x a
i 1 = yi
i=1 i=1
n n n (29)
2
P P P
xi a0 + xi a1 = xi yi



i=1 i=1 i=1

Persaman (29) disebut persamaan normal. Dari persamaan ini kita dapat menghitung
nilai a1 dan a0 sebagai berikut:

n
P n
P n
P
n xi yi − xi yi
i=1 i=1 i=1
a1 = n n
x2i − (
P P
n xi )2
i=1 i=1

dan
n
P n
P
yi − a1 xi
i=1 i=1
a0 =
n
Contoh:

1. Tentukan garis regresi dari data berikut, lalu taksirlah nilai y(2) dan y(2,5).
xi 1 2 3 4 5 6 7
yi 0,5 2,5 2,0 4,0 3,5 6,0 5,5

2. Tentukan galat dari kurva regresi ini (lihat (27))

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 61

Latihan: Tuliskan algoritma regresi linear

Terapan Regresi Linear


Dalam masalah nyata sering dijumpai data dengan kecendrungan tertentu, misalnya masalah
eksponensial, persamaan pangkat, model laju pertumbuhan jenuh dan lain-lain. Kurva re-
gresi untuk masalah-masalah seperti ini dapat diselesaikan dengan bantuan regresi linear,
asalkan kurva regresinya dapat ditransformasi ke bentuk regresi linear.

Regresi Eksponensial
Diberikan data (x1 , y1 ), (x2 , y2 ), · · · , (xn , yn ). Akan dibangun kurva regresi eksponensial
berbentuk:

y = p eqx
dengan p dan q adalah koefisien-koefisien regresi yang harus dicari. pencarian kedua koefisien
ini dilakukan dengan cara melakukan pelinearan terhadap model regresi tersebut sebagai
berikut:

ln(y) = ln(a) + bx (30)

Selanjutnya kita bentuk variabel baru sebagai berikut:



 z = ln(y)

a0 = ln(a)

 a =b
1

maka persamaan (30) mempunyai bentuk linear:

z = a0 + a1 x
Persamaan terakhir dapat kita selesaikan dengan rumus regresi linear.

Pelinearan yang kita lakukan di atas dapat diilustrasikan secara grafik seperti pada gambar
(13)

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 62

Gambar 13: Ilustrasi pelineran regresi eksponen menjadi regresi linear

Contoh: Tentukan kurva regresi eksponensial y = peqx dari data berikut ini:

xi 1 2 3 4 5
yi 0,6 1,9 4,3 7,6 12,6

Regresi Persamaan Pangkat

y = p xq
Transformasi pelinearannya:

ln(y) = ln(p) + q ln(x)

Notasikan variabel baru sebagai berikut,



 z = ln(y)

 t = ln(x)

 a0 = ln(p)

a1 = q

maka diperoleh bentuk regresi linear z = a0 + a1 t


Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014
Diktat MA3171 Matematika Numerik 63

Latihan: Ilustrasikan pelineran regresi persamaan pangkat dalam bentuk grafik

Contoh: Tentukan kurva regresi persamaan pangkat y = p xq dari data berikut ini:

xi 1 2 3 4 5
yi 0,7 1,7 3,4 6,7 12,7

Regresi Model Laju Pertumbuhan Jenuh


px
y=
q+x
Transformasi pelinearannya:
1 1 q 1
= +
y p px
Notasikan variabel baru sebagai berikut,

z = y1




t= 1

x
1


 a0 = p
q

a1 =

p

maka diperoleh bentuk regresi linear z = a0 + a1 t


Latihan: Ilustrasikan pelineran regresi model pertumbuhan jenuh dalam bentuk grafik

Contoh: Tentukan kurva regresi persamaan pangkat y = p xq dari data berikut ini:

xi 1 2 3 4 5
yi 0,7 1,7 3,4 6,7 12,7

Latihan: Tentukan transformasi pelinearan dari kurva-kurva regresi berikut:

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 64

p
1. y = x
+b
p
2. y = x+q
x
3. y = p+q x
1
4. y = (px+q)2
2
5. y = 1+p eqx

4.2 Regresi Polinom


Seringkali kita menghadapi data yang tidak menunjukan kecendrungan linear. Bila kita
tidak dapat menentukan jenis regresinya, biasanya dipilih regresi berbentuk polinom. Hal
ini didasarkan pada sifat matematika yang menyatakan bahwa setiap fungsi kontinu selalu
dapat dihampiri dengan polinom (dibuktikan pada kuliah Analisis Real).

Perhatikan kembali n buah titik-titik data (x1 , y1), (x2 , y2), · · · , (xn , yn ). Kita akan memper-
luas prosedur kuadrat terkecil yang telah dibahas untuk membangun kurva regresi berbentuk
polinom derajat m sebagai berikut:

y = a0 + a1 x + a2 x2 + · · · + am xm

Perlu diperhatikan bahwa nilai m dan banyaknya titik data tidak ada hubungan tertentu,
keduanya saling bebas.

Untuk menentukan koefisien a0 , a1 , · · · , am , kita terapkan rumus galat sebagai berikut:

v
u n
uX
E=t (yi − (a0 + a1 xi + · · · + am xm ))2 i (31)
i=1

Kembali seperti pada regresi linear, yang akan kita minimumkan adalah bentuk dari D =
E2 , yaitu:
n
X 2
D= (yi − (a0 + a1 xi + · · · + am xm
i )) (32)
i=1

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 65

Pada persamaan terakhir, D kita pandang sebagai fungsi dari a0 , a1 , · · · , am . Pada titik min-
imum maka berlaku:

∂D ∂D ∂D
= 0, = 0, , · · · , =0
∂a0 ∂a1 ∂am

Bila kita hitung turunan-turunan parsial tersebut maka akan diperoleh:


 ∂D

 ∂a0
= =0


∂D

 ∂a1 = =0



.. (33)


 .


∂D

= =0


 ∂a m

Bila persamaan (33) disusun, maka akan diperoleh persamaan normal berupa sistem per-
samaan linear dalam a0 , a1 , · · · , am sebagai berikut:

n n n n

x2i a2 xm
P P P P


 n a0 + xi a1 + + ··· + i am = yi
i=1 i=1 i=1 i=1



n n n n n


x2i a1 x3i a2 xm+1
 P P P P P


 xi a0 + + + ··· + i am = xi yi
i=1 i=1 i=1 i=1 i=1




 n n n n n
 P x2 a x3i a1 x4i a2 xm+2 x2i yi
P P P P
+ + + ··· + am =

i 0 i
i=1 i=1 i=1 i=1 i=1 (34)

 .. .. .. .. ..
. . . . .






n n n n n

 P
xm xm+1 xm+2 xm+m xm
 P P P P
i a0 + a1 + a2 + · · · + am = i yi

i i i


i=1 i=1 i=1 i=1 i=1




Selanjutnya SPL tersebut diselesaikan dengan salah satu teknik penyelesaian SPL yang telah
di bahas pada Bab 3.

Latihan: Terapkan regresi kuadrat terhadap data di bawah ini:

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 66

xi yi x2i x3i x4i xi yi x2i yi

0 2,1
1 7,7
2 13,6
3 27,2
4 40,9
5 61,1

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 67

Interpolasi/ekstrapolasi
Seperti dijelaskan sebelumnya, interpolasi/ekstrapolasi bertujuan membangun sebuah kurva
yang melalui semua titik-titik data yang dipergunakan. Dalam metode numerik ada banyak
teknik dan macam kurva yang dapat dikonstruksikan. Pada pasal ini kita hanya akan mem-
bahas interpolasi/ekstrapolasi berbentuk polinom.

Bila kurva yang dibentuk tersebut dipakai untuk menaksir nilai f (x) dengan x berada di-
antara titik-titik data yang diberikan, maka disebut interpolasi. Bila x berada diluar
titik-titik data yang diberikan, maka porsesnya disebut extrapolasi. Secara umum hampi-
ran interpolasi mempunya ketelitian yang lebih tinggi dibandingkan dengan ekstrapolasi.

Perhatikan n+1 buah titik data yang kita beri indeks (x0 , f (x0 )), (x1 , f (x1 )), · · · , (xn , f (xn )),
dengan xi 6= xj untuk i 6= j. Pada data ini, urutan nilai xi tidak diperlukan. Kita akan
mengkonstruksikan sebuah polinom yang melalui semua titik data tersebut.

Diskusi: Diberikan tiga buah titik di bidang dengan absis yang berbeda. Akan dibangun
sebuah polinom yang melalui ketiga titik tersebut.
a. Mungkinkah membangun polinom derajat 3 ?
b. Mungkinkah membangun polinom derajat 2 ?
b. Mungkinkah membangun polinom derajat 1 ?

Latihan: Diberikan tiga titik data (−1, 1), (0, 0), dan (1, 1). Bila mungkin , konstruksikan-
lah masing-masing polinom derajat satu, derajat dua dan derajat tiga yang melalui semua
titik tersebut.

Sifat: Diberikan n+1 buah titik yang absisnya berbeda, maka terdapat secara tunggal poli-
nom derajat ≤ n yang melalui semua titik data tersebut.

Contoh: Tentukan polinom derajat ≤ 3 yang melalui empat buah titik berikut:

xi 1 2 3 5
f (xi ) 1,06 1,12 1,34 1,78

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 68

Misalkan polinom tersebut p(x) = a0 + a1 x + a2 x2 + a3 x3 . Kita harus menen-


tukan koefisien-koefisien polinom tersebut. Bila keempat titik data yang
diberikan kita substitusikan pada polinom tersebut maka diperoleh:


 1, 06 = a0 + a1 · 1 + a2 · 12 + a3 · 13
1, 12 = a0 + a1 · 2 + a2 · 22 + a3 · 23


 1, 34 = a0 + a1 · 3 + a2 · 32 + a3 · 33
1, 78 = a0 + a1 · 5 + a2 · 52 + a3 · 53

Selanjutnya bila sistem persaman linear tersebut disusun, diperoleh:




 a0 + a1 + a2 + a3 = 1, 06
a0 + 2a1 + 4a2 + 8a3 = 1, 12


 a 0 + 3a1 + 9a2 + 27a3 = 1, 34
a0 + 5a1 + 25a2 + 125a3 = 1, 78

Selanjutnya koefisien-koefisien tersebut dapat dicari dengan salah satu teknik


penyelesaian SPL yang telah dibahas pada bab 3.

Diskusi: Apakah polinom yang dihasilkan dipastikan berderajat empat ?


Dari contoh di atas, terlihat bahwa menentukan koefisien-koefisien polinom interpolasi meru-
pakan pekerjaan yang rumit. Untuk itu, para peneliti mengembangkan metode-metode baru,
agar perhitungannya menjadi lebih sederhana dan teratur. Pada perkuliahan ini kita akan
membahas dua buah metode pengkonstruksian polinom interpolasi, yaitu polinom inter-
polasi Lagrange dan polinom interpolasi beda terbagi Newton. Secara analitik,
kedua polinom ini akan menghasilkan polinom yang sama, karena dijamin oleh sifat ketung-
galan yang telah dikemukakan. Perbedaannya hanya terletak pada cara penulisan polinom
tersebut.

4.3 Polinom Interpolasi Lagrange


Diberikan dua buah tititk (x0 , f (x0 )) dan (x1 , f (x1 )). Polinom interpolasi yang melalui kedua
titik tersebut dapat diformulasikan dengan mudah yaitu

f (x1 ) − f (x0 )
y = p1 (x) = f (x0 ) + (x − x0 ) (35)
x1 − x0

Kurva interpolasi tersebut dapat dilihat pada gambar (14).


Joseph Louis Lagrange seorang matematikawan Perancis, menuliskan polinom interpolasi
tersebut dengan cara lain. Dia menyusunnya sebagai berikut:
x − x1 x − x0
y = p1 (x) = f (x0 ) + f (x1 ) (36)
x0 − x1 x1 − x0

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 69

Gambar 14: Interpolasi Linear

Latihan: Tunjukan polinom (35) dan (36) ekivalen.

Contoh: Diberikan dua buah titik (1 ; 0) dan (6 ; 1, 791759469). Gunakan polinom interpo-
lasi Lagrange derajat satu untuk menaksir nilai f (2). (nilai eksak dari f (2) = 0, 6931471806).

Pada soal ini, x0 = 1, x1 = 6 dan f (x0 ) = 0, f (x1 ) = 1, 791759469. Dengan


mensubstitusikan data ini pada (36) diperoleh:

p1 (x) = 0 x−6
1−6
+ 1, 791759469 x−1
6−1

p1 (x) = 0, 3583518938 ∗ x − 0, .3583518938

Dengan demikian, f (2) ≈ p1 (2) = 0, 3583518938


dengan galat E1 = 0,6931471806 - 0,3583518938 = 0,3347952868
Dari contoh terakhir terlihat bahwa galat yang terjadi masih sangat besar. Salah satu cara
untuk memperkecil galat adalah dengan membangun polinom yang derajatnya lebih tinggi.

Perhatikan tiga buah titik data (x0 , f (x0 )), (x1 , f (x1 )), dan (x2 , f (x2 )). Melalui tiga titik
tersebut akan dikonstruksikan polinom berderajat ≤ 2. Bentuk dari polinom Lagrange

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 70

derajat ≤ 2 adalah sebagai berikut:

(x − x1 )(x − x2 ) (x − x0 )(x − x2 ) (x − x0 )(x − x1 )


p2 (x) = a0 + a1 + a0
(x0 − x1 )(x0 − x2 ) (x1 − x0 )(x1 − x2 ) (x2 − x0 )(x2 − x1 )

Di sini kita harus menentukan nilai-nilai dari a0 , a1 dan a2 . Dengan mensubstitusikan ketiga
titik data yang diberikan, secara berturutan akan diperoleh a0 = f (x0 ), a1 = f (x1 ) dan
a2 = f (x2 ) (Buktikan!).
Dengan demikian bentuk polinom interpolasi Lagrange derajat ≤2 adalah:

(x − x1 )(x − x2 ) (x − x0 )(x − x2 ) (x − x0 )(x − x1 )


p2 (x) = f (x0 ) + f (x1 ) + f (x2 ) (37)
(x0 − x1 )(x0 − x2 ) (x1 − x0 )(x1 − x2 ) (x2 − x0 )(x2 − x1 )

Contoh: Diberikan tiga buah titik (1 ; 0), (6 ; 1, 791759469) dan (4 ; 1, 386294361). Gu-
nakan polinom interpolasi Lagrange derajat dua untuk menaksir nilai f (2). (nilai eksak dari
f (2) = 0, 6931471806).

Pada soal ini, x0 = 1, x1 = 6, x2 = 4 dan f (x0 ) = 0, f (x1 ) = 1, 791759469, f (x2 ) =


1, 386294361. Dengan mensubstitusikan data ini pada (37) diperoleh:

p2 (x) = 0 (x−6)(x−4)
(1−6)(1−4)
+ 1, 791759469 (x−1)(x−4)
(6−1)(6−4)
+ 1, 386294361 (x−1)(x−6)
(4−1)(4−6)

p2 (x) = 0, 1791759469(x − 1)(x − 4) − 0, 2310490602(x − 1)(x − 6)

Dengan demikian, f (2) ≈ p2 (2) = 0, 5658443470


dengan galat E1 = 0,6931471806 - 0,5658443470 = 0,1273028336
Dari contoh terakhir, terlihat bahwa galat yang terjadi lebih kecil dari galat yang ditim-
bulkan oleh p1 (x). Secara analitik, makin besar derajat polinom yang digunakan, hasil yang
diperoleh akan makin teliti, tetapi harus dibayar dengan waktu komputasi yang makin pan-
jang. Perlu diperhatikan, dalam realisasi di komputer, penggunaan polinom dengan derajat
yang tinggi tidak selalu memberikan hasil aproksimasi yang lebih teliti. Hal ini disebabkan
karena makin tinggi derajat polinom yang digunakan akan mengakibatkan perhitungan yang
makin banyak, sehingga galat pembulatan akan secara signifikan mempengaruhi hasilnya.
Jadi diperlukan pengalaman dalam memilih derajat polinom yang sesuai agar diperoleh hasil
yang optimal.

Berikutnya kita akan memformulasikan polinom Lagrange derajat ≤ n yang menginterpo-


lasi titik-titik (x0 , f (x0 )), (x1 , f (x1 )), · · · , (xn , f (xn )). Lagrange mengkonstruksikan polinom

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 71

tersebut sebagai berikut:

pn(x) = a0 (x(x−x 1 )(x−x2 )···(x−xn )


0 −x1 )(x0 −x2 )···(x0 −xn )
+

a1 (x(x−x 0 )(x−x2 )···(x−xn )


1 −x0 )(x1 −x2 )···(x1 −xn )
+
...

(x−x )(x−x )···(x−x


0 1 i−1 )(x−xi+1 )···(x−x )
n
(38)
ai (xi −x0 )(xi −x1 )···(xi −xi−1 )(xi −xi+1 )···(xi −xn )
+
...

an (x(x−x
n −x
0 )(x−x1 )···(x−xn−1 )
0 )(xn −x1 )···(xn −xn−1 )

Pada persamaan di atas, kita harus menentukan koefisien a0 , a1 , · · · , an agar pn (x) melalui
titik-titik data yang diberikan. Dengan mensubstitusikan titik-titik data yang diberikan satu
persatu, maka secara berturutan akan diperoleh a0 = f (x0 ), a1 = f (x1 ), · · · , an = f (xn )
(Tunjukan!).

Dengan demikian, bentuk umum polinom Lagrange derajat ≤ n adalah:

pn(x) = f (x0) (x(x−x 1 )(x−x2 )···(x−xn )


0 −x1 )(x0 −x2 )···(x0 −xn )
+

f (x1) (x(x−x
1 −x
0 )(x−x2 )···(x−xn )
0 )(x1 −x2 )···(x1 −xn )
+
...
(x−x )(x−x )···(x−x
0 1 i−1 )(x−x i+1 )···(x−x )
n
f (xi ) (xi −x0 )(xi −x1 )···(xi −xi−1 )(xi −xi+1 )···(xi −xn )
+
(39)
...

f (x1) (x(x−x 0 )(x−x1 )···(x−xn−1 )


n −x0 )(xn −x1 )···(xn −xn−1 )

n
P (x−x )(x−x )···(x−x
0 1 i−1)(x−x i+1 )···(x−x )n
= f (xi ) (xi −x0 )(xi −x1 )···(xi −xi−1 )(xi −xi+1 )···(xi −xn )
i=1

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 72

Untuk menyingkat penulisan, kita notasikan:

(x − x0 )(x − x1 ) · · · (x − xi−1 )(x − xi+1 ) · · · (x − xn )


fi = f (xi ) dan Li (x) =
(xi − x0 )(xi − x1 ) · · · (xi − xi−1 )(xi − xi+1 ) · · · (xi − xn )

Dengan notasi ini maka polinom interpolasi Lagrange dapat ditulis sebagai:
n
X
pn (x) = f0 L0 (x) + f1 L1 (x) + · · · + fi Li (x) + · · · + fn Ln (x) = fi Li (x) (40)
i=1

Latihan: Tentukan polinom Lagrange derajat ≤ 3 yang menginterpolasi titik-titik (1 ; 0),


(6 ; 1, 791759469) dan (4 ; 1, 386294361) dan (3 ; 1, 098612289), lalu taksirlah nilai f (2). Band-
ingkan ketelitiannya dengan contoh pada interpolasi polinom Lagrange derajat dua.

Latihan: Diberikan n buah data (x0 , f (x0 )), (x1 , f (x1 )), · · · , (xn , f (xn )). Tuliskan algoritma
polinom interpolasi Lagrange derajat ≤ n untuk menaksir fungsi f di titik z.

4.4 Polinom Interpolasi (Beda Terbagi) Newton


Seringkali kita memerlukan hampiran polinom yang derajatnya dibangun secara bertahap,
yaitu p1 (x), p2 (x), · · ·, pn (x). Bila pembentukan polinom ini menggunakan formula poli-
nom Lagrange, perhitungannya harus dilakukan satu persatu secara individual (saling lepas)
karena tidak ada hubungan khusus antara pi−1 (x) dengan pi (x). Hal ini mengakibatkan
proses komputasinya menjadi sangat besar.

Newton mengambil cara lain dalam pengkonstruksian polinom interpolasi tersebut sebagai
berikut:

p1 (x) = a0 + a1 (x − x0 )
p2 (x) = a0 + a1 (x − x0 ) + a2 (x − x0 )(x − x1 )
p3 (x) = a0 + a1 (x − x0 ) + a2 (x − x0 )(x − x1 ) + a3 (x − x0 )(x − x1 )(x − x2 )
.. (41)
.
pn (x) = a0 + a1 (x − x0 ) + a2 (x − x0 )(x − x1 ) + a3 (x − x0 )(x − x1 )(x − x2 ) +
· · · + an (x − x0 )(x − x1 ) · · · (x − xn−1 )

Pada formula di atas terlihat hubungan rekursif

pi (x) = pi−1 (x) + ai (x − x0 )(x − x1 ) · · · (x − xi−1 )

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 73

Jadi untuk membentuk polinom derajat yang lebih tinggi, kita dapat memanfaatkan hasil
dari polinom derajat sebelumnya. Selain itu, untuk menghitung suku

(x − x0 )(x − x1 ) · · · (x − xi−2 )(x − xi−1 )

kita dapat memanfaatkan suku

(x − x0 )(x − x1 ) · · · (x − xi−2 )

yang telah dihitung pada saat menghitung polinom pi−1 (x).

Permasalahan: Bagaimana menentukan koefisien a0 , a1 , · · · , an tersebut ?

Perhatikan dua buah titik data (x0 , f (x0 )) dan (x1 , f (x1 )). Bentuk polinom interpolasi
Newton derajat ≤ 1 yang melalui kedua data tersebut adalah: p1 (x) = a0 + a1 (x − x0 ).
Dengan mensubstitusikan (x0 , f (x0 )) pada polinom tersebut, diperoleh

a0 = f(x0 )

Selanjutnya dengan mensubstitusikan titik data yang kedua diperoleh:


f (x1 ) = f (x0 ) + a1 (x − x0 ). Dengan demikian
f(x1 ) − f(x0 )
a1 = (42)
x1 − x0
Jadi bentuk polinom Newton derajat ≤ 1 adalah:
f(x1 ) − f(x0 )
p1 (x) = f(x0 ) + (x − x0 )
x1 − x0
Selanjutnya, perhatikan polinom interpolasi Newton derajat ≤ 2 yang melalui tiga titik data
(x0 , f (x0 )), (x1 , f (x1 )) dan (x2 , f (x2 )). Bentuk polinomnya

p2 (x) = p1 (x) + a2 (x − x0 )(x − x1 )


f (x1 )−f (x0 )
= f (x0 ) + x1 −x0
(x − x0 ) + a2 (x − x0 )(x − x1 )

Untuk menentukan a2 , kita substitusikan titik data (x2 , f (x2 )) pada persamaan terakhir,
maka akan diperoleh
f (x1 ) − f (x0 )
f (x2 ) = f (x0 ) + (x2 − x0 ) + a2 (x2 − x0 )(x2 − x1 )
x1 − x0
Dari sini diperoleh
f (x1 )−f (x0 )
f (x2 ) − f (x0 ) − x1 −x0
(x2 − x0 )
a2 =
(x2 − x0 )(x2 − x1 )

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 74

Dengan manipulasi aljabar, formula terakhir dapat dituliskan sebagai (buktikan !):

f (x2 )−f (x1 ) f (x1 )−f (x0 )


x2 −x1 − x1 −x0
a2 = (43)
x2 − x0
Contoh: Diberikan tiga buah titik (1 ; 0), (6 ; 1, 791759469) dan (4 ; 1, 386294361). Gu-
nakan polinom interpolasi Newton derajat datu dan dua untuk menaksir nilai f (2). (nilai
eksak dari f (2) = 0, 6931471806).

Diskusi: Pada contoh di atas, untuk hampiran p1 (2), bolehkah kita menggunakan titik
(1 ; 0) dan (4 ; 1, 386294361) untuk menginterpolasi nilai f (2) ? Bagaimana bila digunakan
titik (6 ; 1, 791759469) dan (4 ; 1, 386294361), apakahjugaboleh?

Pada rumusan koefisien polinom Newton derajat satu dan dua, yaitu (42) dan (43), terlihat
bahwa hitungannya melibatkan ekspresi berbentuk

f (xi ) − f (xi−1 )
xi − xi−1

Ekspresi ini dinamakan beda terbagi orde pertama (first order divide difference) antara xi−1
dan xi . Untuk perhitungan polinom Newton secara umum kita memerlukan konsep beda
terbagi berikut:

f [xk ] = f (xk )
f [xk+1 ]−f [xk ]
f [xk , xk+1] = xk+1 −xk
f [xk+1 ,xk+2 ]−f [xk ,xk+1 ] (44)
f [xk , xk+1, xk+2] = xk+2 −xk
...
f [xk+1 ,···,xk+j ]−f [xk ,···,xk+j−1 ]
f [xk , xk+1, · · · , xk+j ] = xk+j −xk

Ekspresi di atas, secara berturutan dinamakan beda terbagi ke nol, ke satu, ke dua sampai
beda terbagi ke j.

Untuk memudahkan perhitungan beda terbagi dilakukan menggunakan tabel seperti ilus-
trasi berikut ini:

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 75

xk f [xk ] f[ , ] f[ , , ] f[ , , , ] f[ , , , , ]

x0 f [x0 ]
x1 f [x1 ] f [x0 , x1 ]
x2 f [x2 ] f [x1 , x2 ] f [x0 , x1 , x2 ]
x3 f [x3 ] f [x2 , x3 ] f [x1 , x2 , x3 ] f [x0 , x1 , x2 , x3 ]
x4 f [x4 ] f [x3 , x4 ] f [x2 , x3 , x4 ] f [x1 , x2 , x3 , x4 ] f [x0 , x1 , x2 , x3 , x4 ]

Tabel perhitungan beda terbagi Newton

Contoh: Lengkapilah tabel beda terbagi berikut:

xk f [xk ] f[ , ] f[ , , ] f[ , , , ] f[ , , , , ]

x0 = 0, 0 1,0000000
x1 = 1, 0 0,5403023
x2 = 2, 0 -0,4161468
x3 = 3, 0 -0,9899925
x4 = 4, 0 -0,6536436

Latihan: Diberikan n+1 buah titik data (xi , f (xi )), i = 1, 2, · · · , n. Tuliskan algoritma
untuk menghitung nilai f [x0 , x1 , · · · , xn ]

Bentuk umum polinom Newton derajat ≤ n yang melalui titik-titik data


(xi , f (xi )), i = 1, 2, · · · , n. adalah sebagai berikut:

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 76

pn(x) = f [x0] +
f [x0, x1] (x − x0) +
f [x0, x1, x2] (x − x0)(x − x1)(x − x2) +
...
f [x0, x1, · · · , xi] (x − x0)(x − x1) · · · (x − xi−1 ) +
...
f [x0, x1, · · · , xn] (x − x0)(x − x1) · · · (x − xn−1 )

Contoh: Gunakan data berikut untuk menaksir nilai f (1, 5) menggunakan polinom intepo-
lasi Newton derajat ≤ 4:

xk f [xk ] f[ , ] f[ , , ] f[ , , , ] f[ , , , , ]

x0 = 0, 0 1,0000000
x1 = 1, 0 0,5403023
x2 = 2, 0 -0,4161468
x3 = 3, 0 -0,9899925
x4 = 4, 0 -0,6536436

Perhatikan n+1 buah titik data (xi , f (xi )), i = 1, 2, · · · , n. Secara analitik, hasil hampi-
ran akan paling teliti bila polinom yang kita bangun derajatnya setinggi mungkin. Namun
demikian, dalam realisasi di komputer hal ini tidak selalu benar, karena proses hitungan
dipengaruhi oleh galat pembulatan. Konstruksi polinom derajat tinggi akan semakin sensi-
tif terhadap galat pembulatan, sehingga hasilnya tidak selalu baik, bahkan dapat merusak
hasil hampiran. Untuk mendapatkan hasil hampiran yang optimal, polinom interpolasi New-
ton mengkonstruksikan hampiran secara bertahap yaitu p0 (x) = f (x0 ), p1 (x), p2 (x), . . .. Bila
pada tahap ke (k+1), selisih antara pk+1 (x) dengan pk (x) sudah memenuhi kriteria galat
yang ditetapkan, maka perhitungan dihentikan dan polinom hampirannya adalah pk+1 (x).

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 77

Kriteria untuk menghentikan iterasi pada hampiran polinom interpolasi Newton adalah:

pk+1 (x) − pk (x)


pk+1 (x)

Latihan: Diberikan data (xi , f (xi )), i = 1, 2, · · · , n. Tuliskan algoritma polinom interpolasi
Newton untuk menghampiri nilai f (z) dengan galat ≤ eps.

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 1

6 Hampiran Turunan
Diberikan titik-titik data yang berjarak sama
· · · , (x−2, f−2), (x−1, f−1), (x0, f0), (x1, f1), (x2, f2), (x3, f3), · · ·

dengan xi = x0 + i h dan fi = f (xi )

Akan dihitung hampiran turunan dari f (x) pada salah satu titik terse-
but, misalnya di titik x0.

Salah satu metode yang biasa digunakan adalah metode Beda Hingga
(Finite Difference). Metode ini didasarkan pada uraian Taylor dari
fungsi f (x) di sekitar titik yang akan dihitung turunannya, yaitu x0.

9h2 ′′ 27h3 ′′′ 81h4 (4) 243h5 (5)


f−3 = f0 − 3hf0′ + f − f + f − f + ··· (45)
2! 0 3! 0 4! 0 5! 0

4h2 ′′ 8h3 ′′′ 16h4 (4) 32h5 (5)


f−2 = f0 − 2hf0′ + f − f + f − f + ··· (46)
2! 0 3! 0 4! 0 5! 0

h2 ′′ h3 ′′′ h4 (4) h5 (5)


f−1 = f0 − hf0′ + f0 − f0 + f0 − f0 + · · · (47)
2! 3! 4! 5!

h2 ′′ h3 ′′′ h4 (4) h5 (5)


f1 = f0 + hf0′ + f0 + f0 + f0 + f0 + · · · (48)
2! 3! 4! 5!

4h2 ′′ 8h3 ′′′ 16h4 (4) 32h5 (5)


f2 = f0 + 2hf0′ + f + f + f + f + ··· (49)
2! 0 3! 0 4! 0 5! 0

9h2 ′′ 27h3 ′′′ 81h4 (4) 243h5 (5)


f3 = f0 + 3hf0′ + f + f + f + f + ··· (50)
2! 0 3! 0 4! 0 5! 0

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 2

Ada tiga macam metode beda hingga yang biasa digunakan, yaitu:
• Beda Maju (Forward Difference)
Hampiran menggunakan informasi di titik x0 dan beberapa titik
dikanannya, yaitu x1, x2, · · ·.
• Beda Mundur (Backward Difference)
Hampiran menggunakan informasi di titik x0 dan beberapa titik
dikirinya, yaitu · · · , x−2, x−1.
• Beda Pusat (Central Difference)
Hampiran menggunakan informasi di titik x0 dan beberapa titik
dikiri dan kanannya secara simetri (sama banyak).
Contoh2 :
1. Beda maju Gunakan informasi pada (x0, f0) dan (x1, f1 ) untuk
mengaproksimasi f0′ = f ′ (x0)
Jawab:
Kita gunakan uraian Taylor dari f1 (lihat halaman 1).
Dari persamaan (48) diperoleh:
f1 − f0 h ′′ h2 ′′′
f0′ = − f0 − f0 − · · ·
h 2! 3!

f1 − f0
f0′ ≈ dengan galat O(h)
h

2. Beda Mundur. Gunakan data dari (x−2, f−2 ), (x−1, f−1) dan
(x0, f0) untuk mengaproksimasi f0′ .
Jawab:

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 3

Di sini kita gunakan persamaan (46) dan (47) dari halaman (1).
Kita eliminasi faktor f0′′ dengan cara: pers(46) − 4 pers(47)
4h3 ′′′
f−2 − 4f−1 = −3f0 + 2hf0′ − f + ···
3! 0
f−2 − 4f−1 + 3f0 2h2 ′′′
f0′ = + f + ···
2h 3! 0

f−2 − 4f−1 + 3f0


f0′ ≈ dengan galat O(h2)
2h
3. Aproksimasilah f0′′ dengan data dari (x0, f0), (x1, f1) dan (x2, f2 ).
Jawab:
Di sini kita gunakan persamaan (48) dan (49) dari halaman (1).
Kita eliminasi faktor f0′ dengan cara: pers(49) − 2 pers(48)
2h2 ′′ 6h3 ′′′
f2 − 2f1 = −f0 + f + f + ···
2! 0 3! 0
f0 − 2f1 + f2 6h ′′′
f0′′ = − f0 + · · ·
h2 3!

f0 − 2f1 + f2
f0′′ = dengan galat O(h)
h2
4. Beda pusat. Aproksimasilah f0′ dengan data dari
(x−1, f−1 ), (x0, f0), dan (x1, f1) dan tentukan orde galatnya.

5. Beda pusat. Aproksimasilah f0′ dengan data dari


(x−2, f−2 ), · · · , (x2, f2), dan tentukan orde galatnya.

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 4

Beberapa rumus hampiran turunan:

beda maju beda mundur


−3f0 +4f1 −f2 f−2 −4f−1 +3f0
f0′ = 2h
f0′ = 2h
2f0 −5f1 +4f2 −f3 −f−3 +4f−2 −5f−1 +2f0
f0′′ = h2
f0′′ = h2
−5f0 +18f1 −24f2 +14f3 −3f4 3f−4 −14f−3 +24f−2 −18f3 +5f0
f0′′′ = 2h3
f0′′′ = 2h3
(4) 3f0 −14f1 +26f2 −24f3 +11f4 −2f5 (4) −2f−5 +11f−4 −24f−3 +26f−2 −14f−1 +3f0
f0 = h4
f0 = h4

beda pusat
f1 −f−1
f0′ = 2h
−f2 +8f1 −8f−1 +f−2
f0′ = 12h
f1 −2f0 +f−1
f0′′ = h2
−f2 +16f1 −30f0 +16f−1 −f−2
f0′′ = 12h2
f2 −2f1 +2f−1 −f−2
f0′′′ = 2h3
−f3 +8f2 −13f1 +13f−1−8f−2 +f−3
f0′′′ = 8h3
(4) f2 −4f1 +6f0 −4f−1 +f−2
f0 = h4
(4) −f3 +12f2 −39f1 +56f0 −39f−1 −12f−2 −f−3
f0 = 6h4

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 5

7 Pengintegralan Numerik
Dalam permasalahan menghitung integral tentu (integral dengan batas)
Z b
f (x) dx (51)
a

umumnya ada tiga bentuk integran (fungsi yang dintegralkan, f (x))


yang biasa ditemui, yaitu:

a. Fungsi kontinu sederhana, misalnya polinom, eksponen, atau


trigonometri.
b. Fungsi kontinu yang rumit di mana anti turunannya sukar/mustahil
3
dicari. Misalnya f (x) = etx−1 .
c. Fungsi yang hanya diketahui nilainya pada beberapa titik sim-
pul saja. Fungsi seperti ini biasanya ditemui dari tabel (seperti
tabel logaritma) atau dari hasil percobaaan.

Masalah (a.) dapat diselesaikan secara analitik dan diperoleh hasil


eksak. Metode numerik umumnya diterapkan pada masalah (b.) dan
(c.) dan hasilnya berupa hampiran terhadap nilai integral tentu terse-
but.

Latihan: Ilustrasikan masalah (b) dan (c) secara grafik.

Metode numerik untuk menghitung hampiran (51) ada bermacam-


macam. Metode pertama yang akan dipelajari adalah metode yang
didasarkan pada rumus-rumus Newton-Cotes.

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 6

Perhatikan interval pengintegralan [a, b]. Interval ini dipartisikan men-


jadi:

a = x0 < x1 < x2 < · · · < xn = b

Pada rumus-rumus Newton Cotes, panjang tiap segmen pada partisi


tersebut, yaitu xi −xi−1 , dibuat sama lebar. Selanjutnya, integral (51)
dihampiri dengan:

Z b n
X
f (x) dx ≈ wif (xi ) = w0f (x0) + w1f (x1 ) + · · · + wn f (xn)
a i=0

teknik ini dinamakan teknik quadrature. Titik-titik x0, x1, · · · , xn dise-


but titik-titik simpul quadrature dan w0, w1 , · · · , wn disebut bobot.
Permasalahannya adalah menentukan nilai bobot tersebut agar ham-
piran integral tersebut baik.

Rumus-rumus Newton Cotes yang akan kita pelajari adalah metode


Trapesium, metode Simpson 31 , metode Simpson 38 dan metode Boole.

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 7

3
Metode Trapesium
h := b − a. Sebut xj := a + jh, fj := f (xj ).
Z b Z b
2 f (x) dx ≈ p1 (x) dx
a a
p1 (x) : polinom Lagrange derajat ≤ 1 yang
1
menginterpolasi (x0 , f0 ) dan (x1 , f1 ). Setelah
dilakukan pengintegralan diperoleh:
Z b
h
f (x) dx ≈ (f0 + f1 ) buktikan !
0 a 2
1 2 3 4
x

1
3
Metode Simpson 3
b−a
h := . Sebut xj := a + jh, fj := f (xj ).
Z2 b Z b
2 f (x) dx ≈ p2 (x) dx
a a
p2 (x) : polinom Lagrange derajat ≤ 2 yang
1
menginterpolasi (x0 , f0 ), (x1 , f1 ), dan (x2 , f2 ).
Setelah dilakukan pengintegralan diperoleh:
Z b
h
f (x) dx ≈ (f0 + 4f1 + f2 )
0 a 3
1 2 3 4
x

3 3

2 2

1 1

0 0
1 2 3 4 1 2 3 4
x x

3
Metode Simpson 8 Metode Boole
b
2h
b
Z
3h
Z
f (x) dx ≈ (f0 + 3f1 + 3f2 + f3 ) f (x) dx ≈ (7f0 + 32f1 + 12f2 + 32f3 + 7f4 )
a 8 a 45

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 8

Metode Trapesium Komposit

0
1 2 3 4
x

Partisikan interval [a, b] atas n bagian. h := b−a


n
. Sebut xj := a + jh, fj := f (xj ).
Z b
h
f (x) dx ≈ (f0 + 2f1 + 2f2 + · · · + 2fn−1 + fn ) Buktikan!
a 2
3
Galat metode Trapesium: E = − (b−a)
12n2
f ′′ (c) dengan c diantara a dan b.

1
Metode Simpson 3 Komposit

0
1 2 3 4
x

Partisikan interval [a, b] atas n bagian (n genap). h := b−a


n
. Sebut xj := a + jh, fj := f (xj ).
Z b
h
f (x) dx ≈ (f0 + 4f1 + 2f2 + 4f3 + 2f4 + · · · + 2fn−2 + 4fn−1 + fn ) Buktikan!
a 3
5
Galat metode Simpson 13 : E = − (b−a)
180n4
f (4) (c) dengan c diantara a dan b.

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 9

Contoh-Contoh:
R1
1. Gunakan metode Trapesium untuk mengaproksimasi e−x dx memakai n=6, dan tentukan
0
batas galatnya.
R1
2. Terapkan metode Simpson thd. e−x dx dengan galat ≤ 0,0001
0

Latihan:
Turunkan ”metode Simpson 83 komposit” dan ”metode Boole komposit” menggunakan n subin-
terval. Adakah persyaratan nilai n untuk masing-masing metode tersebut.

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 10

Metode Trapesium Rekursif

x0 h0 x1
b−a h0
h0 := T0 := (f0 + f1 )
20 2

x0 h1 x1 x2
b−a T0
h1 := T1 := + h1 f1 buktikan !
21 2

x0 h2 x1 x2 x3 x4
b−a T1
h2 := T2 := + h2 (f1 + f3 ) buktikan !
22 2

x0 hk -1 x2k-1

hk
x0 x2k
b−a Tk−1
hk := Tk := + hk (f1 + f3 + f5 + · · · + f2k −1 )
2k 2

Tk − Tk−1
Proses perhitungan di atas dihentikan bila ≤ eps. Proses hitungan ini tidak dijamin
Tk
konvergen sehingga dalam algoritmanya kita harus membatasi banyaknya iterasi.

Bahas algoritma metode Trapesium Rekursif !


Z 4
Latihan: Hampirilah ex dx memakai metode Trapesium Rekursif dgn eps = 10−5 .
0

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 11

Metode Simpson Rekursif


Z b
Perhatikan perhitungan f (x) dx menggunakan metode trapesium dengan 2k−1 dan 2k subin-
a
b−a b−a
terval. Lebar masing-masing subinterval adalah hk−1 = k−1
dan hk = k
2 2
x2 x4 x2m
x0 hk -1 x2 k -1 x2 k

Hampiran integral dengan menggunakan 2k−1 interval:


hk−1
Tk−1 = (f0 + 2f2 + 2f4 + · · · + 2f2m + · · · + 2f2k−1 + f2k )
2
Tk−1 = hk (f0 + 2f2 + 2f4 + · · · + 2f2m + · · · + 2f2k−1 + f2k ) (52)

x0 x2 x4 x2m

x1 hk x x2m-1 x2m+1 x2k


3

Metode Trapesium menggunakan 2k interval:


hk
Tk = (f0 + 2f1 + 2f2 + 2f3 · · · + 2f2m−1 + 2f2m + 2f2m+1 + · · · + 2f2k−1 + f2k )
2
4Tk = 2hk (f0 + 2f1 + 2f2 + 2f3 · · · + 2f2m−1 + 2f2m + 2f2m+1 + · · · + 2f2k−1 + f2k )(53)

Persamaan (53) - Pwersamaan (52) :

4TK − Tk−1 = hk (f0 + 4f1 + 2f2 + 4f3 + · · · + 4f2m−1 + 2f2m + 4f2m+1 + · · · + 4f2k −1 + f2k )

4TK − Tk−1 hk
= (f0 + 4f1 + 2f2 + 4f3 + · · · + 4f2m−1 + 2f2m + 4f2m+1 + · · · + 4f2k −1 + f2k )
3 3
Z b
Ekspresi pada ruas kanan adalah hampiran Simpson terhadap f (x) dx dengan memakai 2k
a
subinterval, disimbolkan Sk .

4TK − Tk−1
Sk := rumus metode Simpson rekursif
3
Latihan: Tuliskan algoritma metode Simpson rekursif dengan batas galat eps dan maksimum
iterasi 2n .

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 12

Metode Romberg
Dari bahasan sebelumnya terlihat bahwa untuk meningkatkan keakuratan hampiran integral ada
dua hal yang dapat dilakukan:

• Memperhalus partisi [a, b], dengan cara memperbanyak subinterval yang digunakan

• Mempertinggi derajat polinom yang dipakai menghampiri f (x).


(metode Trapesium → Simpson → Boole → polinom derajat lebih tinggi)

Pada metode Romberg, kedua prosedur di atas dilakukan secara simultan. Pada setiap langkah
iterasi, dilakukan penghalusan partisi [a, b] sekaligus peningkatan derajat polinom hampiran ter-
hadap f (x). Secara analitik proses ini akan menghasilkan kekonvergenan yang sangat cepat
(bukti dapat dibaca pada buku-buku Numerical Analysis).
Z b
Misalkan Tj , Sj , danBj masing-masing merupakan aproksimasi terhadap f (x) dx memakai
a
metode Trapesium, Simpson, dan Boole dengan 2j interval.
b−a
Sebut hj = dan xi := a + i hj , i = 0, 1, · · · , n = 2j .
2j
Rumus rekursif untuk metode-metode tersebut dan akurasinya adalah sebagai berikut:
n
2
Tj−1 X
Tj := + hj f (x2i−1 ) O(h2 )
2 i=1

4Tj − Tj−1
Sj := O(h4 )
3
42 Sj − Sj−1
Bj := O(h6 )
15

Diagram berikut memperlihatkan iterasi untuk menghitung masing-masing metode tersebut.

T0
T1 S1
T2 S2 B2
T3 S3 B3
T4 S4 B4

Pada diagram di atas, makin ke bawah berarti jumlah subinterval yang digunakan makin banyak,
sedangkan makin ke kanan, derajat polinom yang digunakan makin tinggi.

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 13

Untuk kemudahan algoritma, penulisan akan menggunakan matriks sebagai berikut:

R0,0
R1,0 R1,1
R2,0 R2,1 R2,2
R3,0 R3,1 R3,2 R3,3
R4,0 R4,1 R4,2 R4,3 R4,4
R5,0 R5,1 R5,2 R5,3 R5,4 R5,5

Pada notasi ini Rj,k mempunyai makna perhitungan metode tersebut menggunakan 2j interval
dan memakai polinom derajat 2k . Proses kekonvergenan akan maksimal bila kita menelusuri
perhitungan pada arah diagonal, yaitu R1,1 , R2,2 , R3,3 , · · ·.

Berikut disajikan rumus iterasi perhitungannya:

b−a
R0,0 := (f (a) + f (b)) metode Trapesium 1 interval
2
n
2
Rj−1,0 X
Rj,0 := + hj f (x2i−1 ) metode Trapesium 2j interval
2 i=1

4k Rj,k−1 − Rj−1,k−1
Rj,k := k = 1, 2, · · · , j
4k − 1
Proses perhitungan ini disebut Metode Romberg
Rj,j − Rj − 1, j − 1
Kriteria penghentian iterasi : | |<ǫ
Rj,j

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 14

Z 4
Contoh: Hampirilah ex dx memakai metode Romberg sampai R2,2 .
0
(Solusi eksaknya 53,5981500331442390781102612029).
Pada masalah ini, f (x) = ex , a = 0, dan b = 4.

Menghitung R0,0
b−a 4−0
n = 20 = 1, h := n
= 1
= 4. x0 = 0, x1 = 4
h
R0,0 := 2
(f (x0 ) + f (x1 )) = 42 (e0 + e4 ) = 2 (1 + 54, 5982) = 111, 1963.

Menghitung R1,0
b−a 4−0
n = 21 = 2, h := n
= 2
= 2. x0 = 0, x1 = 2, x2 = 4
R0,0 111.1963
R1,0 := 2
+ hf (x1 ) = 2
+ 2e2 = 70, 3763

Menghitung R1,1
41 ·R1,0 −R0,0 4·70,3763−111,1963
R1,1 := 41 −1
= 3
= 56, 7696

Menghitung R2,0
b−a 4−0
n = 22 = 4, h := n
= 4
= 1. xi = 0, 1, 2, 3, 4
R1,0 70,3763
R2,0 := 2
+ h (f (x1 ) + f (x3 )) = 2
+ 1 (e1 + e3 ) = 57, 9919

Menghitung R2,1
41 ·R2,0 −R1,0 4·57,9919−70,3763
R2,1 := 41 −1
= 3
= 53, 8638

Menghitung R2,2
42 ·R2,1 −R1,1 16·53,8638−56,7696
R2,2 := 42 −1
= 15
= 53, 6701

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 15

Algoritma Metode Romberg


Masukan : f (x) fungsi yang diintegralkan
a, b batas integrasi
eps batas galat
Maks Iter batas maksimum iterasi
Keluaran : Rmbrg hasil aproksimasi dengan metode Romberg
Langkah-Langkah :
h
1. R0,0 := (f (a) + f (b))
2
2. j := 1
3. n := 2j
b−a
4. h :=
n
5. s := 0, x := a
n/2
n P
6. Untuk i := 1, 2, · · · , Menghitung f (x2i−1 )
2 i=1
x := a + (2 ∗ i − 1)h
s := s + f (x)
Rj−1,0
7. Rj,0 := + hs metode Trapesium n interval
2
8. Untuk k := 1, 2, · · · , j
4k Rj,k−1 − Rj−1,k−1
Rj,k :=
4k − 1
Rj,j − Rj−1,j−1
9. galat :=
Rj,j
10. Jika galat ≤ eps maka Rmbrg := Rj,j . Stop.
11. j := j + 1
12. Jika j ≤ Maks Iter ulangi langkah 3
13. ”Proses belum konvergen”, Stop.

Latihan: Lakukan modifikasi pada algoritma di atas supaya perhitungan menjadi lebih efisien
dan tidak ada operasi pemangkatan.

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 16

Pengintegralan Gauss-Legendre
y y

Property of YTS2014
y = f ( x) y = f ( x)

x x
-1 0 1 -1 x1 0 x2 1

(a) Galat = - (b)


Z 1
Pada gambar kiri f (x)dx dihampiri dengan metode trapesium. Terlihat bahwa untuk fungsi
−1
yang cekung ke atas atau cekung ke bawah, galatnya cukup besar.

Pada gambar sebelah kanan, fungsi f (x) dihampiri dengan polinom derajat satu yang melalui titik
(x1 , f (x1 )) dan (x2 , f (x2 )). Secara geometri terlihat bahwa galat yang terjadi sangat bergantung
pada pemilihan titik ini.

f (x2 ) − f (x1 )
Persamaan garisnya: p1 (x) = f (x1) + (x − x1 )
x2 − x1
f (x2 ) − f (x1 )
p1 (−1) = f (x1 ) + (−1 − x1 )
x2 − x1
f (x2 ) − f (x1 )
p1 (1) = f (x1 ) + (1 − x1 )
x2 − x1
1 − (−1)
Luas daerah : A = (p1 (−1) + p1 (1))
2
f (x2 ) − f (x1 )
A = 2f (x1 ) + (−1 − x1 + 1 − x1 )
x2 − x1
f (x2 ) − f (x1 )
A = 2f (x1 ) + (−2x1 )
x2 − x1
2f (x1 )(x2 − x1 ) + 2f (x1 )x1 f (x2 )
A= + (−2x1 )
x2 − x1 x2 − x1
2x2 2x1
A= f (x1 ) − f (x2 )
x2 − x1 x2 − x1
Hal khusus bila x1 = −1 dan x2 = 1, maka A = f (x1 ) + f (x2 ) (aturan trapesium).

Masalah: Bagaimana memilih titik x1 dan x2 ?

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 17

Metode koefisien tak tentu

Z1
f (x) dx ≈ w1 f (x1 ) + w2 f (x2 ) (54)
−1

Akan dicari w1 , x1 , w2, dan x2 supaya hampiran (54) menjadi eksak bila f (x) = a0 + a1 x +
a2 x2 + a3 x3 (polinom berderajat ≤ 3).

Karena integral bersifat aditif maka hampiran (54) diharuskan eksak pada empat buah fungsi
yaitu f (x) = 1, x, x2 , x3 .

Z1
f (x) = 1 : 1 dx = 2 = w1 + w2
−1
Z1
f (x) = x : x dx = 0 = w1 x1 + w2 x2
−1
Z1
2
f (x) = x2 : x2 dx = = w1 x21 + w2 x22
3
−1
Z1
f (x) = x3 : x3 dx = 0 = w1 x31 + w2 x32
−1



 w1 + w2 = 2
w1 x1 = −w2 x2

(55)

 w1 x21 + w2 x22 = 23
w1 x31 = −w2 x32

Bagi persamaan (55d) dengan persamaan (55b)

x21 = x22 atau x1 = −x2 (56)

Gunakan (56) untuk membagi persamaan (55b)dengan x1 untuk ruas kiri dan dengan −x2 untuk
ruas kanannya, diperoleh

w1 = w2 (57)

Substitusikan (57) ke (55a)

w1 = w2 = 1 (58)

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 18

Substitusikan (56) dan (58) ke (55c) diperoleh

2 1
atau x22 =
w1 x21 + w2 x22 = x22 + x22 =
3 2
r r
1 1
Diperoleh x2 = dan x1 = −
3 3

Rumus Gauss-Legendre dua titik


Misalkan f (x) kontinu pada [−1, 1] maka
Z1 r ! r !
1 1
f (x) dx ≈ G2 (f ) = f − +f
3 3
−1

Rumus di atas mempunyai tingkat keakuratan 3.

Rumus Gauss-Legendre tiga titik


Misalkan f (x) kontinu pada [−1, 1] maka
Z1 r ! r !!
1 3 3
f (x) dx ≈ G3 (f ) = 5f − + 8f (0)) + 5f
9 5 5
−1

Bahas asal usul dan keakuratan metode Gauss-Legendre tiga titik.

Secara umum, bentuk hampiran Gauss-Legendre memakai n titik


Z 1 n
X
f (x) dx ≈ wn,k f (xn,k )
−1 k=1

n xn,k wn,k
2 -0.5773502692 1,0000000000
0.5773502692 1,0000000000
3 ±0,7745966692 0,5555555559
0,0000000000 0,8888888888
4 ±0,8611363116 0,3478548451
±0,3399810436 0,6521451549
5 ±0,9061798459 0,2369268851
±0,5384693101 0,4786286705
0,0000000000 0,5688888888

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014


Diktat MA3171 Matematika Numerik 19

R1
Latihan: Hitung x4 dx dan bandingkan dengan hitungan eksaknya.
−1

Translasi Metode Gauss-Legendre


Zb
Bagaimana penerapan metode Gauss-Legendre untuk (f (t) dt.
a
Gunakan translasi t ∈ [a, b] −→ x ∈ [−1, 1].

t = α + βx

Dengan memperhatikan t(−1) = a dan t(1) = b maka diperoleh

a+b b−a
t= + x
2 2
b−a
Jadi dt = 2
dx
b 1  
a+b b−a b−a
Z Z
f (t) dt = f + x dx
a −1 2 2 2

Jadi rumus hampiran Gauss-Legendre menjadi:


b n  
b−aX a+b b−a
Z
f (t) dt ≈ wn,k f + xn,k
a 2 k=1 2 2

Z5
1
Terapkan rumus Gauss-Legendre memakai 3 titik terhadap dt
t
1

Untuk dipakai di ITB Warsoma Djohan / MA-ITB 2014

Anda mungkin juga menyukai