DAFTAR ISI · MATLAB mempunyai fasilitas Mfile yang digunakan untuk menyimpan program. MATLAB dapat...

30
Laboratorium Teknik Elektro | i DAFTAR ISI DAFTAR ISI .......................................................................................................................................................... i KEPEMILIKAN DAN PENGESAHAN ......................................................................................................... ii UNIT I. PENGENALAN MATLAB ............................................................................................... 1 UNIT II. POLINOMIAL ................................................................................................................... 5 UNIT III. INTERPOLASI ............................................................................................................... 11 UNIT IV. PEMROGRAMAN M-FILE .......................................................................................... 15 UNIT V. PEMROGRAMAN M-FILE 2 ....................................................................................... 19 UNIT VI. PROYEK (PERANCANGAN) ...................................................................................... 22 PENGANTAR RESPONSI ............................................................................................................... 25

Transcript of DAFTAR ISI · MATLAB mempunyai fasilitas Mfile yang digunakan untuk menyimpan program. MATLAB dapat...

Page 1: DAFTAR ISI · MATLAB mempunyai fasilitas Mfile yang digunakan untuk menyimpan program. MATLAB dapat bertindak sebagai: 1. Kalkulator Ketika bertindak sebagai kalkulator, MATLAB memberikan

Laboratorium Teknik Elektro | i

DAFTAR ISI DAFTAR ISI .......................................................................................................................................................... i

KEPEMILIKAN DAN PENGESAHAN ......................................................................................................... ii

UNIT I. PENGENALAN MATLAB ............................................................................................... 1

UNIT II. POLINOMIAL ................................................................................................................... 5

UNIT III. INTERPOLASI ............................................................................................................... 11

UNIT IV. PEMROGRAMAN M-FILE .......................................................................................... 15

UNIT V. PEMROGRAMAN M-FILE 2 ....................................................................................... 19

UNIT VI. PROYEK (PERANCANGAN) ...................................................................................... 22

PENGANTAR RESPONSI ............................................................................................................... 25

Page 2: DAFTAR ISI · MATLAB mempunyai fasilitas Mfile yang digunakan untuk menyimpan program. MATLAB dapat bertindak sebagai: 1. Kalkulator Ketika bertindak sebagai kalkulator, MATLAB memberikan

Laboratorium Teknik Elektro | ii

KEPEMILIKAN DAN PENGESAHAN

Nama Hari Ttd

No. Mahasiswa Jam

KEGIATAN PRAKTIKUM PENYERAHAN LAPORAN

No Tanggal Unit Nama & Paraf SPV/Asisten

Tanggal Kumpul Laporan

Unit Nama & Paraf SPV/Asisten

1

2

3

4

5

6

7

8

9

10

Page 3: DAFTAR ISI · MATLAB mempunyai fasilitas Mfile yang digunakan untuk menyimpan program. MATLAB dapat bertindak sebagai: 1. Kalkulator Ketika bertindak sebagai kalkulator, MATLAB memberikan

Laboratorium Teknik Elektro | 1

UNIT I

PENGENALAN MATLAB

A. TUJUAN PRAKTIKUM

1. Mahasiswa dapat mengenal MATLAB

2. Mahasiswa dapat menggunakan fungsi Help

3. Mahasiswa dapat menggunakan operasi pada MATLAB

B. DASAR TEORI

Gambaran sederhana tentang MATLAB adalah sebuah kalkulator yang mampu

melakukan perhitungan, mulai dari perhitungan yang sederhana hingga yang rumit.

Selain itu, kemampuan MATLAB yang lain adalah dalam hal visualisasi atau grafik dari

hasil suatu fungsi matematika. MATLAB merupakan bahasa pemrograman yang

menggunakan bahasa command line. MATLAB juga menyediakan fungsi-fungsi

matematika yang sangat lengkap, misalkan sqrt, det, inv, dst. Data yang dikelola dapat

berbentuk array maupun matriks. MATLAB mempunyai fasilitas Mfile yang digunakan

untuk menyimpan program.

MATLAB dapat bertindak sebagai:

1. Kalkulator

Ketika bertindak sebagai kalkulator, MATLAB memberikan hasil seketika

setelah perintah operasi diberikan.

2. Bahasa pemrograman

Perintah – perintah operasi dengan urutan dan logika tertentu, serta digunakan

berulang – berulang dapat dibuat sebagai suatu

Adapun macam – macam operasi yang dapat dilakukan oleh MATLAB adalah:

1. Skalar, berupa bilangan real atau kompleks.

2. Matriks dan vektor, dengan elemen bilangan real atau kompleks.

3. Teks, yaitu pengolahan kata.

Page 4: DAFTAR ISI · MATLAB mempunyai fasilitas Mfile yang digunakan untuk menyimpan program. MATLAB dapat bertindak sebagai: 1. Kalkulator Ketika bertindak sebagai kalkulator, MATLAB memberikan

Laboratorium Teknik Elektro | 2

C. LANGKAH PERCOBAAN

1. Memulai MATLAB dan mengakhiri

a. Pilih Start pilih MATLAB

b. Maka akan muncul tampilan seperti dibawah ini

Command window adalah area dimana user dapat melakukan perintah operasi

atau memanggill fungsi yang disediakan oleh MATLAB.

Jika akan keluar dari MATLAB ketik quit, maka user akan keluar dari MATLAB.

Berikut contoh fungsi sederhana pada MATLAB

%perhitungan matematika sederhana

>> x=2.5

x=

2.5000

>> p=sqrt(x)

p=

1.5811

%menghitung luas dan keliling

lingkaran

r= 7.2500

>>luas=pi*r^2

Luas =

165.1300

>> keliling=2*pi*r

Keliling =

45.5531

