19 0 2 MB
Daftar Isi Daftar Isi .................................................................................................................................................. 1 1.
Pengenalan MATLAB ....................................................................................................................... 3 1.1 Fitur ............................................................................................................................................... 3 1.2 Aplikasi .......................................................................................................................................... 3
2.
Tampilan MATLAB ........................................................................................................................... 5 2.1 Tampilan Awal............................................................................................................................... 5 2.2 Menu Home .................................................................................................................................. 5
3.
Metode menulis program pada MATLAB ....................................................................................... 7 3.1 Command Window ....................................................................................................................... 7 3.2 Script (.m file) ............................................................................................................................... 7 3.3 Live Script (.mlx file) ..................................................................................................................... 8
4.
Tipe Variabel pada Matlab ............................................................................................................ 10
5.
Membuat program sederhana ...................................................................................................... 11
6.
Array dan operasi .......................................................................................................................... 12 6.1
Pembentukan Array dengan syntax ...................................................................................... 12
6.2 Pembentukan Array dengan fungsi............................................................................................. 12 6.3 Operasi pada Array yang sudah ada ........................................................................................... 13 7.
Operasi relasional & logika ........................................................................................................... 15
8.
Membuat program iterasi ............................................................................................................. 18 8.1 Operator if................................................................................................................................... 18 8.2 Operator While ........................................................................................................................... 20 8.3 Operator For ............................................................................................................................... 24
9.
Menggambar grafik ....................................................................................................................... 29 9.1 Membuat plot grafik 2D pada MATLAB (line, bar, scatter)......................................................... 29 9.1.1 Menggambar grafik 2 dimensi pada sumbu x,y ................................................................... 29 9.1.2 Membuat Diagram Batang ................................................................................................... 31 9.1.3 Membuat diagram scatter ................................................................................................... 33 9.1.4 Fungsi fplot........................................................................................................................... 33 9.1.5 Penggunaan Skala Logaritma ............................................................................................... 34 9.2 Membuat Diagram Gambar 3D Mesh ......................................................................................... 36 9.3 Membuat Diagram Gambar 3D Surf ........................................................................................... 38 9.4 Mengolah Hasil Gambar (Diagram/plot)..................................................................................... 39 9.4.1 Menyimpan Gambar ............................................................................................................ 39
[email protected]
riset.its.ac.id/lab-pssl
B103, Electrical Eng. Dept. ITS
9.4.2 Mencetak Gambar ............................................................................................................... 39 9.4.3 Perintah View ....................................................................................................................... 39 9.4.4 Membuat Mesh pada Grid ................................................................................................... 40 9.4.5 Perintah Figure ..................................................................................................................... 40 10. 10.1 11.
Fungsi ........................................................................................................................................ 42 Fungsi interpolasi kuadratik ................................................................................................. 42 Membuat GUI sederhana.......................................................................................................... 44
[email protected]
riset.its.ac.id/lab-pssl
B103, Electrical Eng. Dept. ITS
1. Pengenalan MATLAB MATLAB (MATrix LABoratory) adalah software yang sangat kuat untuk analisis matriks. MATLAB memiliki kapabilitas untuk analisis data, pembuatan aplikasi, pemrosesan sinyal, simulasi sistem, dan perhitungan matematis lainnya.
1.1 Fitur 1. 2. 3. 4. 5.
Kombinasi program dengan text editor menggunakan live script Pembuatan grafik 2D ataupun 3D Pembuatan aplikasi dengan MATLAB Graphic User Interface (GUI) Pembuatan model dan simulasi dengan Simulink Integrasi untuk embedded system mengubah menjadi bahasa lain seperti C dan C++
1.2 Aplikasi
Machine Simulation
[email protected]
riset.its.ac.id/lab-pssl
B103, Electrical Eng. Dept. ITS
Computer Vision
Power Plant Governor Control
Industrial Chemical Process Modeling
[email protected]
riset.its.ac.id/lab-pssl
B103, Electrical Eng. Dept. ITS
2. Tampilan MATLAB 2.1 Tampilan Awal
Adress Folder Explorer
1 5
2
4
Work space
Command Window 3
Details
1. Adress Melihat alamat destinasi dari MATLAB. Ketika MATLAB bekerja, alamat destinasi harus sesuai dengan letak program berada 2. Folder Explorer Memberikan isi dari folder yang ada pada Adress 3. Details Memberikan deskripsi dari file yang dipilih pada Folder Explorer 4. Workspace Mengetahui nilai dan dimensi dari berbagai variabel yang dipergunkan dalam program MATLAB. Program harus dijalankan agar menampilkan variabel pada workspace 5. Command Window Menulis perintah dan memperlihatkan informasi dari perintah yang dijalankan
2.2 Menu Home
1
2
3
4
1. New Membuat file baru baik New Script, New Live Script, atau SIMULINK 2. Open Membuka file MATLAB
[email protected]
riset.its.ac.id/lab-pssl
B103, Electrical Eng. Dept. ITS
3. Save Workspace Menyimpan workspace yang ada 4. Layout Mengubah tampilan pada MATLAB • Klik default untuk mengembalikan sesuai tampilan awal • Command History bisa digunakan untuk mengetahui perintah yang sudah dijalankan
[email protected]
riset.its.ac.id/lab-pssl
B103, Electrical Eng. Dept. ITS
3. Metode menulis program pada MATLAB Secara umum terdapat 3 cara untuk menuliskan program pada MATLAB:
3.1 Command Window Baris Perintah (prompt)
1
Baris hasil perintah
Input perintah • • •
Menulis pada command window menggabungkan baris prompt dan baris hasil perintah pada satu tempat Command window tidak dapat disimpan namun dapat dicetak menggunakan fitur print Baik untuk mencoba jalannya suatu perintah kecil atau mengetahui nilai variabel
3.2 Script (.m file) Pada Editor seluruh syntax1 dianggap sebuah code2. Sehingga kesalahan penulisan akan menyebabkan error. Untuk membuat script baru dapat dilakukan Langkah-langkah berikut: No Langkah 1 Tekan tombol New Script pada tab Home
2
Gambar
Ketikan syntax pada window Editor 1+1 1+2 2+3 %tidak dijalankan
1 2
Susunan kata pada suatu baris Barisan perintah untuk dijalankan suatu program
[email protected]
riset.its.ac.id/lab-pssl
B103, Electrical Eng. Dept. ITS
•
•
Anda bisa membuat baris tidak dijalankan sebagai perintah dengan mengetikkan % di awal syntax (commenting) Syntax %% menyebabkan section break yang memisahkan baris-baris
3
Setelah mengetik seluruh syntax klik Run pada tab Editor
4
Seluruh perintah pada Editor akan dijalankan pada Command Window dengan prompt sesuai nama program • •
Cara alternatif untuk menjalankan editor adalah mengetikkan nama Editor pada command window Ketika menjalankan Editor, syntax tidak diulang kembali pada prompt. Sehingga hanya menampilkan output.
3.3 Live Script (.mlx file) Live Script adalah fitur MATLAB dimana satu dokumen dapat menggabungkan code dan text dengan menampilkan eksekusi code pada window Live Editor. Selain itu fitur-fitur dari live script adalah: • • • • •
Memasukkan gambar Membuat heading teks Mengubah bentuk teks menjadi italic, bold Membuat list Mengubah bentuk paragraf (rata tengah, kiri, kanan)
Untuk membuat live script baru dapat dilakukan Langkah-langkah berikut: No Langkah 1 Tekan tombol New Live Script pada tab Home
[email protected]
riset.its.ac.id/lab-pssl
Gambar
B103, Electrical Eng. Dept. ITS
2
Ketikkan syntax pada window Editor 1+1 1+2 2+3
3
Klik Text pada tab Live Editor untuk mengubah syntax menjadi teks biasa (tidak dianggap sebagai perintah). Kemudian tuliskan: tidak dijalankan
4
Setelah selesai klik Run All pada tab Live Editor • Untuk mengubah display hasil, klik ikon pada pojok kanan atas Live Editor
[email protected]
riset.its.ac.id/lab-pssl
B103, Electrical Eng. Dept. ITS
4. Tipe Variabel pada Matlab Seperti Bahasa pemrogaman yang lain,Matlab memiliki beberapa jenis variabel yang dapat diolah,diantaranya: Type Number
Definisi Bilangan rasional yang dapat dioperasikan secara arimatika
Contoh >> x=1 x= 1 >> x=1.2 x=
Char/String
Susunan karakter berupa huruf
1.2000 >> x='saya' x= 'saya' >> x='true' x=
Logic
Variable Boolean yang hanya bernilai benar(1) atau salah(0)
'true' >> x=false x= logical 0 >> x= 1==1 x= logical
Struct
tipe data yang mengelompokkan data terkait menggunakan wadah data yang disebut bidang. Dimana setiap bidang dapat berisi semua jenis data
1 >> x={1,true,'true'} x= 1×3 cell array {[1]} {[1]} {'true'}
[email protected]
riset.its.ac.id/lab-pssl
B103, Electrical Eng. Dept. ITS
5. Membuat program sederhana Memulai pembuatan program basic command dengan variabel sederhana Langkah-langkahnya adalah sebagai berikut: • •
Buka editor window Ketik script dibawah ini pada editor window: clc clear all A = input('Masukkan Nama Anda :','s'); B = input('Masukkan Tahun Lahir Anda :'); C = 2020-B; disp ('Berusia:') disp(C)
• • •
Klik Save As dan beri nama file “coba1.m” Tekan F5 atau Klik Run Pilih Change Folder
Hasil running program pada command window:
[email protected]
riset.its.ac.id/lab-pssl
B103, Electrical Eng. Dept. ITS
6. Array dan operasi Semua variabel pada matlab disebut sebagai Array.Array memliki beberapa jenis bentuk diantaranya:
6.1 Pembentukan Array dengan syntax Array Scalar Row Vector Colum vector
Definisi Matrix 1x1 Matrix 1x n Matrix n x 1
Matrix
Matrix n x n
Syntax • X=3 • X=[1 2 3] • X=[1 2 3] • X=[1;2;3] • X=[1 2 3]’ • X=[1 2 3 234 4 5 6]
6.2 Pembentukan Array dengan fungsi Array Matriks Zero
Matriks Ones
[email protected]
Definisi Merupakan pembuatan matriks nol (semua elemen bernilai nol (0)) Merupakan pembuatan matriks satuan (semua elemennya bernilai satu (1))
riset.its.ac.id/lab-pssl
Syntax Z = zeros(n)
O= ones(n)
B103, Electrical Eng. Dept. ITS
Matriks Random
Matriks Magic Matriks Identity
Merupakan pembuatan matriks dengan nilai elemen yang dipilih secara acak Merupakan pembuatan matriks magic Merupakan pembuatan matriks identitas
R= rand(n) A= randn(n)
M=magic(n) I=eye(n)
6.3 Operasi pada Array yang sudah ada Misalkan kita memiliki sebuah matrix, A= [1 2 3 345 6 7 8] Kita dapat melakukan beberapa operasi pada matrix A Operasi Syntax Memanggil elemen pada matrix • x=A(1,3) >>X= 3 • x=A(1,:) >>x= [1 2 3] • x=A(1:2,2) >>x=[2 4] •
Mengganti elemen pada matrix
•
•
A(1,1) =0 >>A=[0 2 3 345 6 7 8] A(1,:)=1 >>A=[1 1 1 345 6 7 8] A(1,:)=[1 2 4] >>A=[1 2 4 345 6 7 8]
Menghapus elemen pada matrix
•
A(1,:)=[ ] >>A=[3 4 5 6 7 8]
Menentukan determinan Matriks
•
det (A)
[email protected]
riset.its.ac.id/lab-pssl
B103, Electrical Eng. Dept. ITS
>>ans =
Membuat matix invers
•
Size/Length
• •
Transpose
•
Menentukan elemen terbesar dan terkecil pada matrix
•
Mengubah Dimensi Matriks
1.1102e-15 inv(A) >>[-2.7022 4.5036 -1.8014 …..5.4043 -9.0072 3.6029 …-2.7022 4.5036 -1.8014] size(A) >> ans 3 3 length(A) >> 3 A’ [1 3 6 247 3 5 8]
max(A) ans= 8 • min(A) ans= 1 reshape(A,n,m) (m=kolom baru n=baris baru) reshape(A,1,9) [1 2 3 3 4 5 6 7 8]
Penjumlahan antar matriks Penjumlahan antar matrikx Perkalian antar matriks Pembagian antar matrix
[email protected]
A+B (Dimensi matrix A dan B harus sama) A+B (Dimensi matrix A dan B harus sama) A*B(Jumlah Kolom A= Jumlah Baris B) A/B(Jumlah Kolom A= Jumlah Baris B,Matriks B adalah matriks persegi dengan determinan bukan 0)
riset.its.ac.id/lab-pssl
B103, Electrical Eng. Dept. ITS
7. Operasi relasional & logika Didalam operasi pengambilan keputusan, diperlukan beberapa operator logika dan relasional. Operator relasional digunakan untuk membandingkan operand-operand (nilai asal yang digunakan didalam proses operasi) secara kuantitatif. Operator logika biasanya digunakan untuk menyatakan sebuah kondisi yang bernilai TRUE (1) atau FALSE (0). Penjelasannya ditunjukkan pada tabel dibawah ini. Operator
Arti
Contoh Penggunaan
==
Sama dengan
~=
Tidak sama dengan
Lebih dari
Operasi Relasional
[email protected]
riset.its.ac.id/lab-pssl
B103, Electrical Eng. Dept. ITS
Operator =
Lebih dari sama dengan
Contoh Penggunaan
Operasi Logika &
Konjungsi (AND)
|
Disjungsi (OR)
[email protected]
riset.its.ac.id/lab-pssl
B103, Electrical Eng. Dept. ITS
Operator ~
Arti Negasi (NOT)
xor
Disjungsi eksklusif
[email protected]
Contoh Penggunaan
riset.its.ac.id/lab-pssl
B103, Electrical Eng. Dept. ITS
8. Membuat program iterasi Membuat program iterasi sederhana dengan if/else, while, dan for
8.1 Operator if Mono Operator If Studi kasus mengganti angka dalam matriks menggunakan if clear all clc A = [1 2 3; 4 5 6; 7 8 9]; if A(1,:) ~= 0 A(1,:) = 0; end if A(2,:)3 A(2,:) = 6; end A
Multi Operator If Studi kasus mengganti angka dalam matriks dengan syarat clear all clc A = [1 2 3; 4 5 6; 7 8 9]; if A(1,:) ~= 0 A(1,:) = 0; end if A(2,:)3 A(2,:) = 6; end end A
[email protected]
riset.its.ac.id/lab-pssl
B103, Electrical Eng. Dept. ITS
Output:
If/elseif Studi kasus mengganti angka dalam matriks dengan syarat jika tidak memenuhi syarat awal clear all clc A = [1 2 3; 4 5 6; 7 8 9]; if A(1,:) ~= 0 A(1,:) = 0; end if A(2,:)3 A(2,:) = 6; end end if A(3,:) >= 10 A(3,:) = 9999999; else if A(3,:) < 10 A(3,:) = 0; end end A Output:
[email protected]
riset.its.ac.id/lab-pssl
B103, Electrical Eng. Dept. ITS
8.2 Operator While Mono operator while Studi kasus menampilkan matriks A sebanyak 10 kali clear all clc A = [1 2 3; 4 5 6; 7 8 9]; [n,m]= size(A) Itmax=10; It=0; while It < Itmax It=It+1; It A end
Multi Operator While Studi kasus pengurangan berulang dengan besar pengurangan berbeda pada kondisi tertentu clear all clc A = [1 2 3; 4 5 6; 7 8 9]; while A(3,1) ~= 0 A(:,1)=A(:,1)-1; end while A(:,2) > 0 A(:,2) = A(:,2) - 2; while A(2,2) ~= -3; A(:,2) = A(:,2) - 1; end end A Output:
[email protected]
riset.its.ac.id/lab-pssl
B103, Electrical Eng. Dept. ITS
While/if Studi kasus pengurangan berulang dalam matriks dengan suatu syarat clear all clc A = [1 2 3; 4 5 6; 7 8 9]; while A(3,1) ~= 0 A(:,1)=A(:,1)-1; end while A(:,2) > 0 A(:,2) = A(:,2) - 2; while A(2,2) ~= -3; A(:,2) = A(:,2) - 1; end end while A(3,3) ~= 0 A(:,3) = A(:,3) - 3; if A(1,3) == 0 A(:,3) = A(:,3) - 6; end end A Output:
While/if/elseif/break Studi kasus pengurangan elemen matriks dengan syarat tertentu dan berhenti setelah mencapai kondisi yang ditentukan
[email protected]
riset.its.ac.id/lab-pssl
B103, Electrical Eng. Dept. ITS
clear all clc A = [1 2 3; 4 5 6; 7 8 9]; while A(3,1) ~= 0 A(:,1)=A(:,1)-1; if A(2,1) == -1 break end end A Output”
while/if/elseif/continue Studi kasus pengurangan elemen matriks dengan syarat tertentu dan berhenti setelah kondisi yang ditentukan tercapai. clear all clc A = [1 2 3; 4 5 6; 7 8 9]; while A(3,1) ~= 0 A(:,1)=A(:,1)-1; if A(3,1) == 2 break else if A(1,1) == -3; continue end end A end A
Output:
[email protected]
riset.its.ac.id/lab-pssl
B103, Electrical Eng. Dept. ITS
[email protected]
riset.its.ac.id/lab-pssl
B103, Electrical Eng. Dept. ITS
8.3 Operator For Mono Operator For Studi kasus pembuatan matriks (1xn) dan membaliknya menjadi (nx1) clear all clc m=input('Masukkan Komponen Matriks (1xn):'); n=0; A=[]; B=[]; for k = 1:m; n=n+2; A(1,k)=n; end n=0; clear k; for k = 1:m; B(k,1)=A(1,k); end; A B Output:
[email protected]
riset.its.ac.id/lab-pssl
B103, Electrical Eng. Dept. ITS
Multi Operator For Studi kasus pembuatan matrik secara manual dengan cara input otomatis clear all clc n=input('Masukkan Baris Ukuran Matriks:'); m=input('Masukkan Kolom Ukuran Matriks:'); A=[]; B=[]; for k = 1:n for j = 1:m disp (['Matriks A ' num2str(k) ' ' num2str(j)]) a=input('Masukkan Komponen Matriks_A:'); A(k,j)=a; end end for d = 1:n for e = 1:m disp (['Matriks B ' num2str(d) ' ' num2str(e)]) b=input('Masukkan Komponen Matriks_B:'); B(d,e)=b; end end B Output:
[email protected]
riset.its.ac.id/lab-pssl
B103, Electrical Eng. Dept. ITS
For/if Studi kasus mengganti komponen matriks yang bernilai integer menjadi matriks binary clear all clc A=[1 2 0 1 0 9 0 0 19]; B=[] for k = 1:length(A); if A(1,k)~= 0 B(1,k)= 1 elseif A(1,k)== 0 B(1,k)= 0 end end Output:
[email protected]
riset.its.ac.id/lab-pssl
B103, Electrical Eng. Dept. ITS
for/if/elseif/break studi kasus mengurutkan angka secara ascendant (dari kecil ke besar) dan berhenti setelah syarat tertentu clear all clc for k = 1 : 10 d=input('Msukkan Angka :'); a(1,k)= d; n=0; while length(a)> 0 b = a(1); for i = 1 : length(a) for j = 1 : length(a) if b > a(j) b(1,1)= a(j); break else end end end x=find(a==b); if length(x)>0 y =x(1); else y = x; end a(y)=[]; n = n + 1; c(1,n)= b; end a=c end
[email protected]
riset.its.ac.id/lab-pssl
B103, Electrical Eng. Dept. ITS
for/if/elseif/continue studi kasus mengurutkan angka secara ascendant (dari kecil ke besar) clear all clc for k = 1 : 10 d=input('Masukkan Angka :'); a(1,k)= d; n=0; while length(a)> 0 b = a(1); for i = 1 : length(a) for j = 1 : length(a) if b > a(j) b(1,1)= a(j); continue else end end end x=find(a==b); if length(x)>0 y =x(1); else y = x; end a(y)=[]; n = n + 1; c(1,n)= b; end a=c end
Latihan! Buat program untuk memasukkan bilangan bulat dalam kisaran 10 hingga 500. (Cari dan gunakan perintah input.) Jika nomor input bukan bilangan bulat atau di luar batas, teruslah meminta nomor baru. Simpan nomor dalam variabel N. Gunakan kombinasi fungsi if/for/else/break/continue/end.
[email protected]
riset.its.ac.id/lab-pssl
B103, Electrical Eng. Dept. ITS
9. Menggambar grafik 9.1 Membuat plot grafik 2D pada MATLAB (line, bar, scatter) 9.1.1 Menggambar grafik 2 dimensi pada sumbu x,y plot(x,y) Contoh: x = linspace(0, 2*pi); y = sin (x); plot (x,y)
Gambar output program:
•
Fungsi : Menambahkan label pada sumbu, judul dan menyajikan beberapa kurva dan warna yang berbeda Syntax :
xlabel(‘Nilai X’), ylabel(‘NIlai Y’) title(‘Nama grafik’,’Fontsize’,16,) plot(x,y,’kode bentuk - kode warna’,x,z,...) hold on
Contoh :
[email protected]
riset.its.ac.id/lab-pssl
B103, Electrical Eng. Dept. ITS
x = linspace(0, 2*pi); y = sin (x); z = cos (x); w = cos(x/2); plot (x,y,x,z) hold on %untuk ‘menahan’ plot sebelumnya supaya tak hilang plot (x,w) xlabel('Sudut in Rad'), ylabel('Magnitude') %memberi label sumbu x dan y title('Grafik Sinusoidal','Fontsize',16) %memberi judul grafik
•
Fungsi: Menambahkan legenda dan mengelompokkan beberapa kurva dengan bidang kurva yang berbeda Syntax: legend(“Title”,...) subplot(m, n, p) Contoh :
[email protected]
riset.its.ac.id/lab-pssl
B103, Electrical Eng. Dept. ITS
x = linspace(0,2*pi); y = sin (x); z = cos (x); w = cos(x/2); subplot(2,2,1) plot (x,y,x,z) xlabel('Sudut in Rad'), ylabel('Magnitude') title('Grafik Sinusoidal','Fontsize',16) subplot(2,2,2) plot (x,w) xlabel('Sudut in Rad'), ylabel('Magnitude') title('Grafik Sinusoidal','Fontsize',16)
9.1.2 Membuat Diagram Batang Membuat diagram exponensial, vertikal dan horizontal bar(“persamaan”) Contoh : B = -3 : 0.2 : 3; bar(B,exp(-B.*B)); barh(B,exp(-B.*B));
Gambar Output Program:
[email protected]
riset.its.ac.id/lab-pssl
B103, Electrical Eng. Dept. ITS
•
Fungsi : Membuat diagram 3 buah data dengan warna Contoh : B = -3 : 0.2 : 3; bar(B,exp(-B.*B)); barh(B,exp(-B.*B),'FaceColor',[0 1 0]);));
Daftar Kode Warna
[email protected]
riset.its.ac.id/lab-pssl
B103, Electrical Eng. Dept. ITS
R
G
B
Singkatan
Warna
1
0
0
‘r’
Merah
0
1
0
‘g’
Hijau
0
0
1
‘b’
Biru
1
1
1
‘w’
Putih
0
0
0
‘k’
Hitam
9.1.3 Membuat diagram scatter scatter (X,Y) Contoh : X=[1 2 3 4 5 6 7 8 9 10]; Y=[2 2 1 4 1 0 0 1 6 1]; scatter (X,Y)
Hasil output gambar:
9.1.4 Fungsi fplot Membuat grafik pada fungsi tertentu fplot(function, xinterval) Contoh : Pada fungsi cos
[email protected]
riset.its.ac.id/lab-pssl
B103, Electrical Eng. Dept. ITS
fnch=@cos; fplot(fnch,[0 2*pi]) % Pada fungsi cos (X) x sin (2X) f='cos(X)*sin(2*X)'; fplot(fnch, [0 2*pi])
9.1.5 Penggunaan Skala Logaritma Melakukan penskalaan grafik terhadap sumbu x, y, atau keduanya. Apabila diketahui suatu fungsi grafik eksponensial seperti di bawah ini: semilogx(X,Y) Contoh : X= [0:0.1:20]; Y= exp(-10*X.^2); plot(X,Y); grid on semilogx(X,Y); grid on
[email protected]
riset.its.ac.id/lab-pssl
B103, Electrical Eng. Dept. ITS
•
Fungsi Melakukan penskalaan grafik terhadap sumbu y Contoh : X= [0:0.1:20]; Y= exp(-10*X.^2); plot(X,Y); grid on semilogy(X,Y); grid on
[email protected]
riset.its.ac.id/lab-pssl
B103, Electrical Eng. Dept. ITS
•
Melakukan penskalaan grafik terhadap sumbu x dan y Syntax : loglog(X,Y) Contoh : X= [0:0.1:20]; Y= exp(-10*X.^2); plot(X,Y); grid on loglog(X,Y); grid on
9.2 Membuat Diagram Gambar 3D Mesh Menampilkan grafik berupa kerangka 3D mesh(X,Y,Z)
•
Contoh: Fungsi sinus [X,Y] = meshgrid(-8:0.5:8); R=sqrt(X.^2+Y.^2); Z=sin(R)./R; mesh (X,Y,Z,'Edgecolor','black')
[email protected]
riset.its.ac.id/lab-pssl
B103, Electrical Eng. Dept. ITS
•
Fungsi Z=X2-Y2 [X,Y] = meshgrid(-8:0.5:8); R=sqrt(X.^2+Y.^2); Z=sin(R)./R; mesh (X,Y,Z,'Edgecolor','black')
[email protected]
riset.its.ac.id/lab-pssl
B103, Electrical Eng. Dept. ITS
•
Fungsi r2+z2=1 (bola) batas_tetha = 0:0.1:2*pi; batas_z = -1:0.1:1; [tetha,z] = meshgrid(batas_tetha,batas_z); X = sqrt(1-z.^2).*cos(tetha); Y = sqrt(1-z.^2).*sin(tetha); Z = X.^2 + Y.^2; mesh(X,Y,Z); axis square;
9.3 Membuat Diagram Gambar 3D Surf Fungsi : untuk menggambar 3dimensi yang utuh surf(X,Y,Z) Contoh : [X,Y]=meshgrid(-8:0.5:8); R=sqrt(X.^2+Y.^2); Z=sin(R)./R; surf(X,Y,Z)
[email protected]
riset.its.ac.id/lab-pssl
B103, Electrical Eng. Dept. ITS
9.4 Mengolah Hasil Gambar (Diagram/plot) 9.4.1 Menyimpan Gambar 1) 2) 3) 4) 5)
Klik jendela Figure Klik menu File Klik Save As akan muncul jendela dialog Klik kotak pilihan di kanan tulisan Save as Type dan pilih ekstensi yang diinginkan Klik Save
9.4.2 Mencetak Gambar 1) 2) 3) 4)
Klik menu File Klik Print Atur preferensi Klik Ok
9.4.3 Perintah View Perintah ini digunakan untuk melihat grafik dari sudut pandang yang berbeda dari azimut dan elevasi. Yang dimaksud dengan azimut adalah sudut antara x dan y. Sedangkan elevasi adalah sudut antara z terhadap x. Syntax view(a,e)
[email protected]
Penjelasan Mengatur sudut pandang a(azimuth) dan e(elevasi)
riset.its.ac.id/lab-pssl
antara
B103, Electrical Eng. Dept. ITS
view(2)
Mengatur sudut pandang ke nilai default grafik dua dimensi yaitu azimuth sebesar 0 dan elevasi sebesar 90
view(3)
Mengatur sudut pandang ke nilai default grafik tiga dimensi yaitu azimuth sebesar 0-37,5 dan elevasi sebesar 30
[a,e]=view
Mengetahui sudut pandang pada saat ini
9.4.4 Membuat Mesh pada Grid Syntax : [X,Y]=meshgrid(2:0.1:-2); Z=X^2-Y^2 mesh(X,Y,Z) view(-15,45)
9.4.5 Perintah Figure Perintah ini dapat digunakan untuk memilih ruang gambar. Secara bawaan, pengoperasian MATLAB akan menghasilkan gambar di jendela Figure 1. Apabila kita menuliskan Syntax : figure(2)
[email protected]
riset.its.ac.id/lab-pssl
B103, Electrical Eng. Dept. ITS
Itu berarti merujuk pada jendela Figure 2. Dan apabila belum terdapat Figure 2, MATLAB akan otomatis membuatnya. Untuk menghapus isi jendela figure, daat dilakukan dengan mengetik clf dan close untuk menghapus jendela figure. Berikut cara Mengganti judul jendela Syntax : figure (2); sphere; set(1, 'Name' , 'Eksponensial' , 'NumberTitle' , 'off');
[email protected]
riset.its.ac.id/lab-pssl
B103, Electrical Eng. Dept. ITS
10.
Fungsi
Anda dapat membuat file Fungsi pada Matlab yang dapat digunakan untuk menjalankan sebuah perhitungan pada sebuah script,format dari fungsi tersebut adalah: function [y1,...,yN] = myfun(x1,...,xM)
Dengan y1,…,yN adalah range dan x1,…,Xm adalah domain.Tedapat beberapa ketentuan yang harus dipenuhi sebelum kita menggunakan fungsi pada sebuah script,diantanya: -Fungsi hanya dapat digunakan pada Matlab R2016 keatas -File fungsi harus diberi nama yang sama dengan nama fungsi tersebut -File fungsi harus disimpan pada satu folder yang sama dengan script yang ingin dijalankan
10.1 Fungsi interpolasi kuadratik Pada Latihan ini kita akan membuat fungsi Interpolasi kuadratik pada sebuah set data. Interpolasi dapat digunakan untuk mencari nilai perkiraan sebuah titik yang terletak diantara 3 titik yang diketahui dengan menggunakan pendekatan persamaan kuadratik.Fungsi yang akan dibuat dapat bekerja dengan sangat ideal apabila data yang diberikan memili pola sebuah persamaan orde 2
Apabila kita memiliki 3 buah titik (𝑥1 , 𝑓1 ), (𝑥2 , 𝑓2), (𝑥3 , 𝑓3) lalu kita ingin menemukan sebuah titik dengan absis bernilai x yang menngikuti pola dari 3 titik tersebut.maka kita dapat mencari titik (𝑥, 𝑝2 (𝑥)) dengan persamaan sebagai berikut 𝑝2 (𝑥) = 𝑏0 + 𝑏1 (𝑥 − 𝑥1 ) + 𝑏1 (𝑥 − 𝑥1 )(𝑥 − 𝑥2 ) … . . [1] 𝑏0 = 𝑓1 … . . [2]
[email protected]
𝑏1 =
𝑓2 − 𝑓1 … … . [3] 𝑥2 − 𝑥1
𝑐1 =
𝑓3 − 𝑓2 … … [4] 𝑥3 − 𝑥2
𝑏2 =
𝑐1 − 𝑏1 … … [5] 𝑥3 − 𝑥1
riset.its.ac.id/lab-pssl
B103, Electrical Eng. Dept. ITS
Misalkan kita memiliki 3 buah titik yaitu (2,4),(4,16) dan (5,25) lalu kita diminta mencari sebuah titik dengan kordinat abis x=3,maka kita dapat menyelesaikan persoalan ini dengan menggunakan Matlab Kita akan membawa fungsi tersebut menjadi sebuah script fungsi yang kita beri nama quadinter: function p =quadinter(x,f,xp) b0=f(1); b1=(f(2)-f(1))/(x(2)-x(1)); c2=(f(3)-f(2))/(x(3)-x(2)); b2=(c2-b1)/(x(3)-x(1));
%[2] %[3] %[4] %[5]
p=b0+b1*(xp-x(1))+b2*(xp-x(1))*(xp-x(2)) %[1]
Kita perlu juga membuat main-script untuk memberikan input nilai clc clear all x=[ 2 4 5 ]; %nilai x f=[ 4 16 25]; %nilai f xp=input('masukan nilai x : '); p =quadinter(x,f,xp)
maka kita dapat menentukan titik yang dituju
[email protected]
riset.its.ac.id/lab-pssl
B103, Electrical Eng. Dept. ITS
11.
Membuat GUI sederhana
App Designer adalah fitur pada matlab versi R2015 keatas yang dapat digunakan padapengembangan interaktif untuk merancang tata letak aplikasi dan memprogram perilakunya. App designer dapat digunakan untuk merubah sebuah script menjadi sebuah aplikasi sehingga program dapat lebih mudah digunakan.Untuk pengembangan aplikasi,matlab juga memilifitur GUIDE yang memiliki fungsi serupa dengan App Designer.App Designer sendiri memiliki keunggulan dalam User Experience yang lebih mudah digunakan serta memiliki lebih banyak fitur.Aplikasi yang dirancang pada GUIDE dapat di migrasi ke App Designer dengan menggunakan extantion yang telah disediakan matlab 1. Untuk membuka App Designer dapat melalui Comand Window
2. Tampilan awal appdesigner
3. Tampilan awal Blank page(Design View)
[email protected]
riset.its.ac.id/lab-pssl
B103, Electrical Eng. Dept. ITS
COMPONENT LIBRARY: Komponen yang dapat digunakan untuk membangun aplikasi
CANVAS:
COMPONENT BROWSER:
meletakan komponen dan mengatur User interface
Mengatur komponen yang telah diletakan
4. Tampilan awal Blank page(Code View)
CALLBACK: Mengatur perilaku setiap komponen
CODE BROWSER:
Mengatur komponen yang telah diletakan
Memberi tambahan fitur pada setiap callback
[email protected]
COMPONENT BROWSER
riset.its.ac.id/lab-pssl
B103, Electrical Eng. Dept. ITS
Latihan -Membuat GUI dari fungsi interpolasi yang telah dibuat
[email protected]
riset.its.ac.id/lab-pssl
B103, Electrical Eng. Dept. ITS