Senin, 18 Januari 2016

Matrik dan Vektor Pada Matlab.



hai sobat pembaca ketemu lagi dengan saya...
di pembahasan kali ini saya akan menjelaskan matriks , vektor dan skalar di dalam matlab..
          






            Matrik Dan Vektor
1.         Definisi Matrik, Vektor Dan Skalar
Pada prinsipnya semua variabel didalam Matlab adalah matrik, sehingga operasi  pada MATLAB adalah operasi yang berbasis Matrik

Vektor adalah matrik dengan satu baris atau satu kolom

Skalar adalah matrik dengan satu baris dan satu kolom

Contoh
>> a = [1 2 3; 4 5 6; 7 8 9]      (variabel a berisi matrik 3x3)

a = 1     2     3
      4     5     6
      7     8     9

>> b = [1 2 3 4 5]        (variabel b berisi vektor baris)

b =     1     2     3     4     5







2.         Membuat Matrik  dari Fungsi MATLAB


>> A = pascal(3)                     %matrik bilangan pascal

A =
       1     1     1
       1     2     3
       1     3     6

>> B = magic(3)          %matrik ajaib 3x3

B =
       8     1     6
       3     5     7
       4     9     2

1.5.4    Dasar-Dasar Pemroggraman

3.         Input/Output
Input
Syntax :           variable=input('text');

Output
Syntax :           disp('text');





Contoh :
%-----------------------------------------------------                     
% Program menghitung Luas Persegi panjang
% Matlab Programming
% by : Jearren
%-----------------------------------------------------
clear all;                                                                     %hapus semua variable
clc;                                                                              %hapus tampilan yg ada dilayar
disp(‘----------------------------------‘);                         %tampilkan teks dilayar
disp(‘Hitung Luas Persegi panjang’);                             
disp(‘----------------------------------‘);
p = input(‘Panjang = ‘);                                          %Input variable “p”
l = input(‘Lebar = ‘);                                                %Input variable “l”
Luas = p*l;                                                                %Hitung Luas 
Disp( [‘Luas = ‘  num2str(Luas)] );                       %Tampilkan teks dan numerik


4.         Perulangan : for …. End
Syntax :

For  variable = mulai : interval : akhir
                        Perintah1;
                        Perintah2;
End;

            Contoh
% --------------------------------
% Program Perulangan for ... end
% Matlab Programming
% by : Jearren
% --------------------------------
clear all;  %membersihkan semua variabel
clc;        %membersihkan layar

disp('---------------------'); %menampilkan teks dilayar
disp('Perulangan for ... end ');
disp('---------------------');

for n=1:10                          % n = 1 s/d 10
    y=n*n+5
    disp([‘No:‘ num2str(n) ‘Besar Y = ‘ num2str(y)]);      
end;









5.         Perulangan : while ... end
Syntax :

While   syarat dipenuhi
                        Perintah1;
                        Perinyah2;
End;


Contoh

% --------------------------------
% Program Perulangan while ... end
% Matlab Programming
% by : Jearren
% --------------------------------

clear all;
clc;

disp('-----------------------------------');
disp('Program Perulangan   while ... end ');
disp('-----------------------------------');

x=20;
while x>10
    disp('perulangan ini akan berhenti bila x<= 10');
    x=input('Nilai x = ');
    clc;
    disp(['Nilai yang anda masukkan = ' num2str(x)]);
end;
disp('Nilai x <= 10: selesai.......');


6.         Pencabangan : if … elseif …else….end

Syntax :

If         syarat1 terpenuhi
                        Perintah1 dijalankan

Elseif   syarat2 terpenuhi
                        Perintah2 dijalankan
……………
Else
Perintah3 dijalankan

End;


Contoh
% --------------------------------
% Program Pencabangan : if … elseif …else….end
% Matlab Programming
% by : Jearren
% --------------------------------
clear all;
clc;
   
disp('--------------------------------------');
disp('Program Pencabangan : if … elseif …else….end ');
disp('--------------------------------------');

tugas=input('nilai tugas = ');
uts=input('nilai uts = ');
uas=input('nilai uas  = ');

nilai=(tugas*10/100)+(uts*40/100)+(uas*50/100);
disp('-------------------------------------');
disp(['nilai akhir Anda = ' num2str(nilai)]);

if nilai>85
    disp(['Nilai anda = ' num2str(nilai) '   grade anda = A']);
