PEMROGRAMAN MATLAB
(Laporan Praktikum
Fisika Komputasi)
Oleh :
Fransiskus Armanto
1317041015
LABORATORIUM
PEMODELAN FISIKA
JURUSAN FISIKA
FAKULTAS
MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS
LAMPUNG
2013
Judul Percobaan : Pemrograman Matlab
Tanggal Percobaan : 12 Maret 2013
Nama : Fransiskus
NPM : 1317041015
Jurusan : Fisika
Fakultas : MIPA
Kelompok :
Satu (I)
Bandar
Lampung, 12 Maret 2013
Mengetahui,
Asisten
|
|
|
PEMROGRAMAN MATLAB
Oleh
Fransiskus Armanto
ABSTRAK
|
DAFTAR ISI
LEMBAR
PENGESAHAN........................................................................ i
ABSTRAK.................................................................................................. ii
DAFTAR ISI............................................................................................... iii
I.
PENDAHULUAN
A.
Latar Belakang …………………….....................................
1
B.
Tujuan Percobaan.................................................................. 2
II.
TINJAUAN PUSTAKA
III. LISTING
PROGRAM
A.
Instruksi Seleksi................................................................... 5
B.
Instruksi Perulangan............................................................. 7
C.
Instruksi Grafis..................................................................... 7
IV. HASIL
RUNNING DAN PEMBAHASAN
A.
Hasil Running...................................................................... 9
B.
Pembahasan.........................................................................
12
V.
KESIMPULAN
DAFTAR PUSTAKA
LAMPIRAN
I. PENDAHULUAN
A.
Latar
Belakang
MATLAB (Matrix Laboratory) adalah sebuah program untuk analisis
dan komputasi numerik dan merupakan suatu bahasa pemrograman matematika
lanjutan yang dibentuk dengan dasar pemikiran menggunakan sifat dan bentuk
matriks. Pada awalnya, program ini merupakan interface untuk koleksi
rutin-rutin numeric dari proyek LINPACK dan EISPACK, dan dikembangkan
menggunakan bahasa FORTRAN namun sekarang merupakan produk komersial dari
perusahaan Mathworks, Inc.yang dalam perkembangan selanjutnya dikembangkan
menggunakan bahasa C++ dan assembler (utamanya untuk fungsi-fungsi dasar
MATLAB). MATLAB telah berkembang menjadi sebuah environment pemrograman
yang canggih yang berisi fungsi-fungsi built-in untuk melakukan tugas
pengolahan sinyal, aljabar linier, dan kalkulasi matematis lainnya. MATLAB juga
berisi toolbox yang berisi fungsi - fungsi tambahan untuk aplikasi
khusus . MATLAB bersifat extensible, dalam arti bahwa seorang pengguna
dapat menulis fungsi baru untuk ditambahkan pada library ketika
fungsi-fungsi built-in yang tersedia tidak dapat melakukan tugas
tertentu. Kemampuan pemrograman yang dibutuhkan tidak terlalu sulit bila Anda
telah memiliki pengalaman dalam pemrograman bahasa lain seperti C, PASCAL, atau
FORTRAN. MATLAB merupakan merk software yang dikembangkan oleh Mathworks.Inc
merupakan software yang paling efisien untuk perhitungan numeric berbasis matriks.
Dengan demikian jika di
dalam perhitungan kita dapat menformulasikan masalah ke dalam format matriks
maka MATLAB merupakan software terbaik untuk penyelesaian numericnya.
B.
|
Adapun tujuan
dari praktikum ini adalah sebagai berikut :
- Mahasiswa memahami teknik dan sintak-sintak yang biasa dipakai dalam perangkat lunak Matlab.
- Mahasiswa memahami dasar pemrograman Matlab dalam komputasi fisika.
- Mahasiswa dapat membuat program Matlab untuk menyelesaikan persamaan fisika sederhana menggunakan metode numeric umum (Euler).
II.
TINJAUAN PUSTAKA
Matlab adalah bahasa canggih untuk pemrograman computer
yang diproduksi oleh The Mathworks, Inc. Secara umum, Matlab dapat digunakan
untuk:
- Matematika dan komputasi
- Pengembangan algoritma
- Pemodelan, simulasi dan pembuatan prototype
- Analisis data, eksplorasi dan visualisasi
- Pembuatan aplikasi, termasuk pembuatan antar muka grafis
Prosedur perhitungan, visualisasi
dan pemrograman dengan matlab sangat mudah dilakukan karena variabelnya
dinyatakan dalam notasi matematika biasa. Penanaman variable dalam Matlab
dilakukan secara langsung tanpa melalui deklarasi seperti pada PASCAL, DELPHI,
dan FORTRAN. Basis data dalam bentuk syntak tidak perlu dinyatakan secara
khusus, sehingga memudahkan perhitungan dalam waktu yang lebih singkat.
Fisika komputasi nmerupakan
idealisasi fenomena fisis dengan bantuan computer. Pemanfaatan Matlab untuk
fisika komputasi diperlakukan sebagai kalkulator tercanggih yang dapat
deprogram. Kerumitan metode komputasi untuk system fisika dapat direduksi oleh
kemempuan matlab dalam memecahkan operasi matematika secara langsung, sertra
prosedur operasi dalam matlab dapat mereduksi kerumitan pemrograman (Jamrud, 2008).
Karena
kemampuan komputasi matematisnya yang tinggi, library program perhitungan yang
lengkap, serta tools disain dan analisis matematis yang sudah tersedia maka
Matlab begitu banyak digunakan di bidang-bidang pendidikan dan
Matlab
adalah suatu perangkat lunak matematis yang menggunakan vektor dan matriks
sebagai elemen data utama. Matlab diciptakan di Universitas Mexico dan Stanford
University di tahun 70-an, yang kemudian tahun demi tahun disempurnakan hingga
saat ini. Program Matlab kini dipasarkan oleh MathWorks Inc, yang untuk
kalangan profesional harganya lumayan mahal. Versi untuk student sedikit lebih
murah. Namun demikian bagi yang ingin free dapat men-download versi
opensourcebernama OCTAVE, misalnya dari www.octave.org atau dari situs octave sourceforge.net. Selain menggunakan
Command Window, Matlab menyediakan
editor penulisan naskah yang disebut Matlab Editor, berfungsi untuk membuat
skrip program Matlab. Walaupun skrip program dapat dibuat dengan menggunakan
berbagai program editor seperti notepad,wordpad, word dan lain-lain.Namun
sangat dianjurkan untuk menggunakan matlab editor ini karenakemampuannya
mendeteksi kesalahan pengetikan sintak oleh programmer.Adapun file yang
tersimpan akan berekstensi m(file –m). Jendela Matlab editor harus dipanggil
dengan cara mengklikkan File – pilih New M-File atau mengetikkan edit pada command promt
(Suarga, 2007).
III.
LISTING
PROGRAM
A.
Instruksi Seleksi
1. Pemilihan Bersyarat
function resistor(a, b,c)
%a, b, c adalah kode warna
if nargin ~=3
error ('diperlukan input 3 data warna')
end
if ~ischar (a) | ~ischar (b) |
~ischar (c)
error ('input harus karakter')
end
% menyelesaikan nilai resistor
Vals=zeros (1,3);
abc=[a,b,c];
for i=1:3
band = lower (abc(i));
if strncmp (band,'h',1)
%hitam
vals (i)=0;
elseif strncmp (band,'c',1)
%coklat
vals (i)=1;
elseif strncmp (band,'m',1)
%merah
vals (i)=2;
elseif strncmp (band,'o',1)
%orange
vals (i)=3;
elseif strncmp (band,'k',1)
%kuning
vals (i)=4;
elseif strncmp (band,'i',1)
%ijo/hijau
vals (i)=5;
elseif strncmp (band,'b',1)
%biru
vals (i)=6;
|
vals (i)=7;
elseif strncmp (band,'a',1)
%abu-abu
vals
(i)=8;
elseif strncmp (band,'p',1)
%putih
vals (i)=9;
else
error (['kode warna tidak dikenal',band])
end
end
if vals (1) == 0
error ('warna pertama tdk boleh hitam')
end
r = (10*vals(1)+vals(2))*10^vals
(3);
disp ('nilai tahanan = ')
disp (r)
return
2.
Pemilihan kasus
function konversi (x,unit)
% x: nilai yang akan
dikonversi,unit adalah satuannya
if nargin ~=2
error (‘perlu 2 argumen, misalnya 5,ft’)
end
if ~ishchar(unit)
error (‘argumen kedua harus karakter’)
end
switch unit
case {‘inch’,’in’}
y = x*2.54;
case {‘feet’,’ft’}
y = x*2.54*12;
case {‘meter’,’m’}
y = x*100;
case {‘milimeter’,’m’}
y = x/10;
case {‘centimeter’,’cm’}
|
otherwise
disp ([‘unit tidak dikenal: ‘,unit])
end
disp (‘hasil dalam cm:’)
y
return
B. Instruksi
Perulangan
a.Perulangan
dengan for:
for var=n1:n2:n3
instruksi-instruksi
end
b.Perulangan dengan while
>>x=1
>>while(x<10)
Y=x^2+3*x
X=x+2
End
C. Intruksi
Grafis
>>x=linspace(0,2*pi,30);
%30 detik pada x,mulai dari 0 sampai 2*pi
>>y=sin(x);
>>z=cos(x);
>>plot
(x,y,z) %plot y dan z pada salib
sumbu yang sama
>>
x=linspace (0,20);
>>
y=exp(-x/4).*sin(x);
>>
plot (x,y), xlabel (‘sb-x’), ylabel (‘sb-y’), title (‘grafik y=exp(-x/4)*sin(x)’)
>>
t=linspace (0,2*pi);
>>
r=sin (2*t).*cos(2*t);
>> polar (t,r), title
(‘Grafik polar sin (2t)*cos (2t)’)
|
% sb-x dari -7.5 s/d +7.5
>> y=x;
% sb-y dari -7.5 s/d +7.5
>>[X,Y] = meshgrid (x,y) ;
% membuat grid pada bidang XY
>> R=sqrt (X.^2 + Y.^2) +
eps;
>> Z=sin (R)./R;
% Z adalah sin (r)/r
>> mesh (X,Y,Z)
IV.
HASIL RUNNING DAN PEMBAHASAN
A.
Hasil Running
Adapun hasil
running yang diperoleh dari pembuatan program-program selama praktikum adalah
sebagai berikut:
· Bilangan kompleks
· Vektor baris dan vektor kolom
·
· Kontrol dengan IF untuk menghitung nilai
resitor
· Perulangan menggunakan FOR
· Perulangan
menggunakan while
|
·
Grafis menggunakan
fungsi berbentuk sin dan cos
|
· Grafis
menggunakan fungsi berbentuk eksponen dan sin
B.
Pembahasan
Pada praktikum
pemrograman matlab kali ini praktikan membuat 8 program dan proses berhasil
dalam proses perunningan. Program yang pertama adalah program membuat notasi
bilangan kompleks yang terdiri dari bagian riil
dan imaginer , dimana bagian imajiner
diberi simbol i.
Program yang
kedua adalah program untuk membuat matriks baris dan kolom, elemen-elemen
matriks yang diinginkan berada didalam tanda kurung siku [ ]. Untuk matriks
kolom, elemen-elemen dalam tanda kurung siku [ ] dipisahkan dengan tanda titik
koma (;).
Selanjutnya
untuk program yang keempat adalah program yang digunakan untuk menghitung nilai
resistor dari tiga buah masukan. Dasar program ini menggunakan kontrol program
berupa kontrol If.
Program selanjutnya masih berhubungan dengan intruksi perulangan,
menggunakan while. Yang membedakan dengan instruksi for adalah bahwa intruksi
while menggunakan suatu syarat tertentu, baru kemudian diikuti dengan
instruksi.
Program ketujuh berkaitan dengan simulasi dari wujud fisik
suatu fungsi. Untuk simulasi ini digunakan instruksi grafis. Langkah awal
adalah melakukan inisialisasi, mengisi varibel dengan fungsi yang diinginkan.
Langkah Terakhir adalah memplot variabel-varibel tersebut kedalam bentuk
grafik.
Program yang
terakhir masih berupa program grafis. Jika pada program sebelumnya dipilih
fungsi sin dan cos untuk tampilan pada grafik, program terakhir menggunakan
fingsi eks dan sin. Selain itu ada tambahan berupa pemberian nama pada sumbu-
sumbu grafik dan judul grafik itu sendiri (xlabel, ylabel, dan title).
V.
KESIMPULAN
Dari prose
praktikum dan pembahasan terkait, diperoleh beberapa kesimpulan sebagai
berikut:
1. Pembuatan matriks kolom
dapat dilakukan dengan menambahkan tanda (;) sebagai pemisah elemen-elemen
matris’
2. Keluaran pada cammond window dapat dilakukan dengan
menggunakan ‘display’ atau ‘frintf’.
3. Yang membedakan intruksi perulangan for
dan while dalah adanya syarat pada penggunaan while.
4. Program grafis pada matlab memungkinkan
kita untuk dapat mensimulasikan wujud fisik dari suatu fungsi.
Post a Comment