Page 5: DAFTAR ISI · MATLAB mempunyai fasilitas Mfile yang digunakan untuk menyimpan program. MATLAB dapat bertindak sebagai: 1. Kalkulator Ketika bertindak sebagai kalkulator, MATLAB memberikan

Laboratorium Teknik Elektro | 3

2. Memanfaatkan Fasilitas Help

MATLAB memiliki banyak perintah yang tidak mudah untuk diingat. Untuk

menemukan perintah tersebut MATLAB menyediakan perintah help. Misal untuk

mengetahui perintah determinan (det) dan akar (sqrt).

D. PERCOBAAN

%matrix

>> A=[1 2 3;4 5 6;7 8 9]

A =1 2 3

4 5 6

7 8 9

>> B=[10 15 11;12 20 17;13 18 16]

B = 10 15 11

12 20 17

13 18 16

X=Det (A)

M=Inv (A)

N=A’

% perkalian matrix

>> A*B

>> C=[19 20 21]

C =

19 20 21

>> C*A

Page 6: DAFTAR ISI · MATLAB mempunyai fasilitas Mfile yang digunakan untuk menyimpan program. MATLAB dapat bertindak sebagai: 1. Kalkulator Ketika bertindak sebagai kalkulator, MATLAB memberikan

Laboratorium Teknik Elektro | 4

E. LATIHAN

1. Jika di ketahui diameternya 50

a. carilah luas lingkaran

b. berapa volume tabung jika tingga tabung 20

(sertakan perhitungan manualnya dengan rumus)

2. Jika di ketahui matrix

A = [3 4 6; 4 7 2; 9 3 5] B = [7 6 3; 8 5 7; 3 8 1] C = [3 2 6; 6 4 7; 2 3 1]

a. Carilah determinannya (det a)

b. Carilah invers (inv a)

c. Perkalian b*a dan b*c

d. Invers*c

Page 7: DAFTAR ISI · MATLAB mempunyai fasilitas Mfile yang digunakan untuk menyimpan program. MATLAB dapat bertindak sebagai: 1. Kalkulator Ketika bertindak sebagai kalkulator, MATLAB memberikan

Laboratorium Teknik Elektro | 5

UNIT II

POLINOMIAL

A. TUJUAN PRAKTIKUM

1. Memahami persamaan polinomial

2. Memahami penulisan system polinomial dalam Matlab

3. Memahami aplikasi polinomial pada Matlab

B. DASAR TEORI

1. Representasi Polinomial Dalam matematika, Polinomial adalah pernyataan matematika yang melibatkan

jumlahan perkalian pangkat dalam satu atau lebih variabel dengan koefisien. Pangkat

tertinggi pada suatu polinomial menunjukkan orde dari polinomial tersebut.

Polinomial dalam Matlab dinyatakan sebagai vektor baris yang memuat koefisien dari

variabel dengan derajat yang makin menurun. Sederhananya, dalam Matlab

penulisan variable polinomial dimulai dari perpangkatan tertinggi ke perpangkatan

terendah. Seperti pada contoh berikut:

𝑝(𝑥) = 𝑥4 + 5𝑥2 − 10

Selanjutnya cara menuliskan persamaan polinomial tersebut dalam MATLAB

adalah sebagai berikut:

≫ 𝑝 = [ 1 0 5 0 10]

2. Akar Polinomial

Untuk menghitung akar dalam MATLAB dapat dilakukan menggunakan perintah:

𝑞 = 𝑟𝑜𝑜𝑡𝑠 (𝑝)

𝑞 =

−0.5754 + 1.6826𝑖

−0.5754 − 1.6826𝑖

0.5754 + 1.6826𝑖

0.5754 − 1.6826𝑖

Jika ingin mengembalikan persamaan polinomial ke dalam bentuk koefisien

awalnya, dapat dilakukan dengan menggunakan perintah sebagai berikut:

≫ 𝑝1 = 𝑝𝑜𝑙𝑦 (𝑞)

𝑝1 =

1.0000 0.0000 5.0000 0.0000 10.0000

Jadi, roots dan poly adalah sebuah perintah yang berkebalikan.

Page 8: DAFTAR ISI · MATLAB mempunyai fasilitas Mfile yang digunakan untuk menyimpan program. MATLAB dapat bertindak sebagai: 1. Kalkulator Ketika bertindak sebagai kalkulator, MATLAB memberikan

Laboratorium Teknik Elektro | 6

3. Karakteristik Polinomial

Perintah poly juga dapat digunakan untuk menghitung koefisien dari sebuah karakteristik

polinomial sebuah matriks. Contohnya sebagai berikut:

≫ a = [1 2 3; 2 2.5 3; −0.5 5 7.5];

≫ 𝑝𝑜𝑙𝑦 (a)

≫ ans =

1.0000 − 11.0000 11.2500 − 4.5000

4. Evaluasi Polinomial

Untuk mengevaluasi (menghitung nilai) polinomial pada suatu bilangan tertentu,

digunakan perintah polyval. Misalnya, untuk mengetahui nilai polinomial p di x=3

perintahnya adalah sebagai berikut:

≫ 𝑝𝑜𝑙𝑦𝑣𝑎𝑙 (𝑝, 3)

ans =

136

5. Penjumlahan dan Pengurangan Polinomial

Misalnya diberikan polinomial a dan b yang derajat polinomial keduanya tidak sama.

𝑎 = 𝑥2 + 2𝑥 + 3 dan 𝑏 = 5𝑥 + 6

Untuk dapat melakukan sebuah operasi penjumlahan dan pengurangan dalam

Matlab, terlebih dahulu koefisien polinomial a dan b disamakan dalam bentuk

matriks. Sehingga diperoleh seperti berikut ini:

≫ a = [ 1 2 3]

