Pelatihan Matlab

Post on 18-Feb-2015

117 views 15 download

Transcript of Pelatihan Matlab

Materi Pelatihan Matlabdisusun oleh:Tim Assistant LKP

Pengenalan Matlab

MATLAB (matrix laboratory) merupakan perangkat lunak produk dari The MathWorks,Inc yang memadukan kemampuan perhitungan, pencitraan, dan permograman dalam satu paket.

Perangkat Lunak

Workspace berfungsi sbg tempat menyimpan secara ototmatis segala variabel masukan dan hasil

Command history adalah tempat menyimpan secara otomatis segala perintah yang telah dituliskan pada command windows.

Command window merupakan jendela utama MATLAB. Tempat untuk mengeksekusi perintah menampilkan masukan dan hasil perhitungan.

Perintah memasukan data variabel a

Perintah memasukan data variabel b

Perintah menghitung harga variabel c

Menyimpan secara otomatis harga variabel a, b , dan c

Menyimpan secara otomatis perintah-perintah yang telah diketikkan di command window

Penulisan Matriks

Tanda koma (,) atau spasi memisahkan elemen-elemen satu baris.

Tanda titik koma(;) memisahkan elemen-elemen satu kolom.

>> a=[1,2,3]

a =

1 2 3

 

>> b=[1;2;3]

b =

1

2

3

Contoh :

Vektor baris adalah matrik yang terdiri atas satu baris saja.>> B=[2:6]B = 2 3 4 5 6Penulisan seperti di atas akan menghasilkan vektor baris dengan selisih 1

Menentukan ukuran vektor>> length(V)ans = 5>> A=[1 2 3;4 5 6;7 8 9]A = 1 2 3 4 5 6 7 8 9

Matrik transposisi>> A'ans = 1 4 7 2 5 8 3 6 9

Menentukan ukuran matrik>> size(A)ans = 3 3

Menentukan determinan matrik>> det(A)ans = 0

Menentukan invers matrik>> inv(A)Warning: Matrix is close to singular or badly scaled. Results may be inaccurate. RCOND = 1.541976e-018.ans = 1.0e+016 * -0.4504 0.9007 -0.4504 0.9007 -1.8014 0.9007 -0.4504 0.9007 -0.4504

Perhitungan matriks• Penjumlahan dan pengurangan • Hanya dapat dilakukan jika matrik-matrik yang akan

dijumlahkan dan dikurangkan memiliki orde sama.

2 3 1 6 2 3 1 6 4 6 2 12

1 4 5 2 1 4 5 2 2 8 10 4

2 3 1 6 2 3 1 6 0 0 0 0

1 4 5 2 1 4 5 2 0 0 0 0

Perkalian matrikSyarat jumlah kolom A = jumlah kolom baris B

Pembagian matrik kanan dan kiri

AB AB BA

1

1 2 3 2 1 4 9 14

3

AB

1

/

xA c

x cA

x c A

1 2 3

2 5 4 20 15 8

4 3 1

x

1

\

Ax c

x A c

x A c

1 2 3 20

2 5 4 15

4 3 1 8

x

Membuat Grafik

X 1 2 3 4 5

Y 2.7 7.4 20.1 54.6 148.4

Misalkan:

>> x=[1,2,3,4,5]x = 1 2 3 4 5>> y=[2.7,7.4,20.1,54.6,148.4]y =

1 1.5 2 2.5 3 3.5 4 4.5 50

50

100

150

x

y

2.7000 7.4000 20.1000 54.6000 148.4000 >> plot(x,y) >> xlabel('x') >> ylabel('y')

M-file

Cara membuka M-File:

File/New/M-File

x=[1,2,3,4,5]

y=[2.7,7.4,20.1,54.6,148.4]

plot(x,y)xlabel('x')ylabel('y')

saveKlik Run

Dapat ditulis di M-File :

SISTEM PERSAMAAN TAK LINIER

exp( )y x

y

xNON-LINIER

2 4 5 0x x

Contoh : persamaan kuadrat

maka C(1)=1, C(2)=4, C(3)= -5.Carilah akar-akar persamaan kuadrat di bawah ini.

MATLAB Command window>> C=[1 4 -5]C = 1 4 -5>> roots(C)ans = -5 1

Dapat ditulis :

%kuadrat.mfunction y = kuadrat(x)y = x^2+4*x+3

x = fzero('kuadrat',0)

x =

-1

Untuk mencari akar lainnya, ubah tebakan awalnya.

>> x = fzero('kuadrat',-4)

x =

-3.0000

Dengan fzero :

Diketahui persamaan kuadrat x²+4x+3

fsolveSolusi sistem persamaan taklinier dapat menggunakan fsolve pada MATLAB

Contoh:

3 2

2 3

3 1/ 2

3 3 / 2

x xy

x y y

Langkah 1 Buat terlebih dahulu fungsi sistem persamaan taklinier dalam m-file.

