Pemrograman dengan MATLAB - Website Personalpersonal.its.ac.id/files/material/3823-budi-Pemrograman...

27
Pemrograman dengan MATLAB - Pengantar - Dr. Budi Setiyono, S.Si, MT

Transcript of Pemrograman dengan MATLAB - Website Personalpersonal.its.ac.id/files/material/3823-budi-Pemrograman...

Page 1: Pemrograman dengan MATLAB - Website Personalpersonal.its.ac.id/files/material/3823-budi-Pemrograman dengan... · Bahasa pemrograman untuk mengerjakan operasi matematika atau operasialjabar

Pemrogramandengan MATLAB- Pengantar -

Dr. Budi Setiyono, S.Si, MT

Page 2: Pemrograman dengan MATLAB - Website Personalpersonal.its.ac.id/files/material/3823-budi-Pemrograman dengan... · Bahasa pemrograman untuk mengerjakan operasi matematika atau operasialjabar

Outline

Pengenalan matlab

Apakah MATLAB

Sejarah MATLAB

Cara Penulisan Program Sederhana dalamMATLAB

Pengenalan variable

Operasi pada matrik

Logika pemrograman

Pemrograman GUI

www.themegallery.com

Page 3: Pemrograman dengan MATLAB - Website Personalpersonal.its.ac.id/files/material/3823-budi-Pemrograman dengan... · Bahasa pemrograman untuk mengerjakan operasi matematika atau operasialjabar

Apakah MATLAB ?Mathematics Laboratory

Matrix Laboratory

Bahasa pemrograman untukmengerjakan operasi matematika atau

operasi aljabar matriks.

Sistem interaktif yang data dasarnya

adalah matriks.

www.themegallery.com

Page 4: Pemrograman dengan MATLAB - Website Personalpersonal.its.ac.id/files/material/3823-budi-Pemrograman dengan... · Bahasa pemrograman untuk mengerjakan operasi matematika atau operasialjabar

Kegunaan MATLAB

Matematika dan Komputansi

Pengembangan dan Algoritma

Pemodelan,simulasi dan pembuatanprototype

Analisa Data,eksplorasi danvisualisasi

Pembuatan apilikasi termasukpembuatan graphical user interface

www.themegallery.com

Page 5: Pemrograman dengan MATLAB - Website Personalpersonal.its.ac.id/files/material/3823-budi-Pemrograman dengan... · Bahasa pemrograman untuk mengerjakan operasi matematika atau operasialjabar

Matlab Screen

Command Window

type commands

Current Directory

View folders and m-files

Workspace

View program variables

Double click on a variable

to see it in the Array Editor

Command History

view past commands

save a whole session

using diary

Page 6: Pemrograman dengan MATLAB - Website Personalpersonal.its.ac.id/files/material/3823-budi-Pemrograman dengan... · Bahasa pemrograman untuk mengerjakan operasi matematika atau operasialjabar

Sejarah MATLABCleve Moler (akhir tahun 1970-an)

Pembuat MATLAB.

Bahasa Pemrograman FORTRAN (Format Translation).

Mexico University dan Stanford University.

Digunakan pada kuliah Teori Matriks, Aljabar Linear dan Analisis Numeris.

www.themegallery.com

Page 7: Pemrograman dengan MATLAB - Website Personalpersonal.its.ac.id/files/material/3823-budi-Pemrograman dengan... · Bahasa pemrograman untuk mengerjakan operasi matematika atau operasialjabar

Sejarah MATLABThe Math Works

Pembuat MATLAB Edisi ke-1.

Steve Bangert : intepreter

Steve Kleiman : grafika

John Little dan Cleve Moler : rutin analitis, petunjuk pemakaian, dan sebagian besarFile-M.

www.themegallery.com

Page 8: Pemrograman dengan MATLAB - Website Personalpersonal.its.ac.id/files/material/3823-budi-Pemrograman dengan... · Bahasa pemrograman untuk mengerjakan operasi matematika atau operasialjabar

Editor Matlab

Command Window

type commands

Current Directory

View folders and m-files

Workspace

View program variables

Double click on a variable

to see it in the Array Editor

Command History

view past commands

save a whole session

using diary

Page 9: Pemrograman dengan MATLAB - Website Personalpersonal.its.ac.id/files/material/3823-budi-Pemrograman dengan... · Bahasa pemrograman untuk mengerjakan operasi matematika atau operasialjabar

Variables

Tidak diperlukan Deklarasi

Seluruh variabel bertype double dan berupa

matrik

int a;double b;float c;

Example:>>x=5;>>x1=2;

Page 10: Pemrograman dengan MATLAB - Website Personalpersonal.its.ac.id/files/material/3823-budi-Pemrograman dengan... · Bahasa pemrograman untuk mengerjakan operasi matematika atau operasialjabar

Nama dan type variable

www.themegallery.com

Page 11: Pemrograman dengan MATLAB - Website Personalpersonal.its.ac.id/files/material/3823-budi-Pemrograman dengan... · Bahasa pemrograman untuk mengerjakan operasi matematika atau operasialjabar

Array, Matrix

a vector x = [1 2 5 1]

x =

1 2 5 1

a matrix x = [1 2 3; 5 1 4; 3 2 -1]

x =

1 2 3

5 1 4

3 2 -1

transpose y = x’ y =

1

2

5

1

Page 12: Pemrograman dengan MATLAB - Website Personalpersonal.its.ac.id/files/material/3823-budi-Pemrograman dengan... · Bahasa pemrograman untuk mengerjakan operasi matematika atau operasialjabar

