Anda di halaman 1dari 40

Materi Pelatihan Matlab

disusun 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

Menyimpan
secara otomatis
harga variabel
a, b , dan c

Perintah
memasukan
data variabel b

Perintah
menghitung
harga variabel c

Menyimpan secara otomatis perintah-perintah


yang telah diketikkan di command window

M-file

Cara membuka MFile:


File/New/M-File

Penulisan Matriks
Tanda koma (,) atau spasi
Tanda titik koma(;)
Contoh :

memisahkan elemen-elemen satu baris.


memisahkan elemen-elemen satu kolom.

>> a=[1,2,3]
a =
1

>> b=[1;2;3]
b =
1
2
3

Vektor baris adalah matrik yang terdiri atas satu baris saja.
>> B=[2:6]
B=
2
3
4
5
6
Penulisan seperti di atas akan menghasilkan vektor baris dengan selisih 1
Menentukan ukuran vektor
>> length(B)
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
1 4 5 2

2 3 1 6
4 6 2 12
1 4 5 2 2 8 10 4

0 0 0 0
2 3 1 6 2 3 1 6
1 4 5 2 1 4 5 2 0 0 0 0

Perkalian matrik

AB Syarat jumlah kolom A = jumlah kolomAB


baris
BA
B

1
AB 1 2 3 2 1 4 9 14
3

Pembagian matrik kanan dan kiri


xA c

x cA1
x c/ A
Ax c
x A1c
x A\c

1 2 3
x 2 5 4 20 15 8
4 3 1

1
2

2
5
3

4 x

20
15

Membuat Grafik
Misalkan:
X

2.7

7.4

20.1

54.6

148.4

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

54.6000

148.4000

150

100

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

50

1.5

2.5

3
x

3.5

4.5

Dapat ditulis di 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')
save
Klik Run

SISTEM PERSAMAAN TAK


LINIER

y
y exp( x )

NON-LINIER

Contoh :
persamaan kuadrat

x 4x 5 0
2

maka C(1)=1, C(2)=4, C(3)= -5.


Carilah akar-akar persamaan kuadrat di
bawah ini.
Dapat ditulis :

MATLAB Command window


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

Dengan fzero :
Diketahui persamaan kuadrat

x+4x+3

%kuadrat.m
function 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

fsolve
Solusi sistem persamaan taklinier dapat
menggunakan fsolve pada MATLAB
Contoh:

x 3 3 xy 2 1/ 2
3x 2 y y 3 3 / 2
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 1
Diketahui sebuah persamaan kapasitas panas
sbb.

15.04
Cp 0.716 4.257 E T
T
6

kJ
kg.K

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


!!!
Menggunakan fungsi apakah untuk
menyelesaikan soal di atas????

Selesaikan persamaan berikut dengan


menggunakan fungsi roots dan fzero:

y ( x1 3) 0.5( x2 4) 3
2

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

x 4x 3 0
2

dengan menggunakan subrutin fiminsearch dalam MATLAB.


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

Kasus 2
Carilah titik minimum dari persamaan multivariabel
berikut ini.

y ( x1 3) 2 0.5( x2 4) 2 3

Regresi
(Linier dan Non-Linier)

Regresi Linier
Persamaan dalam bentuk matriks untuk regresi
linier adalah sebagai berikut:

i 1

2
x
i

i 1

i a
i 1
0
a1
n

x
i yi
i 1

yi
i 1

Harga paramter a0 dan parameter a1 dapat


diperoleh
dengan
menyelesaikan
sistem
persamaan linier di atas.

Contoh Kasus
t(s)

185

360

530

690

850

h(cm)

30

24

18

12

Dimana:
h=a0t+a1
Untuk mencari harga a0 dan a1 dapat
menggunakan metode jumlah selisih kuadrat
terkecil
seperti
yang
telah
dijelaskan
sebelumnya.

Jawaban:
Pada m-file:
t=[0,185,360,530,690,850];
% Absis
h=[30,24,18,12,6,0];
% Ordinat
n=length(h);
A = [sum(t.^2),sum(t)

sum(t), n];
c = [sum(h.*t)

sum(h)];
a = A\c
Didapat:
a = -0.0354
30.4084

Kasus 3
Diketahui persamaan sebagai berikut:

y= aebx
Linierisasikan
persamaan
tersebut,kemudian
tentukan nilai a dan b,dengan data sebagai
berikut:

60

115

172

225

270

305

21

18

15

12

Persamaan Differensial
Biasa

PDB
Persamaan differensial terdiri atas fungsi turunan
satu buah variabel bebas.

Klasifikasi PDB
Orde
Kelinieran
Kondisi batas

Berdasarkan Orde
Orde 1
dy

dx
Orde 2

y kx

d2y
dy
y
kx
2
dx
dx

Orde 3
3

d y
d y
dy
a 2 b kx
3
dx
dx
dx

Berdasarkan

Kelinieran
Bentuk
umum persamaan diferensial linier
dny
d n 1 y
dy
bo x n b1 x n 1 ... bn 1 x
bn 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 batas
Persamaan differensial bernilai awal
2 y
yx
2
x
y (0) 2,

y
(0) 1
x

Persamaan differensial bernilai batas

2 y
yx
2
x
y (0) 2, y (1) 1

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

Rentan
g
integra
si

Harga
awal

Contoh
dy
2 x3 12 x 2 20 x 8.5
dx
dengan kondisi awal y = 1 pada x = 0 dan
rentang integrasi dari x = 0 s.d x = 4.
Berikut ini pemrograman MATLAB-nya.

%pdb.m
function dydx = pdb(x,y)
dydx = -2*x^3+12*x^2-20*x+8.5;

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

Kasus 4
Jika diketahui:

dy/dx = x4 + 8x3 - 2x2 + 10x -7


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

Anda mungkin juga menyukai