Langkah 2 Buat program pengeksekusi menggunakan fsolve pada m-file yang berbeda atau dapat juga langsung di command window.

Langkah 3 Jalankan program pengeksekusi.

Pada m-file

function f = sistem(x)f = [x(1)^3-3*x(1)*x(2)^2-0.5 3*x(1)^2*x(2)-x(2)^3-sqrt(3)/2]

>> X = fsolve('sistem',[1 2])

Optimization terminated: first-order optimality is less than options.TolFun.

X = 0.9397 0.3420

Kasus

Diketahui sebuah persamaan kapasitas panas sbb.

Tentukan temperatur pada saat Cp = 1 kJ/kg.K !!!

6 15.040.716 4.257

.

kJCp E T

kg KT

OPTIMASI

Untuk mencari harga minimum dan maksimum kita dapat menggunakan perintah fminsearch.

[x,fval,exitflag] = fminsearch(fun,x0)

keterangan:

fun = Fungsi yang akan diminimumkan atau dimaksimumkan

x0 = Tebakan awal

x = Harga x yang menyebabkan fungsi minimum atau maksimum

fval = Nilai maksimum atau minimum.

exitflag = Kriteria penghentian proses iterasi.

Harga x mencapai kekonvergenan jika exitflag bernilai 1.

 

Contoh :

Carilah titik minimum 2 4 3 0x x

dengan menggunakan subrutin fiminsearch dalam MATLAB.

>> [x fval exitflag]=fminsearch('kuadrat',2)x = -2.0000fval = -1exitflag = 1

Carilah titik minimum dari persamaan multivariabel berikut ini.

2 21 2( 3) 0.5( 4) 3y x x

Kasus

Regresi(Linier dan Non-Linier)

Regresi Linier

2

1 1 10

1

1 1

n n n

i i i ii i i

n n

i ii i

x x x ya

ax n y

Persamaan dalam bentuk matriks untuk regresi linier adalah sebagai berikut:

Harga paramter a0 dan parameter a1 dapat diperoleh dengan menyelesaikan sistem persamaan linier di atas.

Contoh Kasus

Dimana:h=a0t+a1

Untuk mencari harga a0 dan a1 dapat menggunakan metode jumlah selisih kuadrat terkecil seperti yang telah dijelaskan sebelumnya.

t(s) 0 185 360 530 690 850

h(cm) 30 24 18 12 6 0

Kasus

Diketahui persamaan sebagai berikut:y= ebx

aLinierisasikan persamaan tersebut,kemudian tentukan nilai a dan b,dengan data sebagai berikut:

x 0 60 115 172 225 270 305

y 21 18 15 12 9 6 3

Persamaan Differensial Biasa

PDB

Persamaan differensial terdiri atas fungsi turunan satu buah variabel bebas.

Klasifikasi PDB• Orde• Kelinieran• Kondisi batas

Berdasarkan OrdeOrde 1

Orde 2

Orde 3

dyy kx

dx

2

2

d y dyy kx

dx dx

23 2

3 2

d y d y dya b kx

dx dx dx

Berdasarkan KelinieranBentuk umum persamaan diferensial linier

1

1 11...

n n

o n nn n

d y d y dyb x b x b x b x y R x

dx dx dx

Jika R(x) = 0, persamaan diferensial tersebut disebut sebagai persamaan diferensial homogen.

Koefisien bi disebut:• koefisien variabel jika merupakan fungsi dari x• koefisien konstanta jika berupa bilangan skalar.

Jika variabel bebas persamaan diferensial tersebut tidak muncul sebagai bagian yang eksplisit, persamaan diferensial tersebut disebut persamaan diferensial yang bersifat autonomous.

Klasifikasi PDB (lanjutan)Berdasarkan kondisi batasPersamaan differensial bernilai awal

Persamaan differensial bernilai batas

2

2

(0) 2, (0) 1

yyx

xy

yx

2

2

(0) 2, (1) 1

yyx

xy y

Subrutin dalam MATLAB untuk solusi PDB bernilai awal

Pada bagian ini akan dijelaskan subrutin ode23 dalam MATLAB untuk menyelesaikan PDB bernilai awal dengan karakter linier, taklinier, tunggal maupun jamak (sistem).Cara penulisan ode23[t,y] = ode23(‘fungsiPDB’,rentang_t,y0)

Fungsi PDB yang akan dievaluasi

Rentang integrasi

Harga awal

Contoh

dengan kondisi awal y = 1 pada x = 0 dan rentang integrasi dari x = 0 s.d x = 4. Berikut ini pemrograman MATLAB-nya.

3 22 12 20 8.5dy

x x xdx

%pdb.m

function dydx = pdb(x,y)

dydx = -2*x^3+12*x^2-20*x+8.5;

%runpdb.mclearclcrentang_x = [0 4];y0 = 1;[x,y] = ode23('pdb',rentang_x,y0)plot(x,y)xlabel('x')ylabel('y')