Long Array, Matrix

t =1:10

t =

1 2 3 4 5 6 7 8 9 10

k =2:-0.5:-1

k =

2 1.5 1 0.5 0 -0.5 -1

B = [1:4; 5:8]

x =

1 2 3 4

5 6 7 8

Page 13: Pemrograman dengan MATLAB - Website Personalpersonal.its.ac.id/files/material/3823-budi-Pemrograman dengan... · Bahasa pemrograman untuk mengerjakan operasi matematika atau operasialjabar

Jenis Matrik yang umum

www.themegallery.com

Company Logo

Page 14: Pemrograman dengan MATLAB - Website Personalpersonal.its.ac.id/files/material/3823-budi-Pemrograman dengan... · Bahasa pemrograman untuk mengerjakan operasi matematika atau operasialjabar

www.themegallery.com

Company Logo

Page 15: Pemrograman dengan MATLAB - Website Personalpersonal.its.ac.id/files/material/3823-budi-Pemrograman dengan... · Bahasa pemrograman untuk mengerjakan operasi matematika atau operasialjabar

Contoh-Contoh

www.themegallery.com

Company Logo

Page 16: Pemrograman dengan MATLAB - Website Personalpersonal.its.ac.id/files/material/3823-budi-Pemrograman dengan... · Bahasa pemrograman untuk mengerjakan operasi matematika atau operasialjabar

Bilangan Acak

www.themegallery.com

Company Logo

Page 17: Pemrograman dengan MATLAB - Website Personalpersonal.its.ac.id/files/material/3823-budi-Pemrograman dengan... · Bahasa pemrograman untuk mengerjakan operasi matematika atau operasialjabar

Matrik Random

Page 18: Pemrograman dengan MATLAB - Website Personalpersonal.its.ac.id/files/material/3823-budi-Pemrograman dengan... · Bahasa pemrograman untuk mengerjakan operasi matematika atau operasialjabar

Matrix Index

The matrix indices begin from 1 (not 0 (as in C)) The matrix indices must be positive integer

Given:

A(-2), A(0)

Error: ??? Subscript indices must either be real positive integers or logicals.

A(4,2)

Error: ??? Index exceeds matrix dimensions.

Page 19: Pemrograman dengan MATLAB - Website Personalpersonal.its.ac.id/files/material/3823-budi-Pemrograman dengan... · Bahasa pemrograman untuk mengerjakan operasi matematika atau operasialjabar

Concatenation of Matrices

x = [1 2], y = [4 5], z=[ 0 0]

A = [ x y]

1 2 4 5

B = [x ; y]

1 2

4 5

C = [x y ;z]

Error:

??? Error using ==> vertcat CAT arguments dimensions are not consistent.

Page 20: Pemrograman dengan MATLAB - Website Personalpersonal.its.ac.id/files/material/3823-budi-Pemrograman dengan... · Bahasa pemrograman untuk mengerjakan operasi matematika atau operasialjabar

Operators (arithmetic)

+addition

- subtraction

* multiplication

/ division

^power

„ complex conjugate transpose

Page 21: Pemrograman dengan MATLAB - Website Personalpersonal.its.ac.id/files/material/3823-budi-Pemrograman dengan... · Bahasa pemrograman untuk mengerjakan operasi matematika atau operasialjabar

Matrices Operations

Given A and B:

Addition Subtraction Product Transpose

Page 22: Pemrograman dengan MATLAB - Website Personalpersonal.its.ac.id/files/material/3823-budi-Pemrograman dengan... · Bahasa pemrograman untuk mengerjakan operasi matematika atau operasialjabar

Operators (Element by Element)

.* element-by-element multiplication

./ element-by-element division

.^ element-by-element power

Page 23: Pemrograman dengan MATLAB - Website Personalpersonal.its.ac.id/files/material/3823-budi-Pemrograman dengan... · Bahasa pemrograman untuk mengerjakan operasi matematika atau operasialjabar

The use of “.” – “Element” Operation

K= x^2

Erorr:

??? Error using ==> mpower Matrix must be square.

B=x*y

Erorr:

??? Error using ==> mtimes Inner matrix dimensions must agree.

A = [1 2 3; 5 1 4; 3 2 1]

A =

1 2 3

5 1 4

3 2 -1

y = A(3 ,:)

y=

3 4 -1

b = x .* y

b=

3 8 -3

c = x . / y

c=

0.33 0.5 -3

d = x .^2

d=

1 4 9

x = A(1,:)

x=

1 2 3

Page 24: Pemrograman dengan MATLAB - Website Personalpersonal.its.ac.id/files/material/3823-budi-Pemrograman dengan... · Bahasa pemrograman untuk mengerjakan operasi matematika atau operasialjabar

Membuat Deret

www.themegallery.com

Page 25: Pemrograman dengan MATLAB - Website Personalpersonal.its.ac.id/files/material/3823-budi-Pemrograman dengan... · Bahasa pemrograman untuk mengerjakan operasi matematika atau operasialjabar

Membentuk Ulang matrik

www.themegallery.com

Page 26: Pemrograman dengan MATLAB - Website Personalpersonal.its.ac.id/files/material/3823-budi-Pemrograman dengan... · Bahasa pemrograman untuk mengerjakan operasi matematika atau operasialjabar

Membentuk Ulang matrik

www.themegallery.com

Page 27: Pemrograman dengan MATLAB - Website Personalpersonal.its.ac.id/files/material/3823-budi-Pemrograman dengan... · Bahasa pemrograman untuk mengerjakan operasi matematika atau operasialjabar

www.themegallery.com