elseif nilai <=85 & nilai>70
    disp(['Nilai anda = ' num2str(nilai) '   grade anda = B']);
elseif nilai <=70 & nilai>60
    disp(['Nilai anda = ' num2str(nilai) '   grade anda = C']);
elseif nilai <=60 & nilai>50
    disp(['Nilai anda = ' num2str(nilai) '   grade anda = D']);
else
    disp(['Nilai anda = ' num2str(nilai) '   grade anda = E']);
end;


7.         Pencabangan : switch … case … otherwise ….end

Syntax :

Switch   variable
                        Case  nilai1
                                    Perintah1 dijalankan
Case  nilai2
                                    Perintah2 dijalankan
                                    ……..
                        Otherwise
                                    Perintah3 dijalankan
            End;




Contoh                       
% ---------------------------------------------------
% Program Pencabangan : switch … case … otherwise ….end
% Matlab Programming
% by : Jearren
% ---------------------------------------------------
clear all;
clc; 
disp('-----------------------------------');
disp('Program switch … case … otherwise ….end ');
disp('-----------------------------------');
disp('Pilihan Rumus Perhitungan ');
disp('1. Luas kotak');
disp('2. Volume kotak');
disp('3. Luas Silinder');
disp(' ');
pilih=input('pilihan anda (1-3) -> ');

switch pilih

case 1
    disp('Hitung Luas Kotak');
    disp('--------------------');
    p=input('panjang kotak = ');
    l=input('lebar kotak = ');
    t=input('tinggi kotak = ');
    luas=2*p+2*l+2*t;
    disp(['luas kotak = ' num2str(luas)]);   

case 2
    disp('Hitung Volume Kotak');
    disp('--------------------');
    p=input('panjang kotak = ');
    l=input('lebar kotak = ');
    t=input('tinggi kotak = ');
    v=p*l*t;
    disp(['volume kotak = ' num2str(v)]);       

case 3
    disp('Hitung Luas Silinder');
    disp('--------------------');
    r=input('jari-jari silinder = ');
    t=input('tinggi silinder = ');
    luas=(2*pi*r*t) + 2*(pi*r^2);
    disp(['luas silinder = ' num2str(luas)]);       

otherwise
    disp('pilihan anda ngawuur!!!')
end;


8.         Continue
Perintah continue digunakan untuk mengulang kembali dari awal perulangan sebelum kondisi yang menyebabkan mengulang kembali dari perulangan ditemukan.
Syntax :
            Continue;

Contoh
% --------------------------------
% Program perintah continue
% Matlab Programming
% by : Jearren
% --------------------------------

clear all;
clc;
count = 20;
while count>1
    count = count - 1;
    if  count<15
        disp(' bilangan ini <15');
        disp('==================');
        disp('                  ');
        continue 
  %semua perintah yg ada dibawah continue diabaikan
  %program langsung menuju ke baris awal looping
  %yaitu ke: count=count-1
    end
    %Jika count<15, perintah ini tidak dikerjakan
   
    disp(['hitungan ke = ' num2str(count)]);
    disp('             ');
    disp('             ');
    for x=1:5
        disp('cetak jika count>15');
    end;
end
disp(['Selesai pada hitungan ke = ',num2str(count)]);



















9.         Break

Perintah Break digunakan untuk mengakhiri perulangan sebelum kondisi yang menyebabkan keluar perulangan ditemukan.
Syntax :
            Break ;

Contoh
% --------------------------------
% Program perintah Break
% Matlab Programming
% by : Jearren
% --------------------------------

clear all;
clc;
count = 20;
while count>1
    count = count - 1;
    if  count<15
        disp(' bilangan ini <15');
        disp('==================');
        disp('                  ');
       
  %program keluar dari looping while…end;
  break    
   
    end
    %Jika count<15, perintah ini tidak dikerjakan
   
    disp(['hitungan ke = ' num2str(count)]);
    disp('             ');
    disp('             ');
    for x=1:5
        disp('cetak jika count>15');
    end;
end
disp(['Selesai pada hitungan ke = ',num2str(count)]);


10.       Fungsi
Fungsi merupakan subprogram yang dapat menerima argument masukan (input) dan/atau menghasilkan keluaran (output) dengan parameternya. Variabel yang dinyatakan dan digunakan dalam suatu fungsi, berbeda dari argument masukan/keluaran, dimana tidak diijinkan apabila digunakan oleh fungsi lain dan lingkungan perintah lainnya.
Syntax :