≫ b = [ 0 5 6]

Langkah selanjutnya untuk mencari hasil penjumlahan dan pengurangan

polinomial tersebut adalah sebagai berikut:

≫ 𝐚 + 𝐛 > mencari a(𝑥) + 𝑏(𝑥)

≫ 𝐚 − 𝐛 > mencari a(𝑥) − 𝑏(𝑥)

6. Perkalian dan Pembagian Polinomial

Misalnya diberikan polinomial a dan b sebagai berikut:

𝑎 = 𝑥2 + 2𝑥 + 3 dan 𝑏 = 4𝑥2 + 5𝑥 + 6

sehingga diperoleh matriks sebagai berikut:

≫ a = [ 1 2 3]

≫ b = [ 4 5 6]

Selanjutnya, perkalian a(x) ∗ b(x) di atas, dapat diselesaikan dengan

menggunakan fungsi conv (convolution) sebagai berikut:

≫ conv = (a, b)

ans =

Page 9: DAFTAR ISI · MATLAB mempunyai fasilitas Mfile yang digunakan untuk menyimpan program. MATLAB dapat bertindak sebagai: 1. Kalkulator Ketika bertindak sebagai kalkulator, MATLAB memberikan

Laboratorium Teknik Elektro | 7

4 13 28 27 18

Untuk pembagian a(x)/b(x) di atas, dapat diselesaikan dengan menggunakan

fungsi deconv (deconvolution) sebagai berikut:

≫ 𝑑𝑒conv = (a, b)

ans =

0.2500

7. Turunan dan Integral Polinomial

Dalam Matlab juga terdapat fungsi untuk mencari nilai turunan dari suatu polinomial

dengan cara sebagai berikut:

≫ a = [1 2 3]

≫ 𝑝𝑜𝑙𝑦𝑑𝑒𝑟 (a)

≫ ans =

2 2

Untuk mencari nilai integral dari suatu polinomial dapat dilakukan dengan

menggunakan fungsi sebagai berikut:

≫ a = [1 2 3]

≫ 𝑝𝑜𝑙𝑦𝑖𝑛𝑡 (a)

≫ ans =

0.3333 1.0000 3.0000 0

Page 10: DAFTAR ISI · MATLAB mempunyai fasilitas Mfile yang digunakan untuk menyimpan program. MATLAB dapat bertindak sebagai: 1. Kalkulator Ketika bertindak sebagai kalkulator, MATLAB memberikan

Laboratorium Teknik Elektro | 8

C. PERCOBAAN

1. Program_1.m

%polinomial p(x)=x^4-7x-2

p=[1 0 0 -7 -2]

%akar polinomial

r=roots(p)

%fungsi invers (untuk memperoleh nilai p)

p2=poly(r)

%karakteristik polinomial

A=[1.2 3 -0.9; 5 1.75 6; 9 0 1]

poly(A)

%pengevaluasian polinomial

s=5

polyval(p,5)

%konvolusi

a=[8 4 7]

b=[3 6 9]

c=conv(a,b)

%dekonvolusi

[q,r]=deconv(c,a)

%turunan polinomials koefisien satu

p=[1 0 0 -7 -2]

q=polyder(p)

%turunan polinomial koefisien dua

a=[1 3 5]

b=[2 4 6]

c=polyder(a,b)

[q,d]=polyder(a,b)

Page 11: DAFTAR ISI · MATLAB mempunyai fasilitas Mfile yang digunakan untuk menyimpan program. MATLAB dapat bertindak sebagai: 1. Kalkulator Ketika bertindak sebagai kalkulator, MATLAB memberikan

Page 9 of 30

2. Program_2 (Tugas)

%cari akar polinomialnya!

a(x)=x^4+5x^3-5

b(x)=x^2+6x-7

c(x)=x^3+7x^2+9x-1

d(x)=x^2+8x-7

e(x)=x^3+5x^2+2x-5

%cari nilai turunan polinomialnya!

Page 12: DAFTAR ISI · MATLAB mempunyai fasilitas Mfile yang digunakan untuk menyimpan program. MATLAB dapat bertindak sebagai: 1. Kalkulator Ketika bertindak sebagai kalkulator, MATLAB memberikan

Page 10 of 30

Page 13: DAFTAR ISI · MATLAB mempunyai fasilitas Mfile yang digunakan untuk menyimpan program. MATLAB dapat bertindak sebagai: 1. Kalkulator Ketika bertindak sebagai kalkulator, MATLAB memberikan

Page 11 of 30

UNIT III

INTERPOLASI

A. TUJUAN

1. Memahami berbagai macam bentuk interpolasi

2. Memahami penulisan interpolasi dalam MATLAB

3. Memahami dan mampu membuat aplikasi dengan interpolasi

B. DASAR TEORI

Interpolasi adalah suatu proses untuk mengestimasikan nilai yang terletak diantara

data yang telah diketahui. Interpolasi memiliki aplikasi yang penting pada setiap

pengolahan sinyal dan gambar.

Terdapat berbagai macam bentuk interpolasi menarik yang dapat dipelajari, yaitu:

1. Interpolasi Polinomial Lagrange

Interpolasi Polinomial Lagrange adalah salah satu cara untuk menemukan nilai

koefisien-koefisien dari suatu sistem persamaan linear yang terdiri dari n+1 tanpa

dipengaruhi oleh lebar interval antar titik-titik data di sepanjang sumbu x. Interpolasi

polinomial Lagrange mempunyai persamaan awal sebagai berikut:

𝐟𝐧(𝐱) = ∑ (𝐧

𝐤) 𝐋𝐢(𝐱)𝐟(𝐱𝐢)

𝐧

𝐢=𝟎

Di dalam MATLAB interpolasi ini dituliskan dengan fungsi lagranp.

