8/20/2019 modul MatLab Ilmu Komputer
1/28
MODUL METODE NUMERIK
ERIKA FAHMI G
122406135
KOM C’2
D3 TEKNIK INFORMATIKAFAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS SUMATERA UTARA
MEDAN
2014
8/20/2019 modul MatLab Ilmu Komputer
2/28
3
BAB 1
SEKILAS TENTANG METODE NUMERIK
1.1 Pengertian dari Mata Kuliah
Metode numerik merupakan matakuliah yang mempelajari tentang persoalan-
persoalan matematika. Sehingga kita dapat mengimplementasikannya dalam bentuk
program yang dapat mempermudah kita. Adapun yang akan di bahas dalam modul ini
adalah matriks, persamaa linier, metode gauss dan MATLAB.
1.2 Rumusan Masalah
Bagaimana cara mengerjakan soal eliminasi Gauss dan Gauss Jordan dan programnya
dengan Matlab?
1.3 Tujuan
Pembuatan makalah ini sebagai tugas mata kuliah Metode Numerik untuk lebih
memahami metode eliminasi Gauss dan Gauss-Jordan dan membantu pembaca
lainnya yang ingin menyelesaikan sistem persamaan linier.
Manfaat dari makalah yang dibuat kelompok antara lain :
a. Membantu memahami apa yang dimaksud metode eliminasi Gauss dan Gauss-Jordan.
b. Membantu mempelajari langkah-langkah yang dilakukan untuk menyelesaikan soal
sistem persamaan linier dengan metode eliminasi Gauss dan Gauss Jordan.
c. membantu memahami program yang akan di buat dari metode gauss.
1.4 Susunan Bahan Pembelajaran
8/20/2019 modul MatLab Ilmu Komputer
3/28
4
Bab I Sekilas tentang metode numerik
Bab II MATLAB
1.5 Petunjuk Untuk Mahasiswa
1.
Sebelum mengikuti pembelajaran hendaknya mahasiswa telah membaca bahan
ajar ini dan dapat diperkaya dengan sumber acuan lainnya yang relevan pada
setiap pertemuan.
2. Untuk memperkaya wawasan dan pengetahuan sangat dianjurkan penelusuran
literatur khususnya materi metode numerik melalui sumber bacaan dan internet.
3.
Kerjakan setiap tugas terstruktur yang diberikan pada setiap akhir
kegiatan/pertemuan dengan baik.
4. Perbanyaklah latihan mengerjakan soal, baik secara teori maupun langsung
dipraktekan dalam komputer dengan menggunakan bahasa pemrograman.
1.6 Teori dasar
Makalah ini dibuat untuk membantu para siswa memahami mata kuliah “Metode
Numerik”. Kuliah Metode Numerik ini diberikan sebagai salah satu Mata Kuliah
Wajib yang memiliki bobot 2 SKS (Satuan Kredit Semester). Tujuannya yang ingin
didapat mata kuliah ini adalah untuk memahami konsep dasar metode numerik.
metode numerik adalah teknik di mana masalah matematika diformulasikan
sedemikian rupa sehingga dapat diselesaikan oleh pengoperasian aritmetika (Chapra
dan Chanale, 1991); metode numerik adalah teknik -teknik yang digunakan untuk
merumuskan masalah matematika agar dapat diselesaikan han ya dengan operasi
hitungan, yang terdiri dari operasi tambah, kurang, kali dan bagi (Susila, 1994 ;
Ibraheem dan Hisyam, 2003). Terdapat banyak jenis metode numerik, namun pada
dasarnya, masing -masing metode tersebut memiliki karakteristik umum, yaitu selalumencakup sejumlah kalkulasi aritmetika. Jadi metode numerik adalah suatu teknik
8/20/2019 modul MatLab Ilmu Komputer
4/28
5
untuk memformulasikan masalah matematika sehingga dapat diselesaikan dengan
operasi aritmetika yang terdiri dari operasi tambah, kurang, kali dan bagi (Rochmad,
2011).
Mata pelajaran matematika sering kali menyajikan masalah sehari-hari pada
materi dalam setiap bab yang kemudian dapat selesaikan menggunakan model
matematika. Seperti pada sub bab ”Sistem Persamaan Linear”.
Berdasarkan latar belakang di atas penulis tertarik untuk melakuka dengan
metode penyelesaian yaitu dengan metode Eliminasi Gauss dan Eliminasi Gauss
Jordan.
.
8/20/2019 modul MatLab Ilmu Komputer
5/28
6
BAB 2
MATLAB
2.1 Pengertian dari Mata Kuliah
Metode numerik merupakan matakuliah yang mempelajari tentang persoalan-
persoalan matematika. Sehingga kita dapat mengimplementasikannya dalam bentuk
program yang dapat mempermudah kita. Adapun yang akan di bahas dalam modul ini
adalah matriks, persamaa linier, metode gauss dan MATLAB.
2.2 Rumusan Masalah
Bagaimana cara mengerjakan soal eliminasi Gauss dan Gauss Jordan dan programnya
dengan Matlab?
2.3 Tujuan
Pembuatan makalah ini sebagai tugas mata kuliah Metode Numerik untuk lebih
memahami metode eliminasi Gauss dan Gauss-Jordan dan membantu pembaca
lainnya yang ingin menyelesaikan sistem persamaan linier.
Manfaat dari makalah yang dibuat kelompok antara lain :a. Membantu memahami apa yang dimaksud metode eliminasi Gauss dan Gauss-
Jordan.
b. Membantu mempelajari langkah-langkah yang dilakukan untuk menyelesaikan soal
sistem persamaan linier dengan metode eliminasi Gauss dan Gauss Jordan.
c. membantu memahami program yang akan di buat dari metode gauss.
2.4 Susunan Bahan Pembelajaran
8/20/2019 modul MatLab Ilmu Komputer
6/28
7
Bab I Sekilas tentang metode numerik
Bab II MATLAB
2.5 Petunjuk Untuk Mahasiswa
1.
Sebelum mengikuti pembelajaran hendaknya mahasiswa telah membaca bahan
ajar ini dan dapat diperkaya dengan sumber acuan lainnya yang relevan pada
setiap pertemuan.
2. Untuk memperkaya wawasan dan pengetahuan sangat dianjurkan penelusuran
literatur khususnya materi metode numerik melalui sumber bacaan dan internet.
3.
Kerjakan setiap tugas terstruktur yang diberikan pada setiap akhir
kegiatan/pertemuan dengan baik.
4. Perbanyaklah latihan mengerjakan soal, baik secara teori maupun langsung
dipraktekan dalam komputer dengan menggunakan bahasa pemrograman.
2.6 Teori dasar
8/20/2019 modul MatLab Ilmu Komputer
7/28
8
2.6.1 Pengenalan MATLAB
MATLAB atau Matrix Laboratory adalah suatu aplikasi berbasis expert
system yang digunakan untuk keperluan komputasi sains, seperti halnya Maple dan
Mathematica. Aplikasi yang dibuat oleh MathWorks.inc ini sangat handal untuk
komputasi yang terkait dengan array atau matriks. Selain digunakan untuk komputasi,
MATLAB juga dapat dibuat untuk sarana simulasi.
Tool box-tool box sebagai pelengkap MATLAB juga disediakan dalam
paketnya, seperti toolbox untuk keperluan fuzzy logic, artificial neural network, image
processing dsb. Tool box ini berisi paket yang di dalamnya terdapat perintah-perintah
untuk melakukan tugas khusus sesuai dengan nama tool boxnya, misalnya perintah
untuk membaca nilai pixel suatu image, perintah ini terdapat dalam tool box image
processing. Daftar nama-nama tool box ini dapat kita lihat sewaktu proses instalasi
MATLAB.
Pada bagian ini, kita akan membahas dasar-dasar cara penggunaan MATLAB.
Untuk menuliskan perintah atau command perhitungan, dalam MATLAB sudah
disediakan COMMAND WINDOW. Di dalam COMMAND WINDOW ini terdapat
tanda prompt >>. Di sinilah perintah MATLAB dituliskan, seperti halnya menuliskan
perintah dalam DOS atau SHELL LINUX. Berikut ini contoh pemberian perintah
untuk mencari hasil penjumlahan 3 dan 4.
>> 3 + 4
Apabila setelah menuliskan perintah di atas kemudian ditekan ENTER, maka hasil
penjumlahannya langsung ditampilkan di bawah perintah tersebut, ditandai dengan„ans‟ (answer)
>> 3 + 4
ans =
7
Apabila kita menginginkan output perhitungan tidak ditampilkan, namun hanya
disimpan dalam memory, maka tambahkan tanda semicolon di akhir perintah.
>> 3 + 4;
http://blog.rosihanari.net/pengenalan-matlabhttp://blog.rosihanari.net/pengenalan-matlab
8/20/2019 modul MatLab Ilmu Komputer
8/28
9
Tampilan COMMAND WINDOW MATLAB memang berbasis teks, sehingga
tampilan MATLAB tidak seindah Maple atau Mathematica.
Suatu saat mungkin kita menemui kesulitan dalam menuliskan perintah dalam
MATLAB, mungkin karena lupa sintaksnya atau lupa nama perintahnya. Tidak usah
khawatir karena MATLAB menyediakan fasilitas HELP. Bagaimana cara
menampilkan HELP terkait dengan topik tertentu? Caranya cukup mudah, yaitu
tinggal tulislah HELP dan dilanjutkan dengan topik yang diinginkan. Misalnya
1. help ops
Perintah di atas akan menampilkan penjelasan tentang operator-operator yang ada di
MATLAB
2.
help elfun
Sedangkan perintah di atas akan menampilkan nama-nama perintah untuk perhitungan
matematis.
Untuk menampilkan daftar topik yang ada, ketikkan perintah
3.
help
Kita juga dapat meminta penjelasan terhadap sintaks suatu perintah, yaitu dengan
menuliskan HELP dan dilanjutkan dengan nama perintah. Misalnya
4.
help abs
Perintah di atas akan menampilkan penjelasan tentang perintah abs(), cara
penulisannya atau sintaks, termasuk juga contoh penggunaannya.
2.6.2 Penggunaan Variabel dalam MATLAB
Seperti pada umumnya dalam dunia komputasi, variabel digunakan untuk menyimpan
suatu value ke dalam memori komputer. Suatu saat apabila value tersebut akan
digunakan, maka cukup memanggil variabel tersebut.
Aturan penamaan variabel dalam MATLAB juga sama dengan aturan
penamaan variabel pada umumnya, seperti:
1. Harus diawali dengan karakter huruf
2.
Tidak boleh mengandung spasi
3.
Tidak boleh mengandung operator aritmatik (+, -, /, *)
http://blog.rosihanari.net/penggunaan-variabel-dalam-matlabhttp://blog.rosihanari.net/penggunaan-variabel-dalam-matlab
8/20/2019 modul MatLab Ilmu Komputer
9/28
10
4. Tidak boleh sama dengan nama function
Berikut ini beberapa contoh penamaan variabel yang benar dan proses assignment nya
>> NilaiKU = 6;
>> A1 = 4.5;
>> Nilai_ku = NilaiKu + A1;
Sedangkan contoh-contoh berikut ini penamaan variabel yang salah:
>> 7an = 10;
>> Hallo Boy = -3;
>> Jumlah-Bilangan = 3 + 4;
Dalam mendeklarasikan suatu variabel dalam MATLAB, kita tidak perlumenyertakan tipe datanya, entah integer, float, string atau yang lain. Namun, secara
otomatis tipe data variabel akan menyesuaikan jenis value yang diassign. Selain itu,
kita dapat melihat nama-nama variabel apa saja yang telah kita gunakan dalam suatu
session dalam MATLAB. Adapun cara melihat daftar nama-nama variabel tersebut
dengan mengetikkan perintah
a. who
Perintah lain, selain who, untuk melihat daftar nama-nama variabel yang telah
digunakan adalah dengan
b.
whos
Perbedaannya adalah, bahwa dengan whos, tidak hanya nama variabel yang
ditampilkan, namun juga tipe datanya.
Mungkin ada pertanyaan, bagaimana caranya menghapus nama-nama variabel
tersebut dalam memori? caranya adalah dengan mengetikkan perintah
c. clear
Satu lagi yang penting terkait dengan variabel, bahwa nama variabel dalam MATLAB
bersifat case sensitive, artinya besar kecilnya huruf dalam nama variabel akan
berpengaruh. Sebagai contoh, misalkan ada variabel „Nilai‟ dengan „nilai‟, keduanya
adalah variabel yang beda.
2.6.3 Menentukan Variable Scalar
8/20/2019 modul MatLab Ilmu Komputer
10/28
11
Langkah kita yang pertama adalah dengan menentukan variable scalar dengan cara
melakukan pengetikan seperti berikut:
» x = 2 (selanjutnya tekan “Enter”)
x =
2
» y = 3
y =
3
» z = x + y
z =
5
Tidak terlalu menjadi masalah bagi anda? Saya percaya anda tidak mengalami
kesulitan, sebab anda adalah orang yang sangat cerdas. Nah bagaimana dengan yangsatu berikutnya ini? Disini kita mulai dengan mendefinisikan dua buah vector, yaitu
vector x dan vector y:
» x = [1 2 3]
x =
1 2 3
» y = [4 5 6]
y =
4 5 6
Selajutnya ketik:
>> y(1)
ans =
8/20/2019 modul MatLab Ilmu Komputer
11/28
12
4
dan ulangi untuk y(2) and y(3).
Matlab menggunakan integer positif untuk index array. Elemen pertama adalah y(1),
elemen kedua adalah y(2), dan seterusnya. Nol atau bilangan negatif tidak
diperbolehkan untuk indek array. Sekarang kita jumlahkan keduanya:
» x+y
ans =
5 7 9
dan sekarang hitung inner product:
» x*y'
ans =
32
Jawabannya adalah 1*4 + 2*5 + 3*6 = 32! Catat, bahwa y' adalah transpose pada y
dan merupakan suatu vector kolom. Untuk memeriksanya, ketikkan perintah berikut:
>> y'
ans =
4
5
6
Cara lain pada pengkombinasian dua vector adalah diakukan melalui perkalian
elementdemi- element:
>> x.*y
ans =
4 10 18
8/20/2019 modul MatLab Ilmu Komputer
12/28
13
Catat periode sebelum perkalian simbol. Sekarang kita dapat mendefinisikan suatu
matrix:
» A = [1 2 3
4 5 6
7 8 9];
Catat bahwa matrik tidak diulang kalau kita menggunakan semi colon. Kita sekarang
kalikan
A dengan transpose dari x:
» A*x'
ans =
14
32
50
Sekarang kita harus mentranspose x untuk memenuhi perkalian suatu matrik dan suatu
vector kolom. Matrik-matrik ini dapat juga dikalikan satu sama lain diantara mereka:
» B = [1 2 3 4
5 6 7 8
7 6 5 4];
» A*B
ans =
32 32 32 32
71 74 77 80
110 116 122 128
8/20/2019 modul MatLab Ilmu Komputer
13/28
14
Sekarang coba anda lakukan penjumlahan antara A dan B:
» A+B
??? Error using ==> +
Matrix dimensions must agree.
Baiklah, kita tidak dapat menambah suatu matrik 3 kali 3 dengan matrix 3 kali 4 , dan
Matlab akan mendeteksi dimensi yang mismatch dan selanjutnya memeberikan pesan
error. Sekarang kita cari cara lain untuk mendefinisikan matrik dan vektor. Sebagai
contoh suatu matrik nol dengan dimensi 3 baris dan 6 kolom dapat dinyatakan
sebagai:
>> zeros(3,6)
ans =
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
tentu saja jika anda tambahkan suatu ";" setelah zeros(3,6), jawabannya tidak akan
ditampilkan di layar monitor anda. Angka pertama, 3 menunjukkan jumah baris,
sedangkan angka kedua, 6, adalah jumlah kolom. Kita dapat pula melakukan hal yang
sama untuk menampilkan angka satu seperti berikut:
>> ones(3,6)
ans =
1 1 1 1 1 1
1 1 1 1 1 1
1 1 1 1 1 1
2.6.4 Array atau Matriks dalam MATLAB
http://blog.rosihanari.net/tentang-array-atau-matriks-dalam-matlabhttp://blog.rosihanari.net/tentang-array-atau-matriks-dalam-matlabhttp://blog.rosihanari.net/tentang-array-atau-matriks-dalam-matlabhttp://blog.rosihanari.net/tentang-array-atau-matriks-dalam-matlab
8/20/2019 modul MatLab Ilmu Komputer
14/28
15
Kesederhanaan dalam proses assignment variabel terhadap nilai bertipe array atau
matriks ini disebabkan tidak diperlukannya pendefinisian ukuran (size) array atau
matriks pada variabel tersebut. Secara otomatis, size atau dimensi dari variabel bertipe
array ini akan menyesuaikan dengan array yang diassign atau dengan kata lain size
untuk variabel bertipe array ini bersifat dinamis. Dengan demikian, kita tidak perlu
pusing memikirkan size variabel yang diperlukan untuk suatu proses perhitungan.
Bagaimana caranya melakukan proses assignment variabel dengan nilai bertipe
array atau matriks? Mudah sekali… yaitu hanya dengan mengapit elemen-elemen
array dengan tanda kurung siku. Contoh:
>> arrayKu = [1 2 3 4 5]
Maksud perintah di atas adalah mengassign „arrayKu‟ dengan nilai bertipe data array
dengan size 1 x 5, dengan elemennya {1, 2, 3, 4, 5}. Kita bisa melihat outputnya di
command window seperti di bawah ini:
arrayKu =
1 2 3 4 5
Dimensi array dapat juga diubah menjadi bentuk kolom 5 x 1, dengan cara:
>> arrayKu = [1; 2; 3; 4; 5]
Outputnya:
arrayKu =
1
2
3
4
5
Bagaimana dengan array berdimensi 3 x 4? berikut ini contohnya:
8/20/2019 modul MatLab Ilmu Komputer
15/28
16
>> arrayKu = [1 2 3 4; 5 6 7 8; 9 10 11 12]
Outputnya:
arrayKu =
1 2 3 4
5 6 7 8
9 10 11 12
Mungkin ada yang bertanya misalkan diketahui suatu array, katakanlah „arrayKu‟
seperti di atas, bagaimana caranya mengambil atau menampilkan elemen yang bernilai
„7′? untuk melakukan hal ini, kita harus tahu posisi elemen „7′ ini, yaitu pada baris ke
2 kolom ke 3. Lalu tuliskan saja perintah ini:
>> arrayKu(2, 3)
Outputnya:
ans =
7
Berikutnya, misalkan kita ingin mengganti elemen „arrayKu‟ pada baris ke 3 kolom ke
4 dengan nilai 100. Bagaimana caranya?
>> arrayKu(3, 4) = 100
Outputnya:
arrayKu =
1 2 3 4
5 6 7 8
8/20/2019 modul MatLab Ilmu Komputer
16/28
17
9 10 11 100
Ada pertanyaan lagi, bagaimana caranya mengambil semua elemen pada kolom
pertama dari „arrayKu‟? Ini dia perintahnya
>> arrayKu(:, 1)
Outputnya:
ans =
1
5
9
Bagaimana dengan mengambil semua elemen pada salah satu barisnya? misalkan
baris ke 2? >> arrayKu
Outputnya:
ans =
5 6 7 8
Kita juga dapat memanipulasi semua elemen dalam satu kolom atau baris sekaligus
melalui suatu perhitungan. Misalkan baris kedua dari „arrayKu‟ diubah menjadi 2 kali
mula-mula.
>> arrayKu(2, = 2*arrayKu(2,
Outputnya:
arrayKu =
1 2 3 4
10 12 14 16
9 10 11 12
8/20/2019 modul MatLab Ilmu Komputer
17/28
18
2.6.4 Matriks
Masukkan matriks ke dalam Matlab seperti vector, kecuali penggunaan (,).
B = [1 2 3 4;5 6 7 8;9 10 11 12]
B =
1 2 3 4
5 6 7 8
9 10 11 12
B = [ 1 2 3 4
5 6 7 8
9 10 11 12]
B =
1 2 3 4
5 6 7 8
9 10 11 12
Matriks di Matlab dapat dimanipulasi dengan banyak cara. Misalkan dengan membuat
transpos:
C = B'
C =
8/20/2019 modul MatLab Ilmu Komputer
18/28
19
1 5 9
2 6 10
3 7 11
4 8 12
Untuk mendapatkan transpose, gunakan .'.
Sekarang anda dapat mengalikan kedua matriks B dan C secara bersamaan.
D = B * C
D =
30 70 110
70 174 278
110 278 446
D = C * B
D =
107 122 137 152
122 140 158 176
137 158 179 200
152 176 200 224
Manipulasi matrix lain adalah dengan menggunakan operator .* .
E = [1 2;3 4]
F = [2 3;4 5]
G = E .* F
8/20/2019 modul MatLab Ilmu Komputer
19/28
20
E =
1 2
3 4
F =
2 3
4 5
G =
2 6
12 20
If you have a square matrix, like E, you can also multiply it by itself as many times as
you like by raising it to a given power.
E^3
ans =
37 54
81 118
Jika anda ingin membuat pangkat dari tiap elemen matriks, gunakan fungsi berikut .^
E.^3
ans =
1 8
27 64
Anda juga dapat menghitung inverse sebuah matrix:
X = inv(E)
8/20/2019 modul MatLab Ilmu Komputer
20/28
21
X =
-2.0000 1.0000
1.5000 -0.5000
atau nilai eigen matriks:
eig(E)
ans =
-0.3723
5.3723
Untuk mendapatkan coefficients characteristic polynomial sebuah matrix. Gunakan
fungsi "poly" :
p = poly(E)
p =
1.0000 -5.0000 -2.0000
Ingat eigenvalues sebuah matrix adalah sama seperti akar polynomial karakteristik :
roots(p)
ans =
5.3723
-0.3723
2.6.5 Penggambaran Grafik
Salah satu kelebihan dari Matlab adalah kemudahan dalam mengolah grafik. Sehingga
anda tidak perlu kesulitan untuk melihat suatu respon system, misalnya pada kasus
8/20/2019 modul MatLab Ilmu Komputer
21/28
22
melijhat bentuk sinyal dalam domain waktu anda cukup mengikuti langkah berikut.
Sekarang ketikkan:
>> time = [0:0.001:0.099];
>> x = cos(0.1*pi*(0:99));
>> plot(time,x)
>> xlabel('time (msec)')
>> ylabel('x(t)')
ini akan menghasilkan gambar seperti berikut:
Gambar Contoh tampilan grafik sederhana dengan perintah plot
Sedangkan cara untuk menampilkan sederetan nilai fungsi waktu diskrit adalah
dengan menggunakan perintah "stem". Dari contoh deretan perintah coba anda rubah
beberapa bagian dengan perintah berikut
>> stem(time,x)
>> xlabel('time (msec)')
>> ylabel('x(t)')
Apakah hasilnya seperti berikut ini?
http://4.bp.blogspot.com/_F5wvEV9sNQU/TC6cbHOPfdI/AAAAAAAAAEk/Lk4N3C2XqxY/s1600/grafik1.jpg
8/20/2019 modul MatLab Ilmu Komputer
22/28
23
Gambar Contoh tampilan grafik dengan perintah stem
Cobalah untuk membuat program seperti berikut ini pada Matlab editor, dan
jangan lupa anda simpan dengan nama coba_2
x(1:52) = [0 0 1:1:50];
x(53:102) = [50:-1:1];
h = [1 2];
for n = 3:101,
y(n) = 0;
for m = 1:2,
y(n) = y(n) + h(m)*x(n-m);
end
end
plot(y)
Hasil apa yang anda dapatkan ?
Dalam hal ini anda harus memahami arti setiap perintah yang anda tuliskan
dalam Matlab, tidak ada salahnya anda bertanya kepada instruktur apa arti perintah-
perintah tersebut. Satu contoh lain program untuk for adalah pembangkitan gambar
seperti berikut.
%File Name:coba_3.mn=201;
http://3.bp.blogspot.com/_F5wvEV9sNQU/TC6dD4NDO6I/AAAAAAAAAEs/lzLF502Smgw/s1600/grafik2.jpghttp://3.bp.blogspot.com/_F5wvEV9sNQU/TC6dD4NDO6I/AAAAAAAAAEs/lzLF502Smgw/s1600/grafik2.jpg
8/20/2019 modul MatLab Ilmu Komputer
23/28
24
delx=10/(n-1);
for k=1:n
x(k)=(k-1)*delx;
y(k)=sin(x(k))*exp(-0.4*x(k));
end
%plot(x,y)
plot(x,y,'linewidth',4)
title('Grafik yang pertama')
xlabel('x');ylabel('y');
Bagiamana hasilnya?
Gambar Tampilan program grafik
2.6.6 Penyelesaian SPL dengan Operasi Baris Elementer Menggunakan
MATLAB
Setelah kita membaca artikel sebelumnya tentang array dan matriks, khususnya pada
bagian akhir artikel tersebut, mungkin beberapa dari kita sudah punya ide
„mungkinkah MATLAB digunakan untuk menyelesaikan SPL dengan operasi baris
elementer? dan jawabannya adalah bisa. Meskipun dalam MATLAB sudah ada
perintah khusus untuk mencari solusi SPL, namun hal ini kurang menarik bagi mereka
yang masih belajar tentang konsep penyelesaian SPL, khususnya dengan
memanfaatkan operasi baris elementer. Contoh penggunaan MATLAB untuk
menyelesaikan SPL dengan operasi baris elementer.
http://blog.rosihanari.net/penyelesaian-spl-dengan-operasi-baris-elementer-menggunakan-matlabhttp://blog.rosihanari.net/penyelesaian-spl-dengan-operasi-baris-elementer-menggunakan-matlabhttp://1.bp.blogspot.com/_F5wvEV9sNQU/TC6deR2XiFI/AAAAAAAAAE8/1CkmAsGpMGM/s1600/grafik3.jpghttp://blog.rosihanari.net/penyelesaian-spl-dengan-operasi-baris-elementer-menggunakan-matlabhttp://blog.rosihanari.net/penyelesaian-spl-dengan-operasi-baris-elementer-menggunakan-matlab
8/20/2019 modul MatLab Ilmu Komputer
24/28
25
Misalkan diberikan SPL sebagai berikut:
2x + 4y - 2z = 12
x + 5y + 3z = 8
-3x + y + 3z = -4
Kita akan coba menyelesaikan SPL di atas dengan operasi baris elementer dengan
MATLAB.
Langkah pertama adalah kita buat matriks yang diperbesar (Augmented Matrix), berisi
semua koefisien variabel dan hasilnya. Misalkan augmented matrix nya disimpan
dalam variabel A. Perintah MATLAB nya:
>> A = [2 4 -2 12; 1 5 3 8; -3 1 3 -4]
Outputnya:
A =
2 4 -2 12
1 5 3 8
-3 1 3 -4
Seperti dalam teori, bahwa target dari operasi baris elementer untuk menyelesaikan
SPL adalah mendapatkan matriks segitiga atas dari matriks yang diperbesar tersebut.
Apabila kita gunakan metode Gauss Jordan, maka bentuk augmented matrix ini
haruslah
1 0 0 p
0 1 0 q
0 0 1 r
dari bentuk di atas, solusi dari SPL adalah x = p, y = q dan z = r.
OK kita mulai memanipulasi augmented matriks dengan operasi baris elementer
sedemikian hingga kita peroleh bentuk matriks target di atas.B1 > A(1, = A(1, - A(2,
Outputnya:
A =
1 -1 -5 4
1 5 3 8
-3 1 3 -4
8/20/2019 modul MatLab Ilmu Komputer
25/28
26
B2 > A(2, = A(2, - A(1,
Outputnya:
A =
1 -1 -5 4
0 6 8 4
-3 1 3 -4
B3 > A(3, = A(3, + 3*A(1,
Outputnya:
A =
1 -1 -5 4
0 6 8 4
0 -2 -12 8
B3 > A(3, = A(3, + A(2, /3
Outputnya:
A =
1.0000 -1.0000 -5.0000 4.0000
0 6.0000 8.0000 4.0000
0 0 -9.3333 9.3333
Ada banyak 0 tidak masalah itu menunjukkan bilangan dalam desimal.
B1 > A(1, = A(1, + A(2, /6
Outputnya:
A =
1.0000 0 -3.6667 4.6667
0 6.0000 8.0000 4.0000
0 0 -9.3333 9.3333
B2
8/20/2019 modul MatLab Ilmu Komputer
26/28
27
>> A(2, = A(2, /6
Outputnya:
A =
1.0000 0 -3.6667 4.6667
0 1.0000 1.3333 0.6667
0 0 -9.3333 9.3333
B3 > A(3, = A(3, /(-9.3333)
Outputnya:
A =
1.0000 0 -3.6667 4.6667
0 1.0000 1.3333 0.6667
0 0 1.0000 -1.0000
B1 > A(1, = A(1, + 3.6667 * A(3,
Outputnya:
A =
1.0000 0 0.0000 1.0000
0 1.0000 1.3333 0.6667
0 0 1.0000 -1.0000
B2 > A(2, = A(2, - 1.3333 * A(3,
Outputnya:A =
1.0000 0 0.0000 1.0000
0 1.0000 0.0000 2.0000
0 0 1.0000 -1.0000
Karena matriks hasil operasi baris elementer ini sudah sesuai target, maka solusi dari
SPL di atas adalah x = 1, y = 2, dan z = -1.
8/20/2019 modul MatLab Ilmu Komputer
27/28
28
DAFTAR PUSTAKA
Chapra, Steven dkk. 1996. Metode Numerik . Jakarta: Erlangga
Munir, Rinaldi. 2003. Metode Numerik . Bandung: Informatika
Salusu, A. 2008. Metode Numerik . Yogyakarta: Graha Ilmu
www. Google.co.id
Rinaldi. 2003. Metode Numerik . Bandung: Informatika
8/20/2019 modul MatLab Ilmu Komputer
28/28
29
Top Related