Function  [Output1, Output2, ……] = NamaFungsi(Input1, Input2, ….)



Contoh

% --------------------------------
% Program membuat Fungsi
% Matlab Programming
% by : Jearren
% --------------------------------
function y=kuadrat(x)
% Fungsi y = x^2
% --------------------------------
y=x.^2;

Simpan fungsi tersebut dengan nama yang sama dengan nama fungsinya yaitu, “kuadart.m”.

contoh cara memanggil fungsi tersebut pada Command Window:

>> kuadrat(5)              [Enter]
ans =    25

>> p = kuadrat(8)        [Enter]
p =  64

Contoh
% --------------------------------
% Program membuat Fungsi
% Matlab Programming
% by : Jearren
% --------------------------------
function [luas,volume]=balok(p,l,t)
% --------------------------------
% Menghitung Luas dan Isi Balok
% Luas   = 2pl +2pt +2lt
% volume = plt
% --------------------------------
luas   = 2*p.*l + 2*p.*t + 2*l.*t;
volume = p.*l.*t;

Simpan fungsi tersebut dengan nama yang sama dengan nama fungsinya yaitu, “balok.m”. contoh cara memanggil fungsi tersebut:

>> [Luas,Volume] = balok(2,4,6)
Luas = 88
Volume =48






Contoh 3
% --------------------------------
% Program membuat Fungsi
% Matlab Programming
% by : Jearren
% --------------------------------
function [luas,isi]=silinder(r,t)
% Menghitung Luas dan Isi Silinder
% luas = (2(pi) x r x t) + 2(pi x r^2)
% isi = pi x r^2 x t;
%
% Cara menggunakan :
% [luas,isi]=silinder(jari,tinggi)
% --------------------------------
luas = (2*pi*r*t) + 2*(pi*r^2);
isi = pi*r^2*t;

Simpan fungsi tersebut dengan nama yang sama dengan nama fungsinya yaitu, “silinder.m”. contoh cara memanggil fungsi tersebut:

>> [Luas,Volume] = silinder(2,4,6)

Hasilnya adalah :
Luas =  75.3982

Volume = 50.2655





Contoh memanggil fungsi lewat program

% --------------------------------
% Program membuat Fungsi
% Matlab Programming
% by: Jearren
% --------------------------------
clear all;
clc;
 
disp('---------------------');
disp('Program membuat Fungsi ');
disp('---------------------');
disp('Pilihan Rumus Perhitungan ');
disp('1. Kotak');
disp('2. Silinder');
disp('--------------------------');

pilih=input('pilihan anda (1-2) = ');

switch pilih

case 1
    disp('Hitung Luas Dan Isi Kotak');
    disp('--------------------');
    p=input('panjang kotak = ');
    l=input('lebar kotak = ');
    t=input('tinggi kotak = ');
    [luas,isi]=balok(p,l,t);        %memanggil fungsi balok
    disp(['luas kotak = ' num2str(luas)]);   
    disp(['volume kotak = ' num2str(isi)]);       

case 2
    disp('Hitung Luas Dan Isi Silinder');
    disp('--------------------');
    r=input('jari-jari silinder = ');
    t=input('tinggi silinder = ');
    [luas,isi]=silinder(r,t);       %memanggil fungsi silinder
    disp(['luas silinder = ' num2str(luas)]);       
    disp(['volume silinder = ' num2str(isi)]);   

otherwise
    disp('pilihan anda ngawuur!!!')
end;

1.5.5    Pemrograman Grafik
Secara umum setelah user menghitung sebauh fungsi matematik, pasti ada keinginan untuk memvisualisasikan datanya secara grafis. Hasil visualisasi ini sangat membantu dalam menganalisa data-data yang telah di analisis. Pada bagian ini dibahas tentang visualisasi data 2-D dan 3-D.


1.         Visualisasi Data 2-D
Untuk visualisasi data 2-D (dua dimensi) digunakan fungsi Plot
Syntax
         plot ( x, y)
         plot ( x, y, simbol)
        
catatan :
x dan y harus mempunyai bentuk yang sama.