2. Interpolasi Polinomial Newton

Diperlukan untuk menemukan nilai koefisien-koefisien dari suatu sistem

persamaan linear yang terdiri dari n+1 seperti halnya Lagrange diatas, namun dengan

metode yang berbeda, yaitu dengan mencocokkan n titik-titik data dari polinomial n-

1 secara rekursif dan satu suku tambahan. Interpolasi polinomial Lagrange

mempunyai persamaan awal sebagai berikut:

𝐩(𝐱) = ∑ 𝐟[𝐱𝟏, 𝐱𝟐, … , 𝐱𝐤]𝐍𝐤(𝐱)

𝒏

𝒌=𝟏

Di dalam MATLAB interpolasi ini dituliskan dengan fungsi newtonp.

Page 14: DAFTAR ISI · MATLAB mempunyai fasilitas Mfile yang digunakan untuk menyimpan program. MATLAB dapat bertindak sebagai: 1. Kalkulator Ketika bertindak sebagai kalkulator, MATLAB memberikan

Page 12 of 30

3. Interpolasi Satu Dimensi (1D)

Ada dua macam interpolasi satu dimensi, yaitu:

a. Interpolasi Polinomial

Berupa fungsi interp1 untuk menjalankan interpolasi satu dimensi.

Fungsi ini adalah pengoperasian yang penting untuk analisis data dan kurva

fitting. Secara umum fungsi ini dituliskan sebagai berikut:

𝒚𝒊 = 𝒊𝒏𝒕𝒆𝒓𝒑𝟏(𝒙, 𝒚, 𝒙𝒊, 𝒎𝒆𝒕𝒉𝒐𝒅)

y = vektor fungsi

x = vektor y yang telah diberi nilai tertentu

xi = pin poin vektor interpolasi

Terdapat beberapa metode pilihan dalam pengoperasiannya, antara lain:

1) Nearest neighbor interpolation (method: ‘nearest’).

2) Linear interpolation (method: ‘linear’).

3) Cubic spline interpolation (method: ‘spline’).

4) Cubic interpolation (method: ‘pchip’ atau ‘cubic’).

Dari beberapa metode tersebut, dapat juga dituliskan seperti berikut ini:

𝒚𝒊 = 𝒊𝒏𝒕𝒆𝒓𝒑𝟏(𝒙, 𝒀, 𝒙𝒊, 𝒎𝒆𝒕𝒉𝒐𝒅, 𝒆𝒙𝒕𝒓𝒂𝒑𝒗𝒂𝒍)

b. FFT-Based Interpolation

Merupakan bentuk penggunaan interpolasi satu dimensi sebagai dasar

metode FFT yang dituliskan dengan fungsi interpft. Metode ini untuk

menghitung transformasi fourier dari sebuah vektor yang berisikan fungsi

yang periodik.

𝒚 = 𝒊𝒏𝒕𝒆𝒓𝒑𝒇𝒕(𝒙, 𝒏)

4. Interpolasi Dua Dimensi (2D)

Dituliskan dengan fungsi interp2, yang secara umum dituliskan sebagai berikut:

𝒁𝑰 = 𝒊𝒏𝒕𝒆𝒓𝒑𝟏(𝑿, 𝒀, 𝒁, 𝑿𝑰, 𝒀𝑰, 𝒎𝒆𝒕𝒉𝒐𝒅)

Interpolasi ini juga memiliki metode pilihan, seperti: Nearest neighbor (‘nearest’),

bilinear (‘linear’), dan bicubic (‘cubic’).

5. Interpolasi dan Array Dimensional

Fungsi interpolasi secara umum digunakan untuk mengoperasikan data

multidimensi, yang dapat dijabarkan menjadi:

a. Interpolasi Data Tiga Dimensi (3D)

Dituliskan dengan fungsi interp3, yang ditulis seperti berikut ini:

𝑽𝑰 = 𝒊𝒏𝒕𝒆𝒓𝒑𝟑(𝑿, 𝒀, 𝒁, 𝑽, 𝑿𝑰, 𝒀𝑰, 𝒁𝑰, 𝒎𝒆𝒕𝒉𝒐𝒅)

Interpolasi ini juga memiliki metode pilihan, seperti: Nearest neighbor

(‘nearest’), trilinear (‘linear’), dan tribicubic (‘cubic’).

Page 15: DAFTAR ISI · MATLAB mempunyai fasilitas Mfile yang digunakan untuk menyimpan program. MATLAB dapat bertindak sebagai: 1. Kalkulator Ketika bertindak sebagai kalkulator, MATLAB memberikan

Page 13 of 30

b. Interpolasi Data Dimensional lebih dari Tiga (>3D)

Penulisan pernyataannya adalah seperti berikut ini:

𝑽𝑰 = 𝒊𝒏𝒕𝒆𝒓𝒑𝒏(𝑿𝟏, 𝑿𝟐, 𝑿𝟑, … , 𝑽, 𝒀𝟏, 𝒀𝟐, 𝒀𝟑, … , 𝒎𝒆𝒕𝒉𝒐𝒅)

c. Multidimensional Data Gridding

Penulisan pernyataannya adalah seperti berikut ini:

[𝑿𝟏, 𝑿𝟐, 𝑿𝟑, … ] = 𝒏𝒅𝒈𝒓𝒊𝒅(𝒙𝟏, 𝒙𝟐, 𝒙𝟑, . . )

Fungsi ndgrid adalah turunan array dari perhitungan fungsi multidimensi dan

interpolasi.

C. PERCOBAAN

1. Program 1

%generate the peaks function at low resolution.

[x,y]=meshgrid(-2:0.1:2)

z=peaks(x.y);

surf(x,y,z)

%compare the surface plots for the different interpolation methods.

