SlideShare a Scribd company logo
Dasar Dasar Pemrograman MATLAB untuk Teknik Elektro
BAB II
OPERATOR DAN FUNGSI DASAR
MATEMATIS
2.1 Operator Aritmetik
Operator aritmetik adalah simbol-simbol yang digunakan untuk maksud operasi numerik. MATLAB
menyediakan operator aritmatik dasar berikut :
Operasi Simbol Contoh
Penambahan a+b + 15+10
Pengurangan, a-b - 15-10
Perkalian, a.b * 15*10
Pembagian, a: b / atau  15/10=1015
Pemangkatan, ab
^ 15^10
Urutan operasi ini dikerjakan dalam suatu ekspresi yang mengikuti aturan prioritas yang biasa. Aturan
ini diringkas sebagai berikut : Ekspresi dikerjakan dari kiri ke kanan, dengan pemangkatan mempunyai
prioritas tertinggi, diikuti dengan perkalian atau pembagian yang mempunyai prioritas yang sama,
diikuti dengan penambahan dan pengurangan yang juga mempunyai prioritas yang sama. Tanda
kurung dapat digunakan untuk mengubah urutan pengerjaan yang biasa, dimana bagian yang
dikerjakan lebih dulu adalah bagian yang ada dibagian kurung paling dalam kemudian keluar.
Contoh : Carilah nilai
A=P








