Upload
dangmien
View
302
Download
3
Embed Size (px)
Citation preview
i
MODUL PRAKTIKUM
FISIKA KOMPUTASI
Disusun Oleh:
JURUSAN FISIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS PGRI PALEMBANG
2017
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.
Penulis
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
Daftar Pustaka....................................................................................................... 22
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.
Gambar 1.1 Menu Command Windows
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
Gambar 1.3 Save Workspace
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
Perintah untuk keluar dari pelayanan 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: |
|
Hasil akhir: akar sedemikian sehingga ( )
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 nxcndx
dy
3144 .84.22 xxdx
dyxy
Rc 0dx
dy
03 dx
dyy
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
)(')(' xgxfdx
dy
68562 34 xdx
dyxx
)()(')()(' xfxgxgxfdx
dy
xx
xxxxy
xxgxxg
xxfxxf
xxy
44
)(2)2(2'
2)(')2()(
2)(')(
)2(
3
22
2
2
22
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).
xxy 3cos.2
146)( 2 xxxf
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
∑( ) ( )
( ) ( )
( )
( )
( )
Jadi, galat longgokan sebanding dengan .
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.