%generate a finer mesh for interpolation.

[xi,yi]=meshgrid(-3:0.25:3);

%interpolate using nearest neighbor interpolation

zi1=interp2(x,y,z,xi,yi,'nearest')

surf(xi,yi,zi1)

%interpolate using bilinear interpolation

zi2=interp2(x,y,z,xi,yi,'bilinear')

surf(xi,yi,zi2)

%interpolate using bicubic interpolation

zi3=interp2(x,y,z,xi,yi,'bicubic')

surf(xi,yi,zi3)

%multidimensional data gridding z=x2e^(-x1^2-x2^2-x3^2)

%untuk -2pi<=x1<=0;2pi<=x2<=4pi dan 0<=x3<=2pi

x1=-2:0.2:2

x2=-2:0.25:2

x3=-2:0.16:2

[X1,X2,X3]=ndgrid(x1,x2,x3);

z=X2.*exp(-X1.^2-X2.^2-X3.^2);

slice(X2,X1,X3,z,[-1.2 0.8 2],2,[-2 0.2])

Page 16: DAFTAR ISI · MATLAB mempunyai fasilitas Mfile yang digunakan untuk menyimpan program. MATLAB dapat bertindak sebagai: 1. Kalkulator Ketika bertindak sebagai kalkulator, MATLAB memberikan

Page 14 of 30

2. Program 2

%grafik fungsi dua variabel

[x,y]=meshgrid(1:4);

z=sqrt(x.^2+y.^2);

mesh(x,y,z);

% grafik yang lebih menarik

[x,y]=meshgrid(-10:10);

z=sqrt(x.^2+y.^2);

mesh(x,y,z);

[x,y,z]=peaks;

clf

%grafik x^2+y^2 dalam berbagai sudut pandang

plot(z)

mesh(x,y,z)

surf(x,y,z)

shading flat

contour(x,y,z)

contourf(x,y,z)

surf(x,y,z);grid off

view(90,0)

view(90,0);shading flat

help mesh

help peaks

help clf

help plot

help surf

Page 17: DAFTAR ISI · MATLAB mempunyai fasilitas Mfile yang digunakan untuk menyimpan program. MATLAB dapat bertindak sebagai: 1. Kalkulator Ketika bertindak sebagai kalkulator, MATLAB memberikan

Page 15 of 30

UNIT IV

PEMROGRAMAN M-FILE (1) (Operator, Statemen Input/Output dan Statemen Kendali)

A. TUJUAN PRAKTIKUM

1. Memahami berbagai macam bentuk statemen pada pemrograman di M-File.

2. Memahami penulisan operator, statemen input/output, dan statemen kendali.

3. Mampu membuat aplikasi dengan operator, statemen input/output, dan statemen

kendali.

B. DASAR TEORI

Terdapat berbagai macam bentuk operator, statemen input/output, dan statemen

kendali yang akan dijabarkan sebagai berikut:

1. Operator

Di dalam MATLAB, operator terbagi ke dalam tiga kategori, yaitu:

1. Operator Aritmatika

2. Operator Relasional

3. Operator Logika

2. Statemen Input/Output

a. Statemen Input

Fungsi input untuk menyimpan data yang diketikkan dalam sebuah variabel.

Penulisan statemennya adalah sebagai berikut:

nama_variabel = input (‘keterangan’)

b. Statemen display

Berfungsi untuk menampilkan tulisan atau variabel ke layar. Penulisan

statemennya adalah sebagai berikut:

disp (‘komentar’)

disp (‘nama_variabel’)

3. Statemen Kendali

a. If, Else, dan Elseif

Statemen kendali If dideklarasikan sebagai berikut:

If logical_expression statements

end b. Switch

Statemen kendali switch dideklarasikan sebagai berikut:

switch expression (scalar or string) case value1 statements % executes if expression is value1 case value2 statements % executes if expression is value2

Page 18: DAFTAR ISI · MATLAB mempunyai fasilitas Mfile yang digunakan untuk menyimpan program. MATLAB dapat bertindak sebagai: 1. Kalkulator Ketika bertindak sebagai kalkulator, MATLAB memberikan

Page 16 of 30

otherwise statements % executes if expression does not % match any case end

c. While

Statemen kendali while dideklarasikan sebagai berikut:

while expression statements end

d. For

Statemen kendali for dideklarasikan sebagai berikut:

for index = start : increment : end

statements

end

Page 19: DAFTAR ISI · MATLAB mempunyai fasilitas Mfile yang digunakan untuk menyimpan program. MATLAB dapat bertindak sebagai: 1. Kalkulator Ketika bertindak sebagai kalkulator, MATLAB memberikan

Page 17 of 30

C. PERCOBAAN

Program 1 Program 2

%contoh aplikasi operator aritmatik

A=magic(3)

3*A

%contoh aplikasi operator relasional

B=[2 7 6;9 0 5;3 0.5 6]

C=[8 7 0;3 2 5;4 -1 7]

B==C

%contoh aplikasi operator logika

D=[0 1 1 0 1]

E=[1 1 0 0 1]

D&E

D|E

-D

xor(D,E)

%aplikasi logika array pada fungsi any & all

F=[0 1 2;0 -3 8;0 5 0]

any(F)

all(F)

%ekspresi logika menggunakan fungsi find

A=magic(4)

i=find(A>8)

A(i)=100

A=magic(4)

[row,col]=find(A<12)

%fungsi bit-wise

x=5% binary 0101

y=11% binary 1011

bitand(x,y)

bitor(x,y)

bitcmp(x,y)

bitxor(x,y)

%contoh statemen if,else, elseif

% klasifikasi skor toefl

Toefl=input('masukan nilai Toefl=')

if (Toefl >= 601) & (Toefl <= 670)

