i
MODUL PRAKTIKUM
FISIKA KOMPUTASI
Disusun Oleh:
JURUSAN FISIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS PGRI PALEMBANG
ii PRAKATA
Puji syukur penulis ucapkan kepada Tuhan yang Maha Esa yang telah memberikan kesehatan dan berkat-Nya kepada penulis sehingga penulis bisa mengerjakan Modul Praktikum Fisika Komputasi ini. Penulis berharap semoga modul ini dapat membantu mahasiswa Jurusan Fisika FMIPA Universitas PGRI Palembang dalam menguasai materi kuliah Fisika Komputasi. Penulis juga mengucapkan terimakasih kepada pihak-pihak yang telah banyak membantu dalam penyusunan modul ini.
Penulis menyadari dalam penulisan modul praktikum ini masih banyak terdapat kekurangan. Kritik dan saran dari penulisan modul ini sangat penulis harapkan untuk perbaikan dan penyempurnaan pada modul praktikum berikutnya.
iii
DAFTAR ISI
Halaman
Halaman Sampul... i
Prakata ... ii
Daftar Isi ... iii
Modul 1. Pengenalan Program Matlab ... 1
Modul 2. Akar-Akar Polinomial ... 5
Modul 3. Komputasi Matriks... 8
Modul 4. Sistem Persamaan Linier... 10
Modul 5. Penyelesaian Turunan dengan Matlab ... 12
Modul 6. Diferensiasi Numerik dengan Metode Euler... 16
Modul 7. Diferensiasi Numerik dengan Metode Runge Kutta ... 18
Modul 8. Integrasi Numerik ... 20
Dosen Pengasu Fisika Komputasi 1
MODUL I
PENGENALAN PROGRAM MATLAB
Matlab merupakan bahasa pemrograman komputer berbasis windows dengan orientasi dasarnya adalah matriks, namun pada program ini tidak menutup kemungkinan untuk pengerjaan permasalahan non-matriks. Selain itu, matlab juga merupakan bahasa pemrograman yang berbasis pada objek (OOP), namun di sisi lain, karena matlab bukanlah
type compiler, maka program yang dihasilkan pada matlab tidak dapat berdiri sendiri. Agar
hasil program dapat berdiri sendiri maka harus dilakukan transfer pada bahasa pemrograman yang lain, missal C++. Pada matlab terdapat tiga windows yang digunakan dalam operasinya yaitu Command Windows (layar perintah) dan figure windows (layar gambar), serta notepad (sebagai tempat editor program).
1. Command Windows
Command windows (layar perintah) digunakan untuk menjalankan perintah/program yang
dibuat pada layar editor matlab. Pada windows/layar ini, anda dapat mengakses perintah maupun komponen pendukung (help file dan sebagainya) yang ada pada matlab secara langsung. Salah satu ciri dari Command windows ditandai dengan tanda prompt (>>). Layar Menu Command windows terlihat dalam gambar di bawah ini.
Dosen Pengasu Fisika Komputasi 2 2. File
Menu file merupakan item untuk menangai set-up statement yang berhubungan dengan file.
3. New
Menu New merupakan sub menu:
4. M-File
Membuka editor dengan layar kosong sehingga anda siap untuk membuat M-File baru
5. Figure
Figure membuat suatu figur window (layar gambar baru)
6. Model
Membuat layar model simulink (jika program matlab menyediakan fasilitas simulink)
7. Open M-File
Menampilkan dialog box untuk membuka sebuah M-File yang dipilih sesuai dengna pilihan pada dialog box ke dalam editor.
Dosen Pengasu Fisika Komputasi 3 Gambar 1.2 Open M-File
Save Workspace As
Menampilkan dialog box penyimpanan data dalam format ASCII
Dosen Pengasu Fisika Komputasi 4 Pada menu ini anda diperintahkan untuk memilih letak drive, directory dan masukkan nama file dengan extensi mat (*.mat) untuk menyimpan workspace (lembar kerja pada matlab) Set Path
Pada bagian inti digunakan untuk melakukan setting path/lintasan yang akan dikenali oleh program pada saat eksekusi file yang telah dibuat
Mencetak semua text yang berada pada command window. Jika yang dicetak tidak ingin semuanya maka cetak bagian (variabel) yang ingin dicetak
Exit Matlab
Dosen Pengasu Fisika Komputasi 5
MODUL II
AKAR-AKAR POLINOMIAL
1. Tujuan Praktikum
Praktikan memahami dan mengetahui bahwa banyak hal di dalam perhitungan fisika melibatkan pencarian akar
Praktikan dapat membuat script sederhana berkaitan dengan perhitungan akan persamaan melaui metoda yang sesuai
2. Metoda Bisection dan Metode Posisi Palsu
Metoda Bisection adalah salah satu metoda numerik untuk mencari nilai yang nilai ( ) mendekati nol berdasarkan nilai ( ) dan ( ). Ilustrasi pendekatan ini seperti Gambar 2.1 berikut ini.
Gambar 2.1 Metode Bisection
Metode lain yang serupa adalah metode selisih setengah adalah metode posisi palsu. Metode pencarian akar persamaan dengan memanfaatkan kemiringan dan selisih tinggi dari dua titik batas interval yang mengurung akar. Metode ini merupakan salah satu alternatif untuk mempercepat konvergensi. Ilustrasi pendekatan diberikan pada Gambar 2.2.
Dosen Pengasu Fisika Komputasi 6 Gambar 2.2 Metode Posisi Palsu
3. Langkah-langkah Metode Bisection dan Metode Posisi Palsu Algortima Metode Bisection diberikan sebagai berikut:
Masukkan:
Fungsi kontinu: ( )
Interval yang mengurung akar: [ ] Maksimum interasi:
Toleransi keakuratan: , misalnya
Perhitungan Inti: Ketika dan , Hitung:
Tentukan subinterval mana yang akan mengurung akar: a) Jika ( ) ( ) , maka , b) Jika ( ) ( ) , maka ,
c) Jika ( ) ( ) , maka diperoleh akar sama dengan Berhenti.
Hitung: | |
Dosen Pengasu Fisika Komputasi 7 Sedangkan algortima Metode Posisi Palsu diberikan sebagai berikut:
Masukkan:
Fungsi kontinu: ( )
Interval yang mengurung akar: [ ] Maksimum interasi:
Toleransi keakuratan: , misalnya
Perhitungan Inti: Ketika dan ,
Hitung:
( ) ( ) ( )
Tentukan subinterval mana yang akan mengurung akar: a) Jika ( ) ( ) , maka , b) Jika ( ) ( ) , maka ,
c) Jika ( ) ( ) , maka diperoleh akar sama dengan Berhenti.
Hitung: | |
Hasil akhir: akar sedemikian sehingga ( )
4. Tugas
1. Diberikan suatu persamaan polynomial
( )
a) Buatlah grafik hubungan ( ) dengan untuk persamaan yang diberikan di atas. b) Buatlah kode program untuk mencari akar-akar persamaan yang diberikan di atas c) Tentukan nilai keempat akar-akar persamaan yang diberikan di atas.
2. Dengan Metode Bisection, tentukan akar-akar dari persamaan: ! Buatlah grafik dari persamaan tersebut.
Dosen Pengasu Fisika Komputasi 8
MODUL III
KOMPUTASI MATRIKS
1. Tujuan Praktikum
Praktikan memahami dan mengetahui bahwa banyak hal di dalam perhitungan fisika melibatkan komputasi matriks
Praktikan dapat membuat script sederhana untuk perhitungan matriks dengan matlab 2. Komputasi Matriks
Penjumlahan dua buah matriks dapat dilakukan dengan program matlab, berikut diberikan script sederhananya
Dosen Pengasu Fisika Komputasi 9 Sedangkan contoh script untuk perkalian dua buah matriks diberikan sebagai berikut:
3. Tugas
Buatlah suatu script fungsi „function eksternal‟ untuk perkalian dua buah matriks dan simpan dengan nama function kali. Dari fungsi function yang sudah dibuat tentukan hasil dari perkaian dari matriks A dan B di bawah ini:
1. [ ] dan [ ] 2. [ ] dan [ ]
Dosen Pengasu Fisika Komputasi 10
MODUL IV
SISTEM PERSAMAAN LINIER
1. Tujuan Praktikum
Praktikan memahami dan mengetahui bahwa banyak hal di dalam perhitungan fisika melibatkan system persamaan linier
Praktikan dapat membuat script sederhana berkaitan dengan penyelesaian sistem persaman linier melalui metoda yang sesuai
2. Penyelesaian Sistem Persaman Linier dengan Metode Eliminasi Gauss Secara umum, sistem persamaan linier dinyatakan sebagai berikut:
dimana dan merupakan konstanta , adalah variabel, =1,2,
Berikut ini adalah sistem persamaan linier yang terdiri dari empat buah persamaan yaitu , dan .
Permasalahan dari sistem persamaan linier adalah bagaimana mencari nila pengganti bagi variabel , dan .
Sejumlah matrik bisa digunakan untuk menyatakan suatu sistem persamaan linier. Persamaan matriks tersebut dapat dinyatakan dalam bentuk operasi matrik sebagai berikut:
Dosen Pengasu Fisika Komputasi 11 Dalam mencari solusi suatu sistem persamaan linier dengan metode eliminasi gauss, bentuk operasi matrik dapat dimanipulasi dalam bentuk matrik augmented matriks sebagai berikut:
Dengan cara eliminasi Gauss, berikut ini diberikan contoh scriptnya:
3. Tugas
Suatu sistem persamaan linier diberikan dengan matriks sebagai berikut.
Buatlah script untuk penyelesaian system persamaan linier di atas. Tentukan nilai , dan !
Dosen Pengasu Fisika Komputasi 12
MODUL V
PENYELESAIAN TURUNAN DENGAN MATLAB
1. Tujuan Praktikum
Praktikan memahami dan mengetahui bahwa banyak hal di dalam perhitungan fisika melibatkan turunan
Praktikan dapat membuat script sederhana berkaitan dengan penyelesaian turunan berdasarkan rumus-rumus turunan
2. Langkah-langkah Penyelesaian
Untuk mencari turunan dari suatu fungsi di matlab, terlebih dahulu gunakan perintah “syms” untuk mendefinisikan variabel/ekspresi simbollik secara eksplisit secara bersamaan: sym a b atau syms („a‟,‟b‟) adalah cara singkat untuk a=sym(a), b=sym(b). Jika kita tidak menuliskan sym, maka Matlab akan menampilkan fungsi yang telah kita tuliskan, akan tetapi setiap variabel x tidak diketahui.
Setelah kita menuliskan syms x dan fungsi yang akan kita cari, maka kita harus mengetik Diff sebagai bahasa program untuk mendiferensialkan ekspresi simbolik atau elemen. Jika elemen bersifat numerik maka akan dicari diferensial dari ekspresi tersebut.
Dosen Pengasu Fisika Komputasi 13 Di bawah ini akan ditunjukkan penggunaan Matlab dalam rumus-rumus differensial.
RUMUS-RUMUS TURUNAN
1. Jika dengan c dan n konstanta real, maka Contoh:
dengan program Matlab dapat dikerjakan sebagai berikut
2. Jika y = c dengan , maka Contoh: dengan MATLAB 1 n x cn dx dy 3 1 4 4 . 8 4 . 2 2 x x dx dy x y R c 0 dx dy 0 3 dx dy y
Dosen Pengasu Fisika Komputasi 14 3. Jika y = f(x) + g(x), maka
Contoh
dengan program MATLAB
4. Jika y = f(x).g(x), maka Contoh Dengan MATLAB ) ( ' ) ( ' x g x f dx dy 6 8 5 6 2 4 x3 dx dy x x ) ( ) ( ' ) ( ) ( ' x f x g x g x f dx dy x x x x x x y x x g x x g x x f x x f x x y 4 4 ) ( 2 ) 2 ( 2 ' 2 ) ( ' ) 2 ( ) ( 2 ) ( ' ) ( ) 2 ( 3 2 2 2 2 2 2
Dosen Pengasu Fisika Komputasi 15 4. Tugas
Kerjakan soal di bawah ini dengan matlab!
1. Jika maka tentukanlah turunan pertamanya. 2. Bila maka tentukanlah nilai dari f’(2).
x x y 2.cos3 1 4 6 ) ( 2 x x x f
Dosen Pengasu Fisika Komputasi 16
MODUL VI
DIFERENSIASI NUMERIK
METODE EULER
1. Tujuan Praktikum
Praktikan memahami dan mengetahui bahwa banyak hal di dalam perhitungan fisika melibatkan diferensiasi numerik
Praktikan dapat membuat script sederhana berkaitan dengan penyelesaian diferensial secara numerik dengan metode Euler
2. Diferensiasi Numerik Metode Euler Diberikan PDB orde satu,
( ) ( ) Misalkan
( )
adalah hampiran nilai di yang dihitung dengan metode Euler dimana
Maka, formula matematika untuk penurunan numerik persamaan diferensiasi orde satu dengan metode Euler adalah:
dengan ( ) dan .
3. Galat dari Metode Euler
Jika langkah dimulai dari dan berakhir di maka total galat yang terkumpul pada solusi akhir ( ) adalah
∑( ) ( )
( ) ( )
( ) ( ) ( )
Dosen Pengasu Fisika Komputasi 17 4. Tugas
Diberikan persamaan differensial
( )
Buatlah script pada matlab untuk menghitung nilai ( ) dengan .
Jika diketahui fungsi asli adalah ( ) , tentukan galat dari perhitungan yang sudah dilakukan!
Dosen Pengasu Fisika Komputasi 18
MODUL VII
DIFERENSIASI NUMERIK
METODE RUNGE KUTTA
1. Tujuan Praktikum
Praktikan memahami dan mengetahui bahwa banyak hal di dalam perhitungan fisika melibatkan diferensiasi numerik
Praktikan dapat membuat script sederhana berkaitan dengan penyelesaian diferensial secara numerik dengan metode Runge Kutta
2. Diferensiasi Numerik Metode Runge Kutta 2.1 Metode Runge Kutta Orde Tiga
Metode Runge Kutta yang terkenal adalah metode Runge Kutta orde tiga dan metode Runge Kutta orde empat.
Metode Runge Kutta orde tiga berbentuk: ( )
( ) ( ) ( )
Galat per langkah metode Runge Kutta orde tiga adalah ( ) Galat longgokan metode Runge Kutta orde tiga adalah ( )
2.2. Metode Runge Kutta Orde Empat
Metode Runge Kutta orde empat berbentuk:
( )
( ) ( ) ( )
Dosen Pengasu Fisika Komputasi 19 Galat per langkah metode Runge Kutta orde empat adalah ( )
Galat longgokan metode Runge Kutta orde empat adalah ( )
3. Tugas
Buatlah Script pada Matlab untuk menyelesaikan persamaan diferensial:
( )
Untuk menentukan ( ) dengan metode Runge Kutta Orde Tiga. Gunakan ukuran langkah .
Dosen Pengasu Fisika Komputasi 20
MODUL VIII
INTEGRASI NUMERIK
1. Tujuan Praktikum
Praktikan memahami dan mengetahui bahwa banyak hal di dalam perhitungan fisika melibatkan integrasi numerik
Praktikan dapat membuat script sederhana berkaitan dengan penyelesaian integrasi secara numerik dengan metode trapezium
2. Metode Trapesium
Secara umum integrasi dapat merupkan luasan yang berada di bawah fungsi. Oleh karena itu, dengan metode trapezium dapat diilustrasikan ide integrasi numeriknya sebagai berikut:
Gambar 7.1 Metode Trapesium Sehingga solusi persamaan integrasi numeriknya adalah
Dosen Pengasu Fisika Komputasi 21 3. Alur Kode Program
Berikut ini adalah alur kode program untuk menyelesaikan persamaan integrasi numeric dengan metode trapesium
4. Tugas
Diberikan script program sebagai berikut:
Jalankanlah kode program di atas untuk mendekati nilai . Berapakah nilai hasil pendekatan?
Dosen Pengasu Fisika Komputasi 22 Daftar Pustaka
Landau R., et al. Computational Physics. Problem Solving With Computer (Wiley, 1997) Kincid D., Cheney W. Numeric Analysis (1991)
Conte, de Boor. Elementary Numerical Analysis, Algorithmic Approach Anonymous. 2010. Interpolasi Bilinier.