Iterasi Gauss

  • Published on
    02-Aug-2015

  • View
    107

  • Download
    3

Embed Size (px)

Transcript

Komputasi untuk Sains dan TeknikSupriyanto Suparno( Website:http://supriyanto.sika.ui.edu )( Email:supri@sika.ui.ac.id atau supri92@gmail.com )Edisi IIRevisi terakhir tgl: 12 Februari 2008Departemen Fisika-FMIPA, Univeristas IndonesiaDipublikasikan pertama kali pada September 2007UntukNina MarliyaniMuih SyamildanHasan AzmiKetekunan adalah jalan yang terpercaya untuk mengantarkan kita menuju kesuksesan(Supriyanto, 2007)Kata PengantarSecaragarisbesar, ilmusikadapat dipelajari lewat3jalan, yaitupertama, denganmeng-gunakan konsep atau teori sika yang akhirnya melahirkan sika teori. Kedua,dengan caraeksperimenyangmenghasilkanaliransikaeksperimental, danketiga, sikabisadipelajarilewat simulasi sika yang sangat mengandalkan komputer serta algoritma numerik.Tujuan penyusunan buku ini adalah untuk meletakkan pondasi dasar dari bangunan pema-haman akan metode-metode komputasi yang banyak digunakan pada simulasi-simulasi fenom-ena sika.Rujukan utama buku ini bersumber pada buku teks standar yang sangat populer di duniakomputasi, yaitu buku yang ditulis oleh Richard L. Burden dan J. Douglas Faires dengan judulNumerical Analysis edisi ke-7, diterbitkan oleh Penerbit Brooks/Cole, Thomson Learning Aca-demicResourceCenter. Disampingitu, bukuini dilengkapi olehsejumlahcontohaplikasikomputasi pada upaya penyelesaian problem-problem sika.Dalamedisi ke-2 ini, algoritma numerik disalin ke dalam2 bahasa pemrograman, yaitu For-tran77 dan Matlab.Disamping itu penjelasan lebih terperinci tentang bagaimana menentukanindeks i, j dan k dalam proses looping disajikan pada Bab I, untuk memberi pondasi yang san-gat penting bagi berdirinya bangunan pemahaman akan teknik-teknik numerik selanjutnya.AkhirnyasayainginmengucapkanrasaterimakasihyangtakterhinggakepadaDedeDjuhanayangtelahberkenanmemberikanformatLATEX-nyasehinggatampilantulisanpadabukuini benar-benarlayaknyasebuahbukuyangsiapdicetak. Rasaterimakasihjugain-ginsayateruskankepadaSarahWardhaniyangtelahmemiculangkahawalpenulisanbukuini hinggamasukkeEdisi-2. Taklupa, sayapunsepatutnyaberterimakasihkepadaselu-ruh rekan diskusi yaitu para mahasiswa yang telah mengambil mata kuliah Komputasi FisikaPTA2006/2007diDepartemenFisika, FMIPA,UniversitasIndonesia. Tigaorangmahasiswidari Universitas Pakuan yaitu Eni Nurliani,Saidah Al-adawiyah dan Deni Fitri A juga perlusaya tulis disini sebagai ungkapan terima kasih atas pertanyaan-pertanyaan mereka yang turutmemperkaya isi buku ini.Walaupun buku ini masih jauh dari sempurna, namun semoga ia dapat menyumbangkanenergi bagi terciptanya gelombang kebangkitan ilmu pengetahuan pada bangsa Indonesia yangsaat ini sedang terpuruk. Saya wariskan ilmu ini untuk anak bangsa. Saya izinkan anda untukmeng-copy dan menggunakan buku ini selama itu ditujukan untuk belajar dan bukan untuk tu-juan komersial.Bagi yang ingin berdiskusi, memberikan masukan, kritikan dan saran, silakandikirimkan ke email:supri92@gmail.comDepok, 16 September 2007Supriyanto SuparnovDaftar IsiLembar Persembahan iKata Pengantar vDaftar Isi viiDaftar Gambar xiDaftar Tabel xiii1 Matrik dan Komputasi 11.1 Pengenalan matrik . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.2 Inisialisasi matrik dalam memori komputer . . . . . . . . . . . . . . . . . . . . . . 21.3 Macam-macam matrik . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31.3.1 Matrik transpose . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31.3.2 Matrik bujursangkar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31.3.3 Matrik simetrik . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31.3.4 Matrik diagonal. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31.3.5 Matrik identitas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41.3.6 Matrik upper-triangular . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41.3.7 Matrik lower-triangular . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41.3.8 Matrik tridiagonal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41.3.9 Matrik diagonal dominan . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51.3.10 Matrik positive-denite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51.3.11 Vektor-baris dan vektor-kolom. . . . . . . . . . . . . . . . . . . . . . . . . 61.4 Operasi matematika . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61.4.1 Penjumlahan matrik . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61.4.2 Komputasi penjumlahan matrik . . . . . . . . . . . . . . . . . . . . . . . . 71.4.3 Perkalian matrik . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91.4.4 Komputasi perkalian matrik . . . . . . . . . . . . . . . . . . . . . . . . . . 121.4.5 Perkalian matrik dan vektor-kolom . . . . . . . . . . . . . . . . . . . . . . 131.4.6 Komputasi perkalian matrik dan vektor-kolom . . . . . . . . . . . . . . . . 141.5 Penutup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151.6 Latihan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152 Metode Eliminasi Gauss 172.1 Sistem persamaan linear . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172.2 Triangularisasi dan Substitusi Mundur. . . . . . . . . . . . . . . . . . . . . . . . . 18viiviii2.3 Matrik dan Eliminasi Gauss . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212.4 Algoritma eliminasi Gauss. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232.4.1 Algoritma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252.5 Contoh aplikasi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292.5.1 Menghitung arus listrik . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292.6 Menghitung invers matrik. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 312.7 Penutup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373 Aplikasi Eliminasi Gauss pada Masalah Inversi 393.1 Inversi Model Garis. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393.1.1 Script matlab inversi model garis. . . . . . . . . . . . . . . . . . . . . . . . 423.2 Inversi Model Parabola. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 443.2.1 Script matlab inversi model parabola . . . . . . . . . . . . . . . . . . . . . 483.3 Inversi Model Bidang. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 503.4 Contoh aplikasi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 533.4.1 Menghitung gravitasi di planet X . . . . . . . . . . . . . . . . . . . . . . . . 534 Metode LU Decomposition 614.1 Faktorisasi matrik. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 614.2 Algoritma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 655 Metode Iterasi 715.1 Kelebihan Vektor-kolom. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 715.2 Pengertian Norm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 725.2.1 Script perhitungan norm dalam Matlab . . . . . . . . . . . . . . . . . . . . 725.2.2 Perhitungan norm-selisih . . . . . . . . . . . . . . . . . . . . . . . . . . . . 735.3 Iterasi Jacobi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 735.3.1 Script Matlab untuk menghitung iterasi . . . . . . . . . . . . . . . . . . . . 765.3.2 Optimasi script Matlab untuk menghitung iterasi . . . . . . . . . . . . . . 805.3.3 Algoritma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 825.3.4 Program dalam Fortran . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 825.4 Iterasi Gauss-Seidel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 845.4.1 Script iterasi Gauss-Seidel . . . . . . . . . . . . . . . . . . . . . . . . . . . . 855.4.2 Algoritma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 875.4.3 Script iterasi Gauss-Seidel dalam Fortran . . . . . . . . . . . . . . . . . . . 875.5 Iterasi dengan Relaksasi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 895.5.1 Algoritma Iterasi Relaksasi . . . . . . . . . . . . . . . . . . . . . . . . . . . 906 Interpolasi 936.1 Interpolasi Lagrange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 936.2 Interpolasi Cubic Spline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95ix7 Diferensial Numerik 1037.1 Metode Euler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1037.2 Metode Runge Kutta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1067.3 Metode Finite Difference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1137.3.1 Script Finite-Difference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1157.3.2 Aplikasi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1208 Pers.Diferensial Parsial Numerik 1238.1 Pendahuluan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1238.2 PDP eliptik dalam Finite-Difference . . . . . . . . . . . . . . . . . . . . . . . . . . 1249 Integral Numerik 1319.1 Metode Trapezoida . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1319.2 Metode Simpson . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1319.3 Metode Composite-Simpson. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13310 Metode Newton 13710.1 Penyederhanaan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13711 Metode Monte Carlo 13911.1 Penyederhanaan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13912 Inversi 14312.1 Inversi Linear . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14312.2 Inversi Non-Linear . . . .