display('Excellent')

elseif (Toefl >= 501) & (Toefl <= 600)

display('Good')

elseif (Toefl >= 401) & (Toefl <= 500)

display('Average')

else Toefl<=400

display('bad')

end

%contoh statemen switch

input_num=input('nilai masukan=')

switch input_num

case -1

disp('negatif satu');

case 0

disp('nol');

case 1

disp('positif satu');

otherwise

disp('nilai lain');

end

%contoh statemen while

n=1

while n<7

n=n+1;

disp(n)

end

%contoh statemen for

for m=1:2

for n=1:3

A(m,n)=1/(m+n-1)

end

end

Page 20: DAFTAR ISI · MATLAB mempunyai fasilitas Mfile yang digunakan untuk menyimpan program. MATLAB dapat bertindak sebagai: 1. Kalkulator Ketika bertindak sebagai kalkulator, MATLAB memberikan

Page 18 of 30

Page 21: DAFTAR ISI · MATLAB mempunyai fasilitas Mfile yang digunakan untuk menyimpan program. MATLAB dapat bertindak sebagai: 1. Kalkulator Ketika bertindak sebagai kalkulator, MATLAB memberikan

Page 19 of 30

UNIT V

PEMROGRAMAN M-FILE (2)

A. TUJUAN PRAKTIKUM

1. Mampu memahami cara menuliskan script dan statemen function dan fungsinya

pada Matlab

2. Mampu membuat dan memahami aplikasi dengan script dan statemen fungsi

tersebut pada Matlab

B. DASAR TEORI

Script dan Function

Pada bagian ini akan kembali diterangkan pemrograman dengan M-File. Jika

sebelumnya pada Unit IV telah dibahas aliran program yang menggunakan pernyataan if,

switch, loop while, dan loop for yang mirip dengan bahasa tingkat tinggi seperti

pemrograman C++ atau PASCAL, maka kali ini yang akan dibahas mengenai script dan

function.

1. Script

Setiap perintah/pernyataan yang dapat dimasukkan pada window prompt dapat

disimpan pada sebuah file teks dengan menggunakan sembarang editor ASCII seperti

Notepad atau Editor teks Matlab, dan dieksekusi sebagai script. Ekstensi file harus

berupa ‘.m’ dan script tersebut dapat dieksekusi pada Matlab dengan hanya

mengetikkan nama file (dengan atau tanpa ekstensi). Secara umum dikenal dengan

istilah m-file. Berikut merupakan contoh sebuah m-file:

tt=0:0.3:4;

xx=sin(0.7*pi*tt);

subplot(2,1,1)

plot(tt,xx)

title('tt=0:0.3:4;xx=sin(0.7&pi*tt);plot(tt,xx)')

subplot(2,1,2)

stem(tt,xx)

title('tt=0:0.3:4;xx=sin(0.7&pi*tt);plot(tt,xx)')

Bila script perintah ini disimpan dengan file bernama plotstem.m maka cukup

dengan mengetikkan plotstem pada command prompt akan menjalankan file tersebut,

dan sejumlah baris perintah tersebut akan dieksekusi seperti halnya bila diketikkan

baris per baris pada command prompt.

2. Function

Anda dapat menuliskan fungsi sendiri dan selanjutnya ditambahkan ke

environment Matlab. Fungsi ini merupakan jenis lain dari m-file yang dibuat pada

sebuah file ASCII menggunakan editor teks. Kata pertama pada file tersebut haruslah

keyword function untuk menginformasikan Matlab bahwa file tersebut diperlakukan

sebagai sebuah fungsi dengan argument. Pada baris yang sama (baris awal) juga

berisi calling template yang menyatakan argument input dan output dari fungsi. Nama

Page 22: DAFTAR ISI · MATLAB mempunyai fasilitas Mfile yang digunakan untuk menyimpan program. MATLAB dapat bertindak sebagai: 1. Kalkulator Ketika bertindak sebagai kalkulator, MATLAB memberikan

Page 20 of 30

file tersebut akan menjadi nama dari perintah baru pada command prompt matlab,

dan harus berekstensi .m.

Perhatikan contoh file berikut ini, yang mengekstrak L buah elemen terakhir dari

sebuah vektor:

Function y = foo (x,L)

%FOO mengambil L buah titik terakhir dari x

%y = foo (x,L) dimana: x = vector input; L = jml titik yg akan diambil y = vektor

output

N = length (x);

if (L>N)

error (‘vektor input terlalu pendek’)

end

y = x((N-L+1):N);

Bila file ini disimpan dengan nama foo.m, operasi ini dapat dipanggil dari Matlab

command line dengan cara mengetikkan:

aa = foo ( (1:2:37), 7);

Outputnya akan berupa tujuh elemen terakhir dari vektor (1:2:37) yaitu:

aa = [25 27 29 31 33 35 37]

Page 23: DAFTAR ISI · MATLAB mempunyai fasilitas Mfile yang digunakan untuk menyimpan program. MATLAB dapat bertindak sebagai: 1. Kalkulator Ketika bertindak sebagai kalkulator, MATLAB memberikan

Page 21 of 30

C. PERCOBAAN

1. Program 1

%contoh penulisan script

tt=0:0.1:5;

xx=cos(0.5*pi*tt);

subplot(2,1,1)

plot(tt,xx)

title('tt=0:0.1:5;xx=cos(0.5&pi*tt);plot(tt,xx)')

subplot(2,1,2)

stem(tt,xx)

title('tt=0:0.1:5;xx=cos(0.5&pi*tt);plot(tt,xx)')

2. Program 2

%contoh penulisan fungsi

function testvar(varargin)

for k=1:length(varargin)

x(k)=varargin{k}(1); %cell array indexing

y(k)=varargin{k}(2);