−+
+
1)1(
)1(
N
N
I
II
, untuk P=1000, I=12% dan N=10
» P=1000; i=0.12; N=10;
» A=P*((i*(1+i)^N)/((1+i)^N-1))
A =
176.9842
% Contoh penggunaan pembagian kiri dan kanan
» C=P/N
C =
100
» D=NP
D =
Ansar Suyuti 9
Operator dan Fungsi Dasar
Matematis
100
2.2 Operator relasi dan logika
Matlab menyediakan operasi relasi dan logika. Kegunaan dari operator dan fungsi tersebut ialah untuk
menyediakan jawaban atas pertanyaan benar salah. Salah satu kegunaan penting dari kemampuan ini
ialah untuk mengontrol urutan eksekusi sederetan perintah MATLAB berdasarkan pada hasil
benar/salah. MATLAB menganggap semua angka tidak nol sebagai benar, dan nol sebagai salah. Hasil
dari ekspresi relasi dan logika adalah satu untuk Benar dan nol untuk Salah dengan tipe array logika,
yaitu hasilnya membuat bilangan 1 dan 0 yang tidak saja dapat digunakan untuk statemen matematika,
tetapi juga dapat digunakan untuk pengalamatan.
2.2.1 Operator Relasi
Operator relasi MATLAB terdiri dari :
Operator relasi Deskripsi
<
<=
>
>=
=
~=
Kurang dari
Kurang dari atau sama dengan
Lebih dari
Lebih dari atau sama dengan
Sama dengan
Tidak sama dengan
Operator relasi MATLAB dapat dipergunakan untuk membandingkan dua array berukuran sama atau
untuk membandingkan array dengan skalar. Skalar dibandingkan dengan semua elemen array dan
hasilnya berukuran sama.
Contoh penggunaan :
» A=1:9,B=9-A
A =
1 2 3 4 5 6 7 8 9
B =
8 7 6 5 4 3 2 1 0
» tf=A>4
tf =
0 0 0 0 1 1 1 1 1
» tf=(A==B)
tf =
0 0 0 0 0 0 0 0 0
2.2.2 Operator Logika
Ansar Suyuti 10
Dasar Dasar Pemrograman MATLAB untuk Teknik Elektro
Operator logika menyediakan cara untuk menggabung ekspresi logika. Operator logika terdiri dari :
Operator Logika Deskripsi
&
|
~
AND
OR
NOT
Contoh penggunaan :
» A=1:9; b=9-A;
» tf=A>4
tf =
0 0 0 0 1 1 1 1 1
» tf=~(A>4)
tf =
1 1 1 1 0 0 0 0 0
» tf=(A>2)&(A<6)
tf =
0 0 1 1 1 0 0 0 0
» x=[1,1,0,0];
» y=[1,1,1,1];
» z1=~y>x
z1 =
0 0 0 0
» z2=x&y
z2 =
1 1 0 0
» z3=x|y
z3 =
1 1 1 1
» z4=xor(x,y)
z4 =
0 0 1 1
Ansar Suyuti 11
Operator dan Fungsi Dasar
Matematis
» A=[1,1,0,0]';
» B=[0,0,1,1]';
» [A,B,~A,A|B,A&B,xor(A,B)]
ans =
1 0 0 1 0 1
1 0 0 1 0 1
0 1 1 1 0 1
0 1 1 1 0 1
2.3 Fungsi-fungsi Dasar Matematis
Sebagian dari fungsi-fungsi dasar matematis yang dimiliki MATLAB dapat dilihat berikut :
Fungsi trigonometri
abs (x)
acos(x)
acosh(x)
angle(x)
asin(x)
asinh(x)
atan(x)
atan2(x)
atanh(x)
ceil(x)
conj(x)
cos(x)
cosh(x)
exp(x)
fix(x)
floor(x)
gdc(x,y)
imag(x)
lcm(x)
log(x)
log10(x)
real(x)
rem(x,y)
round(x)
sign(x)
sin(x)
sinh(x)
sqrt(x)
tan(x)
harga mutlak atau besarnya bilangan kompleks
invers cosinus
invers cosinus hiperbolik
sudut pada suatu bilangan kompleks
invers sinus
invers sinus hiperbolik
invers tangen
invers tangen empat kuadran
invers tangen hiperbolik
pembulatan ke arah plus tak berhingga
konjuget bilangan kompleks
cosinus
cosinus hiperbolik
eksponensial
pembulatan ke arah nol
pembulatan ke arah minus tak berhingga
faktor persekutuan terbesar bilangan bulat x dan y
bilangan imajiner
kelipatan persekutuan terkecil bilangan bulat x dan y
logaritma natural
logaritma biasa
bagian real suatu bilangan kompleks
sisa pembagian x dibagi y
pembulatan ke arah bilangan bulat terdekat
menghasilkan tanda dari argumen
sinus
sinus hiperbolik
akar kuadrat
tangen
Ansar Suyuti 12
Dasar Dasar Pemrograman MATLAB untuk Teknik Elektro
contoh :
carilah nilai V(t)= A sin wt +30o
, dimana A=10 dan t=1,2,3,4,5
» t=1:1:5;
» A=10;f=100;
» Vt=A*sin(2*pi*f*t+30*180/pi)
Vt =
-4.0977 -4.0977 -4.0977 -4.0977 -4.0977
Fungsi dasar MATLAB
exp
log
log10
sqrt
abs
angle
conj
imag
real
fix
floor
ceil
round
mod
rem
sign
exponensial
logaritma natural
logaritma biasa (basis 10)
akar kuadrat
harga mutlak
sudut fasa
kompleks konjugate
bagian imajiner bilangan kompleks
bagian real bilangan kompleks
membulatkan ke arah nol
membulatkan ke arah minus tak terhingga
membulatkan ke arah plus tak terhingga
membulatkan ke arah bilangan bulat terdekat
modulus (sisa pembagian)
pembagian bilangan bulat
tanda bilangan
Contoh :
» x=exp(-0.2696*.2)*sin(2*pi*0.2)/(0.01*sqrt(3)*log(18))
x =
18.0001
2.4 Format output dan input numerik
Saat MATLAB menampilkan hasil proses numerik, MATLAB mengikuti beberapa aturan. Dalam
keadaan biasa, jika hasilnya berupa bilangan bulat, maka akan ditampilkan sebagai bilangan bulat. Jika
hasilnya suatu bilangan real, MATLAB akan menampilkan sebagai bilangan dengan empat digit
Ansar Suyuti 13
Operator dan Fungsi Dasar
Matematis
desimal. Perintah format ini hanya mengendalikan format numerik nilai yang ditampilkan dilayar,
hanya berefek pada berapa jumlah angka yang ditampilkan, bukan bagaimana MATLAB menghitung
atau menyimpannya.
MATLAB
COMMAND
Average_Cost Keterangan
Format short 50.833 5 digits
Format long 50.83333333333334 16 digits
Format short e 5.0833e+01 5 digits plus exponent
Format long e 5.083333333333334e+01 16 digits plus exponent
Format short g 50.833 Better of format short or
format short e
Format long g 50.83333333333333 Better of format longt or
format long e
Format hex 40496aaaaaaaaaab Hexadecimal
Format bank 50.83 2 decimal digits
Format + + Positive, negative, or zero
Format rat 305/6 Rational approximation
Untuk lebih fleksibelnya dalam format output, MATLAB menyediakan fungsi fprintf untuk
menampilkan hasil/output dri program. Beberapa format dari fprintf dapat dilihat pada tabel.
Kode Format Kontrol Karakter
%e scientific format, lower case e
%E sientific format, upper case E
%f format desimal
%s string
%u integer
%i mengikuti tipe
%x hexadecimal, lower case
%X hexadecimal, upper case
n baris baru
r permulaan dari baris
b back space
t tabulasi
g halaman baru
" apostrop
 back slash
a bell
Contoh penggunaan fprintf
» fprintf('Luas= %7.3f meter per segi n',pi*10^2)
Luas= 314.159 meter per segi
Format %7.3f, menunjukkan format bilangan desimal tujuh angka dengan tiga angka dibelakang
koma. Sedangkan /n untuk baris baru.
Contoh lain untuk membuat format dalam bentuk tabel
Ansar Suyuti 14
Dasar Dasar Pemrograman MATLAB untuk Teknik Elektro
» V=[ 10;20;30;40;50];
» R=[ 5;7;9;11;13];
» y=[V R]
y =
10 5
20 7
30 9
40 11
50 13
» fprintf('%4i t %8.2fn',y')
10 5.00
20 7.00
30 9.00
40 11.00
50 13.00
Pada M-file input nilai vriabel dapat dilakukan dari keyboard dengan menggunakan perintah input
Contoh :
R=input ('Masukkan Harga barang =')
Maka dilayar akan muncul tulisan
Masukkan Harga barang =
Jika diketik dari keyboard 10000, Maka hasil yang diperoleh adalah
R =
10000
Contoh program M-file untuk perkalian bilangan kompleks
Ansar Suyuti 15
Operator dan Fungsi Dasar
Matematis
disp(' ');
disp(' PROGRAM PERKALIAN BILANGAN KOMPLEKS'); disp(' ');
disp(' Jenis: 1-polar, 2-rectangular'); disp(' ');
jumlah=input('Berapa banyak Bilangan Kompleks yang akan
dikalikan ?'); disp(' ');
for i=1:jumlah;
F=input(['Jenis ',num2str(i),' ketik 1 jika polar 2 jika
rectanguler = ']);
if (F~=1 & F~=2); disp('Anda Salah Input'); end
if F==1
M=input(['Nilai ',num2str(i),' = ']);
A=input(['Sudut ',num2str(i),' = '])*pi/180;
N(i)=M*exp(j*A); disp(' ');
else
R=input(['Real ',num2str(i),' = ']);
I=input(['Imag ',num2str(i),' = ']);
N(i)=R+j*I; disp(' ');
end
end
P=N(1); for k=2:jumlah; P=P*N(k); end
disp(' '); disp(['HASIL PERKALIAN = ' num2str(real(P)) ' +j '...
num2str(imag(P)) ' = ' num2str(abs(P)) '|_'...
num2str(angle(P)*180/pi) ' derajat']);
Hasil program yang ditampilkan dari command window MATLAB adalah
PROGRAM PERKALIAN BILANGAN KOMPLEKS
Jenis: 1-polar, 2-rectangular
Berapa banyak Bilangan Kompleks yang akan dikalikan ?2
Jenis 1 ketik 1 jika polar 2 jika rectanguler = 1
Nilai 1 = 10
Sudut 1 = 90
Jenis 2 ketik 1 jika polar 2 jika rectanguler = 1
Nilai 2 = 10
Sudut 2 = 90
HASIL PERKALIAN = -100 +j 1.2246e-014 = 100|_180 derajat
II. OPERASI ARRAY DAN MATRIK
2.1 Array Sederhana
Untuk menghitung nilai fungsi sinus pada priode pertama, y=sin(x) ; π≤≤ x0 . Kita mencoba
membuat suatu tabel atau array untuk menghitung ni x dan y seperti dibawah ini :
x 0 .1π .2π .3π .4π .5π .6π .7π .8π .9π π
Ansar Suyuti 16
Dasar Dasar Pemrograman MATLAB untuk Teknik Elektro
y 0 .31 .59 .81 .95 1.0 .95 .81 .59 .31 0
Nilai pertama y berkaitan dengan nilai pertama x, nilai kedua y berkaitan nilai kedua x, dst.
MATLAB menangani array secara intuitif. Pembuatan array dilakukan dengan mudah-cukup dengan
mengikuti struktur tabel di atas.
» x=[0.1*pi .2*pi .3*pi .4*pi .5*pi .6*pi .7*pi .8*pi .9*pi pi]
x =
Columns 1 through 7
0.3142 0.6283 0.9425 1.2566 1.5708 1.8850 2.1991
Columns 8 through 10
2.5133 2.8274 3.1416
» y=sin(x)
y =
Columns 1 through 7
0.3090 0.5878 0.8090 0.9511 1.0000 0.9511 0.8090
Columns 8 through 10
0.5878 0.3090 0.0000
untuk membuat array dalam MATLAB, yang perlu dilakukan hanyalah mengetikkan kurung kotak
kiri, memasukkan elemen -elemen dengan dipisahkan oleh spasi atau koma, kemudian menutup array
dengan kurung kotak kanan.
Karena spasi memisahkan elemen-elemen array, bilangan kompleks yang dimasukkan sebagai elemen
array tidak dapat memuat spasi kecuali ditutup dengan kurung.
2.2 Pengalamatan Array
array x di atas mempunyai 11 elemen yang dipisahkan dalam kolom-kolom, dengan demikian dapat
dikatakan bahwa array tersebut array satu kali sebelas atau suatu array dengan panjang 11.
Dalam MATLAB, elemen-elemen array diakses menggunakan subscript; misalnya x(1) adalah elemen
pertama x, x(2) adalah elemen kedua x, dst. Contoh :
» x(3)
ans =
0.9425
» y(3)
ans =
0.8090
Untuk mengakses suatu blok elemen, MATLAB menyediakan notasi kolom
» x(1:7)
ans =
0.3142 0.6283 0.9425 1.2566 1.5708 1.8850 2.1991
elemen-elemen di atas adalah elemen pertama sampai elemen ke 7
Ansar Suyuti 17
Operator dan Fungsi Dasar
Matematis
» x(7:end)
ans =
2.1991 2.5133 2.8274 3.1416
mulai dari elemen ke 7 sampai elemen terakhir. Kata End berarti elemen terakhir dalam array x.
» x(3:-1:1)
ans =
0.9425 0.6283 0.3142
elemen-elemen di atas adalah elemen ke 3, ke 2 dan pertama dalam urutan ke bawah 3:-1:1 berarti "
mulai dari kolom 3, hitung turun satu-satu, dan berhenti saat 1.
» x(2:3:9)
ans =
0.6283 1.5708 2.5133
elemen-elemen di atas adalah elemen ke 2, ke 5 dan ke 8. 2:3:9 berarti " muali dari 2, hitung ke atas
dengan penambahan 3, dan berhenti setelah mencapai 9.
x([8 2 9 1])
ans =
2.5133 0.6283 2.8274 0.3142
disini kita gunakan [8 2 9 1 ] untuk mengambil elemen-elemen array x dalam urutan sebagaimana yang
dituliskan dalam kurung kotak.
2.3 Pembentukan array
Seperti yang telah dilakukan sebelumnya dengan memasukkan nilai-nilai x dengan mengetikkan tiap
elemen x. Hal ini akan membuat kita repot jika elemen dari array cukup banyak, maka MATLAB
menyediakan cara lain untuk memasukkan nilai-nilai dalam array.
» x=(0:0.1:1)*pi
x =
Columns 1 through 7
0 0.3142 0.6283 0.9425 1.2566 1.5708 1.8850
Columns 8 through 11
2.1991 2.5133 2.8274 3.1416
» x=linspace(0,pi,11)
x =
Columns 1 through 7
0 0.3142 0.6283 0.9425 1.2566 1.5708 1.8850
Columns 8 through 11
2.1991 2.5133 2.8274 3.1416
Dalam kasus pertama, notasi kolom (0:0.1:1) menciptakan array yang dimulai dengan 0, meningkat
setiap 0.1 dan berhenti pada 1. Setiap elemen ini array ini kemudian dikalikan dengan π untuk
menciptakan nilai yang diinginkan dalam x. Dalam kasus ke dua, fungsi linespace digunakan untuk
menciptakan x.
Linspace(nilai_awal, nilai_akhir,jumlah_elemen)
Ansar Suyuti 18
Dasar Dasar Pemrograman MATLAB untuk Teknik Elektro
Kedua cara pembentukan array di atas membentuk array dengan setiap elemennya berjarak linier
terhadap elemen yang lain. Untuk kasus-kasus khusus dimana jarak logaritma diperlukan, MATLAB
menyediakan fungsi logspace:
» logspace(0,2,11)
ans =
Columns 1 through 7
1.0000 1.5849 2.5119 3.9811 6.3096 10.0000 15.8489
Columns 8 through 11
25.1189 39.8107 63.0957 100.0000
Di atas kita membuat array dimulai 100
, diakhiri dengan 102
, memuat sebelas elemen. Argumen fungsi
didefisikan sebagai
Logspace(eksponen_awal, eksponen_akhir, jumlah_elemen)
Kadang-kadang diperlukan suatu array yang elemen-elemennya tidak berjarak linier atau logaritmis
dengan elemen-elemen lain.
» a=1:5,b=1:2:9
a =
1 2 3 4 5
b =
1 3 5 7 9
» a=1:5,b=1:2:9
a =
1 2 3 4 5
b =
1 3 5 7 9
» c=[b a]
c =
1 3 5 7 9 1 2 3 4 5
» d=[a(1:2:5) 1 0 1]
d =
1 3 5 1 0 1
2.4 Orientasi Array
Karena fungsi-fungsi array yang telah dibahas sebelumnya semua membentuk vektor baris, maka
dbutuhkan suatu cara untuk membentuk vektor kolom.
» c=[1;2;3;4;5]
c =
1
2
3
4
5
dengan memisahkan elemen dengan titik koma.
Ansar Suyuti 19
Operator dan Fungsi Dasar
Matematis
memisahkan elemen dengan spasi atau koma membuat elemen berada dalam kolom yang berbeda,
sedangkan memisahkan elemen dengan titik koma membuat elemen berada dalam baris yang berbeda.
Cara lain adalah dengan membentuk vektor baris kemudian ditransfose MATLAB (')
» b=a'
b =
1
2
3
4
5
» c=b'
c =
1 2 3 4 5
MATLAB juga menyediakan transpose dengan diawali titik. Operator titik-transfose ini diinterpretasi
sebagai transpose konjugasi non kompleks. Jika suatu array merupakan array kompleks, transpose (')
memberikan transpose konjugasi kompleks, yaitu tanda dari bagian imajiner yang berubah sebagai
akibat operasi transpose. Tetapi titik transpose melakukan transpose pada array namun tidak
melakukan konjugat padanya.
» c=a.'
c =
1
2
3
4
5
menunjukkan bahwa .' dan ' identik jika diterapkan pada bilangan real.
» d=a+i*a
d =
Columns 1 through 4
1.0000 + 1.0000i 2.0000 + 2.0000i 3.0000 + 3.0000i 4.0000 + 4.0000i
Column 5
5.0000 + 5.0000i
» c=d'
c =
1.0000 - 1.0000i
2.0000 - 2.0000i
3.0000 - 3.0000i
4.0000 - 4.0000i
5.0000 - 5.0000i
» e=d.'
e =
1.0000 + 1.0000i
2.0000 + 2.0000i
3.0000 + 3.0000i
Ansar Suyuti 20
Dasar Dasar Pemrograman MATLAB untuk Teknik Elektro
4.0000 + 4.0000i
5.0000 + 5.0000i
pada c=d' menciptakan vektor c yang merupakan transpose konjugate kompleks dari d, sedangkan
e=d.' menciptakan vektor e yang merupakan transpose d.
Jika suatu array dapat berupa vektor baris atau vektor kolom, wajarlah jika array dapat juga
mempunyai banyak baris maupun banyak kolom. Artinya array dapat mengambil bentuk berupa
matriks.
» g=[1 2 3;4 5 6]
g =
1 2 3
4 5 6
» g=[1 2 3
4 5 6]
g =
1 2 3
4 5 6
selain titik koma, menekan tombol Return atau Enter saat memasukkan nilai matriks juga dapat
membuat baris baru.
Operasi Array-Skalar
Penambahan, pengurangan , perkalian dan pembagian dengan skalar dapat dikenakan pada semua
elemen array.
» h=g-2
h =
-1 0 1
2 3 4
» i=g*2-1
i =
1 3 5
7 9 11
» j=g/2
j =
0.5000 1.0000 1.5000
2.0000 2.5000 3.0000
Operasi Array-Array
Jika dua array mempunyai dimensi yang sama, penambahan, pengurangan, perkalian dan pembagian
berlaku pada elemen ke elemen
» g=[1 1 1 1;2 2 2 2;3 3 3 3]
g =
Ansar Suyuti 21
Operator dan Fungsi Dasar
Matematis
1 1 1 1
2 2 2 2
3 3 3 3
» h=[4 4 4 4;5 5 5 5;6 6 6 6]
h =
4 4 4 4
5 5 5 5
6 6 6 6
» j=g+h
j =
5 5 5 5
7 7 7 7
9 9 9 9
» k=g-h
k =
-3 -3 -3 -3
-3 -3 -3 -3
-3 -3 -3 -3
» l=2*g-h
l =
-2 -2 -2 -2
-1 -1 -1 -1
0 0 0 0
» m=g.*h
m =
4 4 4 4
10 10 10 10
18 18 18 18
» n=g*h
??? Error using ==> *
Inner matrix dimensions must agree.
Disini kita mengalikan elemen-elemen yang seletak dari g dan h dengan menggunakan simbol
perkalian titik (.*). Titik yang mendahului simbol perkalian memberitahu MATLAB untuk melakukan
perkalian elemen ke elemem. Perkalian tanpa titik berarti perkalian matriks.
» o=g./h
o =
0.2500 0.2500 0.2500 0.2500
0.4000 0.4000 0.4000 0.4000
0.5000 0.5000 0.5000 0.5000
» p=h.g
p =
0.2500 0.2500 0.2500 0.2500
Ansar Suyuti 22
Dasar Dasar Pemrograman MATLAB untuk Teknik Elektro
0.4000 0.4000 0.4000 0.4000
0.5000 0.5000 0.5000 0.5000
Seperti yang berlaku pada skalar, pembagian dapat menggunakan garis miring kiri atau miring kanan.
» s=g.^(h-2)
s =
1 1 1 1
8 8 8 8
81 81 81 81
Array dengan elemen satu dan nol
Karena banyak dipergunakan, MATLAB menyediakan fungsi untuk membuat array yang semua
elemennya satu atau nol.
» ones(4)
ans =
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
» zeros(2,5)
ans =
0 0 0 0 0
0 0 0 0 0
» ones(size(g))
ans =
1 1 1 1
1 1 1 1
1 1 1 1
2.5 Memanipulasi Array
Karena array dan matriks merupakan hal mendasar dalam MATLAB, maka terdapat banyak cara untuk
memanipulasinya.
» A=[1 2 3;4 5 6;7 8 9]
A =
1 2 3
4 5 6
7 8 9
Ansar Suyuti 23
Operator dan Fungsi Dasar
Matematis
» A(3,3)=0
A =
1 2 3
4 5 6
7 8 0
mengubah A(3,3) menjadi nol
» A(2,6)=1
A =
1 2 3 0 0 0
4 5 6 0 0 1
7 8 0 0 0 0
mengubah elemen pada baris 2 kolom 6 menjadi satu, karena A tidak mempunyai enam kolom, ukuran
A diperbesar seperlunya dan diisi dengan nol sehingga matriks tetap segi empat.
» A(:,4)=4
A =
1 2 3 4 0 0
4 5 6 4 0 1
7 8 0 4 0 0
membuat semua elemen di kolom empat menjadi 4.
A =
1 2 3
4 5 6
7 8 9
» B=A(3:-1:1,1:3)
B =
7 8 9
4 5 6
1 2 3
menciptakan matriks B dengan urutan baris A yang dibalik
» B=A(3:-1:1,:)
B =
7 8 9
4 5 6
1 2 3
menciptakan matriks B dengan urutan baris A yang dibalik, disini titik dua berarti semua kolom (titik
dua terakhir dari contoh di atas). Jadi : adalah singkatan 1:end atau 1:3 sebab A memiliki 3 kolom.
» C=[A B(:,[1 3])]
C =
1 2 3 7 9
4 5 6 4 6
7 8 9 1 3
membuat matriks C dengan menambhkan semua baris pada kolom pertama dan ketiga B ke sisi kanan
A.
» B=A(1:2,2:3)
B =
2 3
Ansar Suyuti 24
Dasar Dasar Pemrograman MATLAB untuk Teknik Elektro
5 6
membuat B dengan mengambil dua baris pertama dan dua kolom terakhir A.
» B=A(:)
B =
1
4
7
2
5
8
3
6
9
membuat matriks B dengan mengurutkan kolom-kolom A
» B=B.'
B =
1 4 7 2 5 8 3 6 9
mentranspose matriks A
» B=A
B =
1 2 3
4 5 6
7 8 9
» B(:,2)=[]
B =
1 3
4 6
7 9
mendefinisikan kembali B dengan membuang semua baris pada kolom kedua matriks B semula. Saat
anda mengeset sesuatu menjadi matriks kosong [ ], sesuatu itu akan terhapus, mengakibatkan matriks
berkurang menjadi apa yang tertinggal.
Ansar Suyuti 25
Operator dan Fungsi Dasar
Matematis
III OPERASI MATRIKS
3.1 Himpunan Persamaan Linier
Semula MATLAB diciptakan untuk menyederhanakan komputasi matriks dan aljabar linier yang
terdapat di berbagai aplikasi. Contoh :
A. x = b
Dalam MATLAB perkalian matriks dilambangkan asterik (*). Jika terdapat suatu penyelesaian, maka
juga terdapat beberapa metode untuk menyelesaikannya, seperti eliminasi gaus, faktorisasi LU, atau
penggunaan langsung dari A-1
. secara analisis, penyelesaian ditulis sebagai x = A-1
.b.
Untuk menyelesaikan masalah tersebut di atas diperlukan cara untuk memasukkan A dan b.
» A=[1 2 3;4 5 6;7 8 0]
A =
1 2 3
4 5 6
7 8 0
» b=[366;804;351]
b =
366
804
351
Jika anda mempunyai dasar aljabar linier maka sangat mudah untuk menentukan bahwa masalah
mempunyai satu jawaban tunggal jika determinan matriks A tidak sama dengan nol.
» det(A)
ans =
27
» inv(A)
ans =
-1.7778 0.8889 -0.1111
1.5556 -0.7778 0.2222
-0.1111 0.2222 -0.1111
Penyelesaian persamaan linier tersebut dapat diselesai dengan tiga cara :
Cara I, dengan menggunakan invers matriks
» x=inv(A)*b
x =
Ansar Suyuti 26










=




















351
804
366
3
2
1
.
087
654
321
x
x
x
Dasar Dasar Pemrograman MATLAB untuk Teknik Elektro
25.0000
22.0000
99.0000
Cara II, dengan menggunakan operasi pembagian matriks
» x=Ab
x =
25.0000
22.0000
99.0000
Cara III, dengan menggunakan factorisasi lu dari hasil dari upper af lower matrik triangular , A=LU,
dimana X diperoleh dari X = U-1
L-1
B.
» A=[1 2 3;4 5 6;7 8 0];
» B=[366;804;351];
» [L,U]=lu(A)
L =
0.1429 1.0000 0
0.5714 0.5000 1.0000
1.0000 0 0
U =
7.0000 8.0000 0
0 0.8571 3.0000
0 0 4.5000
» X=inv(U)*inv(L)*B
X =
25.0000
22.0000
99.0000
Untuk mencari nilai eigen values dan eigen vektor
» [x,D]=eig(A)
x =
0.7471 -0.2998 -0.2763
-0.6582 -0.7075 -0.3884
0.0931 -0.6400 0.8791
D =
-0.3884 0 0
Ansar Suyuti 27
Operator dan Fungsi Dasar
Matematis
0 12.1229 0
0 0 -5.7345
atau
» eig(A)
ans =
-0.3884
12.1229
-5.7345
3.2 Fungsi-fungsi Matriks yang umum digunakan
det (A) determinan
d=eig(A) Nilai eigen
[V,D] = eig(A) nilai eigen dan eigen vektor
expm(A) pemangkatan matriks
inv(A) invers matriks
lu(A) faktor dari eliminasi gaus
orth(A) ortognalisasi
pinv(A) pseudoinvers
poly(A) karakteristik polynomial
polyeig(A1,A2,..) menyelesaikan masalah nilai eigen polinomial
sqrtm(A) akar kuadrat matriks
svd(A) dekomposisi nilai singular
trace(A) jumlah elemen-elemen diagonal
3.3 Matriks Khusus
Matriks dengan kegunaan umum meliputi
» zeros(3)
ans =
0 0 0
0 0 0
0 0 0
» ones(2,4) % 2x4 matriks berelemen satu
ans =
1 1 1 1
1 1 1 1
» zeros(3)+pi
ans =
3.1416 3.1416 3.1416
3.1416 3.1416 3.1416
3.1416 3.1416 3.1416
» eye(3) % matriks identitas
ans =
1 0 0
Ansar Suyuti 28
Dasar Dasar Pemrograman MATLAB untuk Teknik Elektro
0 1 0
0 0 1
Contoh; carilah nilai v dan gambar nilai yang diperoleh.









−
=




























+−
−−
++−
−
0
0
1
3
2
1
.
10
1
10
1
10
1
0
10
1
10
1
2.0
2
1
2
1
0
2
1
2
1
v
v
v
jj
jj
j
kita dapat menyelesaikan dengan MATLAB dalam M-File :
% pl1.m nama proram
clear
A(1,1)=1/2;
A(1,2)=-1/2;
A(2,1)=-1/2;
A(2,2)=1/2+0.2j+1/10j;
A(2,3)=-1/10j;
A(3,2)=-1/10j;
A(3,3)=1/10+1/10j;
y=[-1 0 0]';
% Penyelesaian persamaan
v=Ay
vmag=abs(v)
sudutv=angle(v)*180/pi
% menggambar hasil terhadap waktu
theta=linspace(0,2*pi);
v1=vmag(1)*cos(theta-sudutv(1));
v2=vmag(2)*cos(theta-sudutv(2));
v3=vmag(3)*cos(theta-sudutv(3));
thd=theta*180*pi;
plot(thd,v1,thd,v2,thd,v3);
Ansar Suyuti 29
Operator dan Fungsi Dasar
Matematis
jika program tersebut dijalankan, hasilnya seperti dibawah ini ;
» pl1
v =
-4.0000 + 6.0000i
-2.0000 + 6.0000i
2.0000 + 4.0000i
vmag =
7.2111
6.3246
4.4721
sudutv =
123.6901
108.4349
63.4349
0 500 1000 1500 2000 2500 3000 3500 4000
-8
-6
-4
-2
0
2
4
6
8
Ansar Suyuti 30
Dasar Dasar Pemrograman MATLAB untuk Teknik Elektro
IV. OPERASI RELASI DAN LOGIKA & KONTROL PROGRAM
Matlab menyediakan operasi logika dan relasi. Kegunaan dari operator dan fungsi tersebut ialah untuk
menyediakan jawaban atas pertanyaan benar salah. Salah satu kegunaan penting dari kemampuan ini
ialah untuk mengontrol urutan eksekusi sederetan perintah MATLAB berdasarkan pada hasil
benar/salah. MATLAB menganggap semua angka tidak nol sebagai benar, dan nol sebagai salah. Hasil
dari ekspresi relasi dan logika adalah satu untuk Benar dan nol untuk Salah dengan tipe array logika,
yaitu hasilnya membuat bilangan 1 dan 0 yang tidak saja dapat digunakan untuk statemen matematika,
tetapi juga dapat digunakan untuk pengalamatan.
4.1 Operator Relasi
Operator relasi MATLAB terdiri semua perbandingan :
Operator relasi Deskripsi
<
<=
>
>=
=
~=
Kurang dari
Kurang dari atau sama dengan
Lebih dari
Lebih dari atau sama dengan
Sama dengan
Tidak sama dengan
Operator relasi MATLAB dapat dipergunakan untuk membandingkan dua array berukuran sama atau
untuk membandingkan array dengan skalar.Skalar dibandingkan dengan semua elemen array dan
hasilnya berukuran sama . Contoh ;
» A=1:9,B=9-A
A =
1 2 3 4 5 6 7 8 9
B =
8 7 6 5 4 3 2 1 0
» tf=A>4
tf =
0 0 0 0 1 1 1 1 1
» tf=(A==B)
tf =
0 0 0 0 0 0 0 0 0
» x=(-3:3)/3
x =
-1.0000 -0.6667 -0.3333 0 0.3333 0.6667 1.0000
» sin(x)./x
Warning: Divide by zero.
ans =
0.8415 0.9276 0.9816 NaN 0.9816 0.9276 0.8415
kita bandingkan
» x=x+(x==0)*eps
x =
-1.0000 -0.6667 -0.3333 0.0000 0.3333 0.6667 1.0000
Ansar Suyuti 31
Operator dan Fungsi Dasar
Matematis
» sin(x)./x
ans =
0.8415 0.9276 0.9816 1.0000 0.9816 0.9276 0.8415
4.2 Operator Logika
Operator logika menyediakan cara untuk menggabung eksperi logika. Operator logika terdiri dari :
Operator Logika Deskripsi
&
|
~
AND
OR
NOT
» A=1:9; b=9-A;
» tf=A>4
tf =
0 0 0 0 1 1 1 1 1
» tf=~(A>4)
tf =
1 1 1 1 0 0 0 0 0
» tf=(A>2)&(A<6)
tf =
0 0 1 1 1 0 0 0 0
4.3 KONTROL PROGRAM
Kontrol program sangat penting karena memungkinkan komputasi-komputasi yang lalu mempengaruhi
komputasi yang akan datang. MATLAB menyediakan empat struktur pengambilan keputusan atau
struktur kontrol program, yaitu : loop for, loop while, if-else-end, dan swicth-case.
4.3.1 Loop for
Loop for memungkinkan sekelompok perintah diulang sebanyak suatu jumlah yang tetap. Bentuk
umum dari loop for adalah
For x = array
Perintah-perintah
end
contoh;
for n=1:10
x(n)=sin(n*pi/10)
end
x =
Columns 1 through 7
Ansar Suyuti 32
Dasar Dasar Pemrograman MATLAB untuk Teknik Elektro
0.3090 0.5878 0.8090 0.9511 1.0000 0.9511 0.8090
Columns 8 through 10
0.5878 0.3090 0.0000
» data=[3 9 45 6;7 16 -1 5]
data =
3 9 45 6
7 16 -1 5
» for n=data
x=n(1)-n(2)
end
x =
-4
x =
-7
x =
46
x =
1
loop for dapat dibuat didalam loop for yang lain ;
» for n=1:5
for m=5:-1:1
A(n,m)=n^2+m^2;
end;
disp(n)
end
1
2
3
4
5
» A
A =
2 5 10 17 26
5 8 13 20 29
10 13 18 25 34
17 20 25 32 41
26 29 34 41 50
» n=1:10;
» x=sin(n*pi/10)
x =
Columns 1 through 7
0.3090 0.5878 0.8090 0.9511 1.0000 0.9511 0.8090
Columns 8 through 10
0.5878 0.3090 0.0000
4.3.2 Loop While
Ansar Suyuti 33
Operator dan Fungsi Dasar
Matematis
Loop while mengerjakan sekelompok perintah yang diulang secara tidak terbatas.
Bentuk umum loop while adalah ;
while ekspresi
Perintah-perintah
end
perintah-perintah yang terdapat di antara while dan end dieksekusi berulang kali selama semua elemen
dalam ekspresi adalah benar.
» a=0; k=1;
» while (1+k)>1
k=k/2;
a=a+1;
end
» a
a =
53
atau k/10 diperoleh
» a=0;k=1;
» while(1+k)>1
k=k/10;
a=a+1;
end
» a
a =
16
4.3.3 If-else-end
Bentuk paling sederhana if-else-end adalah
if ekspresi
perintah …
end
untuk kasus dengan dua pilihan if-else-end adalah
if ekspresi
perintah…jika memenuhi eksperesi
else
perintah… jika tidak memenuhi ekspresi (salah)
end
Ansar Suyuti 34
Dasar Dasar Pemrograman MATLAB untuk Teknik Elektro
Jika terdapat 3 atau lebih pilihan if-else-end :
elseif ekspresi1
Perintah.. jika ekspresi1 benar
elseif ekspresi2
Perintah.. jika ekspresi2 benar
elseif ekspresi3
Perintah.. jika ekspresi3 benar
elseif…
else
perintah.. dikerjakan jika tak ada ekspresi benar
end
for k = 1:10;
if k<3
b=k+1;
elseif k<5
c=k+1;
elseif k<7
d=k+1;
else
e=k+1
end;
end;
» b,c,d,e
b =
3
c =
5
d =
7
e =
11
a=0;b=0;c=0;d=0;
for k = 1:10;
if k<3
a=a+1;
elseif k<5
b=b+1;
elseif k<7
c=c+1;
else
d=d+1;
end;
end;
» pl3
Ansar Suyuti 35
Operator dan Fungsi Dasar
Matematis
» a,b,c,d
a =
2
b =
2
c =
2
d =
4
4.3.4 Switch-Case
Bentuk umum dari switch-case adalah
switch ekspresi
case test_ekspresi
deret_perintah1
case {test_ekspresi2, test_ekspresi3, test_ekspresi4}
deret_ekspresi2
otherwise
deret ekspresi3
end
x=2.7;
units='m'
switch units
case {'inchi','in'} %konversi ke inchi
y=x*2.54
case{'feet','ft'} % konversi ke feet
y=x*2.54*12
case{'meter','m'} % konversi ke meter
y=x/100
case{'milimeter','mm'}
y=x*10
case{'centimeter','cm'}
y=x
otherwise
disp(['unit tidak diketahui :' units])
y=nan
end;
» pl4
units =
m
y =
0.0270
Ansar Suyuti 36
Dasar Dasar Pemrograman MATLAB untuk Teknik Elektro
V. AKAR-AKAR DAN KARAKTERISTIK POLINOMIAL
5.1 Akar-akar Polynomial
Mencari akar suatu polinomial merupakan suatu masalah tersendiri muncul dalam berbagai bidang
ilmu. MATLAB menyediakan fungsi roots untuk mencari akar polinomial, sedngan akar-akar
polinimial yang diperoleh dapat dikonversi kedalam persamaan awal dengan fungsi poly. Contoh :
1575.1475.6725.6125.319 23456
++++++ ssssss
akar-akar dapat diperoleh dengan menggunakan fungsi roots:
» p=[1 9 31.25 61.25 67.75 14.75 15]
p =
1.0000 9.0000 31.2500 61.2500 67.7500 14.7500 15.0000
» r=roots(p)
r =
-4.0000
-3.0000
-1.0000 + 2.0000i
-1.0000 - 2.0000i
0.0000 + 0.5000i
0.0 - 0.5000i
akar-akar polinomial tersebut dapat dikonversi ke coefisient polinomial dengan fungsi poly(r):
» poly(r)
ans =
1.0000 9.0000 31.2500 61.2500 67.7500 14.7500 15.0000
Contoh lain :
» r=[-1 -2 -3+4i -3-4i]
r =
-1.0000 -2.0000 -3.0000 + 4.0000i -3.0000 - 4.0000i
» poly(r)
ans =
1 9 45 87 50
berarti persamaan polinomialnya adalah :
Ansar Suyuti 37
Operator dan Fungsi Dasar
Matematis
05087459 234
=++++ ssss
MATLAB juga juga dapat mencari akar karaktristik persamaan polinomial dalam bentuk matriks :
A=










−−
−−
−
5116
6116
110
Karakteristik persamaan dari matriks tersebut dapat diperoleh fungsi poly dan akar-akar persamaan
diperoleh dengan fungsi roots:
» A=[0 1 -1;-6 -11 6;-6 -11 5];
» p=poly(A)
p =
1.0000 6.0000 11.0000 6.0000
» r=roots(p)
r =
-3.0000
-2.0000
-1.0000
akar-akar dari karakteristik persamaan tersebut sama dengan eigenvalues dari matriks A atau
r=eig(A)
» eig(A)
ans =
-1.0000
-2.0000
-3.0000
5.2 Perkalian, Pembagian dan Penjumlahan Polinomial
Perkalian polinomial dilakukan dengan fungsi conv (melakukan convulotion dari array), pembagian
dilakukan dengan fungsi deconv dan penjumlahan dilakukan dengan seperti penjumlahan array
biasa tetapi derajat polinomial harus sama, jika polinomial mempunyai derajat yang berbeda maka
derajat yang lebih rendah ditambahkan dengan koefisien-koefisien nol atau menggunakan fungsi
yang disediakan oleh MATLAB yaitu polyadd.
Contoh :
1272
++= ssA dan 92
+= sB carilah C=A.B , D=C+B dan E=C-B
Ansar Suyuti 38
Dasar Dasar Pemrograman MATLAB untuk Teknik Elektro
5281379 234
++++= ssssA dan 1342
++= ssY carilah
Y
Z
X =
contoh dapat diselesaikan dengan MATLAB
A=[1 7 12];B=[1 0 9];
Z=[1 9 37 81 52]; Y=[1 4 13];
C=conv(A,B)
D=A+B
E=A-B
X=deconv(Z,Y)
Hasil dari program adalah :
C =
1 7 21 63 108
D =
2 7 21
E =
0 7 3
X =
1 5 4
5.3 Turunan
Turunan polinomial dapat dilakukan dengan menggunakan fungsi polyder.
5281379 234
++++= ssssA
turunan dari polinomial A adalah:
» A=[1 9 37 81 52];
» polyder(A)
ans =
4 27 74 81
5.4 Polynomial Curve Fitting
n
dd
cxcxcxp +++= −
....)( 1
21
Persamaan tersebut mempunyai koefisien n=d+1, dengan derajat d. Maka fungsi pengurangan orde
polynomial adalah polyfit(x,y,d).
Contoh
X= 0 1 2 4 6 10
Y= 1 7 23 109 307 1231
Carilah sebuah polinomial derajat ke 3 dari data tersebut di atas;
» x=[0 1 2 4 6 10];
» y=[1 7 23 109 307 1231];
Ansar Suyuti 39
Operator dan Fungsi Dasar
Matematis
» c = polyfit(x,y,3)
c =
1.0000 2.0000 3.0000 1.0000
5.5 Evaluasi Polinomial
Evaluasi polinomial dapat dilakukan dengan fungsi polyval(c,x).
Contoh, kita ingin mengevaluasi polynomianl c terhadap titik x= 0,1,2,3 dan 4 .
» plot(t,x)
» c=[1 2 3 1];
» x=0:1:4;
» y=polyval(c,x)
y =
1 7 23 55 109
» plot(x,y),title('x^3+2x^2+3x+1')
0 0.5 1 1.5 2 2.5 3 3.5 4
0
20
40
60
80
100
120
x3
+2x2
+3x+1
5.6 Partial-fraction Expansion
Untuk memperoleh residu atau partial-fraction expantion ( r ) , kutup yang bersesuaian (p) dan dirct
terms (K), digunakan fungsi : [r,p,K]=residu(b,a].
01
1
1
01
1
1
...
...
)(
)(
asasasa
bsbsbsb
sQ
sP
n
n
n
n
m
m
m
m
++++
++++
= −
−
−
−
Vector b dan a merupakan koefisien dari polinomial.
Contoh, Hitunglah partial fraction expantion dari :
Ansar Suyuti 40
Dasar Dasar Pemrograman MATLAB untuk Teknik Elektro
44
192
)( 23
3
+++
++
=
sss
ss
sF
Penyelesaian dengan MALAB adalah
» b=[2 0 9 1];
» a=[1 1 4 4];
» [r,p,K]=residue(b,a)
r =
0.0000 - 0.2500i
0.0000 + 0.2500i
-2.0000
p =
-0.0000 + 2.0000i
-0.0000 - 2.0000i
-1.0000
K =
2
Berarti partial fraction expantion-nya adalah
4
1
1
2
2
25.0
2
25.0
1
2
2 2
+
+
+
−
+=
−
−
+
−
+
+
−
+
ssjs
j
js
j
s
untuk mengembalikan persamaan polinomial P(s)/Q(s) dapat dilakukan dengan fungsi
[b,a]=residue(r,p,K).
» [b,a]=residue(r,p,K)
b =
2.0000 0.0000 9.0000 1.0000
a =
1.0000 1.0000 4.0000 4.0000
Ansar Suyuti 41

More Related Content

What's hot

Laporan Fisdas Resonansi
Laporan Fisdas ResonansiLaporan Fisdas Resonansi
Laporan Fisdas Resonansi
Widya arsy
 
Kelompok 3 integrasi numerik fix
Kelompok 3 integrasi numerik fixKelompok 3 integrasi numerik fix
Kelompok 3 integrasi numerik fix
liabika
 
Rangkaian Seri R-L-C dan Resonansi
Rangkaian Seri R-L-C dan ResonansiRangkaian Seri R-L-C dan Resonansi
Rangkaian Seri R-L-C dan Resonansi
Muhammad Amal
 
Register geser
Register geserRegister geser
Register geser
University of Lampung
 
Pertemuan 3 turunan dan aturan rantai
Pertemuan 3   turunan dan aturan rantaiPertemuan 3   turunan dan aturan rantai
Pertemuan 3 turunan dan aturan rantai
Senat Mahasiswa STIS
 
Deret taylor and mac laurin
Deret taylor and mac laurinDeret taylor and mac laurin
Deret taylor and mac laurin
Moch Hasanudin
 
Lapres Akustik & Getaran [Geteran Teredam]
Lapres Akustik & Getaran [Geteran Teredam]Lapres Akustik & Getaran [Geteran Teredam]
Lapres Akustik & Getaran [Geteran Teredam]
Dionisius Kristanto
 
Rangkaian Listrik Resonansi
Rangkaian Listrik ResonansiRangkaian Listrik Resonansi
Rangkaian Listrik ResonansiFauzi Nugroho
 
Makalah osiloskop
Makalah osiloskopMakalah osiloskop
Makalah osiloskop
Muhammad Nur Fikri
 
Laporan modul 7 (rangkaian seri rlc)
Laporan modul 7 (rangkaian seri rlc)Laporan modul 7 (rangkaian seri rlc)
Laporan modul 7 (rangkaian seri rlc)
FEmi1710
 
Bilangan kompleks lengkap
Bilangan kompleks lengkapBilangan kompleks lengkap
Bilangan kompleks lengkapagus_budiarto
 
Modul teknik-digital
Modul teknik-digitalModul teknik-digital
Modul teknik-digitalecko gmc
 
Kapasitans dan dielektrik dan contoh soal
Kapasitans dan dielektrik dan contoh soalKapasitans dan dielektrik dan contoh soal
Kapasitans dan dielektrik dan contoh soal
Azhar Al
 
Laporan ikb acara 3
Laporan ikb acara 3Laporan ikb acara 3
Laporan ikb acara 3
Yuwan Kilmi
 
Analisis vektor
Analisis vektorAnalisis vektor
Analisis vektor
Riyan Supriadi Supriadi
 
7. medan magnetik_tunak
7. medan magnetik_tunak7. medan magnetik_tunak
7. medan magnetik_tunak
Christian Marpaung
 
Laporan fisika dasar resonansi bunyi dari gelombang suara (edit)
Laporan fisika dasar resonansi bunyi dari gelombang suara (edit)Laporan fisika dasar resonansi bunyi dari gelombang suara (edit)
Laporan fisika dasar resonansi bunyi dari gelombang suara (edit)
Erliana Amalia Diandra
 
Modul 2 aljabar boole dan hukum de morgan ok
Modul 2   aljabar boole dan hukum de morgan okModul 2   aljabar boole dan hukum de morgan ok
Modul 2 aljabar boole dan hukum de morgan ok
Zony MuttaQin
 
Gerbang Universal NAND dan NOR
Gerbang Universal NAND dan NORGerbang Universal NAND dan NOR
Gerbang Universal NAND dan NOR
Anarstn
 
Rangkaian seri r l c
Rangkaian seri r l cRangkaian seri r l c
Rangkaian seri r l c
zhalsabella kh bahri
 

What's hot (20)

Laporan Fisdas Resonansi
Laporan Fisdas ResonansiLaporan Fisdas Resonansi
Laporan Fisdas Resonansi
 
Kelompok 3 integrasi numerik fix
Kelompok 3 integrasi numerik fixKelompok 3 integrasi numerik fix
Kelompok 3 integrasi numerik fix
 
Rangkaian Seri R-L-C dan Resonansi
Rangkaian Seri R-L-C dan ResonansiRangkaian Seri R-L-C dan Resonansi
Rangkaian Seri R-L-C dan Resonansi
 
Register geser
Register geserRegister geser
Register geser
 
Pertemuan 3 turunan dan aturan rantai
Pertemuan 3   turunan dan aturan rantaiPertemuan 3   turunan dan aturan rantai
Pertemuan 3 turunan dan aturan rantai
 
Deret taylor and mac laurin
Deret taylor and mac laurinDeret taylor and mac laurin
Deret taylor and mac laurin
 
Lapres Akustik & Getaran [Geteran Teredam]
Lapres Akustik & Getaran [Geteran Teredam]Lapres Akustik & Getaran [Geteran Teredam]
Lapres Akustik & Getaran [Geteran Teredam]
 
Rangkaian Listrik Resonansi
Rangkaian Listrik ResonansiRangkaian Listrik Resonansi
Rangkaian Listrik Resonansi
 
Makalah osiloskop
Makalah osiloskopMakalah osiloskop
Makalah osiloskop
 
Laporan modul 7 (rangkaian seri rlc)
Laporan modul 7 (rangkaian seri rlc)Laporan modul 7 (rangkaian seri rlc)
Laporan modul 7 (rangkaian seri rlc)
 
Bilangan kompleks lengkap
Bilangan kompleks lengkapBilangan kompleks lengkap
Bilangan kompleks lengkap
 
Modul teknik-digital
Modul teknik-digitalModul teknik-digital
Modul teknik-digital
 
Kapasitans dan dielektrik dan contoh soal
Kapasitans dan dielektrik dan contoh soalKapasitans dan dielektrik dan contoh soal
Kapasitans dan dielektrik dan contoh soal
 
Laporan ikb acara 3
Laporan ikb acara 3Laporan ikb acara 3
Laporan ikb acara 3
 
Analisis vektor
Analisis vektorAnalisis vektor
Analisis vektor
 
7. medan magnetik_tunak
7. medan magnetik_tunak7. medan magnetik_tunak
7. medan magnetik_tunak
 
Laporan fisika dasar resonansi bunyi dari gelombang suara (edit)
Laporan fisika dasar resonansi bunyi dari gelombang suara (edit)Laporan fisika dasar resonansi bunyi dari gelombang suara (edit)
Laporan fisika dasar resonansi bunyi dari gelombang suara (edit)
 
Modul 2 aljabar boole dan hukum de morgan ok
Modul 2   aljabar boole dan hukum de morgan okModul 2   aljabar boole dan hukum de morgan ok
Modul 2 aljabar boole dan hukum de morgan ok
 
Gerbang Universal NAND dan NOR
Gerbang Universal NAND dan NORGerbang Universal NAND dan NOR
Gerbang Universal NAND dan NOR
 
Rangkaian seri r l c
Rangkaian seri r l cRangkaian seri r l c
Rangkaian seri r l c
 

Similar to Matlab 2

Matlab 5
Matlab 5Matlab 5
Matlab 5
Hastih Leo
 
Modul 2 Variabel dan operasi dasar (1).pptx
Modul 2 Variabel dan operasi dasar (1).pptxModul 2 Variabel dan operasi dasar (1).pptx
Modul 2 Variabel dan operasi dasar (1).pptx
ssuser4e88af1
 
Analisa Rangkaian Listrik Menggunakan MATLAB
Analisa Rangkaian Listrik Menggunakan MATLABAnalisa Rangkaian Listrik Menggunakan MATLAB
Analisa Rangkaian Listrik Menggunakan MATLAB
Andry Saftiawan
 
Matlab 1
Matlab 1Matlab 1
Matlab 1
Hastih Leo
 
Matlab 3
Matlab 3Matlab 3
Matlab 3
Hastih Leo
 
Manfaat Aplikasi Program Komputer dalam Pembelajaran Fisika
Manfaat Aplikasi Program Komputer dalam Pembelajaran FisikaManfaat Aplikasi Program Komputer dalam Pembelajaran Fisika
Manfaat Aplikasi Program Komputer dalam Pembelajaran Fisika
habno
 
Matlab 8
Matlab 8Matlab 8
Matlab 8
Hastih Leo
 
Praktikum p-fisika
Praktikum p-fisikaPraktikum p-fisika
Praktikum p-fisika
Muhammad Hairullah
 
Cepat mahir dengan matlab
Cepat mahir dengan matlabCepat mahir dengan matlab
Cepat mahir dengan matlab
Nur Hy
 
Modul maple untuk metnum 2014
Modul maple untuk metnum 2014Modul maple untuk metnum 2014
Modul maple untuk metnum 2014
Samuel Pinto'o
 
Tutorialmatlab bahasa indonesia
Tutorialmatlab bahasa indonesiaTutorialmatlab bahasa indonesia
Tutorialmatlab bahasa indonesia
zn Yedhi
 
Tutorial matlab .pdf
Tutorial matlab .pdfTutorial matlab .pdf
Tutorial matlab .pdf
Hening Prasetya
 
Tutorial matlab libre
Tutorial matlab libreTutorial matlab libre
Tutorial matlab libreDoni Rahman
 
Matlab Tutorial
Matlab TutorialMatlab Tutorial
Matlab Tutorial
riswanridwan
 
Tutorial matlab
Tutorial matlabTutorial matlab
Tutorial matlabNur Lely
 
Modul Pert 1 Matlab.pdf
Modul Pert 1 Matlab.pdfModul Pert 1 Matlab.pdf
Modul Pert 1 Matlab.pdf
Roy Sukro
 
1 pengenalan matlab
1  pengenalan matlab1  pengenalan matlab
1 pengenalan matlab
Simon Patabang
 
2. galat
2. galat2. galat

Similar to Matlab 2 (20)

Matlab 5
Matlab 5Matlab 5
Matlab 5
 
Modul 2 Variabel dan operasi dasar (1).pptx
Modul 2 Variabel dan operasi dasar (1).pptxModul 2 Variabel dan operasi dasar (1).pptx
Modul 2 Variabel dan operasi dasar (1).pptx
 
Analisa Rangkaian Listrik Menggunakan MATLAB
Analisa Rangkaian Listrik Menggunakan MATLABAnalisa Rangkaian Listrik Menggunakan MATLAB
Analisa Rangkaian Listrik Menggunakan MATLAB
 
Matlab 1
Matlab 1Matlab 1
Matlab 1
 
Matlab 3
Matlab 3Matlab 3
Matlab 3
 
Manfaat Aplikasi Program Komputer dalam Pembelajaran Fisika
Manfaat Aplikasi Program Komputer dalam Pembelajaran FisikaManfaat Aplikasi Program Komputer dalam Pembelajaran Fisika
Manfaat Aplikasi Program Komputer dalam Pembelajaran Fisika
 
Fungsi grafik di matlab
Fungsi grafik di matlabFungsi grafik di matlab
Fungsi grafik di matlab
 
Matlab 8
Matlab 8Matlab 8
Matlab 8
 
Praktikum p-fisika
Praktikum p-fisikaPraktikum p-fisika
Praktikum p-fisika
 
Modul 1 matlab 1
Modul 1 matlab 1Modul 1 matlab 1
Modul 1 matlab 1
 
Cepat mahir dengan matlab
Cepat mahir dengan matlabCepat mahir dengan matlab
Cepat mahir dengan matlab
 
Modul maple untuk metnum 2014
Modul maple untuk metnum 2014Modul maple untuk metnum 2014
Modul maple untuk metnum 2014
 
Tutorialmatlab bahasa indonesia
Tutorialmatlab bahasa indonesiaTutorialmatlab bahasa indonesia
Tutorialmatlab bahasa indonesia
 
Tutorial matlab .pdf
Tutorial matlab .pdfTutorial matlab .pdf
Tutorial matlab .pdf
 
Tutorial matlab libre
Tutorial matlab libreTutorial matlab libre
Tutorial matlab libre
 
Matlab Tutorial
Matlab TutorialMatlab Tutorial
Matlab Tutorial
 
Tutorial matlab
Tutorial matlabTutorial matlab
Tutorial matlab
 
Modul Pert 1 Matlab.pdf
Modul Pert 1 Matlab.pdfModul Pert 1 Matlab.pdf
Modul Pert 1 Matlab.pdf
 
1 pengenalan matlab
1  pengenalan matlab1  pengenalan matlab
1 pengenalan matlab
 
2. galat
2. galat2. galat
2. galat
 

More from Hastih Leo

PPT INTERPOLASI POLINOMIAL
PPT INTERPOLASI POLINOMIALPPT INTERPOLASI POLINOMIAL
PPT INTERPOLASI POLINOMIAL
Hastih Leo
 
Dampak PLTN terhadap lingkungan
Dampak PLTN terhadap lingkunganDampak PLTN terhadap lingkungan
Dampak PLTN terhadap lingkungan
Hastih Leo
 
MAKALAH KESTABILAN TEGANGAN
MAKALAH KESTABILAN TEGANGANMAKALAH KESTABILAN TEGANGAN
MAKALAH KESTABILAN TEGANGAN
Hastih Leo
 
MODUL PRAKTIKUM FISIKA DASAR II
MODUL PRAKTIKUM FISIKA DASAR IIMODUL PRAKTIKUM FISIKA DASAR II
MODUL PRAKTIKUM FISIKA DASAR II
Hastih Leo
 
PPT ISOLASI JARINGAN DISTRIBUSI
PPT ISOLASI JARINGAN DISTRIBUSIPPT ISOLASI JARINGAN DISTRIBUSI
PPT ISOLASI JARINGAN DISTRIBUSI
Hastih Leo
 
PPT MENARA TRANSMISI
PPT MENARA TRANSMISIPPT MENARA TRANSMISI
PPT MENARA TRANSMISI
Hastih Leo
 
MAKALAH TRANSMISI ARUS BOLAK BALIK KAWAT TANAH
MAKALAH TRANSMISI ARUS BOLAK BALIK KAWAT TANAHMAKALAH TRANSMISI ARUS BOLAK BALIK KAWAT TANAH
MAKALAH TRANSMISI ARUS BOLAK BALIK KAWAT TANAH
Hastih Leo
 
Makalah KONVERSI ENERGI
Makalah KONVERSI ENERGIMakalah KONVERSI ENERGI
Makalah KONVERSI ENERGI
Hastih Leo
 
Matlab 10
Matlab 10Matlab 10
Matlab 10
Hastih Leo
 
Matlab 7
Matlab 7Matlab 7
Matlab 7
Hastih Leo
 
Matlab 6
Matlab 6Matlab 6
Matlab 6
Hastih Leo
 
Matlab 4
Matlab 4Matlab 4
Matlab 4
Hastih Leo
 
Sebuah program untuk menghitung luar persegi panjang, luas segitiga dan luas ...
Sebuah program untuk menghitung luar persegi panjang, luas segitiga dan luas ...Sebuah program untuk menghitung luar persegi panjang, luas segitiga dan luas ...
Sebuah program untuk menghitung luar persegi panjang, luas segitiga dan luas ...
Hastih Leo
 
TUGAS BAHASA C
TUGAS BAHASA CTUGAS BAHASA C
TUGAS BAHASA C
Hastih Leo
 
TUGAS BAHASA C
TUGAS BAHASA CTUGAS BAHASA C
TUGAS BAHASA C
Hastih Leo
 
BAHASA C
BAHASA CBAHASA C
BAHASA C
Hastih Leo
 
Tugas MATLAB
Tugas MATLABTugas MATLAB
Tugas MATLAB
Hastih Leo
 
Makalah Teknologi Transformator
Makalah Teknologi TransformatorMakalah Teknologi Transformator
Makalah Teknologi Transformator
Hastih Leo
 
Makalah teknologi transformator
Makalah teknologi transformatorMakalah teknologi transformator
Makalah teknologi transformator
Hastih Leo
 
Makalah teknologi transformer
Makalah teknologi transformerMakalah teknologi transformer
Makalah teknologi transformer
Hastih Leo
 

More from Hastih Leo (20)

PPT INTERPOLASI POLINOMIAL
PPT INTERPOLASI POLINOMIALPPT INTERPOLASI POLINOMIAL
PPT INTERPOLASI POLINOMIAL
 
Dampak PLTN terhadap lingkungan
Dampak PLTN terhadap lingkunganDampak PLTN terhadap lingkungan
Dampak PLTN terhadap lingkungan
 
MAKALAH KESTABILAN TEGANGAN
MAKALAH KESTABILAN TEGANGANMAKALAH KESTABILAN TEGANGAN
MAKALAH KESTABILAN TEGANGAN
 
MODUL PRAKTIKUM FISIKA DASAR II
MODUL PRAKTIKUM FISIKA DASAR IIMODUL PRAKTIKUM FISIKA DASAR II
MODUL PRAKTIKUM FISIKA DASAR II
 
PPT ISOLASI JARINGAN DISTRIBUSI
PPT ISOLASI JARINGAN DISTRIBUSIPPT ISOLASI JARINGAN DISTRIBUSI
PPT ISOLASI JARINGAN DISTRIBUSI
 
PPT MENARA TRANSMISI
PPT MENARA TRANSMISIPPT MENARA TRANSMISI
PPT MENARA TRANSMISI
 
MAKALAH TRANSMISI ARUS BOLAK BALIK KAWAT TANAH
MAKALAH TRANSMISI ARUS BOLAK BALIK KAWAT TANAHMAKALAH TRANSMISI ARUS BOLAK BALIK KAWAT TANAH
MAKALAH TRANSMISI ARUS BOLAK BALIK KAWAT TANAH
 
Makalah KONVERSI ENERGI
Makalah KONVERSI ENERGIMakalah KONVERSI ENERGI
Makalah KONVERSI ENERGI
 
Matlab 10
Matlab 10Matlab 10
Matlab 10
 
Matlab 7
Matlab 7Matlab 7
Matlab 7
 
Matlab 6
Matlab 6Matlab 6
Matlab 6
 
Matlab 4
Matlab 4Matlab 4
Matlab 4
 
Sebuah program untuk menghitung luar persegi panjang, luas segitiga dan luas ...
Sebuah program untuk menghitung luar persegi panjang, luas segitiga dan luas ...Sebuah program untuk menghitung luar persegi panjang, luas segitiga dan luas ...
Sebuah program untuk menghitung luar persegi panjang, luas segitiga dan luas ...
 
TUGAS BAHASA C
TUGAS BAHASA CTUGAS BAHASA C
TUGAS BAHASA C
 
TUGAS BAHASA C
TUGAS BAHASA CTUGAS BAHASA C
TUGAS BAHASA C
 
BAHASA C
BAHASA CBAHASA C
BAHASA C
 
Tugas MATLAB
Tugas MATLABTugas MATLAB
Tugas MATLAB
 
Makalah Teknologi Transformator
Makalah Teknologi TransformatorMakalah Teknologi Transformator
Makalah Teknologi Transformator
 
Makalah teknologi transformator
Makalah teknologi transformatorMakalah teknologi transformator
Makalah teknologi transformator
 
Makalah teknologi transformer
Makalah teknologi transformerMakalah teknologi transformer
Makalah teknologi transformer
 

Recently uploaded

SURVEY REKAYASA SURVEY REKAYASA SURVEY REKAYASA
SURVEY REKAYASA SURVEY REKAYASA SURVEY REKAYASASURVEY REKAYASA SURVEY REKAYASA SURVEY REKAYASA
SURVEY REKAYASA SURVEY REKAYASA SURVEY REKAYASA
AnandhaAdkhaM1
 
Daftar Lembaga Penyedia Jasa Linkungan.pdf
Daftar Lembaga Penyedia Jasa Linkungan.pdfDaftar Lembaga Penyedia Jasa Linkungan.pdf
Daftar Lembaga Penyedia Jasa Linkungan.pdf
Tsabitpattipeilohy
 
RANGKAIAN LISTRIK MATERI 7 ANALISIS MESH.pptx
RANGKAIAN LISTRIK MATERI 7 ANALISIS MESH.pptxRANGKAIAN LISTRIK MATERI 7 ANALISIS MESH.pptx
RANGKAIAN LISTRIK MATERI 7 ANALISIS MESH.pptx
muhammadiswahyudi12
 
Matematika diskrit: metode pohon/trees.ppt
Matematika diskrit: metode pohon/trees.pptMatematika diskrit: metode pohon/trees.ppt
Matematika diskrit: metode pohon/trees.ppt
AzrilAld
 
TUGAS UJI KOMPETENSI-INDAH ROSANTI-AHLI UTAMA MANAJEMEN KONSTRUKSI.pptx
TUGAS UJI KOMPETENSI-INDAH ROSANTI-AHLI UTAMA MANAJEMEN KONSTRUKSI.pptxTUGAS UJI KOMPETENSI-INDAH ROSANTI-AHLI UTAMA MANAJEMEN KONSTRUKSI.pptx
TUGAS UJI KOMPETENSI-INDAH ROSANTI-AHLI UTAMA MANAJEMEN KONSTRUKSI.pptx
indahrosantiTeknikSi
 
436102098-0-K3-Elevator-Dan-Eskalator.ppt
436102098-0-K3-Elevator-Dan-Eskalator.ppt436102098-0-K3-Elevator-Dan-Eskalator.ppt
436102098-0-K3-Elevator-Dan-Eskalator.ppt
rhamset
 
COOLING TOWER petrokimia gresik okdong d
COOLING TOWER petrokimia gresik okdong dCOOLING TOWER petrokimia gresik okdong d
COOLING TOWER petrokimia gresik okdong d
delphijean1
 
Power Point TEMA 7 SUB TEMA 3 Pembelajaran 2
Power Point TEMA 7 SUB TEMA 3 Pembelajaran 2Power Point TEMA 7 SUB TEMA 3 Pembelajaran 2
Power Point TEMA 7 SUB TEMA 3 Pembelajaran 2
HADIANNAS
 
TUGAS pelaksana pekerjaan jalan jenjang empat 4 .pptx -.pdf
TUGAS pelaksana pekerjaan jalan jenjang empat 4 .pptx -.pdfTUGAS pelaksana pekerjaan jalan jenjang empat 4 .pptx -.pdf
TUGAS pelaksana pekerjaan jalan jenjang empat 4 .pptx -.pdf
jayakartalumajang1
 
Pembangkit Listrik Tenaga Surya PLTS.pptx
Pembangkit Listrik Tenaga Surya PLTS.pptxPembangkit Listrik Tenaga Surya PLTS.pptx
Pembangkit Listrik Tenaga Surya PLTS.pptx
muhhaekalsn
 

Recently uploaded (10)

SURVEY REKAYASA SURVEY REKAYASA SURVEY REKAYASA
SURVEY REKAYASA SURVEY REKAYASA SURVEY REKAYASASURVEY REKAYASA SURVEY REKAYASA SURVEY REKAYASA
SURVEY REKAYASA SURVEY REKAYASA SURVEY REKAYASA
 
Daftar Lembaga Penyedia Jasa Linkungan.pdf
Daftar Lembaga Penyedia Jasa Linkungan.pdfDaftar Lembaga Penyedia Jasa Linkungan.pdf
Daftar Lembaga Penyedia Jasa Linkungan.pdf
 
RANGKAIAN LISTRIK MATERI 7 ANALISIS MESH.pptx
RANGKAIAN LISTRIK MATERI 7 ANALISIS MESH.pptxRANGKAIAN LISTRIK MATERI 7 ANALISIS MESH.pptx
RANGKAIAN LISTRIK MATERI 7 ANALISIS MESH.pptx
 
Matematika diskrit: metode pohon/trees.ppt
Matematika diskrit: metode pohon/trees.pptMatematika diskrit: metode pohon/trees.ppt
Matematika diskrit: metode pohon/trees.ppt
 
TUGAS UJI KOMPETENSI-INDAH ROSANTI-AHLI UTAMA MANAJEMEN KONSTRUKSI.pptx
TUGAS UJI KOMPETENSI-INDAH ROSANTI-AHLI UTAMA MANAJEMEN KONSTRUKSI.pptxTUGAS UJI KOMPETENSI-INDAH ROSANTI-AHLI UTAMA MANAJEMEN KONSTRUKSI.pptx
TUGAS UJI KOMPETENSI-INDAH ROSANTI-AHLI UTAMA MANAJEMEN KONSTRUKSI.pptx
 
436102098-0-K3-Elevator-Dan-Eskalator.ppt
436102098-0-K3-Elevator-Dan-Eskalator.ppt436102098-0-K3-Elevator-Dan-Eskalator.ppt
436102098-0-K3-Elevator-Dan-Eskalator.ppt
 
COOLING TOWER petrokimia gresik okdong d
COOLING TOWER petrokimia gresik okdong dCOOLING TOWER petrokimia gresik okdong d
COOLING TOWER petrokimia gresik okdong d
 
Power Point TEMA 7 SUB TEMA 3 Pembelajaran 2
Power Point TEMA 7 SUB TEMA 3 Pembelajaran 2Power Point TEMA 7 SUB TEMA 3 Pembelajaran 2
Power Point TEMA 7 SUB TEMA 3 Pembelajaran 2
 
TUGAS pelaksana pekerjaan jalan jenjang empat 4 .pptx -.pdf
TUGAS pelaksana pekerjaan jalan jenjang empat 4 .pptx -.pdfTUGAS pelaksana pekerjaan jalan jenjang empat 4 .pptx -.pdf
TUGAS pelaksana pekerjaan jalan jenjang empat 4 .pptx -.pdf
 
Pembangkit Listrik Tenaga Surya PLTS.pptx
Pembangkit Listrik Tenaga Surya PLTS.pptxPembangkit Listrik Tenaga Surya PLTS.pptx
Pembangkit Listrik Tenaga Surya PLTS.pptx
 

Matlab 2

  • 1. Dasar Dasar Pemrograman MATLAB untuk Teknik Elektro BAB II OPERATOR DAN FUNGSI DASAR MATEMATIS 2.1 Operator Aritmetik Operator aritmetik adalah simbol-simbol yang digunakan untuk maksud operasi numerik. MATLAB menyediakan operator aritmatik dasar berikut : Operasi Simbol Contoh Penambahan a+b + 15+10 Pengurangan, a-b - 15-10 Perkalian, a.b * 15*10 Pembagian, a: b / atau 15/10=1015 Pemangkatan, ab ^ 15^10 Urutan operasi ini dikerjakan dalam suatu ekspresi yang mengikuti aturan prioritas yang biasa. Aturan ini diringkas sebagai berikut : Ekspresi dikerjakan dari kiri ke kanan, dengan pemangkatan mempunyai prioritas tertinggi, diikuti dengan perkalian atau pembagian yang mempunyai prioritas yang sama, diikuti dengan penambahan dan pengurangan yang juga mempunyai prioritas yang sama. Tanda kurung dapat digunakan untuk mengubah urutan pengerjaan yang biasa, dimana bagian yang dikerjakan lebih dulu adalah bagian yang ada dibagian kurung paling dalam kemudian keluar. Contoh : Carilah nilai A=P         −+ + 1)1( )1( N N I II , untuk P=1000, I=12% dan N=10 » P=1000; i=0.12; N=10; » A=P*((i*(1+i)^N)/((1+i)^N-1)) A = 176.9842 % Contoh penggunaan pembagian kiri dan kanan » C=P/N C = 100 » D=NP D = Ansar Suyuti 9
  • 2. Operator dan Fungsi Dasar Matematis 100 2.2 Operator relasi dan logika Matlab menyediakan operasi relasi dan logika. Kegunaan dari operator dan fungsi tersebut ialah untuk menyediakan jawaban atas pertanyaan benar salah. Salah satu kegunaan penting dari kemampuan ini ialah untuk mengontrol urutan eksekusi sederetan perintah MATLAB berdasarkan pada hasil benar/salah. MATLAB menganggap semua angka tidak nol sebagai benar, dan nol sebagai salah. Hasil dari ekspresi relasi dan logika adalah satu untuk Benar dan nol untuk Salah dengan tipe array logika, yaitu hasilnya membuat bilangan 1 dan 0 yang tidak saja dapat digunakan untuk statemen matematika, tetapi juga dapat digunakan untuk pengalamatan. 2.2.1 Operator Relasi Operator relasi MATLAB terdiri dari : Operator relasi Deskripsi < <= > >= = ~= Kurang dari Kurang dari atau sama dengan Lebih dari Lebih dari atau sama dengan Sama dengan Tidak sama dengan Operator relasi MATLAB dapat dipergunakan untuk membandingkan dua array berukuran sama atau untuk membandingkan array dengan skalar. Skalar dibandingkan dengan semua elemen array dan hasilnya berukuran sama. Contoh penggunaan : » A=1:9,B=9-A A = 1 2 3 4 5 6 7 8 9 B = 8 7 6 5 4 3 2 1 0 » tf=A>4 tf = 0 0 0 0 1 1 1 1 1 » tf=(A==B) tf = 0 0 0 0 0 0 0 0 0 2.2.2 Operator Logika Ansar Suyuti 10
  • 3. Dasar Dasar Pemrograman MATLAB untuk Teknik Elektro Operator logika menyediakan cara untuk menggabung ekspresi logika. Operator logika terdiri dari : Operator Logika Deskripsi & | ~ AND OR NOT Contoh penggunaan : » A=1:9; b=9-A; » tf=A>4 tf = 0 0 0 0 1 1 1 1 1 » tf=~(A>4) tf = 1 1 1 1 0 0 0 0 0 » tf=(A>2)&(A<6) tf = 0 0 1 1 1 0 0 0 0 » x=[1,1,0,0]; » y=[1,1,1,1]; » z1=~y>x z1 = 0 0 0 0 » z2=x&y z2 = 1 1 0 0 » z3=x|y z3 = 1 1 1 1 » z4=xor(x,y) z4 = 0 0 1 1 Ansar Suyuti 11
  • 4. Operator dan Fungsi Dasar Matematis » A=[1,1,0,0]'; » B=[0,0,1,1]'; » [A,B,~A,A|B,A&B,xor(A,B)] ans = 1 0 0 1 0 1 1 0 0 1 0 1 0 1 1 1 0 1 0 1 1 1 0 1 2.3 Fungsi-fungsi Dasar Matematis Sebagian dari fungsi-fungsi dasar matematis yang dimiliki MATLAB dapat dilihat berikut : Fungsi trigonometri abs (x) acos(x) acosh(x) angle(x) asin(x) asinh(x) atan(x) atan2(x) atanh(x) ceil(x) conj(x) cos(x) cosh(x) exp(x) fix(x) floor(x) gdc(x,y) imag(x) lcm(x) log(x) log10(x) real(x) rem(x,y) round(x) sign(x) sin(x) sinh(x) sqrt(x) tan(x) harga mutlak atau besarnya bilangan kompleks invers cosinus invers cosinus hiperbolik sudut pada suatu bilangan kompleks invers sinus invers sinus hiperbolik invers tangen invers tangen empat kuadran invers tangen hiperbolik pembulatan ke arah plus tak berhingga konjuget bilangan kompleks cosinus cosinus hiperbolik eksponensial pembulatan ke arah nol pembulatan ke arah minus tak berhingga faktor persekutuan terbesar bilangan bulat x dan y bilangan imajiner kelipatan persekutuan terkecil bilangan bulat x dan y logaritma natural logaritma biasa bagian real suatu bilangan kompleks sisa pembagian x dibagi y pembulatan ke arah bilangan bulat terdekat menghasilkan tanda dari argumen sinus sinus hiperbolik akar kuadrat tangen Ansar Suyuti 12
  • 5. Dasar Dasar Pemrograman MATLAB untuk Teknik Elektro contoh : carilah nilai V(t)= A sin wt +30o , dimana A=10 dan t=1,2,3,4,5 » t=1:1:5; » A=10;f=100; » Vt=A*sin(2*pi*f*t+30*180/pi) Vt = -4.0977 -4.0977 -4.0977 -4.0977 -4.0977 Fungsi dasar MATLAB exp log log10 sqrt abs angle conj imag real fix floor ceil round mod rem sign exponensial logaritma natural logaritma biasa (basis 10) akar kuadrat harga mutlak sudut fasa kompleks konjugate bagian imajiner bilangan kompleks bagian real bilangan kompleks membulatkan ke arah nol membulatkan ke arah minus tak terhingga membulatkan ke arah plus tak terhingga membulatkan ke arah bilangan bulat terdekat modulus (sisa pembagian) pembagian bilangan bulat tanda bilangan Contoh : » x=exp(-0.2696*.2)*sin(2*pi*0.2)/(0.01*sqrt(3)*log(18)) x = 18.0001 2.4 Format output dan input numerik Saat MATLAB menampilkan hasil proses numerik, MATLAB mengikuti beberapa aturan. Dalam keadaan biasa, jika hasilnya berupa bilangan bulat, maka akan ditampilkan sebagai bilangan bulat. Jika hasilnya suatu bilangan real, MATLAB akan menampilkan sebagai bilangan dengan empat digit Ansar Suyuti 13
  • 6. Operator dan Fungsi Dasar Matematis desimal. Perintah format ini hanya mengendalikan format numerik nilai yang ditampilkan dilayar, hanya berefek pada berapa jumlah angka yang ditampilkan, bukan bagaimana MATLAB menghitung atau menyimpannya. MATLAB COMMAND Average_Cost Keterangan Format short 50.833 5 digits Format long 50.83333333333334 16 digits Format short e 5.0833e+01 5 digits plus exponent Format long e 5.083333333333334e+01 16 digits plus exponent Format short g 50.833 Better of format short or format short e Format long g 50.83333333333333 Better of format longt or format long e Format hex 40496aaaaaaaaaab Hexadecimal Format bank 50.83 2 decimal digits Format + + Positive, negative, or zero Format rat 305/6 Rational approximation Untuk lebih fleksibelnya dalam format output, MATLAB menyediakan fungsi fprintf untuk menampilkan hasil/output dri program. Beberapa format dari fprintf dapat dilihat pada tabel. Kode Format Kontrol Karakter %e scientific format, lower case e %E sientific format, upper case E %f format desimal %s string %u integer %i mengikuti tipe %x hexadecimal, lower case %X hexadecimal, upper case n baris baru r permulaan dari baris b back space t tabulasi g halaman baru " apostrop back slash a bell Contoh penggunaan fprintf » fprintf('Luas= %7.3f meter per segi n',pi*10^2) Luas= 314.159 meter per segi Format %7.3f, menunjukkan format bilangan desimal tujuh angka dengan tiga angka dibelakang koma. Sedangkan /n untuk baris baru. Contoh lain untuk membuat format dalam bentuk tabel Ansar Suyuti 14
  • 7. Dasar Dasar Pemrograman MATLAB untuk Teknik Elektro » V=[ 10;20;30;40;50]; » R=[ 5;7;9;11;13]; » y=[V R] y = 10 5 20 7 30 9 40 11 50 13 » fprintf('%4i t %8.2fn',y') 10 5.00 20 7.00 30 9.00 40 11.00 50 13.00 Pada M-file input nilai vriabel dapat dilakukan dari keyboard dengan menggunakan perintah input Contoh : R=input ('Masukkan Harga barang =') Maka dilayar akan muncul tulisan Masukkan Harga barang = Jika diketik dari keyboard 10000, Maka hasil yang diperoleh adalah R = 10000 Contoh program M-file untuk perkalian bilangan kompleks Ansar Suyuti 15
  • 8. Operator dan Fungsi Dasar Matematis disp(' '); disp(' PROGRAM PERKALIAN BILANGAN KOMPLEKS'); disp(' '); disp(' Jenis: 1-polar, 2-rectangular'); disp(' '); jumlah=input('Berapa banyak Bilangan Kompleks yang akan dikalikan ?'); disp(' '); for i=1:jumlah; F=input(['Jenis ',num2str(i),' ketik 1 jika polar 2 jika rectanguler = ']); if (F~=1 & F~=2); disp('Anda Salah Input'); end if F==1 M=input(['Nilai ',num2str(i),' = ']); A=input(['Sudut ',num2str(i),' = '])*pi/180; N(i)=M*exp(j*A); disp(' '); else R=input(['Real ',num2str(i),' = ']); I=input(['Imag ',num2str(i),' = ']); N(i)=R+j*I; disp(' '); end end P=N(1); for k=2:jumlah; P=P*N(k); end disp(' '); disp(['HASIL PERKALIAN = ' num2str(real(P)) ' +j '... num2str(imag(P)) ' = ' num2str(abs(P)) '|_'... num2str(angle(P)*180/pi) ' derajat']); Hasil program yang ditampilkan dari command window MATLAB adalah PROGRAM PERKALIAN BILANGAN KOMPLEKS Jenis: 1-polar, 2-rectangular Berapa banyak Bilangan Kompleks yang akan dikalikan ?2 Jenis 1 ketik 1 jika polar 2 jika rectanguler = 1 Nilai 1 = 10 Sudut 1 = 90 Jenis 2 ketik 1 jika polar 2 jika rectanguler = 1 Nilai 2 = 10 Sudut 2 = 90 HASIL PERKALIAN = -100 +j 1.2246e-014 = 100|_180 derajat II. OPERASI ARRAY DAN MATRIK 2.1 Array Sederhana Untuk menghitung nilai fungsi sinus pada priode pertama, y=sin(x) ; π≤≤ x0 . Kita mencoba membuat suatu tabel atau array untuk menghitung ni x dan y seperti dibawah ini : x 0 .1π .2π .3π .4π .5π .6π .7π .8π .9π π Ansar Suyuti 16
  • 9. Dasar Dasar Pemrograman MATLAB untuk Teknik Elektro y 0 .31 .59 .81 .95 1.0 .95 .81 .59 .31 0 Nilai pertama y berkaitan dengan nilai pertama x, nilai kedua y berkaitan nilai kedua x, dst. MATLAB menangani array secara intuitif. Pembuatan array dilakukan dengan mudah-cukup dengan mengikuti struktur tabel di atas. » x=[0.1*pi .2*pi .3*pi .4*pi .5*pi .6*pi .7*pi .8*pi .9*pi pi] x = Columns 1 through 7 0.3142 0.6283 0.9425 1.2566 1.5708 1.8850 2.1991 Columns 8 through 10 2.5133 2.8274 3.1416 » y=sin(x) y = Columns 1 through 7 0.3090 0.5878 0.8090 0.9511 1.0000 0.9511 0.8090 Columns 8 through 10 0.5878 0.3090 0.0000 untuk membuat array dalam MATLAB, yang perlu dilakukan hanyalah mengetikkan kurung kotak kiri, memasukkan elemen -elemen dengan dipisahkan oleh spasi atau koma, kemudian menutup array dengan kurung kotak kanan. Karena spasi memisahkan elemen-elemen array, bilangan kompleks yang dimasukkan sebagai elemen array tidak dapat memuat spasi kecuali ditutup dengan kurung. 2.2 Pengalamatan Array array x di atas mempunyai 11 elemen yang dipisahkan dalam kolom-kolom, dengan demikian dapat dikatakan bahwa array tersebut array satu kali sebelas atau suatu array dengan panjang 11. Dalam MATLAB, elemen-elemen array diakses menggunakan subscript; misalnya x(1) adalah elemen pertama x, x(2) adalah elemen kedua x, dst. Contoh : » x(3) ans = 0.9425 » y(3) ans = 0.8090 Untuk mengakses suatu blok elemen, MATLAB menyediakan notasi kolom » x(1:7) ans = 0.3142 0.6283 0.9425 1.2566 1.5708 1.8850 2.1991 elemen-elemen di atas adalah elemen pertama sampai elemen ke 7 Ansar Suyuti 17
  • 10. Operator dan Fungsi Dasar Matematis » x(7:end) ans = 2.1991 2.5133 2.8274 3.1416 mulai dari elemen ke 7 sampai elemen terakhir. Kata End berarti elemen terakhir dalam array x. » x(3:-1:1) ans = 0.9425 0.6283 0.3142 elemen-elemen di atas adalah elemen ke 3, ke 2 dan pertama dalam urutan ke bawah 3:-1:1 berarti " mulai dari kolom 3, hitung turun satu-satu, dan berhenti saat 1. » x(2:3:9) ans = 0.6283 1.5708 2.5133 elemen-elemen di atas adalah elemen ke 2, ke 5 dan ke 8. 2:3:9 berarti " muali dari 2, hitung ke atas dengan penambahan 3, dan berhenti setelah mencapai 9. x([8 2 9 1]) ans = 2.5133 0.6283 2.8274 0.3142 disini kita gunakan [8 2 9 1 ] untuk mengambil elemen-elemen array x dalam urutan sebagaimana yang dituliskan dalam kurung kotak. 2.3 Pembentukan array Seperti yang telah dilakukan sebelumnya dengan memasukkan nilai-nilai x dengan mengetikkan tiap elemen x. Hal ini akan membuat kita repot jika elemen dari array cukup banyak, maka MATLAB menyediakan cara lain untuk memasukkan nilai-nilai dalam array. » x=(0:0.1:1)*pi x = Columns 1 through 7 0 0.3142 0.6283 0.9425 1.2566 1.5708 1.8850 Columns 8 through 11 2.1991 2.5133 2.8274 3.1416 » x=linspace(0,pi,11) x = Columns 1 through 7 0 0.3142 0.6283 0.9425 1.2566 1.5708 1.8850 Columns 8 through 11 2.1991 2.5133 2.8274 3.1416 Dalam kasus pertama, notasi kolom (0:0.1:1) menciptakan array yang dimulai dengan 0, meningkat setiap 0.1 dan berhenti pada 1. Setiap elemen ini array ini kemudian dikalikan dengan π untuk menciptakan nilai yang diinginkan dalam x. Dalam kasus ke dua, fungsi linespace digunakan untuk menciptakan x. Linspace(nilai_awal, nilai_akhir,jumlah_elemen) Ansar Suyuti 18
  • 11. Dasar Dasar Pemrograman MATLAB untuk Teknik Elektro Kedua cara pembentukan array di atas membentuk array dengan setiap elemennya berjarak linier terhadap elemen yang lain. Untuk kasus-kasus khusus dimana jarak logaritma diperlukan, MATLAB menyediakan fungsi logspace: » logspace(0,2,11) ans = Columns 1 through 7 1.0000 1.5849 2.5119 3.9811 6.3096 10.0000 15.8489 Columns 8 through 11 25.1189 39.8107 63.0957 100.0000 Di atas kita membuat array dimulai 100 , diakhiri dengan 102 , memuat sebelas elemen. Argumen fungsi didefisikan sebagai Logspace(eksponen_awal, eksponen_akhir, jumlah_elemen) Kadang-kadang diperlukan suatu array yang elemen-elemennya tidak berjarak linier atau logaritmis dengan elemen-elemen lain. » a=1:5,b=1:2:9 a = 1 2 3 4 5 b = 1 3 5 7 9 » a=1:5,b=1:2:9 a = 1 2 3 4 5 b = 1 3 5 7 9 » c=[b a] c = 1 3 5 7 9 1 2 3 4 5 » d=[a(1:2:5) 1 0 1] d = 1 3 5 1 0 1 2.4 Orientasi Array Karena fungsi-fungsi array yang telah dibahas sebelumnya semua membentuk vektor baris, maka dbutuhkan suatu cara untuk membentuk vektor kolom. » c=[1;2;3;4;5] c = 1 2 3 4 5 dengan memisahkan elemen dengan titik koma. Ansar Suyuti 19
  • 12. Operator dan Fungsi Dasar Matematis memisahkan elemen dengan spasi atau koma membuat elemen berada dalam kolom yang berbeda, sedangkan memisahkan elemen dengan titik koma membuat elemen berada dalam baris yang berbeda. Cara lain adalah dengan membentuk vektor baris kemudian ditransfose MATLAB (') » b=a' b = 1 2 3 4 5 » c=b' c = 1 2 3 4 5 MATLAB juga menyediakan transpose dengan diawali titik. Operator titik-transfose ini diinterpretasi sebagai transpose konjugasi non kompleks. Jika suatu array merupakan array kompleks, transpose (') memberikan transpose konjugasi kompleks, yaitu tanda dari bagian imajiner yang berubah sebagai akibat operasi transpose. Tetapi titik transpose melakukan transpose pada array namun tidak melakukan konjugat padanya. » c=a.' c = 1 2 3 4 5 menunjukkan bahwa .' dan ' identik jika diterapkan pada bilangan real. » d=a+i*a d = Columns 1 through 4 1.0000 + 1.0000i 2.0000 + 2.0000i 3.0000 + 3.0000i 4.0000 + 4.0000i Column 5 5.0000 + 5.0000i » c=d' c = 1.0000 - 1.0000i 2.0000 - 2.0000i 3.0000 - 3.0000i 4.0000 - 4.0000i 5.0000 - 5.0000i » e=d.' e = 1.0000 + 1.0000i 2.0000 + 2.0000i 3.0000 + 3.0000i Ansar Suyuti 20
  • 13. Dasar Dasar Pemrograman MATLAB untuk Teknik Elektro 4.0000 + 4.0000i 5.0000 + 5.0000i pada c=d' menciptakan vektor c yang merupakan transpose konjugate kompleks dari d, sedangkan e=d.' menciptakan vektor e yang merupakan transpose d. Jika suatu array dapat berupa vektor baris atau vektor kolom, wajarlah jika array dapat juga mempunyai banyak baris maupun banyak kolom. Artinya array dapat mengambil bentuk berupa matriks. » g=[1 2 3;4 5 6] g = 1 2 3 4 5 6 » g=[1 2 3 4 5 6] g = 1 2 3 4 5 6 selain titik koma, menekan tombol Return atau Enter saat memasukkan nilai matriks juga dapat membuat baris baru. Operasi Array-Skalar Penambahan, pengurangan , perkalian dan pembagian dengan skalar dapat dikenakan pada semua elemen array. » h=g-2 h = -1 0 1 2 3 4 » i=g*2-1 i = 1 3 5 7 9 11 » j=g/2 j = 0.5000 1.0000 1.5000 2.0000 2.5000 3.0000 Operasi Array-Array Jika dua array mempunyai dimensi yang sama, penambahan, pengurangan, perkalian dan pembagian berlaku pada elemen ke elemen » g=[1 1 1 1;2 2 2 2;3 3 3 3] g = Ansar Suyuti 21
  • 14. Operator dan Fungsi Dasar Matematis 1 1 1 1 2 2 2 2 3 3 3 3 » h=[4 4 4 4;5 5 5 5;6 6 6 6] h = 4 4 4 4 5 5 5 5 6 6 6 6 » j=g+h j = 5 5 5 5 7 7 7 7 9 9 9 9 » k=g-h k = -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 » l=2*g-h l = -2 -2 -2 -2 -1 -1 -1 -1 0 0 0 0 » m=g.*h m = 4 4 4 4 10 10 10 10 18 18 18 18 » n=g*h ??? Error using ==> * Inner matrix dimensions must agree. Disini kita mengalikan elemen-elemen yang seletak dari g dan h dengan menggunakan simbol perkalian titik (.*). Titik yang mendahului simbol perkalian memberitahu MATLAB untuk melakukan perkalian elemen ke elemem. Perkalian tanpa titik berarti perkalian matriks. » o=g./h o = 0.2500 0.2500 0.2500 0.2500 0.4000 0.4000 0.4000 0.4000 0.5000 0.5000 0.5000 0.5000 » p=h.g p = 0.2500 0.2500 0.2500 0.2500 Ansar Suyuti 22
  • 15. Dasar Dasar Pemrograman MATLAB untuk Teknik Elektro 0.4000 0.4000 0.4000 0.4000 0.5000 0.5000 0.5000 0.5000 Seperti yang berlaku pada skalar, pembagian dapat menggunakan garis miring kiri atau miring kanan. » s=g.^(h-2) s = 1 1 1 1 8 8 8 8 81 81 81 81 Array dengan elemen satu dan nol Karena banyak dipergunakan, MATLAB menyediakan fungsi untuk membuat array yang semua elemennya satu atau nol. » ones(4) ans = 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 » zeros(2,5) ans = 0 0 0 0 0 0 0 0 0 0 » ones(size(g)) ans = 1 1 1 1 1 1 1 1 1 1 1 1 2.5 Memanipulasi Array Karena array dan matriks merupakan hal mendasar dalam MATLAB, maka terdapat banyak cara untuk memanipulasinya. » A=[1 2 3;4 5 6;7 8 9] A = 1 2 3 4 5 6 7 8 9 Ansar Suyuti 23
  • 16. Operator dan Fungsi Dasar Matematis » A(3,3)=0 A = 1 2 3 4 5 6 7 8 0 mengubah A(3,3) menjadi nol » A(2,6)=1 A = 1 2 3 0 0 0 4 5 6 0 0 1 7 8 0 0 0 0 mengubah elemen pada baris 2 kolom 6 menjadi satu, karena A tidak mempunyai enam kolom, ukuran A diperbesar seperlunya dan diisi dengan nol sehingga matriks tetap segi empat. » A(:,4)=4 A = 1 2 3 4 0 0 4 5 6 4 0 1 7 8 0 4 0 0 membuat semua elemen di kolom empat menjadi 4. A = 1 2 3 4 5 6 7 8 9 » B=A(3:-1:1,1:3) B = 7 8 9 4 5 6 1 2 3 menciptakan matriks B dengan urutan baris A yang dibalik » B=A(3:-1:1,:) B = 7 8 9 4 5 6 1 2 3 menciptakan matriks B dengan urutan baris A yang dibalik, disini titik dua berarti semua kolom (titik dua terakhir dari contoh di atas). Jadi : adalah singkatan 1:end atau 1:3 sebab A memiliki 3 kolom. » C=[A B(:,[1 3])] C = 1 2 3 7 9 4 5 6 4 6 7 8 9 1 3 membuat matriks C dengan menambhkan semua baris pada kolom pertama dan ketiga B ke sisi kanan A. » B=A(1:2,2:3) B = 2 3 Ansar Suyuti 24
  • 17. Dasar Dasar Pemrograman MATLAB untuk Teknik Elektro 5 6 membuat B dengan mengambil dua baris pertama dan dua kolom terakhir A. » B=A(:) B = 1 4 7 2 5 8 3 6 9 membuat matriks B dengan mengurutkan kolom-kolom A » B=B.' B = 1 4 7 2 5 8 3 6 9 mentranspose matriks A » B=A B = 1 2 3 4 5 6 7 8 9 » B(:,2)=[] B = 1 3 4 6 7 9 mendefinisikan kembali B dengan membuang semua baris pada kolom kedua matriks B semula. Saat anda mengeset sesuatu menjadi matriks kosong [ ], sesuatu itu akan terhapus, mengakibatkan matriks berkurang menjadi apa yang tertinggal. Ansar Suyuti 25
  • 18. Operator dan Fungsi Dasar Matematis III OPERASI MATRIKS 3.1 Himpunan Persamaan Linier Semula MATLAB diciptakan untuk menyederhanakan komputasi matriks dan aljabar linier yang terdapat di berbagai aplikasi. Contoh : A. x = b Dalam MATLAB perkalian matriks dilambangkan asterik (*). Jika terdapat suatu penyelesaian, maka juga terdapat beberapa metode untuk menyelesaikannya, seperti eliminasi gaus, faktorisasi LU, atau penggunaan langsung dari A-1 . secara analisis, penyelesaian ditulis sebagai x = A-1 .b. Untuk menyelesaikan masalah tersebut di atas diperlukan cara untuk memasukkan A dan b. » A=[1 2 3;4 5 6;7 8 0] A = 1 2 3 4 5 6 7 8 0 » b=[366;804;351] b = 366 804 351 Jika anda mempunyai dasar aljabar linier maka sangat mudah untuk menentukan bahwa masalah mempunyai satu jawaban tunggal jika determinan matriks A tidak sama dengan nol. » det(A) ans = 27 » inv(A) ans = -1.7778 0.8889 -0.1111 1.5556 -0.7778 0.2222 -0.1111 0.2222 -0.1111 Penyelesaian persamaan linier tersebut dapat diselesai dengan tiga cara : Cara I, dengan menggunakan invers matriks » x=inv(A)*b x = Ansar Suyuti 26           =                     351 804 366 3 2 1 . 087 654 321 x x x
  • 19. Dasar Dasar Pemrograman MATLAB untuk Teknik Elektro 25.0000 22.0000 99.0000 Cara II, dengan menggunakan operasi pembagian matriks » x=Ab x = 25.0000 22.0000 99.0000 Cara III, dengan menggunakan factorisasi lu dari hasil dari upper af lower matrik triangular , A=LU, dimana X diperoleh dari X = U-1 L-1 B. » A=[1 2 3;4 5 6;7 8 0]; » B=[366;804;351]; » [L,U]=lu(A) L = 0.1429 1.0000 0 0.5714 0.5000 1.0000 1.0000 0 0 U = 7.0000 8.0000 0 0 0.8571 3.0000 0 0 4.5000 » X=inv(U)*inv(L)*B X = 25.0000 22.0000 99.0000 Untuk mencari nilai eigen values dan eigen vektor » [x,D]=eig(A) x = 0.7471 -0.2998 -0.2763 -0.6582 -0.7075 -0.3884 0.0931 -0.6400 0.8791 D = -0.3884 0 0 Ansar Suyuti 27
  • 20. Operator dan Fungsi Dasar Matematis 0 12.1229 0 0 0 -5.7345 atau » eig(A) ans = -0.3884 12.1229 -5.7345 3.2 Fungsi-fungsi Matriks yang umum digunakan det (A) determinan d=eig(A) Nilai eigen [V,D] = eig(A) nilai eigen dan eigen vektor expm(A) pemangkatan matriks inv(A) invers matriks lu(A) faktor dari eliminasi gaus orth(A) ortognalisasi pinv(A) pseudoinvers poly(A) karakteristik polynomial polyeig(A1,A2,..) menyelesaikan masalah nilai eigen polinomial sqrtm(A) akar kuadrat matriks svd(A) dekomposisi nilai singular trace(A) jumlah elemen-elemen diagonal 3.3 Matriks Khusus Matriks dengan kegunaan umum meliputi » zeros(3) ans = 0 0 0 0 0 0 0 0 0 » ones(2,4) % 2x4 matriks berelemen satu ans = 1 1 1 1 1 1 1 1 » zeros(3)+pi ans = 3.1416 3.1416 3.1416 3.1416 3.1416 3.1416 3.1416 3.1416 3.1416 » eye(3) % matriks identitas ans = 1 0 0 Ansar Suyuti 28
  • 21. Dasar Dasar Pemrograman MATLAB untuk Teknik Elektro 0 1 0 0 0 1 Contoh; carilah nilai v dan gambar nilai yang diperoleh.          − =                             +− −− ++− − 0 0 1 3 2 1 . 10 1 10 1 10 1 0 10 1 10 1 2.0 2 1 2 1 0 2 1 2 1 v v v jj jj j kita dapat menyelesaikan dengan MATLAB dalam M-File : % pl1.m nama proram clear A(1,1)=1/2; A(1,2)=-1/2; A(2,1)=-1/2; A(2,2)=1/2+0.2j+1/10j; A(2,3)=-1/10j; A(3,2)=-1/10j; A(3,3)=1/10+1/10j; y=[-1 0 0]'; % Penyelesaian persamaan v=Ay vmag=abs(v) sudutv=angle(v)*180/pi % menggambar hasil terhadap waktu theta=linspace(0,2*pi); v1=vmag(1)*cos(theta-sudutv(1)); v2=vmag(2)*cos(theta-sudutv(2)); v3=vmag(3)*cos(theta-sudutv(3)); thd=theta*180*pi; plot(thd,v1,thd,v2,thd,v3); Ansar Suyuti 29
  • 22. Operator dan Fungsi Dasar Matematis jika program tersebut dijalankan, hasilnya seperti dibawah ini ; » pl1 v = -4.0000 + 6.0000i -2.0000 + 6.0000i 2.0000 + 4.0000i vmag = 7.2111 6.3246 4.4721 sudutv = 123.6901 108.4349 63.4349 0 500 1000 1500 2000 2500 3000 3500 4000 -8 -6 -4 -2 0 2 4 6 8 Ansar Suyuti 30
  • 23. Dasar Dasar Pemrograman MATLAB untuk Teknik Elektro IV. OPERASI RELASI DAN LOGIKA & KONTROL PROGRAM Matlab menyediakan operasi logika dan relasi. Kegunaan dari operator dan fungsi tersebut ialah untuk menyediakan jawaban atas pertanyaan benar salah. Salah satu kegunaan penting dari kemampuan ini ialah untuk mengontrol urutan eksekusi sederetan perintah MATLAB berdasarkan pada hasil benar/salah. MATLAB menganggap semua angka tidak nol sebagai benar, dan nol sebagai salah. Hasil dari ekspresi relasi dan logika adalah satu untuk Benar dan nol untuk Salah dengan tipe array logika, yaitu hasilnya membuat bilangan 1 dan 0 yang tidak saja dapat digunakan untuk statemen matematika, tetapi juga dapat digunakan untuk pengalamatan. 4.1 Operator Relasi Operator relasi MATLAB terdiri semua perbandingan : Operator relasi Deskripsi < <= > >= = ~= Kurang dari Kurang dari atau sama dengan Lebih dari Lebih dari atau sama dengan Sama dengan Tidak sama dengan Operator relasi MATLAB dapat dipergunakan untuk membandingkan dua array berukuran sama atau untuk membandingkan array dengan skalar.Skalar dibandingkan dengan semua elemen array dan hasilnya berukuran sama . Contoh ; » A=1:9,B=9-A A = 1 2 3 4 5 6 7 8 9 B = 8 7 6 5 4 3 2 1 0 » tf=A>4 tf = 0 0 0 0 1 1 1 1 1 » tf=(A==B) tf = 0 0 0 0 0 0 0 0 0 » x=(-3:3)/3 x = -1.0000 -0.6667 -0.3333 0 0.3333 0.6667 1.0000 » sin(x)./x Warning: Divide by zero. ans = 0.8415 0.9276 0.9816 NaN 0.9816 0.9276 0.8415 kita bandingkan » x=x+(x==0)*eps x = -1.0000 -0.6667 -0.3333 0.0000 0.3333 0.6667 1.0000 Ansar Suyuti 31
  • 24. Operator dan Fungsi Dasar Matematis » sin(x)./x ans = 0.8415 0.9276 0.9816 1.0000 0.9816 0.9276 0.8415 4.2 Operator Logika Operator logika menyediakan cara untuk menggabung eksperi logika. Operator logika terdiri dari : Operator Logika Deskripsi & | ~ AND OR NOT » A=1:9; b=9-A; » tf=A>4 tf = 0 0 0 0 1 1 1 1 1 » tf=~(A>4) tf = 1 1 1 1 0 0 0 0 0 » tf=(A>2)&(A<6) tf = 0 0 1 1 1 0 0 0 0 4.3 KONTROL PROGRAM Kontrol program sangat penting karena memungkinkan komputasi-komputasi yang lalu mempengaruhi komputasi yang akan datang. MATLAB menyediakan empat struktur pengambilan keputusan atau struktur kontrol program, yaitu : loop for, loop while, if-else-end, dan swicth-case. 4.3.1 Loop for Loop for memungkinkan sekelompok perintah diulang sebanyak suatu jumlah yang tetap. Bentuk umum dari loop for adalah For x = array Perintah-perintah end contoh; for n=1:10 x(n)=sin(n*pi/10) end x = Columns 1 through 7 Ansar Suyuti 32
  • 25. Dasar Dasar Pemrograman MATLAB untuk Teknik Elektro 0.3090 0.5878 0.8090 0.9511 1.0000 0.9511 0.8090 Columns 8 through 10 0.5878 0.3090 0.0000 » data=[3 9 45 6;7 16 -1 5] data = 3 9 45 6 7 16 -1 5 » for n=data x=n(1)-n(2) end x = -4 x = -7 x = 46 x = 1 loop for dapat dibuat didalam loop for yang lain ; » for n=1:5 for m=5:-1:1 A(n,m)=n^2+m^2; end; disp(n) end 1 2 3 4 5 » A A = 2 5 10 17 26 5 8 13 20 29 10 13 18 25 34 17 20 25 32 41 26 29 34 41 50 » n=1:10; » x=sin(n*pi/10) x = Columns 1 through 7 0.3090 0.5878 0.8090 0.9511 1.0000 0.9511 0.8090 Columns 8 through 10 0.5878 0.3090 0.0000 4.3.2 Loop While Ansar Suyuti 33
  • 26. Operator dan Fungsi Dasar Matematis Loop while mengerjakan sekelompok perintah yang diulang secara tidak terbatas. Bentuk umum loop while adalah ; while ekspresi Perintah-perintah end perintah-perintah yang terdapat di antara while dan end dieksekusi berulang kali selama semua elemen dalam ekspresi adalah benar. » a=0; k=1; » while (1+k)>1 k=k/2; a=a+1; end » a a = 53 atau k/10 diperoleh » a=0;k=1; » while(1+k)>1 k=k/10; a=a+1; end » a a = 16 4.3.3 If-else-end Bentuk paling sederhana if-else-end adalah if ekspresi perintah … end untuk kasus dengan dua pilihan if-else-end adalah if ekspresi perintah…jika memenuhi eksperesi else perintah… jika tidak memenuhi ekspresi (salah) end Ansar Suyuti 34
  • 27. Dasar Dasar Pemrograman MATLAB untuk Teknik Elektro Jika terdapat 3 atau lebih pilihan if-else-end : elseif ekspresi1 Perintah.. jika ekspresi1 benar elseif ekspresi2 Perintah.. jika ekspresi2 benar elseif ekspresi3 Perintah.. jika ekspresi3 benar elseif… else perintah.. dikerjakan jika tak ada ekspresi benar end for k = 1:10; if k<3 b=k+1; elseif k<5 c=k+1; elseif k<7 d=k+1; else e=k+1 end; end; » b,c,d,e b = 3 c = 5 d = 7 e = 11 a=0;b=0;c=0;d=0; for k = 1:10; if k<3 a=a+1; elseif k<5 b=b+1; elseif k<7 c=c+1; else d=d+1; end; end; » pl3 Ansar Suyuti 35
  • 28. Operator dan Fungsi Dasar Matematis » a,b,c,d a = 2 b = 2 c = 2 d = 4 4.3.4 Switch-Case Bentuk umum dari switch-case adalah switch ekspresi case test_ekspresi deret_perintah1 case {test_ekspresi2, test_ekspresi3, test_ekspresi4} deret_ekspresi2 otherwise deret ekspresi3 end x=2.7; units='m' switch units case {'inchi','in'} %konversi ke inchi y=x*2.54 case{'feet','ft'} % konversi ke feet y=x*2.54*12 case{'meter','m'} % konversi ke meter y=x/100 case{'milimeter','mm'} y=x*10 case{'centimeter','cm'} y=x otherwise disp(['unit tidak diketahui :' units]) y=nan end; » pl4 units = m y = 0.0270 Ansar Suyuti 36
  • 29. Dasar Dasar Pemrograman MATLAB untuk Teknik Elektro V. AKAR-AKAR DAN KARAKTERISTIK POLINOMIAL 5.1 Akar-akar Polynomial Mencari akar suatu polinomial merupakan suatu masalah tersendiri muncul dalam berbagai bidang ilmu. MATLAB menyediakan fungsi roots untuk mencari akar polinomial, sedngan akar-akar polinimial yang diperoleh dapat dikonversi kedalam persamaan awal dengan fungsi poly. Contoh : 1575.1475.6725.6125.319 23456 ++++++ ssssss akar-akar dapat diperoleh dengan menggunakan fungsi roots: » p=[1 9 31.25 61.25 67.75 14.75 15] p = 1.0000 9.0000 31.2500 61.2500 67.7500 14.7500 15.0000 » r=roots(p) r = -4.0000 -3.0000 -1.0000 + 2.0000i -1.0000 - 2.0000i 0.0000 + 0.5000i 0.0 - 0.5000i akar-akar polinomial tersebut dapat dikonversi ke coefisient polinomial dengan fungsi poly(r): » poly(r) ans = 1.0000 9.0000 31.2500 61.2500 67.7500 14.7500 15.0000 Contoh lain : » r=[-1 -2 -3+4i -3-4i] r = -1.0000 -2.0000 -3.0000 + 4.0000i -3.0000 - 4.0000i » poly(r) ans = 1 9 45 87 50 berarti persamaan polinomialnya adalah : Ansar Suyuti 37
  • 30. Operator dan Fungsi Dasar Matematis 05087459 234 =++++ ssss MATLAB juga juga dapat mencari akar karaktristik persamaan polinomial dalam bentuk matriks : A=           −− −− − 5116 6116 110 Karakteristik persamaan dari matriks tersebut dapat diperoleh fungsi poly dan akar-akar persamaan diperoleh dengan fungsi roots: » A=[0 1 -1;-6 -11 6;-6 -11 5]; » p=poly(A) p = 1.0000 6.0000 11.0000 6.0000 » r=roots(p) r = -3.0000 -2.0000 -1.0000 akar-akar dari karakteristik persamaan tersebut sama dengan eigenvalues dari matriks A atau r=eig(A) » eig(A) ans = -1.0000 -2.0000 -3.0000 5.2 Perkalian, Pembagian dan Penjumlahan Polinomial Perkalian polinomial dilakukan dengan fungsi conv (melakukan convulotion dari array), pembagian dilakukan dengan fungsi deconv dan penjumlahan dilakukan dengan seperti penjumlahan array biasa tetapi derajat polinomial harus sama, jika polinomial mempunyai derajat yang berbeda maka derajat yang lebih rendah ditambahkan dengan koefisien-koefisien nol atau menggunakan fungsi yang disediakan oleh MATLAB yaitu polyadd. Contoh : 1272 ++= ssA dan 92 += sB carilah C=A.B , D=C+B dan E=C-B Ansar Suyuti 38
  • 31. Dasar Dasar Pemrograman MATLAB untuk Teknik Elektro 5281379 234 ++++= ssssA dan 1342 ++= ssY carilah Y Z X = contoh dapat diselesaikan dengan MATLAB A=[1 7 12];B=[1 0 9]; Z=[1 9 37 81 52]; Y=[1 4 13]; C=conv(A,B) D=A+B E=A-B X=deconv(Z,Y) Hasil dari program adalah : C = 1 7 21 63 108 D = 2 7 21 E = 0 7 3 X = 1 5 4 5.3 Turunan Turunan polinomial dapat dilakukan dengan menggunakan fungsi polyder. 5281379 234 ++++= ssssA turunan dari polinomial A adalah: » A=[1 9 37 81 52]; » polyder(A) ans = 4 27 74 81 5.4 Polynomial Curve Fitting n dd cxcxcxp +++= − ....)( 1 21 Persamaan tersebut mempunyai koefisien n=d+1, dengan derajat d. Maka fungsi pengurangan orde polynomial adalah polyfit(x,y,d). Contoh X= 0 1 2 4 6 10 Y= 1 7 23 109 307 1231 Carilah sebuah polinomial derajat ke 3 dari data tersebut di atas; » x=[0 1 2 4 6 10]; » y=[1 7 23 109 307 1231]; Ansar Suyuti 39
  • 32. Operator dan Fungsi Dasar Matematis » c = polyfit(x,y,3) c = 1.0000 2.0000 3.0000 1.0000 5.5 Evaluasi Polinomial Evaluasi polinomial dapat dilakukan dengan fungsi polyval(c,x). Contoh, kita ingin mengevaluasi polynomianl c terhadap titik x= 0,1,2,3 dan 4 . » plot(t,x) » c=[1 2 3 1]; » x=0:1:4; » y=polyval(c,x) y = 1 7 23 55 109 » plot(x,y),title('x^3+2x^2+3x+1') 0 0.5 1 1.5 2 2.5 3 3.5 4 0 20 40 60 80 100 120 x3 +2x2 +3x+1 5.6 Partial-fraction Expansion Untuk memperoleh residu atau partial-fraction expantion ( r ) , kutup yang bersesuaian (p) dan dirct terms (K), digunakan fungsi : [r,p,K]=residu(b,a]. 01 1 1 01 1 1 ... ... )( )( asasasa bsbsbsb sQ sP n n n n m m m m ++++ ++++ = − − − − Vector b dan a merupakan koefisien dari polinomial. Contoh, Hitunglah partial fraction expantion dari : Ansar Suyuti 40
  • 33. Dasar Dasar Pemrograman MATLAB untuk Teknik Elektro 44 192 )( 23 3 +++ ++ = sss ss sF Penyelesaian dengan MALAB adalah » b=[2 0 9 1]; » a=[1 1 4 4]; » [r,p,K]=residue(b,a) r = 0.0000 - 0.2500i 0.0000 + 0.2500i -2.0000 p = -0.0000 + 2.0000i -0.0000 - 2.0000i -1.0000 K = 2 Berarti partial fraction expantion-nya adalah 4 1 1 2 2 25.0 2 25.0 1 2 2 2 + + + − += − − + − + + − + ssjs j js j s untuk mengembalikan persamaan polinomial P(s)/Q(s) dapat dilakukan dengan fungsi [b,a]=residue(r,p,K). » [b,a]=residue(r,p,K) b = 2.0000 0.0000 9.0000 1.0000 a = 1.0000 1.0000 4.0000 4.0000 Ansar Suyuti 41