2 BAB I PENDAHULUAN 1.1. Latar Belakang Dalam permasalahan non-linier, terutama permasalahan yang mempunyai hubungan fungsi eksponensial dalam pembentukan polanya dapat dianalisis secara eksperimental maupun teoritis. Salah satu bagian dari analisa teoritis adalah dengan melakukan komputasi dengan metode numerik. Metode numerik dalam komputasi akan sangat membatu dalam menyelesaikan permasalahan-permasalahan yang rumit diselesaikan secara aritmatika. Metode numerik akan sangat membantu setiap penyelesaian permasalahan apabila secara matematis dapat dibentuk suatu pola hubungan antar variabel/parameter. Hal ini akan menjadi lebih baik jika pola hubungan yang terbentuk dapat dijabarkan dalam bentuk fungsi. Ada sejumlah metode numerik yang dapat digunakan untuk menyelesaikan persamaan non-linear. Metode numerik digunakan untuk menyelesaikan persoalan dimana perhitungan secara analitik tidak dapat digunakan. Metode numerik ini berangkat dari pemikiran bahwa permasalahan dapat diselesaikan dengan menggunakan pendekatan-pendekatan yang dapat dipertanggung-jawabkan secara analitik. Metode numerik ini disajikan dalam bentuk algoritma-algoritma yang dapat dihitung secara cepat dan mudah. Pendekatan yang digunakan dalam metode numerik merupakan pendekatan analisis matematis. Sehingga dasar
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
2
BAB I
PENDAHULUAN
1.1. Latar Belakang
Dalam permasalahan non-linier, terutama permasalahan yang mempunyai
hubungan fungsi eksponensial dalam pembentukan polanya dapat dianalisis secara
eksperimental maupun teoritis. Salah satu bagian dari analisa teoritis adalah dengan
melakukan komputasi dengan metode numerik. Metode numerik dalam komputasi akan
sangat membatu dalam menyelesaikan permasalahan-permasalahan yang rumit
diselesaikan secara aritmatika. Metode numerik akan sangat membantu setiap
penyelesaian permasalahan apabila secara matematis dapat dibentuk suatu pola
hubungan antar variabel/parameter. Hal ini akan menjadi lebih baik jika pola hubungan
yang terbentuk dapat dijabarkan dalam bentuk fungsi. Ada sejumlah metode numerik
yang dapat digunakan untuk menyelesaikan persamaan non-linear.
Metode numerik digunakan untuk menyelesaikan persoalan dimana perhitungan
secara analitik tidak dapat digunakan. Metode numerik ini berangkat dari pemikiran
bahwa permasalahan dapat diselesaikan dengan menggunakan pendekatan-pendekatan
yang dapat dipertanggung-jawabkan secara analitik. Metode numerik ini disajikan
dalam bentuk algoritma-algoritma yang dapat dihitung secara cepat dan mudah.
Pendekatan yang digunakan dalam metode numerik merupakan pendekatan analisis
matematis. Sehingga dasar pemikirannya tidak keluar jauh dari dasar pemikiran analitis,
hanya saja pemakaian grafis dan teknik perhitungan yang mudah merupakan
pertimbangan dalam pemakaian metode numerik.
Sedangkan Matlab adalah sebuah bahasa high-performance untuk komputasi
teknis. MATLAB merupakan singkatan dari MATrix LABoratory. MATLAB
mengintegrasikan perhitungan, visualisasi dan pemrograman dalam suatu lingkungan
yang mudah digunakan dimana, permasalahan dan solusi dinyatakan dalam notasi
secara matematis yang dikenal umum. Pertama MATLAB dapat digunakan sebagai
kalkulator ilmiah. Berikutnya MATLAB memungkinkan Anda untuk memvisualisasi
data dalam berbagai cara, melakukan aljabar matriks, bekerja dengan polinomial dan
fungsi integrasi. Seperti dalam sebuah kalkulator yang dapat diprogram, Anda dapat
2
menciptakan, mengeksekusi, dan menyimpan urutan perintah sehingga memungkinkan
komputasi dilakukan secara otomatis. MATLAB dapat diperlakukan sebagai sebuah
bahasa pemrograman yang akrab pengguna, yang memungkinkan untuk menangani
kalkulasi matematis dalam suatu cara yang mudah.
1.2. Tujuan Praktikum
Pembuatan laporan ini walau awalnya sebagai tugas mata kuliah Praktik Metode
Numerik sebenarnya juga sangat membantu penulis dan untuk memahami metode
Bisection, Newton Raphson, dan Secant
.
1.3. Manfaat Praktikum
Manfaat dari laporan Praktikum antara lain :
1. Membantu pengguna yang ingin menyelesaikan sistem persamaan linier.
2. Membantu mempelajari langkah-langkah yang dilakukan untuk menyelesaikan
sistem persamaan linier.
3. Melatih mahasiswa untuk menggunakan program matlab dan mengetahui
fungsi-fungsinya.
4. Memberikan pelatihan kepada mahasiswa agar dapat menerapkan materi-materi
pada mata kuliah Metode Numerik ke dalam applikasi matlab.
2
BAB II
LANDASAN TEORI
2.1. Pengenalan Matlab
MATLAB adalah sebuah lingkungan komputasi numerikal dan bahasa
pemrograman komputer generasi keempat. Dikembangkan oleh The MathWorks,
MATLAB memungkinkan manipulasi matriks, pem-plot-an fungsi dan data,
implementasi algoritma, pembuatan antarmuka pengguna, dan peng-antarmuka-an
dengan program dalam bahasa lainnya. Meskipun hanya bernuansa numerik, sebuah
kotak kakas (toolbox) yang menggunakan mesin simbolik MuPAD, memungkinkan
akses terhadap kemampuan aljabar komputer. Sebuah paket tambahan, Simulink,
menambahkan simulasi grafis multiranah dan Desain Berdasar-Model untuk sistem
terlekat dan dinamik.
Penggunaan Matlab meliputi bidang-bidang:
• Matematika dan Komputasi
• Pembentukan Algorithm
• Akusisi Data
• Pemodelan, simulasi, dan pembuatan prototipe
• Analisa data, explorasi, dan visualisasi
• Grafik Keilmuan dan bidang Rekayasa
MATLAB merupakan suatu sistem interaktif yang memiliki elemen data
dalam suatu array sehingga tidak lagi kita dipusingkan dengan masalah dimensi. Hal
ini memungkinkan kita untuk memecahkan banyak masalah teknis yang terkait
dengan komputasi, kususnya yang berhubungan dengan matrix dan formulasi vektor,
yang mana masalah tersebut merupakan momok apabila kita harus
menyelesaikannya dengan
menggunakan bahasa level rendah seperti Pascall, C dan Basic. Nama MATLAB
merupakan singkatan dari matrix laboratory.
MATLAB pada awalnya ditulis untuk memudahkan akses perangkat lunak
matrik yang telah dibentuk oleh LINPACK dan EISPACK. Saat ini perangkat
1. Tebak harga interval [a,b]; tentukan e; dan itmax
2. Set f0 = f(a); iter = 0; flag = 0;
3. Tentukan atau hitung akar = c := (a + b)/2; iter = iter + 1;
4. Jika f(a)·f(c) £ 0 maka b = c jika tidak a = c dan f0 = f(a);
5. Jika (b – a) £ e maka flag = 1 jika iter > itmax maka flag = 2;
6. Jika flag = 0 ulangi ke nomor 3;
7. Akar persamaan adalah: akar = (a + b)/2, sebagai akar terbaru;
8. Selesai.
2.2. Metode Newton Raphson
Metode Newton Raphson adalah metode pendekatan yang menggunakan satu titik dan
mendekatinya dengan memperhatikan slope atau gradien pada titik tersebut. Titik
pendekatan ke n+1 dituliskan dengan :
Algoritma Metode Newton Raphson
1. Definisikan fungsi f(x) dan fB1B(x)
2. Tentukan toleransi error (e) dan iterasi maksimum (n)
3. Tentukan nilai pendekatan awal xB0B
4. Hitung f(xB0B) dan fB1B(xB0B)
5. Untuk iterasi I = 1 s/d n atau |f(xi)| e ≥ Hitung f(xBiB) dan fB1B(xBiB)
6. Akar persamaan adalah nilai xi yang terakhir diperoleh.
2.3. Metode Secant
Masalah yang di dapat dalam metode Newton Raphson adalah terkadang sulit
mendapatkan turunan pertama, yakni f’(x). sehingga dengan jalan pendekatan :
2
Didapat :
Persamaan di atas memang memerlukan 2 nilai taksiranawal x, tetapi karena f(x) tidak
membutuhkan perubahan tanda diantara taksiran maka secand bukan metode akolade.
Algoritma Metode Secant
1. Definisikan fungsi F(x)
2. Definisikan torelansi error (e) dan iterasi maksimum (n)
3. Masukkan dua nilai pendekatan awal yang di antaranya terdapat akar yaitu x0 dan
x1, sebaiknya gunakan metode tabel atau grafis untuk menjamin titik
pendakatannya adalah titik pendekatan yang konvergensinya pada akar persamaan
yang diharapkan.
4. Hitung F(x0) dan F(x1) sebagai y0 dan y1
5. Untuk iterasi I = 1 s/d n atau |F(xi)|
hitung yi+1 = F(xi+1)
6. Akar persamaan adalah nilai x yang terakhir
2
BAB III
HASIL PRAKTIKUM
3.1. Praktikum Pengenalan Matlab
Penjumlahan Matrik
Analisa Program : pertama-tama dimasukkan nilai A, lalu nilai B, digunakan
titik koma untuk memisahkan nilai perbaris. kemudian dicari hasil A+B, syarat
penjumalahn matrik adalah kolom dan baris kedua variabel yaitu A dan B harus
sama.
Perkalian Matrik
2
Analisa Program : perkalian matrik syaratnya jumlah baris divariabel pertama
harus sama dengan jumlah kolom divariabel kedua.
Transfus dan Invers
Analisa Program : perintah B’ atau B transfus berfungsi untuk membalikkan
atau mengganti kolom menjadi baris
Mencari Sisa
2
Analisa Program : jumlah sisa dicari dengan memasukkan rumus jumlah awal
dikali 0.5 dan dipangkatkan waktu per waktu paruh.
For
2
Analisa Program : pertama dimasukkan nilai n yaitu 1:4 for digunakan untuk
melakukan perulangan dan perintahnya n dipangkatkan 3, pertama 1
dipangkatkan 3 sampai 4 dipangkat 3.
While
Analisa Program : pertama dimasukkan nilai n=1, lalu nilai x=0, kemudian x
dibatasi sampai kurang dari 15, setiap perulangan nilai n yang dilakukan
dipangkatkan 2 dan terus berjalan sampai 4 pangkat 2. Perintah stem(x)
digunakan untuk menampilkan kurva.
2
If Else
harga=input('harga 1 toples kue=');
cacah_kue=input('berapa toples kue yang di beli????=');
if cacah_kue>=4
bayar=((cacah_kue*harga)-(cacah_kue*harga*0.1))
else
bayar=(cacah_kue*harga)
end
Analisa Program : jika pembelian melebihi atau 4 toples akan mendapatkan
diskon sebesar 10%, jika tidak maka akan dihitung sesuai dengan harga yang
ditetapkan.
ujian1 = input ('masukkan nilai ujian pertama skala 100, ujian 1=')ujian2 = input ('masukkan nilai ujian pertama skala 100, ujian 2=')ujian3 = input ('masukkan nilai ujian pertama skala 100, ujian 3=')ujian4 = input ('masukkan nilai ujian pertama skala 100, ujian 4=') nilai = (ujian1+ujian2+ujian3+ujian4)/4if nilai>=80 ket='A'else if 70<=nilai & nilai <80 ket='B'else if 60<=nilai & nilai<70 ket='C'else if 50<=nilai &nilai<60 ket='D' else ket='E' end end end
2
end
Hasil ketika di running :
Analisa Program : untuk mencari nilai akhir maka nilai pertama sampai nilai keempat dijumlahkan lalu dibagi keempat. Setelah mendapatkan nilai akhir maka dicocokan dengan kategori yang tersedia.
Switch Case
disp('1. harta')disp('2. nyawa')disp('3. kehormatan') n = input('mau pilih enak apa gak???(masukkan nomor saja) = ');switch n case(1), disp('harta') case(2), disp('nyawa') case(3), disp('kehormatan') otherwise disp('tentukan pilihanmu??')end
Hasil ketika di running :
2
Analisa Program : dipakai untuk menampilkan beberapa pilihan.
Analisa Program : Fungsi plot digunakan untuk menggambar grafik 2D dengan skala linier
pada kedua sumbunya.
3.2. Metode Bisection
function bisection ; disp('METODE BISECTION'); disp('================'); a = input ('masukkan batas kiri internal :'); b = input ('masukkan batas kanan internal :'); eps = input ('masukkan epsilon / batas ketelitian :'); itemax = input ('masukkan jumlah iterasi maksimum :'); alfa = a; disp(' '); disp('memulai proses iterasi'); disp('======================'); tic for i = 1:1:itemax t = (a+b)/2; if (fn(a,alfa)*fn(t,alfa)<=0) b = t; else a = t; end disp (['iterasi ke',num2str(i),',',' akarnya :',num2str(t)]) if (abs(a-b))<=eps break end endwaktu = toc;disp(' ');disp(['akarnya adalah : ',num2str(t)]);disp(['jumlah iterasi : ',num2str(i)]);disp(['selang waktu konvergensi : ',num2str(waktu)]);function f = fn(x,alfa) f = log (2-exp(-x))-x + alfa;
Analisa Program
function bisection : untuk membuat fungsi sendiri (fungsi bisection) di matlab
disp : menampilkan output program (apa yang ada diantara tanda petik) ke layer
2
input : meminta masukkan ketika program dijalankan dan menyimpannya ke dalam variabel a, b, eps dan itemax untuk menentukan batas atas, batas bawah, epsilon dan iterasi maksimum.
Disp : menampilkan output program (apa yang ada diantara tanda petik) ke layer
for : melakukan iterasi dari satu hingga batas yang ditentukan dengan kenaikan sebanyak 1
else : alternatif pilihan dari if
break: menghentikan eksekusi dari pengulangan for
toc: mengakhiri fungsi stopwatch dan memasukkan nilainya ke dalam variabel waktu
num2str : mengkonversikan nilai angka pada variabel ke dalam string agar dapat ditampilkan ke layer
Hasil ketika di running :
3.3. Metode Newton Raphson
function newtonrapson; clc; clear; disp('programm metode newton rapson'); disp('============================='); E= 0.0001; x0 = input ('masukkan x awal :'); i = 0; m = 9; xb = 0; disp('__________________________________________'); disp(' i xi f(xi) epsilon ') ; disp('__________________________________________'); while(E<m);
2
fx = exp(x0)-4*x0; gx=exp(x0)- 4; xb=x0-(fx/gx); m=abs(x0-xb); x0=xb; i=i+1; fprintf('%3.0f %12.6f %12.6f %12.6f\n', 1, xb, fx, m); end disp('-------------------------------------------'); fprintf('Akarnya adalah = %10.8f\n, xb'); end
Analisa Program
function newtonraphson : untuk membuat fungsi sendiri (fungsi newtonraphson) di matlab
Clc : membersihkan command windows
Clear : menghapus item (variabel) dari layer dan membersihkan sistem memori
Disp : menampilkan output program (apa yang ada diantara tanda petik) ke layer
E=0.0001 : memasukkan nilai 0.0001 ke dalam variabel E(sebagai batas ketelitian)
fx= exp(x0)-4*x0;
gx=exp(x0)- 4;
m=abs(x0-xb); memasukkan nilai ke dalam variabel
x0=xb;
i=i+1;
fprintf : menampilkan data (apa yang ada diantara tanda petik) ke layer dalam format tertentu
end : akhir dari functionHasil ketika di running :
2
3.4. Metode Secant
function secant; clc; clear; disp('Program Metode Secant'); disp('=============================');E=0.0001; x0=input('Masukkan X0 :');xb=input('Masukkan X1 :'); i=0; M=9; disp('_______________________________________________'); disp(' i xi f(xi) epsilon'); disp('_______________________________________________'); while (E<M) fx=exp(x0)-5*x0^2; fxb=exp(xb)-5*xb^2; d = xb - (fxb*(xb-x0)/(fxb-fx)); M=abs(x0-xb); x0 = xb; xb = d; i=i+1; end; disp('_______________________________________________'); fprintf('Akarnya Adalah = %10.8f\n',xb); end
2
Analisa program :
function secant : untuk membuat fungsi sendiri (fungsi secant) di matlab
Clc : membersihkan command windows
Clear : menghapus item (variabel) dari layer dan membersihkan sistem memori
Disp : menampilkan output program (apa yang ada diantara tanda petik) ke layer
fx=exp(x0)-5*x0^2;
fxb=exp(xb)-5*xb^2; menghitung nilai untuk variabel
d=xb-(fxb*(xb-x0)/(fxb-fx));
M=abs(x0-xb);
x0=xb;
xb = d; memasukkan nilai dari variabel
i=i+1;
fprintf : menampilkan data (apa yang ada diantara tanda petik) ke layer dalam format tertentu
end : akhir dari function
Hasil ketika di running :
BAB IVPENUTUP
2
4.1. Kesimpulan
Prinsip-Prinsip Metode Numerik
-> Digunakan jika metode analitik tidak dapat digunakan lagi
-> Metode Numerik merupakan pendekatan untuk mendapatkan pemecahan masalah
yang dapat dipertanggung jawabkan secara analitik
-> Pendekatannya merupakan analisis matematis
-> Metode Numerik terdiri atas algoritma-algoritma yang dapat dihitung secara cepat
dan mudah
-> Karena berasal dari alogaritma pendekatan, maka Metode Numerik ini akan
memakai iterasi (pengulangan)
-> Nilai kesalahan merupakan hal paling utama untuk mengetahui seberapa baik
metode yang digunakan.
Pemakaian Metode Numerik
Pemakaian Metode Numerik biasanya dilakukan untuk menyelesaikan persoalan
matematis yang penyelesaiannya sulit didapatkan dengan menggunakan metode
analitik, yaitu :
1. Menyelesaikan persamaan non linier
2. Menyelesaikan persamaan simultan
3. Menyelesaikan differensial dan integral
4. Interpolasi dan Regresi
5. Menyelesaikan persamaan differensial
6. Masalah multi variable untuk menentukan nilai optimal yang tak bersyarat