III. APLIKASI PEMRROGRAMAN MATLAB
BAB I DASAR - DASAR PEMROGRAMAN MATLAB Matlab (Matrix Laboratory) merupakan bahasa pemrograman canggih untuk komputasi dibidang keteknikan dalah hal kemampuaanya untuk perhitungan, visualisasi dan pemrograman komputer. Kegunaan Matlab secara umum:
Matematika atau komputasi
Pengembangan Algoritma
Pemodelan, simulasi sistem hingga pembuatan prototype
Analisis Data, ploting data dan visualisasi
Pembuatan Software Aplikasi tennasuk antar muka gratis (Graphical User Interfaces)
Matlab merupakan Sistem interaktif dengan elemen dasar basis data array yang dimensinya tidak perlu dinyatakan secara kusus. Perkembangan Software Matlab:
Matlab dirilis Pertama kali dengan Bahasa Fortran oleh o
John Little dan Cleve Moler menulis algoritma analitik program, petunjuk pemakaian, skrip dalam M. files
o
Steve Kleiman mengembangkan gratis
o
Steve Banger yang menulis interpreter
Algoritma manipulasi Matrik dikembangkan Tim yang tergabung dalam Proyek LINPACK dan EISPACK
Matlab dikembangkan dalam Bahasa C oleh The Mathworks. Matlab dirilis dari Matlab Versi 2.x, 3.x, 4.x, 5.x hingga saat ini beredar Matlab Versi 6.x
Dokumentasi Matlab meliputi: o
Petunjuk pemakaian Matlab (Matlab User Guide)
o
Petunjuk Referensi (Matlab Reference Guide)
Universitas Gadjah Mada
o
Matlab External Interface Guide
o
New Features Guide
o
Online help dan Informasi Demo Program Matlab
o
Penggunaan Grafik Matlab (Using Matlab Graphics)
o
Membuat GUI dengan matlab (Building GUIs)
o
Matlab Late-Breaking News
o
Matlab Application Program Interfaces Guide
Mahasiswa mempergunakan Matlab untuk keperluan:
Alat perhitungan dari perhitungan matematika
sederhana hingga
bentuk perhitungan model matematik yang kompleks untuk identifikasi hingga pencarian optimasi.
Alat analisis data, ploting data hingga visualisasi data
Pemodelan dan simulasi sistem berbagai kasus industry
Penyelesaian
model
matematik
seperti
penyelesaian
persamaan
aljabar, diferensial, integral, fungsi alih sistem, array data hingga solusi grafik Kebutuhan System PC
PC dengan procesor Intel 486, Pentium ke atas
Sistem Operasi Microsoft Windows 95 ke atas
8 bit Grafphics adaptor (minimal menampilkan 256 waraa)
Ruang penyimpanan (disk) sebesar 10 Mb untuk Program Matlab Versi 4.0 dan Toolbox Simulink
Software Notepad dari Windows untuk editor program, Internet explorer untuk
menjalankan
matlab
help
desk,
microsoft
Borland
untuk
menghasilkan file-file MEX. Bekerja dengan MATLAB
Sederhana
Æ Matlab sebagai sebuah Kalkulator Penambahan, pengurangan, perkalian, pembagian Æ Bilangan kompleks, akar dan pangkat, logaritma, operasi trigonometri seperti cosinus, sinus, tangent
Universitas Gadjah Mada
Æ Dapat diprogram untuk menyimpan dan memanggil data. Æ Menggambarkan data dengan berbagai cara, mengerjakan aljabar matrik, memanipulasi polinomial, mengintegralkan fungsi, memanipulasi persamaan secara simbol
Program Matlab dalam Matlab Editor Command >>
(command resmi matlab)
ED U> >
(command versi mhs)
Contoh Aplikasi Mari pergi ke toko membeli perlengkapan kantor dan membeli empat penghapus seharga 25 sen, 6 memo seharga 52 sen dan 2 pita perekam seharga 99 sen. Berapa jumlah barang yg dibeli Mari dan Berapa harga keseluruhan. Dengan Kalkulator, anda selesaikan:
4+6+2 = 12 barang
4*25 + 6*52 + 2*99 = 610 sen
Dalam Matlab Command a. Penyelesaian langsung perhitungan data 4+6+2 ans = 12
>> 4*25 + 6*52 + 2*99 = 610 ans = 610
Universitas Gadjah Mada
b. Menyimpan data ke variabel sebelum perhitungan >> erasers = 4 erasers = 4 >> pads = 6 pads = 6
>> tape=2; >> items= erasers +pads + tape items = 12 >> cost = erasers*25 + pads*52 + tape*99 cost = 610 >> average_cost = cost/items average cost = 50.8333 Cari perbedaan solusi cara a dan cara b. VARIABEL
Data dapat disimpan dalam suatu variabel sebelum dilakukan operasi
Variabel: simbol yang mewakili suatu nilai data
Aturan Penamaan Variabel Nama variabel dibedakan antara huruf besar dan kecil
Catatan dan contoh Items, ITEMS, Item, itEMS
Panjang mak 31 karakter Nama variabel diawali huruf dan tidak boleh ada spasi
Universitas Gadjah Mada
Hob_about_this_variabel A_b_c_d
Variabel dalam matlab yang aktif ditunjukan dengan perintah who: >> who Your variabels are:
Ans
cost
items
Average_ cost
eraserspads
tape
Menghilangkan Variabel yang Aktif Variabel aktif dalam command matlab dpt dihilangkan dengan perintah clear
>> clear erasers >> clear cost items >> clear cl* >> clear
Komentar dan Tanda baca Komentar dan tanda baca yang tidak diproses oleh Matlab dinyatakan setelah diawali tanda persen (%) >> erasers = 7
% jumlah penghapus
URUTAN OPERASI ARITMATIK Operasi aritmatik dalam matlab dilakukan dengan pengerjaan kiri ke kanan dengan prioritas tertinggi pada operasi pemangkatan, kemudian perkalian dan pembagian yang memiliki prioritas sama dan selanjutnya pengurangan dan penambahan yang memiliki prioritas sama.
Operasi Pemangkatan Perkalian Pembagian Pengurangan Penambahan
Universitas Gadjah Mada
Simbol ^ * / atau \ +
Contoh >> 5^2 >> 3.14*0085 >> 56/8 atau >>8\56 >> 5-3 >> 5+3
JENDELA COMMAND MATLAB A. Mengatur Ruang Kerja Matlab Data dan Variabel dalam jendela command matlab tersimpan dalam ruang kerja matlab. >> who menampilkan variabel dalam ruang kerja matlab >> whos menampilkan variabel dim ruang kerja matlab scr Ibh detail >> clear menghapus semua variabel dalam ruang kerja matlab B. MENYIMPAN DAN MEMANGGIL DATA
Variabel dalam ruang kerja matlab dapat disimpan dengan perintah Save Workspace As dari menu File
Diidentifikasi dengan file berekstensi .mat
Secara langsung dalam command matlab dengan perintah save >> save data >> save data erasers pads tape
Memanggil variabel dalam ruang kerja matlab dengan perintah load >> load data >> load data eraser pads tape
C. FORMAT PENAMPILAN ANGKA
Data angka dapat ditampilkan dilayar monitor dalam berbagai format penampilan
Berbagai format penampilan angka ditunjukkan sbb:
Universitas Gadjah Mada
Format Command
penulisan
Keterangan
format short
50. 833
5 digits
format short e
50.83333333333334
16 digits
Format long
5.083 3e+01
5 digit plus exponential
50.83333333333334e+01 16 digit plus
Format long e
exponential Format bank
50.83
2 decimal digits
Format hex
40496aaaaaaaaaab
Hexadecimal
Format +
+
Positive, negative atau zero
D. Fungsi - Fungsi Matematika Umum
Matlab memiliki fungsi umum untuk penyelesaian matematika, teknik dan ilmu pengetahuan
Matlab menyediakan ratusan fungsi khusus dan algoritma untuk penyelesaian masalah tertentu
Contoh: Mencari V 2 / 2 diselesaikan dengan >> x = sqrt(2) /2 x= 0.7071
>> x=2.6 x=2.6000
>> yl=fix(x) yl= 2
Universitas Gadjah Mada
>> y2=round(x) y2= 3 Fungsi-fungsi secara umum di Matlab: Harga mutlab Eksponensial : ex Pembulatan ke arah nol Pembulatan ke bil bulat terdekat Sisa haril bagi x/y Sinus Cosinus Akar kuadrat bilangan Tangen
abs(x) exp(x) fix(x) round(x) rem(x,y) sin(x) cos(x) sqrt(x) tan(x) Penyelesaian contoh aplikasi sederhana
Disetujui untuk melakukan pembelian mobil baru seharga $18500. Dealer mobil menawarkan dua pilihan keuangan kepada anda sbb: (1) bunga diberikan 2.9% dalam 4 tahun (2) bunga 8,9% dalam 4 tahun dengan potongan harga $1.500. Manakah pilihan yang terbaik menurut anda Penyelesaian pembayaran bulanan P untuk pinjaman A dollar dengan bunga bulanan R, dibayar pada bulan ke M adalah : P = A [ R(1+R)M / (1+R)M - 1 ] Dengan total pembayaran T = P*M >> format bank
%menggunakan format tampilan bank
>> A=18500
% jumlah pinjaman
>> M=12*4
% jumlah bulan
>> FR=1500 % potongan harga >> % penawaran pertama
Universitas Gadjah Mada
>> R=(2.9/100)/12; %tingkat bunga bulanan >> P-A*(R*(1+R*M/((1+R)*M-1))% pembayaran P= 408.67 >> T1=P*M
% total harga mobil
T1 = 19616.06 >> %penawaran kedua >> R-(8.9/100)/12 ; %tingkat bunga bulanan >> P=(A-FR) *(R*(1+R*M((1+R)*M-1)) %pembayaran P= 422.24 >> T2=P*M T2= 20267.47 >> diff= T2-T1 Diff= 651.41
Solusi dipilih penawaran pertama.
Universitas Gadjah Mada
BAB II COMMAND WINDOW MATLAB Interaksi dalam paket Matlab dapat dilakukan dengan dua prosedur •
Interaktif dengan mengetikan instruksi secara langsung
•
Penulisan instruksi ke dalam program matlab (*.M File).
Prosedur Interaktif Jalankan program Matlab hingga program aktif dengan ditandai tandai prompt Matlab dengan disimbolkan tanda '>>' 1 Matrik A = 5 7
2 6 9
4
10
9 Matrik B = 21
10
>> A=[ 1 2 3; 5 6 9; 7 9 10]`
12
11 14 13
17 17
1 Matrik C = 2
16
3
(enter)
Ouput dihasilkan A= 1 5 7
2 6 9
3 9 10
Matrix B dan Matrix C >> B=[10 11 17; 21 14 17; 12 13 16] 10 21 12
11 14 13
(enter)
17 17 16
>> C = [ 1 ;2 ;3]
(enter)
C= 1 2 3 Transpose Matrix A yang merabah nilai baris menjadi kolom matrik A dinyatakan dalam A'
Universitas Gadjah Mada
>> A A=
(enter)
1 5 7
2 6 9
3 9 10
>> A’ Ans = 1 2 3
(enter) 2 6 9
7 9 10
>> A+B ans = 11 26 19
(enter) 13 20 22
20 26 26
>> A-B ans = 9 16 5
(enter) 9 8 4
14 8 6
>> Z = A * C Z= 14 44 55
Universitas Gadjah Mada
(enter)
Pembagian Matrik dinyatakan dalam dua simbol X = A \ B (pembagi kiri) merepresentasikan X = Ainv * B X = B / A (pembagi kanan) merepresentasikan X = B * Ainv
>>X1=A\B
(enter)
X1 = 4.5000 2.0714 6.2143
9.5000 4.7857 3.6429
»X2 = inv(A)*B
17.0000 9.2857 5.1429
(enter)
X2 = 4.5000 2.0714 6.2143
9.5000 4.7857 3.6429
17.0000 9.2857 5.1429
Matrik X1 bemilai sama dengan matrik X2
>> Z1=B/A
(enter)
Zl = 1.1429 14.8571 2.5000
2.4286 5.5714 1.5000
>> B*inv(A)
0.1429 1.1429 1.0000
(enter)
Z2 = 1.1429 14.8571 2.5000
2.4286 5.5714 1.5000
0.1429 1.1429 1.0000
Matrik Z1 bemilai sama dengan matrik Z2
Universitas Gadjah Mada
>> A^2 ans = 32 98 122
41 127 158
51 159 202
41 127 158
51 159 202
>> A*A ans = 32 98 122
Matrik Power A^2 merepresentasikan nilai A* A
Fungsi Pengoperasian Matrik dalam Matlab •
Beberapa fungsi untuk operasi matrik tersusun dalam library matlab untuk berbagai keperluan aplikasi.
•
Fungsi dalam Matlab dibentuk dalam suatu ekternal file berektension *.M
Contoh Fungsi dalam Matlab Fungsi sum
: untuk mencari jumlah pada elemen
Fungsi max
: untuk mencari nilaimaksimum dalam elemen
Fungsi mean
: mencari nilai rata-rata dalam elemen
Fungsi median : untuk mencari nilai median Fungsi std
: untuk mencari standar devisiasi
Fungsi length : untuk mencari panjang dari suatu vektor Fungsi inv(a)
: untuk mencari invers matrik a
Fungsi det(a) : untuk mencari determinat matrik a Fungsi abs(a) : untuk mencari nilai absolute matrik a Fungsi sqrt(a) : untuk mencari akar kuadrat suatu matrik a Fungsi eye(a) : untuk menghasilkan matrik identitas a x a Fungsi zeros(n): untuk menghasilkan matrik nol berukuran a x a fungsi ones(a) : untuk menghasilkan matrik satuan a x a fungsi tril(a)
Universitas Gadjah Mada
: untuk menghasilkan matrik segitiga bawah dari matrik a
fungsi triu(a)
: untuk menghasilkan matrik segitiga atas dari matrik a
>> inv(A) ans = 1.5000 0.9286 0.2143
0.5000 0.7857 0.3571
0.0000 0.4286 0.2857
>> det(A) ans = 14 >> abs(A) ans = 1 5 7
2 6 9
3 9 10
>> sqrt(A) ans = 1.0000 2.2361 2.6458
1.4142 2.4495 3.0000
>> eye(A) ans = 1 0 0
0 1 0
0 0 1
>> zeros(A) ans = 0 0 0
0 0 0
0 0 0
Universitas Gadjah Mada
1.7321 3.0000 3.1623
>> ones(A) ans = 1 1 1
1 1 1
1 1 1
>>tril(A) ans = 1 5 7
0 6 9
0 0 10
»triu(A) ans = 1 0 0
2 6 0
3 9 10
Universitas Gadjah Mada
TIP Bantuan : Untuk Keluar dari Program Matlab, dari Command Window diketikkan Instruksi Quit Untuk menghapuskan variabel memory dalam workspace matlab gunakan instruksi clear. Dengan mengetikkan clear atau clear all maka semua variabel dalam memory di workspace akan dihapus Untuk berbagai instruksi yang ada dalam Matlab, program bantuan (help) dapat secara langsung dilakukan dengan mengetikkan instruksi help diikuti instruksi yang diharapkan. Misalkan
>>help mesh
(enter) maka akan menampilkan fasilitas
yang berkaitan dengan instruksi help >> help mesh MESH
3-D mesh surface. MESH (X, Y,Z,C) plots the colored parametric mesh defined by four matrix arguments. The view point is specified by VIEW. The axis labels are determined by the range of X, Y and Z, or by the current setting of AXIS. The color scaling is determined by the range of C, or by the current setting of CAXIS. The scaled color values are used as indices into the current COLORMAP. MESH (X,Y,Z) uses C = Z, so color is proportional to mesh height.
Universitas Gadjah Mada
BAB III TIPE DATA DAN ARRAY
Statemen Memasukkan dan Menampilkan Data Data yang dimasukkan kedalam variabel dalam Matlab ada tiga Type: Data string, Data skalar, Data vektor atau matrik. Memasukkan date kedalam variabel baik yang bersifat skalar, vektor, matrik maupun string (karakter) dapat dilakukan dengan: 1. Secara Langsung dengan pemberian nilai ke variabel dng =
>> a = [ 1 2 3 ]; >> b= 4; >>Tekt = ' Tes Data Karakter '; 2. Statemen input >>c=input ('Contoh Masukkan Data '); >>d=input ( 1 2 3 ); Untuk menampilkan data baik yang bersifat skalar, vektor maupun matrik dengan menggunakan : 3. Statemen disp >>disp('Contoh menampilkan hasil'); >>disp(a) >> disp(tekt) 4. Statemen lain
Statemen break
Statemen pause
Universitas Gadjah Mada
Menyusun Fungsi dalam Matlab •
Fungsi merupakan subrutin atau sub program yang sudah disediakan dalam library Mallab ( built-in function) maupun yang dapat didefinisikan sendiri oleh user (user defined function) untuk keperluan aplikasi.
•
Fungsi tersimpan dalam file yang berektension *.M
•
Manfaat mempergunakan fungsi dalam keleluasan user untuk menyusun tersendiri terhadap variabel yang dikerjakan yang dipergunakan sebagai parameter dalam fungsi.
•
Fungsi didefinisikan dalam format:
function (x1,x2,...,x_n) = namafungsi(para1, para2,...,para_n)
dengan
x1 = nama variabel fungsi ke -1 x2 = nama variabel fungsi ke-2 x_n= nama variabel fungsi ke –n para1= nama parameter ke -1 para2= nama parameter ke -2 para3= nama parameter ke -3
Menentukan nilai maximum, minimum dan rata-rata dari sebuah vektor Dalam fungsi makmin % contohfungsi maksimum,minimum dan rata-rata suatu vector % nama fungsi makmin
function [maksimum,minimum,rerata] = makmin(x) maksimum=max(x); minimum=fnin(x);
Universitas Gadjah Mada
rerata=mean(x); end; Menjalankan fungsi makmin diatas, >> v= [12 12 13 14]; >>[maksi mini rata] = makmin(v); >>disp([maksi mini rata]); 14.0000 12.0000 12.7500 Membuat fangs! menentukan rata-rata dan standar deviasi vektor % contohfungsi mean dan standar deviasi suatu vector % namafungsi stat.m
function [rata, stdev] = stat(x) n = length(x); rata=mean(x); stdev =std(x); end; Menjalankan fungsi stat diatas, dilakukan >>v = [12 12 13 14]; >> [rata standev]=stat(v); >> disp([rata standev]) 12.7500 0.9574
Bekerja dengan Matrik •
Matrik dalam Matlab diidentifikasi atas indek secara dynamic yang dimuiai dari indek 1 sampai indek sejumlah baris dan kolom matrik yang disebut sebagai array.
•
Perintah-perintah berikut berkaitan dengan operasi array untuk dapat bekerja secara optimal dengan matrik dalam matlab. >>a=[ 1011 12 ]; Array matrik A(1) bernilai 10, A(2) bernilai 11 dan A(3) bernilai 12
Universitas Gadjah Mada
>>a(1) ans = 10 >>b= [ 5 6 7; 8 9 10 ]; Array matrik B(1,1) bernilai 5, B(1,2) bernilai 6 dan B(1,3) berailai 7 >> b(1,1) ans = 5 >>a( [ 2 3 10]) = [ 102 100 210 ]; Memberikan nilai array matrik a(2)=102, matrik a(3)=100 dan matrik a(10)=210 sedangkan untuk matrik array c(i) dengan 1=1,4,5,6,7,8,9 bernilai 0 >>a a= 0 102 100
0
0
0
0
0
0 210
>>d=3 : l : 6; mengisi nilai array matrik d dengan angka dari 3 sampai 6 dengan penambahan 1 (default). Maka matrik d bernilai [ 3 4 5 6 ]. >>d d= 3456 >>d= 6 : -1 : 3;
>>d d= 6543
Universitas Gadjah Mada
>>c = [c 1 2] Menambahkan 2 elemen di belakang
>>c = [12 c 4] Menambahkan 2 elemen didepan satu dibelakang
>>y= c(2:4) Mengakses elemen ke 2 sampai ke empat dari matrik c >>c=(1 3]) = [ ] Menghapus elemen array pada indek ke 1 dan ke 3 dari matrik c.
Penyelesaian persamaan Polinomial Polinomial direpresentasikan sebagai vektor bans dari koefisien polinomial dalam urutan dari terajat tertinggi hingga derajat terendah. Contoh Persamaan Polinomial
12 X 22 + 10 X1 + 120
………….. (1)
X44 – 13 X33 + 0 x22 + 25 X1 + 116
………….. (2)
Persamaan polinomial diatas dapat dinyatakan sbb: >>a = [ 12 10 120 ]; >>b= [ 1 -12 0 25 116 ]; Mencari akar polinomial yang berarti mencari nilai yang membuat polinomial bernilai nol, dapat ditemukan dengan fungsi roots: >> akar 1= roots(a) >> akar 2= roots(b) Jika diketahui akar polinomial, maka persamaan polinomial dapat dicari dengan fungsi poly.
Universitas Gadjah Mada
>> poly (akar 1) >>poly (akar2) Perkalian polinomial dapat dikerjakan dengan fungsi conv (yang melakukan penggabungan
(convolution
dari
dua
array).
Contoh:
dua
polinomial
x33+2x22+3x1+ 4 dan polinomial x33 + 4x22 + 9x1 + 16 dilakukan perkalian
>> a= [ 1 2 3 4 ]; >> b= [ 1 4 9 16 ]; , >> c = conv (a,b) c= 1
Polinomial X
6
20
50
75
84
64
+ 6X55 + 20X44 + 50X33 + 75X22+ 84X1, + 64
Statemen Kontrol Program Pengendalian program yang bersifat aplikatif tidak akan mungkin lepas dari fungsi kontrol program. Kontrol program sendiri merupakan perintah untuk mengatur jalannya eksekusi dari statemen di dalam Matlab dalam scrib *.M file. Kontrol program Matlab terdiri atas 4 struktur kontrol yang bisa diaplikasikan dalam program meliputi statemen loop for, statemen loop while, statemen
if-else-end
statemen
switch-case.
Statemen for loop Statemen for loop dipergunakan untuk bentuk perulangan dari suatu bilangan
Universitas Gadjah Mada
Sintak penulisan for variabel = expresi statemen ………… statemen. end
Misalkan matrik A =
1 6 11
2 7 12
3 4 8 9 13 14
5 10 15
matrik A dinyatakan dalam statemen for loop >> c=0; >> b=3; >> k=5; >> for a= 1 : 3 for b = 1 : 5 c=c+1; A(a,b)=c; end end
Jika Matrik
B =
1 36 121
4 49 144
9 16 64 81 169 196
35 100 225
Nyatakan matrik B dalam statemen for loop
Statemen while loop Statemen while-loop mensyaratkan kondisi diulang jika dipenuhi syarat yang dikondisikan dalam statemen While.
Universitas Gadjah Mada
Sintak penulisan while - loop sbb: while kondisi statemen 1 …………… Statemen_n end kondisi dinyatakan dalam ekspresi tanda hubung ekspresi yang bernilai kebenaran ya atau tidak. Tanda hubung berupa =, <,>, <=%>=, or atau ~= Contoh: Menampilkan bilangan 1,2,3, ..., 10
>>bil=0; >>while bil< 10 bil=bil+1; disp(bil); end dihasilkan: 1 2 … 9 10 Tampilkan bilangan ganjil dan genap kurang dari 10 dengan while-loop Statemen if-else - end Statement if dipergunakan untuk penyeleksian kondisi. Bentuk statemen if terdiri atas: a. Statemen if-end Berbentuk:
if kondisi statemen kondisi benar 1 statemen kondisi benar 2 end;
Universitas Gadjah Mada
b. Statemen if-else-end Berbentuk:
if kondisi statemen kondisi benar 1 statemen kondisi benar 2 else statemen kondisi salah 1 statemen kondisi salah 2 end
Diinputkan suatu nilai ke variabel A yang akan dipergunakan untuk penyelesaian kondisi bilangan.
>> nama=input ('masukkan nama anda '); > > if nama== 'shasa' disp('nama anda shasa') end Dijalankan ditampilkan hasil sbb: masukkan nama anda 'shasa’ nama anda 'shasa' Dng statemen if-else-end >> nama=input('masukkan nama anda '); > > if nama== 'shasa' disp('nama anda shasa') else disp(‘nama anda bukan shasa') end Dijalankan ditampilkan basil sbb: masukkan nama anda 'andi' nama anda bukan shasa
Universitas Gadjah Mada
Statemen switch-case Statemen switch-case hampir sama dengan statemen if -else-end, hanya berbeda dalam proses eksekusi nilai kebenaran kondisinya. Statemen switchcase mampu berfungsi saat dijalankan dalam matlab versi 4.2 ke atas.
Pengaturan Format keluaran Format nilai skalar, vektor maupun matrik dengan statemen dapat diatur bentuk digit date yang akan ditampilkan dilayar dengan perintah format. Default format matlab dinyatakan dalam format shor dengan 5 digit desimal. Beberapa format keluaran data format short
5 digit desimal
format long
1.2345
5 digit desimal
format short e 5 digit floting point
1.2345678901234
3.1416e+00
format long e 16 digit floting point 3.123456789012345e+00 format hex format bank
Hexadesimal fixed dolar
890fb12312d18 3.14
format rat
rasio bilangan integer 355/113
format +
+,-, blank
+
Pengaturan data format ke file dapat dipergunakan statemen fprintf. Bentuk penggunaan statemen fprint dinyatakan: fprintf('%character konversi karakter escape ', variabel) % character konversi merupakan spesifikasi character % yang terdiri dari %e = notasi ekponential %f = notasi fixed point %g berisi %e atau %f dipilih yang lebih pendek Karakter escape meliputi \n
ganti garis baru
\t
tabulasi horizontal
Universitas Gadjah Mada
\b
backspace
\r
carriage return
\f
form feed
\\
backslash
\’
single quote.
Contoh: >> A = [ 1.2323
4.2323
5.9032 ]
A= 1.2323 4.2323
5.9032
>>fprintf(‘%4.2f %4.2f %4.2f \n',A) 1.23 4.23 5.90
Latihan untuk dikeriakan 1. Buatlah program MATLAB untuk mencari nilai Faktorial dari N bilangan. Misalkan N = 10 Faktorial 10 = 10 * 9 * 8 * 7 * ...* 1 2. Buatkan program MATLAB untuk menghitung akar suatu persamaan kuadrat (tanpa menggunakan statemen roots dengan menggunakan penyelesaian
persamaan
ABC.
Algoritma
penyelesaian
program
digambarkan sbb: a. Inputkan koefisian a, b dan c dari persamaan dengan statemen input b. Cari akar real dari persamaan diatas dengan menghitung nilai Diskriminat (D). Nilai D dihitung dengan persamaan b2 - 4 A C c. Lakukan penyelesaian kondisi untuk mencari akar persamaan dari nilai Diskriminan yang diperoleh: i.
Jika nilai D > 0 maka dimiliki dua akar real yang tidak sama akar 1 = (-b + √ D) 2A
Universitas Gadjah Mada
akar 2 = (-b - √ D) 2A ii.
Jika nilai D = 0 maka dimiliki dua akar real yang sama akar 1 = akar 2 = (-b + √ D) / 2A
iii.
Jika nilai D< 0 maka dimiliki akar bilangan imaginer Tampilkan 'Akar bilangan Imaginer'
d. Tampilkan hasil dilayar dengan statemen disp 3. Buat program Password dengan Password diisikan NIM dengan statemen input (' Masukkan Password Saudara' ). Lakukan penyelesaian kondisi untuk menguji nilai masukan dengan nilai Password. Jika Password benar, beri komentar ' Silakan Akses' dan jika Password Salah berikan komentar ‘Anda dilarang keras untuk Akses Komputer ini'. 4. Peta kendali p chart disusun untuk menganalisa tingkat pengendalian kualitas produk dengan mengukur tingkat prosentase cacat dari sejumlah sampel produk. Jika diambil sampel produk sejumlah n=50 setiap pengukuran sejumlah m=20 kali pengamatan terhadap banyaknya produk cacat yang dinyatakan dalam tabel pengamatan sbb: Contoh pengambilan ke - i sampai m 1 2 3 4 5 6 7 8 9 10 11 12
Universitas Gadjah Mada
Saklar Cacat (dari n=50 sampel) (Di) 12 8 10 7 9 11 10 12 13 15 11 14
Proporsi cacat Pi = (Di/n) 12/50 8/50 10/50 7/50 9/50 11/50 10/50 12/50 13/50 15/50 11/50 14/50
13 14 15 16 17 18 19 20
10 9 7 8 9 10 8 9 n ∑Di i=1
10/50 9/50 7/50 8/50 9/50 10/50 8/50 9/50 n ∑Pi i=1
Nilai Batas Tengah (CL) dari peta kendali proporsi diperhitungkan dari n ∑Di i=1 CL = P = --------mn Nilai Batas Atas ( UCL) ditentukan dari persamaan UCL = P + 3 √ (P ( P (1-P)/n ) Nilai Batas Bawah ( LCL) ditentukan dari persamaan LCL = P – 3 √ ( P (1-P)/n ) Susun program dalam Matlab untuk menyatakan penentuan CL, UCL dan LCL dari peta kendali p diatas. Susun grafts 2 dimensi untuk sejauh mana produk berada dalam pengendalian. Beri nama program dengan nama propchart.M
Universitas Gadjah Mada