end

xmin=min(0,min(x));

ymin=min(0,min(y));

axis([xmin fix(max(x))+3 ymin fix(max(y))+3])

plot(x,y)

Simpan file dengan nama testvar.m, kemudian panggil nama tersebut pada Matlab

dengan perintah sbb:

a. testvar ([2 3],[1 5],[4 8],[6 5],[4 2],[2 3])

b. testvar ([-1 0],[3 -5],[4 2],[1 1])

%contoh penulisan fungsiuntuk mencari nilai rerata

function y=rerata(x)

[m,n]=size(x);

if(~((m==1)|(n==1))|(m==1&n==1))

error('masukan harus sebuah vektor')

end

y=sum(x)/length(x);

Simpan file dengan nama rerata.m, kemudian panggil nama tersebut pada Matlab

dengan perintah sbb:

a. z=1:5

rerata (z)

b. z=1:27

rerata (z)

c. z=1:45

rerata (z)

Page 24: DAFTAR ISI · MATLAB mempunyai fasilitas Mfile yang digunakan untuk menyimpan program. MATLAB dapat bertindak sebagai: 1. Kalkulator Ketika bertindak sebagai kalkulator, MATLAB memberikan

Page 22 of 30

UNIT VI

PROYEK (PERANCANGAN)

A. TUJUAN PRAKTIKUM

1. Mampu membuat suatu rancangan proyek dengan Matlab

2. Mampu memahami proses kerja proyek yang dibuat

B. DASAR TEORI

Pada unit praktikum kali ini praktikan akan membuat sebuah contoh proyek

menggunakan Matlab. Pembuatan contoh proyek ini akan dipandu dengan pemberian

materi terutama menyangkut beberapa perintah yang belum diberikan pada unit-unit

praktikum sebelumnya, diantaranya sebagai berikut:

1. UICONTROL

Digunakan untuk membuat dan mengendalikan interface control yang baru

dalam sebuah jendela gambar dengan ketentuan:

uicontrol (‘PropertyName1’,value1, ‘PropertyName2’,value2,…)

2. SET

Digunakan untuk memasang sebuah kepemilikan sebuah obyek dengan ketentuan:

set (H, ‘PropertyName’, PropertyValue)

3. GET

Digunakan untuk memperoleh kepemilikan sebuah obyek dengan ketentuan:

v = get (H, ‘PropertyName’)

Page 25: DAFTAR ISI · MATLAB mempunyai fasilitas Mfile yang digunakan untuk menyimpan program. MATLAB dapat bertindak sebagai: 1. Kalkulator Ketika bertindak sebagai kalkulator, MATLAB memberikan

Page 23 of 30

C. PERCOBAAN

1. Program 1

%contoh penulisan uicontrol dengan popup

hpop=uicontrol('Style','popup','String','Pastikan Pilihan|Pilihan','Position',[230

360 100 50],'Callback','pilihan');

%contoh penulisan uicontrol dengan pushbutton

uicontrol('style','pushbutton','units','normalized','position',[.51 .0 .09

.06],'string','close','callback','close')

Simpan program di atas dengan nama lat1.m, kemudian tulislah sebuah fungsi

dibawah ini:

function pilihan

tt=0:0.3:4;

xx=sin(0.7*pi*tt);

subplot(2,1,1)

plot(tt,xx)

title('tt=0:0.3:4;xx=sin(0.7&pi*tt);plot(tt,xx)')

subplot(2,1,2)

stem(tt,xx)

title('tt=0:0.3:4;xx=sin(0.7&pi*tt);plot(tt,xx)')

Simpan program diatas dengan nama pilihan.m, kemudian jalankan program

dengan nama lat1.m tersebut diatas.

2. Program 2

uicontrol('style','pushbutton','units','normalized','position',[.91 .66 .09

.06],'string','close','callback','close')

uicontrol('style','pushbutton','units','normalized','position',[.91 .16 .09

.06],'string','plot','callback','tampil')

uicontrol('style','pushbutton','units','normalized','position',[.91 .26 .09

.06],'string','tulisan','callback','pilihan')

Simpan program di atas dengan nama lat2.m, kemudian tulislah sebuah fungsi

dibawah ini:

function tampil

axis ([0 2 0 2])

xlabel('Sumbu Datar')

ylabel('Sumbu Vertikal')

y=[9 0];

%plot (y)

a=[1 2 3;4 5 6;7 8 9];

plot (a)

Simpan program diatas dengan nama

tampil.m, kemudian jalankan program dengan

nama lat2.m tersebut diatas.

Page 26: DAFTAR ISI · MATLAB mempunyai fasilitas Mfile yang digunakan untuk menyimpan program. MATLAB dapat bertindak sebagai: 1. Kalkulator Ketika bertindak sebagai kalkulator, MATLAB memberikan

Page 24 of 30

Page 27: DAFTAR ISI · MATLAB mempunyai fasilitas Mfile yang digunakan untuk menyimpan program. MATLAB dapat bertindak sebagai: 1. Kalkulator Ketika bertindak sebagai kalkulator, MATLAB memberikan

Page 25 of 30

PENGANTAR RESPONSI

PRAKTIKUM METODE NUMERIK DAN KOMPUTASI (MNK)

SEMESTER GENAP TAHUN AJARAN 2015-2016

Dalam perancangan program User Interface (UI) Control yang akan diujikan untuk

Responsi Praktikum Metode Numerik dan Komputasi, memiliki ketentuan sebagai

berikut:

1. Praktikan akan dibagi menjadi beberapa kelompok kecil yang masing-masing

terdiri dari 2 orang.

2. Hasil perancangan dipresentasikan 2 minggu setelah praktikum unit VI dilakukan.