Contoh
x=1:0.01:10;                    %Nilai X dari 1 s/d 10
y=2*x.^2-4*x+8;                 %Nilai Y
plot(x,y);                      %menggambar titik(x,y) di layar
xlim([0 15])                    %sumbu-X dibatasi dari 0 s/d 15
ylim([0 200])                   %sumbu-Y dibatasi dari 0 s/d 200
xlabel('Nilai-X')               %memberi label pada sumbu X
ylabel('Nilai-Y')               %memberi label pada sumbu Y
title('Grafik: y=2*x.^2-4*x+8') %memberi judul pada grafik
text(7,65,'Ini grafiknya')      %memberi teks pada grafik






2.         Type Garis Dan Simbol
Grafik yang gambar dapat divisualisasi lebih bagus lagi dengan mengkombinasikan warna, simbol dan type garis, sesuai dengan tabel berikut

Simbol
Garis
-

:

-.

- -
Solid line

Dotted line

Dash dot line

Dash line

Simbol
Tanda
.
o
x
+
*
s
d
v
^
p
h
Point
Circle
Cross
Plus
Asterik
Square
Diamond
Triangle (down)
Triangle (up)
Triangle (left)
Triangle (right)
Pentagram
hexagram

Simbol
Warna
b
g
r
c
m
y
k
w
Blue
Green
Red
Cyan
Magenta
Yellow
Black
White

Contoh
x=1:0.01:10;                    %Nilai X dari 1 s/d 10
y=2*x.^2-4*x+8;                 %Nilai Y
plot(x,y','*r');                %menggambar titik (x,y) di layar
xlim([0 15])                    %sumbu-X dibatasi dari 0 s/d 15
ylim([0 200])                   %sumbu-Y dibatasi dari 0 s/d 200
xlabel('Nilai-X')               %memberi label pada sumbu X
ylabel('Nilai-Y')               %memberi label pada sumbu Y
title('Grafik: y=2*x.^2-4*x+8') %memberi judul pada grafik
text(7,65,'Ini grafiknya')      %memberi teks pada grafik




3.         Membuat Tampilan Grafik Overlay
Contoh
>> x1 = 0:0.2:2*pi;
>> x2 = 0:0.2:2*pi;
>> y1 = sin(x1);
>> y2 = cos(x2);
>> plot(x1,y1); hold on; plot(x2,y2)
Atau
>> plot(x1,y1, x2, y2)



5.         Membuat Tampilan Grafik parallel
Syntax
                        Subplot ( K, L, M )

                        Membagi figure menjadi K baris dan L kolom
                        Menempatkan obyek (plot) pada posisi ke M

Contoh
>> x1 = 0:0.2:2*pi;
>> x2 = 0:0.2:2*pi;
>> y1 = sin(x1);
>> y2 = cos(x2);
>> subplot(2,1,1),plot(x1,y1)              %baris
>> subplot(2,1,2),plot(x2,y2)



4.1              Visualisasi Data 3-D
Penyajian data menggunakan visualisasi 3-D, berarti kita menempatkan satu atau lebih titik data pada korrdinat ruang. Teknik ini sangat berguna dalam bidang pemodelan yang berhubungan dengan data ruang (x,y,z), dengan z adalah nilai fungsi pada titik (x,y) yang dapat berupa data ketinggian, temperature, kecepatan, dan lain-lain. Beberapa fungsi yang umum digunakan untuk visualisasi data 3-D adalah fungsi Plot3, Mesh, Surf, Surfl, pcolor, Contour, dan Contourf.

Plot3
Jika x,y, dan z adalah tiga vector yang panjangnya sama, plot3(x,y,z) menghasilkan garis 3-D melewati titik-titik yang koordinat-koordinat elemennya adalah x, y, dan z, kemudian menghasilkan proyeksi 2-D dari garis tersebut pada layar. 

Syntax

plot3(X1,Y1,Z1,...)

X1, Y1, Z1 adalah vektor atau matrik. plot3(X1,Y1,Z1,...) akan menggambar satu garis atau lebih dalam ruang 3-D melalui titik-titik yang koordinat-kordinatnya adalah elemen-elemen dari X1, Y1, dan Z1.




Contoh
t = 0:pi/50:10*pi;
plot3(sin(t),cos(t),t)
axis square; grid on




 hai sobat pembaca mungkin cukup sampai disini saja materi kali ini nanti akan saya lanjut di post berikutnya.
semoga bermanfaat...


2 komentar:

  1. bang, bisa minta email nggak? aku pengen nanya" tentang matlab untuk skripsi.
    mohon bantuannya bang

    BalasHapus