3. Perancangan program yang dihasilkan memiliki interface yang dilengkapi dengan

tombol button dan pop up sebagai kendali untuk menampilkan hasil perancangan

yang dibuat.

4. Hasil perancangan harus menyertakan statemen/perintah yang meliputi:

statemen control (if else, switch, for, dst) dan statemen function.

5. Tampilan hasil perancangan mencakup materi pada praktikum unit-unit

sebelumnya.

6. Jika hasil perancangan tidak sesuai dengan ketentuan pada poin nomor 2 s.d 4,

maka dinyatakan gugur, dan tidak ada pengulangan dalam bentuk tugas apapun

Page 28: DAFTAR ISI · MATLAB mempunyai fasilitas Mfile yang digunakan untuk menyimpan program. MATLAB dapat bertindak sebagai: 1. Kalkulator Ketika bertindak sebagai kalkulator, MATLAB memberikan

Page 26 of 30

Contoh Program UI Control : Kalkulator Sederhana

%------------------------------------------------

%Pengantar Responsi (Proyek)

%Program MATLAB User Interface Control:Calculator

%Oleh : Rangga Aditya Nugraha, S.T.

%------------------------------------------------

clear all;

clc;

win1=figure(...

'units','points',...

'position',[130 180 150 180],...

'color',[.5 .8 .9],...

'menubar','none',...

'resize','off',...

'numbertitle','off',...

'name','Latihan

Responsi:Calculator');

frame1=uicontrol('parent',win1,..

.

'units','points',...

'position',[0 0 150 30],...

'backgroundcolor',[.3 .3 .5],...

'style','Frame');

label11=uicontrol('parent',win1,..

.

'units','points',...

'position',[0 140 150 20],...

'backgroundcolor',[.3 .3 .5],...

'style','Text',...

'string','Calculator',...

'fontname','malgun gothic',...

'fontsize',11,...

'fontweight','bold',...

'foregroundcolor',[0 0 0]);

label12=uicontrol('parent',win1,..

.

'units','points',...

'position',[10 110 60 15],...

'style','Text',...

'string','1st data',...

'fontname','malgun gothic',...

'fontsize',10);

label13=uicontrol('parent',win1,..

.

'units','points',...

'position',[10 90 60 15],...

'style','Text',...

'string','2nd data',...

'fontname','malgun gothic',...

'fontsize',10);

label14=uicontrol('parent',win1,..

.

'units','points',...

'position',[10 50 60 15],...

'style','Text',...

'string','Answer',...

'fontname','malgun gothic',...

'fontsize',10);

edit1=uicontrol('parent',win1,...

'units','points',...

'position',[80 110 60 15],...

'backgroundcolor',[1 1 1],...

'style','Edit',...

'string','0',...

'fontname','times new

roman',...

'fontsize',10);

edit2=uicontrol('parent',win1,...

'units','points',...

'position',[80 90 60 15],...

'backgroundcolor',[1 1 1],...

'style','Edit',...

'string','0',...

'fontname','times new

roman',...

'fontsize',10);

edit3=uicontrol('parent',win1,...

'units','points',...

'position',[80 50 60 15],...

Page 29: DAFTAR ISI · MATLAB mempunyai fasilitas Mfile yang digunakan untuk menyimpan program. MATLAB dapat bertindak sebagai: 1. Kalkulator Ketika bertindak sebagai kalkulator, MATLAB memberikan

Page 27 of 30

'backgroundcolor',[1 1 1],...

'style','Edit',...

'string','0',...

'fontname','times new

roman',...

'fontsize',10);

tomtambah=uicontrol('parent',wi

n1,...

'units','points',...

'position',[75 70 20 15],...

'style','pushbutton',...

'callback','kalkulatortambah',...

'string','+',...

'fontname','times new

roman',...

'fontsize',10);

tomkurang=uicontrol('parent',wi

n1,...

'units','points',...

'position',[100 70 20 15],...

'style','pushbutton',...

'callback',' kalkulatorkurang',...

'string','-',...

'fontname','times new

roman',...

'fontsize',10);

tomkali=uicontrol('parent',win1,.

..

'units','points',...

'position',[25 70 20 15],...

'style','pushbutton',...

'callback',' kalkulatorkali',...

'string','x',...

'fontname','times new

roman',...

'fontsize',10);

tombagi=uicontrol('parent',win1,

...

'units','points',...

'position',[50 70 20 15],...

'style','pushbutton',...

'callback',' kalkulatorbagi',...

'string','/',...

'fontname','times new

roman',...

'fontsize',10);

tomtutup=uicontrol('parent',win

1,...

'units','points',...

'position',[60 10 40 15],...

'style','pushbutton',...

'string','Quit',...

'fontname','malgun gothic',...

'fontsize',10,...

'callback','close'

%---------------

%program tambah

%---------------

a=str2num(get(edit1,'string'));

b=str2num(get(edit2,'string'));

c=a+b;

set(edit3,'string',num2str(c));

%---------------

%program kurang

%---------------

a=str2num(get(edit1,'string'));

b=str2num(get(edit2,'string'));

c=a-b;

set(edit3,'string',num2str(c));

%-------------

%program kali

%-------------

a=str2num(get(edit1,'string'));

b=str2num(get(edit2,'string'));

c=a*b;

set(edit3,'string',num2str(c));

%-------------

%program bagi

%-------------

a=str2num(get(edit1,'string'));

b=str2num(get(edit2,'string'));

c=a/b;

set(edit3,'string',num2str(c));

Page 30: DAFTAR ISI · MATLAB mempunyai fasilitas Mfile yang digunakan untuk menyimpan program. MATLAB dapat bertindak sebagai: 1. Kalkulator Ketika bertindak sebagai kalkulator, MATLAB memberikan

Page 28 of 30