Está en la página 1de 60

MAPLE : Pertemuan 1

1 Pendahuluan
Maple merupakan salah satu software matematika ideal untuk para profesional teknik, peneliti,
pengajar dan siwwa. Dengan lebih dari 3,500 routines, Maple mencakup spektrum matematika
yang sangat luas, mulai dari pengantar kalkulus sampai ke topik Transformasi Fourier cepat.
Sebenarnya terdapat paling sedikit 12 topik pada pelatihan dasar, seperti yang terdapat pada
Maple New Users Tour, yaitu :
(1) Working Through the New Users Tour
(2) Numerical Calculations
(3) Algebraic Computations
(4) 2-D Graphics
(5) 3-D Graphics
(6) Calculus
(7) Vector Calculus
(8) Dierential Equations
(9) Linear Algebra
(10) Programming
(11) Programming the Maple Graphical User Interface
(12) Help System
Karena keterbatasan waktu maka hanya disajikan beberapa topik penting dan dasar saja.
2 Tampilan Maple
Begitu kita membuka MAPLE maka jendela maple yang terlihat disebut dengan lembaran kerja
(worksheet) maple. Dengan lembaran kerja ini kita dapat melakukan komputasi matematika dengan
memberikan perintah pada daerah masukan (input region). Daerah masukkan ini ditandai oleh
tanda > yang diikuti oleh kursor kedap kedip dikanannya. Misalkan kita ingin melakukan komputasi
2 + 3, maka dilakukan langkah-langkah berikut
1. Tempatkan kursor baris perintah pertama, yaitu persis di kanan tanda >,
2. Ketik 2 + 2; Tekan ENTER.
Pada jendela maple kita dapat melihat menu bar, tool bar, simbol pallete, dan lain-lain.
3 Kalkulasi Numerik
3.1 Komputasi dengan bilangan bulat
Pada level yang paling sederhana, kita dapat memanfaatkan maple sebagai kalkulator super hebat.
Operasi-operasi binair dan unair seperti +, -, *, /, ^, sqrt sudah tersedia pada maple. Untuk
menghitung (33)(15
9
) kita masukkan perintah berikut
>3315^9;
Maple mengenal operator-operator khusus seperti faktorial, faktor persekutuan terkecil, faktor ke-
lipatan terbesar, dan lain-lain. Baris berikut
>35! ;
adalah digunakan untuk menghitung nilai dari faktorial 35. Apabila ditekan ENTER maka akan
muncul hasil berikut
10333147966386144929666651337523200000000
1
Operator ditto yang dilambangkan dengan tanda % merujuk ekpsresi terakhir yang telah dihitung
oleh maple. Perintah ifactor digunakan untuk memfaktorkan bilangan bulat dalam faktor-faktor
bilangan prima. Bila 35! akan difaktorkan maka diberikan perintah berikut
>i f a c t o r (%);
Hasilnya adalah :
(2)32(3)15(5)8(7)5(11)3(13)2(17)2(19)(23)(29)(31)
3.2 Aritmatika titik mengambang
Kekuatan utama maple adalah kemampuannya dalam menghasilkan nilai eksak, artinya kesalahan
pembulatan dalam kalkulasi sedapat mungkin dihindari. Dalam kasus kita membutuhkan nilai
desimal hasil kalkuklasi maple, kita dapat menggunakan perintah evalf. Sebagai contoh dalam
menghitung
2
30

3
3
20
kita memberikan perintah
>2^30 s qr t ( 3) /3^20;
Hasil yang diberikan masih memuat

3, yaitu
1073741824
3486784401

3
Bila kita menginginkan hasilnya dalam bentuk desimal, kita dapat menggunakan perintah evalf
berikut.
>e va l f (%);
dan hasil yang diberikan adalah :
0.5333783739
4 Komputasi Aljabar
4.1 Penjabaran dan pemfaktoran
Maple dapat melakukan penjabaran terhadap bentuk pangkat tertentu, misalnya menjabarkan ben-
tuk pangkat (x+y)
10
. Sebaliknya, Maple dapat memfaktorkan ekspresi khusus yang memungkinkan
dapat difaktorkan. Dua perintah expand dan factor digunakan untuk keperluan ini.
Untuk menjabarkan (x + y)
5
ke dalam bentuk panjang, pertama-tama kita denisikan kalimat
matematika ini dalam eksp1,
>expr1 : = ( x+y ) ^5;
Setelah menekan ENTER, kita berikan perintah berikut
>expand ( expr1 ) ;
maka hasil yang didapat adalah sebagai berikut
x
5
+ 5x
4
y + 10x
3
y
2
+ 10x
2
y
3
+ 5xy
4
+ y
5
Selanjutnya jika kita inginkan hasil ini difaktorkan kita lakukan perintah
>f a c t o r ( % ) ;
Tanda % menunjuk hasil/keluaran terakhir Maple. Hasilnya adalah (x + y)
5
. Mudah, bukan !
Sekarang kerjakan latihan berikut dengan menggunakan Maple. Diatas kita telah mendenisikan
string expr1 kemudian diikuti oleh tanda :=. String expr1 dalam Maple merupakan nama un-
tuk ekspresi metematika yang didenisikannya. Kita dapat menggunakan ekspresi lebih lanjut ini
dengan cukup menulis namanya.
2
Latihan 1
1. Jabarkan bentuk (x 2y)
7
.
2. Jabarkan bentuk (x y)
5
(x + y)
4
.
3. Faktorkan bentuk (x
3
y
3
).
4. Faktorkan bentuk x
3
5x
2
y + 8xy
2
4y
3
.
4.2 Penyederhanaan
Maple dapat menggunakan identitas untuk menyederhanakan ekspresi matematika yang panjang,
seperti ekspresi trigonometri. Juga dapat menyederhanakan bentuk pecahan dengan menggunakan
faktor persekutuannya. Perintah yang digunakan untuk keperluan ini adalah simplify dan normal.
>s i mpl i f y ( cos ( x)^5 + s i n ( x)^4 +2 cos ( x)^2 2 s i n ( x)^2 cos (2x ) ) ;
akan memberikan hasil keluaran cos(x)
4
(cos(x) + 1). Ini berarti bentuk panjang cos
5
x + sin
4
x +
2cos
2
x 2sin
2
x cos2x dapat disederhanakan menjadi cos
4
x(cosx + 1).
>s i mpl i f y ( 64/24) ;
memberikan hasil
8
3
. Penyederhanaan pecahan dapat pula menggunakan perintah normal. Coba
tulis
>normal ( 64/24) ;
apa hasilnya. Sekarang perintah normal kita gunakan untuk masalah yang lebih sulit.
>normal ( ( x^3y^3)/( x^2+xyy ^2 ) ) ;
dan hasilnya adalah
x
2
+yx+y
2
x+1+y
. Ini tidak lain adalah penyederhananaan dari
x
3
y
3
x
2
+xyy
2
.
Latihan 2: Coba sederhanakan bentuk-bentuk di bawah ini :
a.
153
102
b. cos
2
x sin
2
x
c.
8x
3
36x
2
+54x27
8x
4
44x
3
+90x
2
81x+27
4.3 Konversi ke dalam bentuk lain
Maple dapat menyatakan suatu ekspresi matematika kedalam bentuk lainnya yang identik. Perintah
untuk keperluan ini adalah convert.
>ekspr2 : = 1/( x^21);
>conver t ( ekspr2 , par f r ac , x ) ;
Hasilnya adalah
1
2(x1)

1
2(x+1)
. Ini berarti pecahan
1
x
2
1
dikonversikan kedalam bentuk pecahan
parsialnya.
> conver t ( s i nh ( x ) , exp ) ;
Hasilnya adalah
1
2
e
x

1
2e
x
, yaitu bentuk sinus hiperbolik disajikan dalam bentuk eksponensial.
> conver t ( 60 degrees , r adi ans ) ;
menghasilkan
1
3
. Ini berarti satuan derajat (sudut) dibawa ke satuan radian. Banyak sekali bentuk
atau satuan tertentu yang dapat dikonversikan kedalam bentuk atau satuan yang lainnya. Untuk
melihat apa saja yang dapat dikonversikan, lihat help convert.
3
Latihan 3: Konversikanlah ekspresi berikut kedalam bentuk yang dimaksud
a.
3
4
ke dalam satuan derajat.
b. cosx ke dalam bentuk eksponensial.
c. 32 dalam basis 10 ke dalam bentuk basis 2.
d. 221 dalam basis 3 ke dalam basis 10.
4.4 Mendenisikan fungsi
Ada beberapam cara mendenisikan fungsi pada Maple. Salah satunya adalah sebagai berikut.
Misalkan kita akan mendensikan fungsi f(x) = x
2
+ 1.
> f :=x>x^2+1;
Disini f adalah nama fungsi. Nilai fungsi ini dititik tertentu, katakan untuk mengetahui nilai f(2),
cukup ketik
> f ( 2 ) ;
Metoda lainnya adalah dengan menggunakan perintah unapply. Tujuan yang sama dengan se-
belumnya adalah
> g:=unappl y ( x^2+1, x ) ;
Penggunaan unapply ini memungkinkan kita dalam membedakan antara parameter dan variabel.
Misalkan fungsi g(x) = ax
2
+ bx + c memuat tiga parameter a, b dan c.
Latihan 4: Coba denisikan fungsi f(x) =
1

(x)
2
2
2
dengan dan sebagai parameter.
a. Berapa nilai f bila x = 0.
b. Bila = 1, = 0, berapa f(1).
4.5 Menyelesaikan persamaan dan sistem persamaan
Perintah yang digunakan untuk menyelesaikan persamaan adalah solve. Contoh berikut kita akan
menyelesaikan persamaan yang memuat parameter
x
3

ax
2
2
+
13x
2
3
=
13ax
6
+
10x
3

5a
3
Pertama-tama tulis persamaan ini dalam ekspresi berikut.
> eqn : = x^31/2ax^2+13/3x^2 = 13/6ax+10/3x5/3a ;
Selanjutnya gunakan perintah solve berikut
> s ol ve ( eqn , { x } ) ;
Hasilnya adalah {x = 2/3} , {x = 5} , {x = 1/2 a}. Diperhatikan hasilnya masih memuat param-
eter a. Selanjutnya kita menggunakan Maple untuk menyelesaikan sistem persamaan linier berikut
a + 2b + 3c + 4d = 41
5a + 3b + 4c + 3d = 10
3b + 4c-8d = 8
a + b + c + d = 21
Untuk menyelesaikan ini, keempat persamaan ini harus didenisikan satu per satu, kemudian gu-
nakan perintah solve.
> eqn1:=a+2b+3c+4d =41;
> eqn2:=5a+3b+4c+3d =10;
> eqn3:=3b+4c8d =8;
> eqn4:=a+b+c+d =21;
4
> s ol ve ({ eqn1 , eqn2 , eqn3 , eqn4 } , {a , b , c , d } ) ;
Hasilnya adalah {b = 2348/43; d = 266/43; c = (1143)/43; a = (568)/43}. Dengan menggunakan
solve, persamaan taklinier dapat juga diselesaikan. Berikutnya kita akan menyelesaikan persamaan
x
3

5
2
x
2
+
1
2
x + 1 = 0.
> eqn_t1:=x^32.5x^2+0.5x+1=0;
> s ol ve ({ eqn_t1 } , {x } ) ;
Hasilnya adalah {x = 1.}, {x = 2.}, {x = .5000000000}.
Latihan 5: Selesaikan persamaan berikut dalam variabel yang diminta !
(a) x cos(x) = 0.
(b) x
2
y
2
= 0, x y = 1.
(c) x
2
= 2
x
.
5
MAPLE : Pertemuan 2
5 Menggambar grak fungsi
Maple menyediakan fasilitas yang cukup banyak untuk membuat grak suatu fungsi. Perintah
utama yang digunakan adalah plot. Bahkan untuk membuat grak ini, Maple menyediakan toolbox
khusus yang terdiri dari puluhan perintah yang terkait untuk menggambar grak. Fasilitas ini dapat
diaktifkan dengan memberikan perintah
> wi th ( pl ot s ) ;
maka akan muncul informasi berikut
[animate, animate3d, animatecurve, arrow, changecoords, complexplot, complexplot3d, conformal,
conformal3d, contourplot, contourplot3d, coordplot, coordplot3d, densityplot, display, dualaxisplot,
eldplot, eldplot3d, gradplot, gradplot3d, graphplot3d, implicitplot, implicitplot3d, inequal, interac-
tive, interactiveparams, intersectplot, listcontplot, listcontplot3d, listdensityplot, listplot, listplot3d,
loglogplot, logplot, matrixplot, multiple, odeplot, pareto, plotcompare, pointplot, pointplot3d, po-
larplot, polygonplot, polygonplot3d, polyhedra_supported, polyhedraplot, rootlocus, semilogplot, set-
colors, setoptions, setoptions3d, spacecurve, sparsematrixplot, surfdata, textplot, textplot3d, tube-
plot]
5.1 Grak fungsi 2 dimensi
Kita akan menggambar grak fungsi y = sinx dengan pada domain x [2, 2].
> pl ot ( s i n ( x ) , x=2Pi . . 2 Pi , t i t l e ="y = s i n ( x ) " ) ;
Coba tekan ENTER setelah perintah ini, apa yang didapat. Secara umum struktur perintah plot
adalah sebagai berikut
pl ot ( f , h , v , . . . )
dimana f : fungsi yang akan diplot, h : range untuk horizontal, v :(optional) range vertikal. Untuk
mengedit grak yang dihasilkan dapat dilakukan secara interaktif dengan menggunakan toolbar.
Beberapa grak fungsi dapat ditampilkan pada satu bidang koordinat.
>pl ot ( [ s i n ( x) , 2 s i n ( x ) , s i n ( x/2) , s i n (2x ) ] , x=2Pi . . 2 Pi , y=2..2 ,
c ol or =[ red , bl ack , green , bl ue ] ) ;
Perintah ini menghasilkan 4 buah grak fungsi y1 = sin(x), y2 = 2sin(x), y3 = sin(x/2); y4 =
sin(2x) yang digambarkan pada satu bidang koordinat.
5.2 Penggunaan implicitplot
Perintah implicitplot digunakan untuk menggambarkan kurva yang disajikan oleh fungsi secara
implicit. Akan digambarkan kurva yang disajikan oleh persamaan
x
2
y
2
= 1, x [, ], y [, ]
>i mpl i c i t pl o t ( x^2y^2=1 , x=Pi . . Pi , y=Pi . . Pi ) ;
6
5.3 Grak daerah penyelesaian pertidaksamaan
Diberikan sistem ketidaksamaan
x + y > 0
x y 1
y < 2
Untuk menggambarkan daerah penyelesaian (feasible area) sistem ini, kita lakukan perintah berikut
:
>i nequal ( { x+y > 0 , xy <= 1, y<2} , x=3. . 3 , y=3..3 ,
o pt i o ns f e a s i bl e =( c ol or=bl ue ) , opti onsopen=( c ol or=yel l ow , t hi c kne s s =3,
l i n e s t y l e=DASHDOT) , opt i ons c l os e d=( c ol or=bl ack ,
t hi c kne s s =3) , opt i ons excl uded=( c ol or=magenta ) ) ;
Disini ada 4 daerah yang dibedakan berdasarkan warna. Bagian dalam daerah penyelesaian sebagai
optionsfeasible, garis batas yang tidak masuk penyelesaian sebagai optionsopen, garis batas yang
masuk penyelesaian sebagai optionsclosed, daerah yang benar-benar diluar penyelesaian sebagai
optionsexcluded. Dalam perintah ini, warna biru menunjukkan bagian dalam (interior) daerah
penyelesaian.
Latihan 6: Gambarkan grak/kurva dibawah ini dalam domain yang diminta!
1. f(x) = e
x
2
pada domain x [2, 2].
2. Tiga fungsi g
1
(x) = e
x
2
sin(x
3
), g
2
(x) = e
x
2
dan g
3
(x) = e
x
2
pada domain x [2, 2].
3. g(x) = sin(x
2
)/x
2
pada domain x [6, 6].
4.
x
2
9
+
y
2
4
= 1 pada daerah[3, 3] [2, 2].
5. (x
2
+ y
2
)
2
= (x
2
y
2
) pada [1, 1] [1, 1].
6. 2x
4
+ y
4
3x
2
y 2y
3
+ y
2
= 0 pada [5/2, 5/2] [5/2, 5/2].
Catatan : untuk memperhalus kurva soal (e) dan (f) dapat ditambahkan perintah grid=[200,200]
kedalam opsi plotnya.
5.4 Grak fungsi 3 dimensi
Perintah yang digunakan untuk menggambar grak 3 dimensi ini adalah plot3d. Beberapa struktur
yang mungkin adalah
plot3d(expr,x=a..b,y=c..d), plot3d(f, a..b,c..d), plot3d([f,g,h],x=a..b,y=c..d), dimana expr,f,g,h
adalah fungsi dalam x dan y, [a; b] batas pada sumbu x, [c; d] batas pada sumbu y.
>pl ot 3d ( xexp(x^2y ^2) , x=2..2 , y=2..2 , t i t l e ="Pl ot permukaan " ) ;
Perintah ini digunakan untuk menggambarkan grak fungsi f(x, y) = xe
x
2
y
2
pada daerah [2, 2]
[2, 2].
5.5 Penggunaan implicitplot3d
Kita tahu bahwa persamaan bola dengan pusat asal (0, 0, 0) dan radius 1 adalah x
2
+y
2
+z
2
= 1.
Untuk itu menggambar kurva ini kita gunakan implicitplot3d berikut.
>i mpl i c i t pl o t 3 d ( x^2+y^2+z ^2=1, x=1..1 , y=1..1 , z =1. . 1);
7
Latihan 7: Gambarkan grak/kurva yang diberikan oleh fungsi/persamaan berikut!
1. f(x, y) =
x
x
2
+y
2
untuk x dan y pada rentang dari -1 sampai 1.
2. f(x, y) = x(x
2
3y
2
)dengan x dan y diatur sedemikian rupa sehingga graknya terlihat utuh.
3. f(x, y) = sin(2x)sin(2y) dengan x dan y pada rentang dari 0 sampai 25.
4. Gambarkan kurva elipsoida
x
2
4
+
y
2
9
+
z
2
16
= 1 dengan range diatur sendiri sehingga kurva
terlihat utuh.
8
MAPLE : Pertemuan 3
6 Kalkulus
Materi yang tercakup pada bahasan ini adalah diferensial, integral, limit fungsi, luas dan vol-
ume benda putar, limit fungsi dan fungsi cabang. Maple telah menyediakan paket fasilitas untuk
menyelesaikan masalah-masalah kalkulus ini. Untuk mengaktifkan fasilitas ini kita lakukan perintah
berikut
>wi th ( Student [ Cal cul us1 ] ) :
6.1 Diferensial
Misalkan diketahui fungsi f(x) = xsin(x) + x
2
. Untuk menentukan derivatif fungsi ini kita meng-
gunakan perintah di berikut :
>d i f f ( x s i n ( x)+x^2 , x ) ;
maka hasil keluarannya adalah cos(x)x + sin(x) + 2x. Struktur umum penggunaan di adalah
di(a,x,y,z,...) dimana a ekspresi fungsi yang akan didiferensialkan, x,y,z ... variabel diferensiasi.
Perintah di dapat digunakan untuk menentukan turunan parsial. Misalkan kita mempunyai fungsi
2 variabel
f(x; y) = x
2
+ y
2
+ sin(xy) + e
x+y
.
>f : =(x , y)>x^2+y^2+s i n ( xy)+exp ( x+y ) ;
>Df_x=d i f f ( f ( x , y ) , x ) ;
Df
x
= 2x + cos(xy)y + e
(x+y)
Selain di, terdapat pula perintah DerivatifPlot yang digunakan untuk menentukan derivatif
sekaligus menggambar plot fungsi asal dan grak derivatifnya. Coba periksa apakah yang dihasilkan
perintah berikut!
>De r i vat i ve Pl ot ( x s i n ( x ) ) ;
6.2 Integral
Untuk keperluan integral ini digunakan perintah int. Struktur penggunaan perintah int adalah
int(expr,x) atau int(expr,x=a..b). Misalkan kita akan menentukan nilai integral taktentu
_
(xsinx + x
3
)dx
dan integral tertentu
_
/2
0
(xsinx + x
3
)dx
maka perintahnya adalah sebagai berikut
>f :=x>x s i n ( x)+x^3;
>i nt ( f ( x ) , x ) ;
maka hasilnya adalah sin(x) cos(x) +
1
5
x
4
. Selanjutnya
>i nt ( f ( x ) , x=0. . Pi /2) ;
menghasilkan nilai 1 +
1
64

2
.
9
6.3 Luas dan volume benda putar
Bila fungsi y =
1
x
diputar mengelilingi sumbu x dari x = 1 sampai dengan x = 2 maka akan
terjadi benda tiga dimensi yang mirip terompet. Selain bentuknya, dua fakta lain yang penting
diperhatikan adalah luas permuakaan dan volume benda putar yang terjadi.
>Sur f aceOf Revol ut i on (1/x , x =1. . 2) ;
>Sur f aceOf Revol ut i on (1/x , x =1. . 2 , output=pl ot ) ;
Perintah pertama akan menghasilkan nilai

2 ln(1 +

2)
1
4

17 +ln(4 +

17), sedangkan
perintah kedua akan menghasilkan gambar benda putar yang terbentuk. Selanjutnya
>Vol umeOfRevoluti on ( s i n ( x ) , x=0. . Pi /2) ;
>Vol umeOfRevoluti on ( s i n ( x ) , x=0. . Pi /2 , output=pl ot ) ;
mempunyai makna yang sama seperti sebelumnya tetapi untuk volume benda putar yang dihasilkan
oleh y = sin(x).
6.4 Limit fungsi
Masalah menghitung limit
lim
x2
x
2
4
x2
dapat dilakukan dengan mudah, yaitu
>l i mi t ( ( x^24)/(x2) , x=2);
dan hasilnya adalah 4. Maple juga mampu untuk menghitung limit kiri dan limit kanan. Misalkan
kita akan menghitung
lim
x0+
1
e
1/x
+1
dan lim
x0
1
e
1/x
+1
Maka perintah yang perlu diberikan adalah
>l i mi t ( 1/( exp (1/x) +1) , x=0, l e f t ) ;
untuk limit kiri dan
>l i mi t ( 1/( exp (1/x) +1) , x=0, r i ght ) ;
untuk limit kanan.
6.5 Fungsi bercabang
Misalkan kita mempunyai fungsi yang didenisikan sebagai berikut
f(x)
_

_
1 bila x < 0,
x
2
bila 0 x 1,
2x untuk xlainnya.
Pertanyaan yang terkait dengan fungsi ini sangat banyak misalnya berapakah f(0, 5), f(0, 3), f(3),
atau mungkin diminta untuk menghitung
_
2
1
f(x). Jadi kuncinya adalah bagaimana kita menden-
sikan fungsi cabang ini dalam input Maple. Caranya adalah menggunakan perintah piecewise
berikut :
>f : =x>pi e c e wi s e ( x<0, 1, x>=0 and x<=1,x^2 , 2x ) ;
Selanjutnya, coba jalankan perintah berikut
10
>f ( 3 ) ;
>i nt ( f ( x ) , x ) ;
>i nt ( f ( x ) , x=1. . 1);
>d i f f ( f ( x ) , x ) ;
Latihan 8:
1. Tentukan derivatif fungsi f(x) = xsin(1/x)
2. Hitunglah luas daerah yang dibatasi oleh kurva y = e
x
2
dari x = 0 sampai denganx = 4.
3. Hitunglah luas dan volume benda putar yang terbentuk dari pemutaran kurva y = x
3
dari
x = 1 sampai dengan x = 1.
4. Hitunglah lim
x0
(1 +
1
x
)
x
Bandingkan hasilnya dengan e.
5. Hitunglah lim
x0
+
(
1
x

1
arctan x
)
6. Hitunglah lim
x/2

(sec x tan x)
7. Diberikan fungsi
f(x) =
_
xsin(1/x) bila x = 0
0 bila x = 0.
(a) Gambarkan grak fungsi ini beserta grak fungsi y = x dan y = x dari x = 1/sampai
dengan x = 1/.
(b) Hitunglah lim
x0
f(x)dx.
(c) Tentukan
_
f(x)dx.
(d) Tentukan
d
dx
f(x).
8. Hitunglah luas daerah dan volume benda putar jika fungsi f(x) pada soal no 7 diputar men-
gelilingi sumbu x dari x = 1/(2) sampai dengan x = 1/.
11
MAPLE : Pertemuan 4
7 Aljabar Linier
Maple telah menyediakan paket aljabar linier yang diaktifkan dengan cara ketik perintah berikut
>> wi th ( Li nearAl gebra ) :
Lebih dari 50 command yang ada disini yang dapat digunakan untuk memecahkan banyak per-
masalahan dalam aljabar linier. Namun pada pengenalan ini hanya dibahas cara mendenisikan
matriks, vektor, operasi aljabar pada matriks dan vektor, transpose, invers, determinan matriks,
hasil kali titik, hasil kali silang dan norm (besar) vektor. Misalkan kita mempunyai matriks dan
vektor berikut
A =
_
_
1 2 2
3 0 1
4 2 2
_
_
, B =
_
_
1 3 2
0 2 2
4 3 5
_
_
, u =
_
_
3
2
1
_
_
, v =
_
_
2
0
1
_
_
Matriks dan vektor ini didenisikan sebagai berikut.
>A : = Matri x ( [ [ 1 , 2 , 2 ] , [ 3 , 0 , 1 ] , [ 4 , 2 , 2 ] ] ) ;
>B : = Matri x ( [ [ 1 , 3 , 2 ] , [ 0 , 2 , 2 ] , [ 4 , 3 , 5 ] ] ) ;
>u : = Vector ( [ [ 3 , 2 , 1 ] ] ) ;
>v : = Vector ( [ [ 2 , 0 , 1 ] ] ) ;
Untuk menghitung determinan matriks A dilakukan dengan cara
>Determi nant (A) ;
Invers matriks A ditentukan dengan cara
>Mat ri xI nvers (A) ;
Transpose matriks A diperoleh dari
>Transpose (A) ;
Hasil kali antara matriks dan vektor dilakukan sebagai berikut :
>C:=A . B;
>d:=B . u ;
Operasi penjumlahan dan pengurangan dilakukan seperti biasa. Hasil kali titik dan hasil kali silang
antara vektor u dan vektor v adalah
>t :=DotProduct ( u , v ) ;
>s :=CrossProduct ( u , v ) ;
Norma (besar) vektor u diperoleh dari:
>n:=norm( u ) ;
Sudut antara vektor u dan v adalah
>t het a :=VectorAngl e ( u , v ) ;
Bila masih didapatkan dalam bentuk arccos maka tambahkan evalf didepannya.
12
Latihan 9 : Diberikan matriks dan vektor berikut :
1. Matriks A berukuran 4 4 dengan entri a
i,j
=
1
i+j
.
2. Matriks B berukuran 4 4 dengan semua entrinya 1.
3. Vektor u sebagai diagonal utama matriks A
4. Vektor v sebagai kolom keempat matriks A.
Hitunglah menggunakan Maple, hitunglah invers matriks A, transpose matriks A, AB, BA, Au,
determinan matriks B, hasilkali titik dan hasilkali silang antara vetor u dan v, besar sudut antara
vektor u dan v.
8 Maple sebagai media pembelajaran
Mengajarkan suatu konsep didalam matematika membutuhkan persiapan khusus, termasuk media
pembelajarannya. Media pembelajaran menjadi sesuatu yang penting karena ia dapat mempermu-
dah pemahaman siswa terhadap suatu konsep. Matematika yang terdiri dari objek abstrak dapat
lebih direalistiskan dengan menggunakan media audio visual. Maple sebagai software matematika
mempunyai fasilitas untuk membuat media pembelajaran dalam bentuk graphical user interface
(GUI). Dengan menggunakan fasilitas ini, menjelaskan suatu konsep dapat dilakukan dengan cara
interaktif. Beberapa topik tertentu sudah disediakan oleh Maple, sedangkan topik-topik lainnya
dapat dirancang sediri oleh guru. Fasilitas Maple yang dapat digunanakan untuk membuat media
ini disebut MAPLET.
Untuk menjelaskan keunggulan Maplet pada Maple ini, kita ambil contoh materi persamaan
garis lurus. Kalau tidak salah topik ini diberikan pada tingkat satuan pendidikan SMP. Dalam
mengajarkan konsep garis lurus pada aljabar, kita memperkenalkan beberapa cara untuk mem-
peroleh persamaan garis ini. Sebelumnya, konsep seperti titik potong dengan sumbu koordinat,
gradien/ kemiringan (slope), titik yang dilalui garis, garis yang melalui titik, intersep. Selanjutnya
beberapa bentuk persamaan garis adalah :
1. Garis yang melalui titik p = (x
1
, y
1
) dan gradien m mempunyai persamaan
y y
1
= m(x x
2
)
2. Garis yang melalui dua titik p
1
= (x
1
, y
1
) dan p
2
= (x
2
, y
2
) mempunyai bentuk persamaan
x x
1
x
2
x
1
=
y y
1
yx
2
y
1
3. Garis yang mempunyai gradien m dan intersep a mempunyai bentuk persamaan
y = mx + a
4. Bentuk umum persamaan garis lurus adalah
ax + by = c
Untuk mengajarkan materi ini akan sangat membantu jika kita mencoba untuk menggunakan fasil-
itas Maple berikut. Pada menubar, klik
tool-tutors-precalculus-line...
Apa yang anda temukan di sana, silahkan berimprovisasi lebih lanjut. Lebih lanjut, dengan meng-
gunakan Maplet kita dapat merancang sendiri media pembelajaran untuk tiap-tiap materi sesuai
dengan kebutuhan. Kemampuan dasar dan pemrograman dalam Maple mutlak diperlukan untuk
membuat Maplet ini. Silahkan bereksplorasi.
13
SPSS : Pertemuan 5
9 PENDAHULUAN
Statistik dalam praktek berhubungan dengan banyak angka, hingga diartikan numerical decrip-
tion oleh banyak orang. Namun selain merupakan kumpulan data, statistik juga dipakai untuk
melakukan berbagai analisis terhadap data, seperti melakukan peramalan (forecasting), melakukan
berbagai uji hipotesis dan lainnya.
Aplikasi ilmu statistic dibagi dalam dua bagian :
Statistik Deskriptif Menjelaskan (menggambarkan) karakteristik data, seperti rata-rata, var-
iansi, modus dll
Statistik Induktif (Inferensi) Statistik induktif berusaha membuat berbagai inferensi terhadap
sekumpulan data yang berasal dari suatu sample. Melakukan perkiraan, peramalan, pengam-
bilan keputusan dan sebagainya.
Elemen Statistik :
1. Populasi
2. sampel
3. Statistik inferensi Pada dasarnya adalah suatu keputusan, perkiraan atau generalisasi tentang
suatu populasi berdasarkan informasi yang terkandung dari suatu sample. Jadi apa yang
disimpulkan dari analsisi terhadap sampel, itu pula digeneralisasi (kesimpulan umum) pada
populasi.
4. Pengukuran Realibilitas dari statistic inferensi Dari tiga elemen diatas, dapat disimpulkan
bahwa tujuan statistik pada dasarnya adalah melakukan deskripsi terhadap data sampel, ke-
mudian melakukan inferensi terhadap populasi data berdasarkan pada informasi (hasil statsi-
tik deskripsi) yang terkandung dalam sampel. Namun karena sampel yang diambil hanyalah
sebagaian dari populasi, maka dapat terjadi bias dalam kesimpulan yang diperoleh. Oleh
karena itu perlu adanya prediksi kesalahan terhadap suatu keputusan.
10 PENGENALAN SPSS FOR WINDOWS
SPSS (Statistical Package for Social Science) adalah software khusus untuk menganalisis data statis-
tik yang banyak dipakai dalam berbagai riset pasar, pengendalian dan perbaikan mutu (quality
improvement) serta riset-riset sains.
Window pada SPSS
1. Data Editor
Window ini terbuka secara otomatis setiap kali SPSS dijalankandanberfungsi untuk input
data SPSS. Menu yang ada pada data editor adalah : File, Edit, View, Data, Transform,
Analyze, Graphs, Utilities, Window dan Help.
2. Output viewer
Merupakan window untuk menampilkan hasil pengolahan data atau informasi yang telah
diolah lewat menu analyze. Isi output dapat berupa sebuah tabel, sebuah grak atau sebuah
teks.
14
3. Syntaks Editor
Walaupun SPSS sudah menyediakan berbagai macam pengolahan data statistik secara memadai,
namun ada beberapa perintah atau pilihan yang hanya dapat ditulis pada menu syntaks ed-
itor. Perintah SPSS harus diketik secara manual, namun SPSS juga menyediakan berbagai
kemudahan untuk pembuatan syntaksseperti lewat Output Log, Journal File dan lainnya.
4. Script Editor
Script Editor digunakan untuk melakukan berbagai pengerjaan SPSS secara otomatis, seperti
membuka dan menutup le, ekspor Chart, penyesuaian bentuk output dan lainnya.
Menjalankan SPSS for Windows Untuk menjalankan SPSS pilihlah dari start menu, menu
program kemudian pilih SPSS 10.0 for Windows. Ketika SPSS telah jalan akan muncul tampilan
pertanyaan What would you like to do ? untuk sementara pilih Cancel.
Data editor mempunyai 2 fungsi utama :
1. Input data yang akan diolah oleh SPSS.
2. Proses data yang telah diinput dengan prosedur statistik tertentu.
Input Data ke SPSS Untuk lebih mempermudah untuk memahami maka akan dijelaskan den-
gan contoh, misalnya kita punya data :
Orang ke Jenis Kelamin Umur Jumlah Saudara Tinggi Badan
1 Laki-laki 26 0 165.67
2 Perempuan 28 3 160.45
3 Laki-laki 19 2 167.98
4 Perempuan 17 2 150.56
5 Perempuan 25 1 154.87
6 Laki-laki 26 5 170.05
7 Laki-laki 30 1 165.32
8 Perempuan 39 2 145.98
Langkah-langkah yang dilakukan adalah
1. Buka lembar kerja baru
Untuk membuka lembar kerja baru dari menu utama File, pilih menu New kemudian pilih
Data.
2. Menamai variabel yang diperlukan.
Klik mouse pada tab sheet Variable View yang ada di bagian kiri bawah, atau dari menu
View pilih submenu Variable.
Langkah-langkah yang dilakukan adalah :
Pada contoh di atas variable pertama adalah orang ke, denisi dari variable ini :
Name, letakkan pointer di bawah kolom Name, ketik nama variabel misalnya orang_ke
(ingat ! Tidak boleh ada spasi pada nama variabel). Secara otomatis kolom lain pada
baris ini akan terisi, yang merupakan format default dari variabel. Ketik juga nama
variabel yang lain pada baris bawahnya.
Type, macam-macam tipe data pada SPSS adalah Numeric, Comma, Dot, Scientic
notation, Date, Dollar, Custom Currency dan string, sedangkan tipe data defaultnya
adalah numeric.untuk variabel orang_ke tipenya adalah numeric, sedangkan untuk jenis
kelamin tipenya adalah string.
Width, merupakan lebar karakter atau jumlah digit angka variabel.
Decimals, menunjukkan nilai di belakang koma, untuk tipe string nilai desimal otomatis
terisi 0.
15
Label, adalah keterangan untuk nama variabel, kolom ini tidak harus diisi.
Values, untuk proses pemberian kode, misalnya untuk jenis kelamin, kode 1 = laki-laki
sedangkan 2 = perempuan. setelah value dan value label diisi klik Add.
Missing, yaitu data yang hilang atau tidak ada, abaikan bagian ini.
Column, hampir sama dengan width yaitu untuk menentukan lebar kolom.
Align, yaitu posisi data, rata kiri, rata kanan atau tengah.
Measure, bagian ini penting karena menyangkut tipe variabel yang nantinya akan berpen-
garuh pada jenis analisis yang akan digunakan. Untuk data kuantitatif dan tanpa kat-
egorisasi, otomatis SPSS akan memilih scale, untuk data yang bersifat unik (tidak ada
data yang sama) maka pilih nominal.
3. Mengisi data
Untuk mengisi data klik tab sheet Data View pada kiri bawah layar atau pilih menu view
dan klik Data, atau langsung tekan CTRL+T. Salah satu cara di atas akan membuat tampi-
lan data editor kembali ke data view , dengan cirri munculnya 5 nama variabel yang telah
kita masukkan. Pengisian dilakukan dengan mengetik biasa, seperti pada Ms. Excel, atau
mengetik tabel pada Ms. Word.
Untuk variable dengan value (contoh jenis kelamin), pengisian dilakukan cukup dengan mengetik
nilai valuenya, secara otomatis SPSS akan mengubah menjadi laki-laki atau perempuan. Tapi
sebelumnya Value Label harus diaktifkan dulu dengan cara dari menu view klik mouse pada
value label sehingga menjadi aktif (dengan adanya tanda

)
Menyimpan Data Untuk menyimpan data caranya adalah sebagai berikut : Dari menu utama
File pilih submenu Save As (untuk penyimpanan pertama) atau Save untuk data yang pernah
disimpan. Untuk penyimpanan pertama beri nama kemudian klik Save. Data akan tersimpan
dengan ekstensi .sav.
Menyisipkan Data
1. Menyisipkan variable
Letakkan pointer di sembarang tempat di kolom orang_ke, Pilih insert variable dari menu
Data, untuk menamai variable ini lakukan pada variable view.
2. Menyisipkan kasus(cases)
Letakkan pointer pada sebarang tempat di baris yang akan disisipi, kemudian dari menu Data
pilih Insert Cases maka akan muncul baris kosong yang bisa langsung diisi.
Memisah Isi le dengan Kriteria tertentu Misalnya data akan dipisah berdasasrkan jenis
kelamin maka langkahnya adalah :
Dari menu Data pilih Split File, hingga muncul
klik pilihan Organize output by groups.
Pilih variable jeniskel klik panah hingga jeniskel masuk ke kolom Group based on
Pilih sort the le by grouping variable.
Megurutkan Data Jika isi le akan diurutkan berdasarkan tinggi badan maka ; Dari menu Data
pilih Sort Cases klik variable tinggi masukkan dalam kolom Sort By dan klik ascending. Terakhir
tekan OK.
16
11 TRANSFORMASI DATA
Perintah Compute Perintah dari menu Transform ini berfungsi untuk menambah variable baru
yang berisi hasil perhitungan berdasar data variabel lain. Misalnya pada contoh di atas akan dibuat
variable baru yang berisi berat ideal yang dihitung dari tinggi badan, yaitu : berat ideal = tinggi
110. Langkahnya :
Dari menu Transform pilih Compute, tampak dilayar :
Isi target variable dengan nama variable baru, misalnya ideal.
Tekan tombol Type&Label.
Pada kolom label isi dengan berat ideal responden, dan type diisi numeric.
Numeric expression diisi dengan mengetik pada kotak : Tinggi - 110
Tekan tombol OK
Perintah Count Berfungsi untuk menghitung data dengan criteria tertentu. Untuk menghitung
count yang lebih kompleks buatlah le data sebagai berikut :
NIP Gender Bidang Status Pendidikan Gaji Umur Kerja
921 Pria Marketing Menikah SMU 276 28 4
925 Wanita Akuntansi Menikah Sarjana 350 30 5
927 Wanita Marketing Belum SMU 265 23 3
930 Pria Akuntansi Menikah Akademi 300 27 4
937 Wanita Marketing Belum SMU 265 22 3
939 Pria Produksi Belum Akademi 270 25 2
941 Wanita Produksi Menikah Sarjana 350 30 5
942 Wanita Akuntansi Belum Akademi 275 25 2
944 Pria Produksi Menikah Akademi 300 29 4
945 Wanita Marketing Belum SMU 265 24 3
Gaji dalam ribuan. Simpan File misalkan dengan nama Fileku.
Langkah selanjutnya adalah : Dari menu Transform pilih Count,
Target variable diisi nama variable baru, misal pria_270
Target label isi dengan jumlah pria bergaji >270
Variable, diisi dengan nama variable yang akan diproses, pilih gender.
Tekan devine values, value diisi dengan 1(value gender pria = 1).
Untuk menulis persyaratan gaji di atas 270.000, tekan tombol If, klik pilihan Include if
cases satises condition, isi kotak bawahnya dengan : Gaji >270 Kemudian tekan tombol
continue
Tekan tombol OK
Rank Cases Berfungsi untuk mengurutkan kasus dengan kriteria tertentu, misalnya pada le
Fileku akan diurutkan berdasarkan umur, maka langkahnya adalah :
Dari menu transform, pilih Rank cases, tampak pada layar :
Karena umur diurutkan berdasarkan gendernya maka pindah gender ke kolom By.
Pilihlah Display summary tables.
Pilih rank untuk rank types dan pilih Mean untuk ties.
Tekan OK.
17
Automatic Recode Fungsi ini akan mengubah sebuah variable numerk tanpa values menjadi
variable numeric dengan values secara otomatis. Misalnya pada le Fileku, akan dilakukan auto-
matic recode , sehingga umur akan dibuat kode sendiri. Lamgkahnya :
Dari menu transform pilih automatic recode.
Isi variable New Name , masukkan variable umur.
Ketik umur_rec untuk New Name, kemudian tekan tombol New Name.
Pilihlah Lowest Value untuk Recode starting From.
Tekan OK.
12 GRAFIK
Dalam SPSS tersedia fasilitas pembuatan grak yang memungkinkan pemakai mentransformasikan
data statistik ke dalam berbagai bentuk grak yang menarik dan komunikatif. Sebagai contoh kasus
Karyawan Pendidikan Masuk Usia Gaji_aw Gaji_ki
1 SMA 1994 24 550 565
2 Akademi 1992 35 750 775
3 SMA 1994 25 525 545
4 Sarjana 1992 33 800 850
5 Akademi 1993 35 675 680
6 Sarjana 1992 33 980 990
7 SMA 1994 25 475 545
8 Akademi 1993 25 650 750
9 Sarjana 1993 30 825 850
10 Sarjana 1994 27 815 820
11 Akademi 1993 27 725 740
12 Akademi 1993 31 770 790
13 SMA 1993 30 650 700
14 SMA 1992 33 450 500
15 Sarjana 1994 33 800 825
Masukkan data di atas dengan semua variable bertype Numeric dan untuk variable didik isilah
Value dengan nilai 1 untuk SMA, 2 untuk Akademi dan 3 untuk Karyawan.
Pada prinsipnya, grak yang dibuat dalam SPSS dapat dibagi dalam 3 bagian, yaitu :
1. Summaries for groups of cases Grak ini menyajikan data untuk tiap grup tertentu ( dalam
kasus ini misal untuk karyawan yang berpendididkan SMA, Akademi dan sarjana).
2. Summaries of separate variables Grak ini menyajikan data untuk tiap variable yang terpisah
( misal variable usia dibandingkan dengan variable gaji).
3. Values of individual cases Grak ini menyajikan data untuk setiap kasus secara individual
(misal penyajian data kelima belas karyawan secara berurutan).
Sedangkan jenis grak adalah sebagai berikut :
1. Grak Bar (Batang)
18
SPSS : Pertemuan 6
13 Analisis Statistik Menggunakan SPSS
13.1 MEANS
Tujuannya untuk mendapatkan serangkaian statistik deskriptif dari berbagai masukan data, dalam
hal ini tidak ada uji hipotesis.
Kasus : Seorang peneliti menyajikan data tinggi dan berat badan di daerahnya, hasilnya adalah :
Tinggi Berat Gender Tinggal
1 174.5 65.8 Pria Desa
2 178.6 62.7 Pria Desa
3 170.8 66.4 Pria Kota
4 168.2 68.9 Pria Desa
5 159.7 67.8 Pria Kota
6 167.8 67.8 Pria Kota
7 165.5 65.8 Pria Desa
8 154.7 48.7 Wanita Kota
9 152.7 45.7 Wanita Kota
10 155.8 46.2 Wanita Desa
11 154.8 43.8 Wanita Kota
12 157.8 58.1 Wanita Kota
13 156.7 54.7 Wanita Desa
14 154.7 49.7 Wanita Kota
Langkah langkah pengolahan data :
Pilih Analyze
Compare Means
Means, akan muncul tampilan:
Dependent List (variable tak bebas) diisi dengan berat dan tinggi (variable dengan tipe nu-
meric)
Independent List (variable bebas) diisi dengan gender (variable dengan tipe string).
Tekan tombol next.
Masukkan variable tinggal ke independent List sebagai layer kedua.
Tekan OK
13.2 UJI ANOVA
Uji ini digunakan untuk pengujian lebih dari dua sample. Asumsi yang digunakan pada pengujian
Anova adalah :
1. Populasi-populasi terdistribusi normal.
2. Varians dari populasi-populasi tersebut adalah sama.
3. Sample tidak berhubungan satu sama lain.
Kasus : Sebuah pabrik selama ini mempekerjakan karyawannya dalam 4 shift (satu shift terdiri
atas sekelompok pekerja yang berlainan). Manajer pabrik tersebut ingin mengetahui apakah ada
perbedaan produktivitas yang nyata diantara 4 kelompok kerja shift yang ada selama ini. Hasil
pengamatan produktitas kerja adalah :
19
Hari Shift 1 Shift 2 Shift 3 Shift 4
1 38 45 45 58
2 36 48 48 25
3 39 42 42 34
4 34 46 46 26
5 35 41 41 39
6 32 45 45 44
7 39 48 48 32
8 34 47 47 38
9 32 42 42 39
10 36 41 41 43
11 33 39 39 44
12 39 33 33 62
Ubahlah tabel data pada kasus di atas dalam format 2 kolom, dengan variable produk (jumlah
produksi) dan shift. Tipe data shift adalah numeric, dengan nilai value 1 untuk shift satu, 2 untuk
shift dua dan seterusnya. Simpan data tersebut dengan nama ANOVA1. Langkah selanjutnya :
Pilih menu Analyze Compare Means One Way Anova,
Oleh karena yang akan diuji produktitas karyawan, maka Dependet List diisi dengan
variable produk
Oleh karena variable pengelompokan ada pada variable Shift maka Factor diisi dengan Shift.
Tekan tombol Option, Untuk tombol statistic pilih descriptive dan Homogenetity of
variance. Abaikan Missing Values. Tekan continue
Tekan Post Hoc (analisis lanjutan dari F Test),
Untuk keseragaman pilih Benferroni dan Tukey. Tekan Continue.
Tekan OK.
ANALISIS Output bagian pertama berisi ringkasan data yang diproses.
Output bagian kedua (Analysis of Variance/uji ANOVA). Dalam kasus ini Anova satu factor untuk
melihat apakah ada perbedaan yang nyata antara produktivitas kerja antara kelompok kerja shift
dan kelompok gender.
Hipotesis : Ho= keempat rata-rata populasi adalah identik
Hi= keempat rata-rata populasi adalah tidak identik
Pengambilan keputusan: Berdasar kelompok shift Terlihat bahwa nilai probabilitas 0,000 yang
berarti kurang dari 0,05, maka Ho ditolak atau rata-rata produksi keempat kelompok shift tersebut
memang berbeda nyata.
LATIHAN Uji Anova dua arah
13.3 Korelasi Bivariate / Product moment Pearson
Korelasi adalah asosiasi / hubungan antara variable-variabel yang diminati. Di sini akan disoroti
dua analisis korelasi yaitu tentang apakah data sample yang ada menyediakan bukti cukup bahwa
ada kaitan antar variable-variabel dalam populasi asal sample dan jika ada hubungan seberapa kuat
hubungan antar variable tersebut.
Korelasi Bivariate / Product moment Pearson untuk mengukur keeratan hubungan diantara
hasil-hasil pengamatan dari populasi yang memounyai dua varian (bivariate). Perhitungan ini
20
mensyaratkan bahwa populasi asal sample mempunyai dua varian dan terdistribusi normal. Korelasi
Pearso banyak digunakan untuk mengukur korelasi data interval atau rasio.
Contoh kasus : Ingin diketahui apakah ada korelasi diantara variable-variabel berikut : Jumlah
pelanggaran lalu lintas, jumlah mobil, sepeda motor dan jumlah polisi. Untuk itu diambil data
mengenai variable-variabel di atas pada sejumlah daerah pada waktu tertentu dengan hasil sebagai
berikut :
Tilang Mobil Motor Polisi
20 258 589 89
24 265 587 52
25 249 698 59
18 125 625 57
15 * 712 52
16 124 692 48
* 251 681 49
10 * 634 29
12 124 697 27
17 159 521 59
Ket : tanda * menunjukkan data tersebut missing atau tidak diketahui / tersedia.
Untuk pengolahan data masukkan data tersebut ke SPSS dengan semua variable bertype data
numeric. Simpan dengan nama KORELASI. Langkah selanjutnya :
Pilih submenu Correlate dari menu Analyze. Kemudian pilih Bivariate.
Karena semua variable akan dikorelasikan maka klik variable tilang kemudian klik tanda >,
begitu juga untuk tiga variable lainnya.
Untuk kolom Correlation Coecients (alat hitung koesien korelasi) pilih Pearson karena
data pada kasus ini adalah kuantitatif dan berskala rasio.
Untuk kolom Test of Signicance, pilih Two tailed karena akan diuji dua sisi.
Untuk pilihan Flag signicant correlations atau berkenaan dengan tanda untuk tingkat
signikansi 5 % dan 10 % akan ditampilkan pada output ataukah tidak. Untuk keseragaman
pilihan tersebut dipakai hingga nanti pada output ada tanda * untuk 5 % dan / atau tanda
** untuk 10 %. Kemudian klik tombol option
Pada pilihan statistic abaikan saja.
Pada pilihan Missing Values atau perlakuan korelasi sehubungan dengan adanya data
yang tidak tersedia pada kasus, SPSS menyediakan 2 alternatif yaitu :
Exclude cases pairwise yaitu pasangan yang salah satu tidak ada datanya tidak
dimasukkan dalam perhitungan, misal korelasi anatara tilang dan motor pada kasus
no 7 yang hilang tilang mengakibatkan korelasi hanya 9 data karena kasus no 7
dihilangkan. Dengan demikian pilihan ini mengakibatkan jumlah data tiap korelasi
bervariasi, tergantung jumlah data yang missing.
Exclude cases Listwise. Pada pilihan ini kasus yang salah satu variabelnya ter-
dapat missing data akan dibuang, sehingga jumlah data untuk semua korelasi sama.
Pada kasus di atas kasus no 5, 7 dan 8 akan dikeluarkan hingga jumlah kasus menjadi
7
Tekan tombol continue
Tekan OK.
21
ANALISIS 1. Arti angka korelasi
Angka korelasi berkisar pada angka 0 (tidak ada korelasi) dan 1 (korelasi sempurna). Sebagai
pedoman sederhana angka korelasi di atas 0,5 menunjukkan korelasi yang cukup kuat sedang
di bawah 0,5 korelasi lemah.
Tanda (negatif) pada output menunjukkan adanya arah berlawanan, misalnya output kore-
lasi antara mobil dan motor yang menghasilkan angka 0,127. hal ini menunjukkan lemahnya
korelasi antara mobil dan motor dan tanda menunjukkan bahwa semakin banyak mobil
akan membuat semakin sedikit jumlah motor, begitu juga sebaliknya.
Tanda + (positif) menunjukkan arah yang sama misalnya anatara polisi dan tilang, semakin
banyak polisi berarti semakin banyak pula tilang.
2. Signikansi hasil korelasi
Uji dilakukan dua sisi karena akan dicari ada atau tidak hubungan korelasi, bukan lebih
besar atau lebih kecil. Untuk pengambilan keputusan dilihat pada kolom Sig. (2-tailed)
didapat serangkaian angka probabilitas. Terlihat hanya ada satu pasangan yang berkorelasi
secara signikan, yaitu antara mobil dan tilang (probabilitas 0,015 < 0,05). Oleh karena
itu disimpulkan bahwa yang berkorelasi secara signikan hanya variable mobil dengan tilang.
Keputusan bisa juga dilihat berdasarkan tanda * (lihat pilihan ag Signicant correlations),
terlihat hanya variable mobil dan tilang yang terdapat tanda *.
LATIHAN Masih banyak Analisis korelasi diantaranya Sperman dan Kendal, Korelasi Parsial
ataupun korelasi distance.
13.4 REGRESI SEDERHANA
Analisis regresi digunakan terutama untuk tujuan peramalan, dimana dalam model tersebut ada
variable dependen(tergantung) dan independen (bebas). Regresi sering dibedakan menjadi dua,
yaitu regresi sederhana (simple regression) jika hanya ada satu variable independen dan regresi
berganda jika lebih dari satu variable independen.
Contoh Kasus regresi sederhana: PT CEMERLANG gencar melakukan promosi produknya
di berbagai daerah. Berikut data biaya promosi dan hasil penjualan di 15 daerah :
Daerah Penjualan (Juta Rp.) Promosi (Juta Rp.)
Jakarta 205 26
Tangerang 206 28
Bekasi 254 35
Bogor 246 31
Bandung 201 21
Semarang 291 49
Solo 234 30
Yogya 209 30
Surabaya 204 24
Purwokerto 216 31
Madiun 245 32
Tuban 286 47
Malang 312 54
Kudus 265 40
Pekalongan 322 42
Disini ingin diketahui seberapa besar hubungan atau seberapa jauh pengaruh promosi terhadap
hasil penjualan, maka akan dilakukan uji regresi dengan variable dependen Penjualan dan variable
22
independen adalah biaya promosi. Langkah pertama masukkan data tersebut ke SPSS dengan
type variable string untuk daerah dan numeric untuk yang lainnya, kemudian simpan dengan nama
regresi_sederhana. Langkah selanjutnya :
Dari menu Analyze pilih Regression kemudian pilih Linier.
Masukkan variable jual pada kolom dependent dan promosi pada kolom independent.
Karena kasus didasarkan pada daerah maka Cases Labels atau keterangan pada kasus diisi
dengan daerah.
Untuk Method untuk keseragaman pilih defaultnya yaitu Enter.
Pilih Option,
Untuk Stepping Method Criteria, gunakan uji F yang mengambil standard angka
probabilitas 5%, oleh karena itu Entry .05 dipilih.
Untuk pilihan yang lainnya ikuti pilihan defaultnya (tidak perlu diganti).
Klik Continue.
Pilih kolom Statistic
Untuk Regression Coecient (perlakuan koesien regresi) tetap aktifkan Estimate
(default SPSS). Jika estimate tidak diaktifkan maka koesien regresi tidak ditampilkan
pada output SPSS.
Untuk Descriptive, tetap aktifkan model t.
Residual, klik Casewise diagnostics dan dari situ pilih All cases.
Klik Continue .
Pilih kolom Plots (berhubungan dengan grak untuk regresi)
Klik pilihan SDRESID dan masukkan ke pilihan Y, klik pilihan ZPRED dan masukkan
ke pilihan X kemudian klik next.
Tampak X dan Y kosong. Sekarang pilih ZPRED dan masukkan ke pilihan Y dan
DEPENDNT ke pilihan X.
Untuk pilihan Standarized Residual Plots pilih Normal Probability Plot.
Klik Continue.
Tekan OK.
23
MATLAB : Pertemuan 7
14 Apakah MATLAB?
MATLAB adalah bahasa pemrograman dengan performa tinggi untuk kom- putasi teknis. MAT-
LAB menggabungkan tiga unsur : komputasi, visualiasasi dan pemrograman ke dalam satu wadah.
Masalah dan penyele- saian pada MATLAB diekspresikan dalam simbol matematika yang familiar.
Penggunaan MATLAB mencakup :
Matematika dan komputasi
Pengembangan algoritma
Pemodelan, simulasi dan prototype
Analsis data, eksplorasi dan visualisasi
Grak saintik dan keteknikan
Pengembangan penggunaan, termasuk pembuatan Graphical User Interface (GUI) yang memu-
dahkan pemakai dalam memasukkan data dan melihat hasil keluaran suatu program.
MATLAB merupakan singkatan dari matrix laboratory. MATLAB merupakan sistem interakif den-
gan elemen basis data berupa array yang tidak membutuhkan dimensi. Oleh karena itu, MATLAB
mampu menyelesaikan banyak masalah komputasi teknis, khususnya masalah yang dapat diformu-
lasikan dalam bentuk matriks dan vektor.
Penggunaan MATLAB dewasa ini sangat luas, tidak hanya di bidang pen- didikan tinggi tetapi
sudah banyak digunakan pada bidang industri. Pada beberapa topik tertentu yang banyak digu-
nakan pada bidang sains dan teknologi telah diciptakan sejumlah toolbox pada MATLAB, seperti
signal processing, control systems, neural networks, fuzzy logic, wavelets, simulation, nance dan
banyak lagi yang lainnya.
Sistem pada MATLAB terdiri dari lima bagian utama, yaitu
Development Environment, yaitu kumpulan alat dan fasilitas yang diperlukan untuk meng-
gunakan le dan fungsi MATLAB. Bagian ini terdiri dari desktop dan command window,
command history, editor dan debugger, dan browsers untuk bantuan, workspace, les, dan
search path.
Mathematical Function Library, yaitu kumpulan algoritma komutasi mulai dari fungsi seder-
hana seperti sum, sine, cosine, dan aritmatika bilangan kompleks sampai fungsi lebih rumit
seperti invers matriks, nilai eigen matriks, fungsi bessel, transformasi Fourier cepat,
MATLAB Language, yaitu bahasa matriks/array yang terdiri dari control ow statements,
functions, data structures, input/output, and object-oriented programming features. Oleh
karena itu MATLAB dapat digunakan dalam pemrograman dari masalah sederhana sampai
masalah yang sangat kompleks.
Handle Graphics, yaitu berupa fasilitas untuk penyajian vektor dan matriks sebagai grak,
termasuk anotasi dan pencetakan grak tersebut. Ia juga memuat fungsi untuk visualisasi
data baik dua dimensi maupun tiga dimensi, pemrosesan citra/gambar, animasi dan grak
presentasi. Pengaturan tampilan grak dan juga pembuatan GUI telah tersedia pada bagian
ini.
Application Program Interface(API), yaitu fasilitas yang dapat digunakan untuk menginter-
aksikan program yang ditulis dalam bahasa C, Fortran dan MATLAB. Ia juga memuat fasil-
itas untuk pemanggilan routines dari MATLAB (dynamical linking), pemanggilan MATLAB
sebagai mesin hitung, dan untuk pembacaan dan penulisan MAT-les.
24
15 Memulai dan Mengakhiri MATLAB
Untuk mengaktifkan MATLAB, cukup diklik dua kali icon shortcut MATLAB pada desktop window
atau melalui kelompok program pada MENU START. Sedangkan untuk keluar dari MATLAB, pilih
Exit MATLAB dari menu File pada desktop, atau ketik quit pada CommandWindow.
16 Tampilan MATLAB
Ketika pertama kali kita memulai MATLAB akan muncul desktop MATLAB yang memuat alat-alat
untuk pengolahan le, variabel dan aplikasi apapun yang berakitan dengan MATLAB.
Tampilan Desktop MATLAB
Command Window, Fungsi dari Command Window adalah untuk memasukkan variabel
dan menjalankan fungsi MATLAB dan M-les.
Command History, Baris-baris yang telah kita buat pada Command Window selalu ter-
cantum pada Command History sehingga kita dapat melihat, dan mengambil kembali baris
yang telah digunakan sebelumnya.
Launch Pad, Berfungsi untuk memudahkan dalam mengakses fasilitas, demonstrasi dan
dokumentasi pada MATLAB.
Help browser, Fungsi dari browser adalah untuk mencari dan melihat dokumen pada MAT-
LAB yang diperlukan untuk minta bantuan. Untuk mengaktifkan sarana ini klik tombol
tandatanya pada toolbar, atau ketik helpbrowser pada Command WIndow.
Current Directory, Apapun le yang akan dijalankan haruslah terletak pada direktori
yang sedang aktif atau berada pada search path titik acuan. Untuk melihat, membuka atau
mengedit le-le MATLAB kita dapat menggunakan Current Directory browser, atau dengan
menggunakan perintah dir, cd, dan delete.
25
Workspace Browser, Workspace Browser pada MATLAB terdiri dari kumpulan variabel
(nama array) yang didenisikan ketika sedang menggunakan MATLAB dan tersimpan di
dalam memory. Untuk mengetahui variabel yang sedang aktif beserta karakterisasinya kita
dapat menggunakan Workspace Brow ser atau dengan mengetik who atau whos pada Com-
mand Window. Ingat, variabel ini hanya aktif sementara yaitu sepanjang belum keluar MAT-
LAB. Bila kita sudah keluar MATLAB maka semua variabel yang telah didenisikan akan
hilang. Bila variabel tersebut masih akan digunakan lagi maka variabel tersebut dapat dis-
impan dengan memilih Save Workspace As dari Menu File.
Array Editor, Bila kita mengklik double variabel padaWorkspace Browser maka akan muncul
Array Editor. Editor ini dapat digunakan untuk mengedit data yang ada pada array tersebut.
Editor/Debugger, Editor/Debugger digunakan untuk membuat M-les dan menjalankan
proses debugging. Sesungguhnya M-le dapat dibuat pada text editor apapun tetapi untuk
proses debugging tetap harus menggunakan MATLAB Editor/Debugger.
Tampilan ini dapat diubah sesuai selera yaitu dengan cara membuka, menutup atau memperbe-
sar/memperkecil ukuran window yang tersedia.
17 Ekspresi Matematika pada MATLAB
Pada dasarnya data numerik pada MATLAB berbentuk matriks. Pendenisian matriks akan
diberikan pada bab selanjutnya. Untuk sementara pada bab ini kita hanya berurusan dengan
bilangan atau skalar. Ekspresi matematika pada MATLAB terdiri dari empat macam, yaitu :
1. Variabel
2. Bilangan
3. Operator
4. Fungsi
Variabel
Variabel MATLAB tidak membutuhkan deklarasi ataupun statemen dimensi. Penu lisan variabel
dimulai dengan hurup, dapat diikuti dengan hurup atau angka atau underscore. MATLAB hanya
dapat mengenal 31 karakter pertama dari nama variabel. Contoh :
>> Juml ah_ni l ai =270
Tekan enter, maka akan diperoleh :
Juml ah_ni l ai =
270
>>
Di sini Jumlah_nilai adalah nama variabel yang disimpan pada workspace dengan nilai 270. Bila
terdapat variabel baru dengan nama sama maka secara otomatis nilai variabel lama akan terhapus
dan berlaku nilai variabel baru. MATLAB sangat sensitif dalam membaca variabel, ia membedakan
antara hurup besar dan hurup kecil. Contoh : X dan x adalah dua variabel yang berbeda. Pada
satu baris kita dapat mendensikan lebih dari satu variabel dengan cara memberikan tanda koma
(,) diantara dua variabel. Sebagai contoh
26
> x=23 , X=73
maka akan muncul
x =
23
X =
73
Semua variabel yang telah didenisikan tersimpan di dalam workspace. Bila kita ingin melihat
kembali variabel apa saja yang telah tersimpan dapat dilihat pada workspace, atau pada command
window ketik who atau whos. Sebagai contoh bila diketik perintah whos dan tekan enter maka
diperoleh :
>> whos
Name Si z e Bytes Cl as s
X 1x1 8 doubl e array
Juml ah_ni l ai 1x1 8 doubl e array
x 1x1 8 doubl e
array Grand t o t a l i s 3 el ements us i ng 24 bytes
>>
Jadi kita telah mempunyai tiga variabel dengan nama X, Jumlah_nilai, dan x. Ketiga varibel
adalah skalar yaitu matriks dengan ukuran 1x1. Masing- masing variabel membutuhkan 8 byte
untuk ukuran le, jadi total space yang dibutuhkan adalah 24 byte. Untuk mengetahui kembali
nilai variabel tersebut cukup diketik nama variabelnya. Sebagai contoh :
>> Juml ah_ni l ai
Juml ah_ni l ai =
270
Sebagaimana telah dijelaskan bahwa variabel-variabel yang telah didenisikan tidaklah permanen
tersimpan pada workspace. Untuk menyimpan variabel di- gunakan perintah >>save {nama file}
untuk menyimpan semua variabel dan >>save {nama file} {nama variabel}{nama variabel}
untuk menyimpan variabel tertentu saja. Sebagai contoh
>> save f i l e k u Juml ah_ni l ai
Juml ah_ni l ai =
25
akan menyimpan variabel Jumlah_nilai dalam leku.mat. Untuk membersihkan command window
gunakan perintah >>clc, sedangkan untuk menghi- lang semua variabel yang ada pada command
window gunakan perintah >>clear. Jadi perintah
>>c l e a r
>>c l c
akan membersihkan command window dan menghapus semua variabel yang telah tersimpan pada
workspace. Dalam kasus ini semua variabel tidak bisa di panggil lagi, kecuali variabel yang telah
disimpan. Untuk memanggil kembali variabel yang tersimpan dalam mat.le, gunakan perintah
>>load {nama file}. Contoh
>> l oad f i l e k u
akan mengaktifkan kembali variabel Jumlah_nilai yang tersimpan di dalam le leku.
27
Bilangan
Bilangan pada MATLAB menggunakan notasi desimal biasa, menggunakan titik desimal, tanda
plus atau tanda minus. Notasi saintik menggunakan hurup e untuk menyatakan pangkat 10.
Bilangan imaginer dinyatakan dengan hurup i atau j. contoh : Beberapa contoh bilangan yang
berlaku pada MAT LAB : 3, -99 0.0001 9.6397238, 1.60210e-20, 6.02252e+23, 1i, -3.14159j, 3e5i.
Semua bilangan tersimpan secara internal dengan menggunakan format long yang dispesikasi oleh
standar titik mengambang (oating-point) IEEE. Bilangan titik mengambang mempunyai presisi
kira-kira 16 digit desimal signikan dan jangkauan antara 10
323
sampai dengan 10
308
.
Operator
Operator pada MATLAB dan artinya dapat dilihat sebagai berikut :
Operator pada Matlab
Lambang arti contoh : >>x = 4; y = 12;z = 3-2i;
+ penjumlahan >>x+y, ans = 16
- pengurangan >>c=y-b, c=8
* perkalian >>a*b, ans = 48
\ pembagian biasa >>x/y, ans = 0.2500
/ pembagian kiri >>n = x\y, n = 3
^ pangkat >>x^3, ans = 64
kompleks konjugat atau transpose matriks >>z, ans = 3+2i
Catatan bahwa x\y berarti x membagi y atau y dibagi oleh x.
Contoh
>> x = 4; y = 12; z = 32 i ;
>> x+y
ans =
16
Angka 16 adalah hasil penjumlahan antara 4 dan 12. Di sini ans adalah variabel yang diberikan
oleh MATLAB karena tidak ada denisi variabel untuk x +y sebelumnya.
Terkadang kita hanya ingin melihat hasil akhir perhitungan tetapi tidak perlu menampilkan nilai
dari setiap variabel dengan alasan terlalu ramai. Untuk itu gunakan saja semicolon (;) setelah nilai
variabel yang tidak perlu ditampilkan.
Fungsi dan kontanta pada matlab
MATLAB menyediakan banyak fungsi matematika mulai dari fungsi elementer seperti sqrt, exp,
sin, dan lain-lain sampai dengan fungsi matematika lanjutan seperti gamma, beseel, dan lain-lain.
Sebagian fungsi pada MATLAB merupakan built-in yaitu bagian yang tidak dapat dipisahkan dari
MATLAB sehingga fungsi-fungsi built-in tidak bisa diedit atau dimodikasi sama sekali. Selain
fungsi-fungsi built-in, terdapat pula fungsi MATLAB yang didenisikan dalam m-le sehingga masih
dapat diedit, misalnya fungsi bessel, sinh, dan lain-lain.
Fungsi Pangkat/Eksponensial contoh
exp Eksponensial. >> exp(1), ans =2.7183
log Logaritma natural (bilangan pokok e). >> log(exp(1)), ans =1
log10 Logaritma bilangan pokok 10. >> log10(100), ans = 2
log2 Logaritma bilangan pokok 2. >> log2(8), ans = 3
sqrt Akar kuadrat. >> sqrt(225), ans = 15
28
Fungsi Bilangan Kompleks
abs Nilai mutlak.
angle Sudut phase.
conj Kompleks konjugate.
imag Bagian imajiner bilangan kompleks.
real Bagian real bilangan kompleks.
Fungsi Pembulatan dan sisa
x Pembulatan menuju nol.
oor Pembulatan menuju -.
ceil Pembulatan menuju .
round Pembulatan menuju bilangan bulat terdekat
mod modulo
rem sisa setelah pembagian
Fungsi Trigonometri
sin Sinus.
sinh Sinus hiperbolik.
asin Invers Sinus.
asinh Invers Sinus hiperbolik.
cos Cosinus.
cosh Cosinus hiperbolik.
acos Invers cosinus.
acosh Invers cosinus hiperbolik
tan Tangen.
tanh Tangen hiperbolik.
atan Invers tangen.
atanh Invers tangen hiperbolik.
sec secan.
sech secan hiperbolik.
asec Invers secan.
aceh Invers secan hiperbolik.
csc Cosecan.
csch Cosecan hiperbolik.
acsc Invers cosecan.
acsch Invers cosecan hiperbolik.
cot Cotangen.
coth Cotangen hiperbolik.
acot Invers cotangen
acoth Invers cotangen hiperbolik
>> exp ( 1)
ans =
2. 7183
>> l og ( exp ( 1) )
ans =
1
>> s qr t ( 2) , abs (3)
ans =
1. 4142
ans =
29
3
>> x1=1.4; x2 =3. 6;
>>f i x ( x1 ) , f i x ( x2 )
ans =
1
ans =
3
>>f l o o r ( x1 ) , f l o o r ( x2 )
ans =
2
ans =
3
>> c e i l ( x1 ) , c e i l ( x2 )
ans =
1
ans =
4
>> round ( x1 ) , round ( x2 )
ans =
1
ans =
4
Selain fungsi-fungsi elemeter di atas masih terdapat ratusan bahkan ribuan fungsi yang sudah dise-
diakan oleh MATLAB, baik dalam bentuk built-in maupun dalam m-le. Secara khusus, MATLAB
menyediakan fungsi khusus untuk membangkitkan konstanta yang sering digunakan.
Konstanta pada Matlab
pi 3.14159265358...
i satuan imajiner, yaitu i =

1.
j sama seperti i.
eps Presisi relatif, atau epsilon mesin, yaitu 2.2204e-016.
realmin Bilangan titik mengambang terkecil, yaitu 2.2251e-308.
realmax Bilangan titik mengambang terbesar, yaitu 1.7977e+308.
Inf Takberhingga.
NaN Not-a-number.
>> s i n ( pi /2)
ans =
1
>> atan ( 1)
ans =
0. 7854
Diperhatikan output MATLAB tidak pernah menghasilkan lambang konstanta. Dalam contoh
terakhir, kita tahu bahwa arctan(1) = /4 tetapi MATLAB menulis dalam bentuk desimal 0.7854
yang merupakan aproksimasi dari /4 atau dalam degree adalah 45. Untuk mengubah dari radian
ke degree gunakan perintah >> rad2deg(s) dan berlaku sebaliknya.
>> rad2deg ( pi )
ans =
180
30
Bilangan eps digunakan sebagai toleransi untuk beberapa fungsi MATLAB, seperti rank, det, eig,
dan lain-lain. Lambang Inf akan muncul bila kita membagi dengan nol bilangan yang tidak nol,
atau bila hasil suatu kalkulasi melebihi realmax. Sedangkan NaN menunjukkan ekspresi yang tidak
terdenisi, seperti 0/0 atau Inf-Inf. Secara matematis, ekspresi a/0 dengan a = 0 juga tidak
terdenisi.
>> f a c t o r i a l ( 170)
ans =
7. 257415615307994 e+306
>> f a c t o r i a l ( 171)
ans =
I nf
Di sini fungsi factorial berarti factorial(n) = n! = n(n 1)(n 2)(2)(1). Dalam contoh ini,
MATLAB masih dapat menghitung 170! tetapi tidak mampu lagi menghitung faktorial yang lebih
besar, karena sudah melebihi bilangan realmax yaitu sekitar 1.7977e+308.
Latihan
1. Hitunglah
(a) 1
2
2+
3
4
(b)
_
1

2

5
2

2
_
2
(c) 2
3

4
_
3

2 +
3

16
_
(d)
1
2

3
4
+
7
8
1
2
+
3
4

7
8
(e) log 13 + e
2
(f) ln7 e
2
log5
2. Carilah masing-masing nilai berikut:
(a) 0.0
(b)
0
8
(c) 8
0
(d)
0
0
(e)
8
0
(f) 0
8
3. Hitung f(3,12) jika f(x) =
_

x
2
+x
1+x
3
_
5
31
MATLAB : Pertemuan 8
18 Format Tampilan
Tampilan standar (default) MATLAB adalah menggunakan sistem desimal dengan empat digit
signikan. Tetapi tampilan ini dapat diubah dalam bentuk lain dengan menggunakan fungsi format.
19 Bekerja dengan Matriks
Matriks pada MATLAB berupa array bilangan yang berbentuk persegi pan- jang. Seperti biasa
ukuran matriks ditentukan oleh banyaknya baris dan kolom. Secara khusus, bilangan atau skalar
adalah matriks berukuran 1 1. Sedangkan vektor dipandang sebagai matriks yang hanya mem-
punyai satu kolom atau satu baris. Jadi semua data numerik di dalam MATLAB dipan- dang
sebagai matriks. Sejumlah ekspresi matematika seperti variabel, bilan- gan, operator dan fungsi
digunakan dalam dalam bekerja dengan matriks atau array.
Beberapa cara mendenisikan matrik dalam MATLAB, yaitu :
Memasukan elemen matriks secara eksplisit.
Membangun matriks dengan menggunakan fungsi built-in,
Mendenisikan matriks dengan M-le.
Mengambil matriks dari le eksternal.
Contoh cara pertama. Misalkan akan didenisikan matriks
A =
_
_
_
_
16 3 2 13
5 10 11 8
9 6 7 12
4 15 14 1
_
_
_
_
.
Caranya :
Semua elemen matriks ditulis didalam tanda kurung siku, []. Gunakan spasi atau koma untuk
memisahkan tiap-tiap elemen pada setiap baris. Semicolon (;) untuk mengakhiri tiap-tiap baris.
>> A=[ 1 6 3 2 1 3 ; 5 1 0 1 1 8 ; 9 6 7 1 2 ; 4 1 5 1 4 1 ]
A =
16 3 2 13
5 10 11 8
9 6 7 12
4 15 14 1
Diperhatikan dua ekspresi untuk mendenisikan vektor baris dan vektor kolom berikut :
>> b =[ 16 3 2 13]
b =
16 3 2 13
>> c =[ 1 6 ; 3 ; 2 ; 1 3 ]
c =
18
3
2
13
>>c
ans =
16 3 2 13
32
19.1 Elemen Baris-Kolom Matriks
Elemen matriks pada MATLAB ditunjukkan oleh indeks baris-kolom, yaitu :
A(i,j) : Elemen A yang berada pada baris ke i dan kolom ke j.
A(i1:i2,j1:j2): Sub matriks yang terdiri dari elemen A yang berada pada baris i1 s.d. baris i2,
dari kolom j1 s.d. kolom j2.
A(i,j1:j2): Vektor baris yang memuat semua elemen A yang berada pada baris i dari kolom
j1 s.d. kolom j2.
A(i1:i2,j): Vektor kolom yang memuat semua elemen A yang berada pada kolom j dari baris
i1 s.d. baris i2.
A(i,:): Vektor baris terdiri dari baris ke i matriks A. Notasi ini dapatpula ditulis A(i,1:end).
Kata end menunjukkan nilai terakhir indeks kolom j.
A(:,j): Vektor kolom terdiri dari kolom ke j matriks A. Seperti sebelumnya, notasi ini dapat
ditulis dengan A(1:end,j)
>> A( 3 , 2) ,A( 4 , 3)
ans =
6
ans =
14
Tetapi,
>> A( 5 , 1)
??? Index exceeds matri x di mensi ons .
Artinya tidak ada elemen matriks A yang berada pada baris ke 5 dan kolom ke 1 sebab matriks
hanya berukuran 4x4.
>> A( 1 : 3 , 2 : 4 )
ans =
3 2 13
10 11 8
15 14 1
>> A( 3 , : )
ans =
9 6 7 12
>> A( 1 : 3 , 2 )
ans =
3
10
6
>> A( 3 , 2 : end )
ans =
6 7 12
Bila a suatu vektor tidak masalah baris ataupun kolom, maka ekspresi a(j), j = 1, 2, ..., end meny-
atakan komponen ke j vektor a. Ekspresi a(k:l) adalah elemen vektor a dari komponen k s.d.
komponen l.
33
>> a=[ 2 34 46 67 5]
a =
2 34 46 67 5
>> a ( 3)
ans =
46
>> a ( 2 : 4 )
ans =
34 46 67
19.2 Fungsi sum, diag, inv, det dan transpose matriks
Diperhatikan matriks A yang telah kita denisikan di atas berupa bujur sangkar ajaib, yaitu jumlah
semua bilangan pada setiap baris, setiap kolom, dan diag- onalnya adalah sama. Dalam hal ini
jumlahnya 34.
>> sum(A)
ans =
34 34 34 34
Dalam hal ini sum(A) menghasilkan vektor baris yang terdiri dari jumlah semua bilangan pada
masing-masing kolom. Untuk melihat jumlah semua bilangan pada kolom tertentu, katakanlah
kolom 3, tulis :
>>sum(A( : , 3 ) )
Hasilnya juga 34. Bagaimana jumlah baris-barisnya?. Transpose A diperoleh sebagai berikut :
>> A
ans =
16 5 9 4
3 10 6 15
2 11 7 14
13 8 12 1
Jadi jumlah bilangan pada semua baris A adalah
>> sum(A )
ans =
34 34 34 34
Diagonal A diperoleh seperti berikut :
>> di ag (A)
ans =
16
10
7
1
dan
>> sum( di ag (A) )
ans =
34
memberikan jumlah bilangan pada diagonal.
MATLAB telah menyediakan fungsi untuk menghitung invers dan determinan suatu matriks.
34
>> P=[ 1 2 4 ; 4 6 5 ; 2 2 5 ]
P =
1 2 4
4 6 5
2 2 5
>> i nv (P)
ans =
1. 2500 0. 1250 0. 8750
0. 6250 0. 1875 0. 6875
0. 2500 0. 1250 0. 1250
>> det (P)
ans =
16
19.3 Operator kolon dan array
Notasi titik dua (kolon), : , adalah salah satu operator paling penting pada MATLAB. Ia banyak
digunakan untuk mendenisikan array dengan cepat.
a1:a2 mendenisikan array mulai dari a1, a1+1, a1+2, ..., sampai dengan bilangan terbe-
sar sebelum a2.
a1:s:a2 mendenisikan array mulai dari a1, a1+s, a1+2s, ... dan seterusnya sampai den-
gan bilangan yang "paling dekat" dengan a2. Bila a1<a2 dan s>0 diperoleh array naik.
Sebaliknya, bila a1>a2 dan s<0 diperoleh array turun.
linspace(a1,a2,n) mendenisikan array dengan cara membagi interval [a1,a2] menjadi n
bagian yang sama panjang.
>> x=1:10
x =
1 2 3 4 5 6 7 8 9 1 0
>> yy=1: 5: 50
yy =
1 6 1 1 1 6 2 1 26 31 36 41 46
>> y=50: 5:1
y =
50 45 40 35 30 25 20 15 10 5
>> ab =1: 0. 5: 4
ab =
Columns 1 through 6
1. 0000 1. 5000 2. 0000 2. 5000 3. 0000 3. 5000
Column 7
4. 0000
>> ddd=l i ns pa c e ( 1 , 10 , 12)
ddd =
Columns 1 through
6 1 . 0 0 0 0 1 . 8 1 8 2 2 . 6 36 4 3 . 4 5 45 4. 27 27 5 . 0 90 9
Columns 7 through 12
5. 9091 6. 7273 7. 5455 8. 3636 9. 1818 10. 0000
Coba dicermati perbedaan array yang didenisikan menggunakan operator kolon dan menggu-
nakan perintah linspace. Bila array yang dihasilkan ternyata tidak mencukupi bila ditulis satu baris
35
pada command window maka penulisan lebih dari satu baris akan muncul seperti ab dan ddd di
atas. Bila pendenisian array tidak sesuai dengan alur logika maka akan dihasilkan array kosong.
Contoh :
>> ko=5: 2:10
ko =
Empty matri x : 1 by0
36
MATLAB : Pertemuan 9
19.4 Matriks-matriks Penting pada MATLAB
Cara lain mendenisikan matriks adalah dengan menjalankan fungsi MATLAB baik built-in maupun
m-le. Beberapa matriks penting yang sudah terdenisi secara built-in adalah :
zeros(m,n) mendenisikan matriks berukuran mxn dengan semua elemen nol.
ones(m,n) mendenisikan matriks berukuran mxn dengan semua elemen satu.
diag(a) mendenisikan matriks diagonal dengan diagonal utama adalah vektor a.
rand(m,n) mendenisikan matriks berukuran mxn yang dibangkitkan secara random oleh dis-
tribusi seragam.
randn(m,n) mendenisikan matriks berukuran mxn yang dibangkitkan secara random oleh
distribusi normal.
magic(n) mendenisikan matriks bujur sangkar ajaib ordo n.
Tiga matriks pertama di atas paling sering digunakan terutama ketika kita menyusun program
untuk numerik matematika.
>> Z=z e r os ( 3 , 5)
Z =
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
>> A=ones ( 1 , 5)
A =
1 1 1 1 1
>> V=3ones ( 4 , 4)
V =
3 3 3 3
3 3 3 3
3 3 3 3
3 3 3 3
>> BR=rand ( 1 , 6)
BR =
0. 6154 0. 7919 0. 9218 0. 7382 0. 1763 0. 4057
>> R=randn ( 4 , 4)
R =
0.8147 0.6324 0.9575 0.9572
0.9058 0.0975 0.9649 0.4854
0.1270 0.2785 0.1576 0.8003
0.9134 0.5469 0.9706 0.1419
19.5 Operasi pada Matriks
Memperbesar Matriks Penggunaan kurung siku [ ] tidak hanya untuk mendenisikan matriks
secara eksplisit tetapi dapat pula digunakan untuk menggabungkan beberapa matriks berukuran
kecil menjadi matriks baru yang lebih besar.
37
>> B=[ 1 ; 2 ; 3 ]
B =
1
2
3
>> C=[ 0 0 0 0 ; 1 1 1 1 ]
C =
0 0 0 0
1 1 1 1
>>D=[P B; C]
D =
1 2 4 1
4 6 5 2
2 2 5 3
0 0 0 0
1 1 1 1
Matriks-matriks yang akan digabungkan haruslah kompatibel berdasarkan baris atau kolom. Diper-
hatikan contoh berikut
>> E1 =[ 1 2 ; 3 4 ]
E1 =
1 2
3 4
>> E2 =[ 3 3 ; 4 4 ; 5 5 ]
E2 =
3 3
4 4
5 5
>> G1=[E1 E2 ]
??? Error us i ng ==> hor zcat Al l mat r i ces on a row i n the bracketed e xpr e s s i on must have the same number of rows .
>> G2=[E1 ; E2 ]
G2 =
1 2
3 4
3 3
4 4
5 5
Menghapus Baris dan Kolom Kita dapat menghapus beberapa baris atau beberapa kolom
suatu matriks dengan menggunakan array kosong [ ].
>> A=magic ( 4)
A =
16 5 9 4
3 10 6 15
2 11 7 14
13 8 12 1
>> X=A;
>> X( : , 2 ) =[ ] ;
>> X
X =
38
16 3 13
5 10 8
9 6 12
4 15 1
>>Y=A;
>> Y( 1 , : ) =[ ] ;
>> Y
Y =
9 7 6 12
4 14 15 1
Ekspresi X(:,2)=[ ] berarti membuang kolom 2 matriks X=A, sedangkan Y(1,:)=[ ] berarti mem-
buang baris 1 matriks X=A.
Operasi pada Matriks dan Array Pada MATLAB, matriks dipandang sebagai array numerik
dua dimensi. Ope- rasi aritmatika pada array dikerjakan secara elemen demi elemen. Beberapa
operasi aritmatika pada array adalah sebagai berikut :
+ Penjumlahan.
- Pengurangan.
* Perkalian Matriks.
/ Pembagian Matriks.
.* Perkalian elemen demi elemen.
./ Pembagian elemen demi elemen.
.^ Pangkat elemen demi elemen.
Sebagai ilustrasi, misalkan kita mempunyai matriks A, B dan vektor a, b yang didenisikan sebagai
berikut :
>> A=magic ( 3 ) ; B=A ; a =[ 8 5 2 ] ; b =[ 4 5 6 ] ;
>>A+B
ans =
16 4 10
4 10 16
10 16 4
>>AB
ans =
101 71 53
71 83 71
53 71 101
>>A. B
ans =
64 3 24
3 25 63
24 63 4
Perintah A*B berarti perkalian antara matriks A dan matriks B. Sedangkan A.*B menghasilkan
perkalian elemen demi elemen matriks A dan matriks B. Dua matriks A dan B dapat dikalikan bila
banyaknya baris pada matriks A sama dengan banyaknya kolom matriks B. Sedangkan perkalian
per elemen A.*B hanya terdenisi bila ukuran kedua matriks persis sama.
39
>> ab
ans =
4 0 4
>> ab
??? Error us i ng ==> I nner matri x di mensi ons must agr ee .
>> a . b
ans =
32 25 12
>> a . / b
ans =
2. 0000 1. 0000 0. 3333
Diperhatikan di sini operasi a*b tidak terdenisi. Hal ini disebabkan operasi * digunakan pada
perkalian matriks, sedangkan di sini banyak baris vektor a yaitu 1 tidak sama dengan banyak
kolom vektor b yaitu 3.
>> 3+a
ans =
11 8 5
Berarti setiap elemen a ditambah dengan 3.
>> 5b %s e t i ap el emen b di kal i kan dengan 5
ans =
20 25 30
Baru saja diperkenalkan notasi baru yaitu %. Perintah setelah tanda % tidak diproses oleh MAT-
LAB, biasanya hanya digunakan untuk memberikan keterangan atau komentar.
>> aA
ans =
87 51 87
MATLAB memproses a*A sebagai perkalian antara matriks a berukuran 1x3 dan matriks A beruku-
ran 3x3.
>> A10 %s e t i ap el emen matri ks A di kur angi 10
ans =
2 9 4
7 5 3
6 1 8
>> a(3)+b(2)+A(1 , 2)+B( 3 , 2)
ans =
15
Ekspresi terakhir ini berarti elemen ketiga vektor a ditambah elemen kedua vektor b ditambah
elemen baris kesatu dan kolom kedua matriks A ditambah elemen baris ketiga dan elemen kolom
kedua matriks B.
Latihan
1. Buatah matriks tridiagonal berukuran 100 x 100 seperti matriks di bawah ini
40
_
_
_
_
_
_
_
_
_
_
1 2 0 0 0
2 1 2 0 0
0 2 1 2 0
0 0 2 1
.
.
. 0
.
.
.
.
.
.
.
.
.
.
.
. 2
0 0 0 0 2 1
_
_
_
_
_
_
_
_
_
_
2. Diberikan matriks A:
A =
_
_
1 2 2
2 1 1
3 3 2
_
_
carilah :
a. A
1
b. A
1
A
3. Selesaikan sistem persamaan linear berikut :
2x + y + 3 = 6
2y z = 3
x + y + z = 5
41
MATLAB : Pertemuan 10
20 Grak Fungsi
20.1 Grak dua dimensi
Fungsi MATLAB yang paling sering digunakan untuk membuat grak fungsi adalah plot. Fungsi
plot mempunyai arti yang berbeda tergantung dari data masukan. Bila y suatu vektor maka
plot(y) menghasilkan grak linear sepotong-sepotong yang menghubungkan setiap elemen y secara
berurutan. Misalkan kita akan membuat grak fungsi
y = sin(2x) untuk xberada pada interval [0; 2].
Tulis pada command window perintah sebagai berikut!
>> x =0: 0. 05: 2 pi ;
>> y=s i n (2 pi x ) ;
>> pl ot ( x , y)
>> xl i m ( [ 0 2 pi ] )
>> xl abe l ( x )
>> yl abe l ( y )
>> t i t l e ( Graf i k 2 di mensi f ungs i \{ y=s i n (2\ pi x ) \} )
Maka hasilnya adalah
Pada baris pertama, x=0:0.05:2*pi; berarti kita mempersiapkan data berupa array x. Coba
lihat kembali denisi operator kolon (:) sebelumnya. Dapat juga menggunakan perintah
linspace.
Pada baris kedua, kita mempersiapkan data berupa array y yang berupa nilai fungsi pada x.
Jadi x dan y merupakan pasangan array yang mempunyai panjang sama.
Perintah plot(x,y) berarti kita meminta MATLAB untuk menggambar pasangan data x
dan y pada bidang koordinat. Perlu diingat bahwa perintah plot(x,y) hanya berlaku jika
panjang kedua array x dan y adalah sama.
42
Perintah xlim([0 2*pi]) digunakan untuk membatasi interval grak pada sumbu x. Sejalan
dengan ini, kita dapat membatasi grak pada sumbu y dengan perintah ylim([ymin ymax]).
Perintah xlabel dan ylabel digunakan untuk membuat label pada sumbu koordinat.
Perintah title digunakan untuk menuliskan judul grak.
Secara umum, langkah-langkah dalam membuat grak fungsi dilakukan sebagai berikut :
1. Mempersiapkan data.
2. Memilih letak dan posisi gambar.
3. Memanggil perintah plot.
4. Memilih bentuk garis, warna dan tanda khusus.
5. Menetapkan batas-batas sumbu koordinat termasuk membuat grid bila diperlukan.
6. Melengkapi grak dengan keterangan seperti judul grak, label sumbu koordinat dan legend.
7. Menyimpan atau mengeksport grak
Ketujuh langkah tersebut tidak semuanya harus dilakukan, tergantung dari bagaimana tampilan
gambar yang diinginkan. Namun langkah 1 dan langkah 3 mutlak diperlukan. Diperhatikan ma-
sukan berikut :
>> x = 0 : 0 . 2 : 1 2 ;
>> y1=be s s e l ( 1 , x ) ;
>> y2=be s s e l ( 2 , x ) ;
>> y3=be s s e l ( 3 , x ) ;
>> s ubpl ot ( 3 , 1 , 1)
>> pl ot ( x , y1 , r . )
>> t i t l e ( Graf i k f ungs i Be s s e l pertama )
>> s ubpl ot ( 3 , 1 , 2)
>> pl ot ( x , y2 , g )
>> t i t l e ( Graf i k f ungs i Be s s e l kedua )
>> s ubpl ot ( 3 , 1 , 3)
>> pl ot ( x , y3 , m )
>> t i t l e ( Graf i k f ungs i Be s s e l ket i ga )
Hasilnya adalah sebagai berikut.
43
Perintah subplot(m,n,k) berarti MATLAB menyediakan posisi ke k dari m baris dan n kolom
tempat gambar yang tersedia. Cara penghitungan dimulai dari kiri-ke kanan-ke bawah kiri -
ke kanan - dst. Sebagai contoh, misalkan kita ingin membuat 6 buah grak yang disusun dalam
3 baris dan 2 kolom. Kita gunakan perintah subplot(3,2,k), dan posisinya dapat dilihat pada
gambar berikut.
Bila ketiga grak di atas mau diletakkan pada satu sumbu koordinat, perintah subplot tidak
diperlukan. Untuk itu cukup ditulis
>> pl ot ( x , y1 , x , y2 , x , y3 )
>>l egend ( Be s s e l pertama , Be s s e l kedua , Be s s e l ket i ga )
>> gr i d
>> t i t l e ( Graf i k t i ga buah f ungs i Bessel )
44
Secara sederhana, perintah plot mempunyai bentuk
>>pl ot ( x , y , pi l i han )
Pilihan di sini untuk memberikan warna, tanda (mark) dan jenis/ukuran garis. Untuk lebih jelasnya
dapat dilihat pada matlab dengan mengetikkan
>> Help Pl ot
Diperhatikan contoh berikut !
>> x=6: 0. 2: 6;
>> y=1/s qr t ( pi ) exp(x . ^2/2) ;
>> pl ot ( x , y , dr : )
Pilihan dr: di dalam perintah >> plot(x,y,dr:) berarti titik-titik (x,y) ditandai oleh dia-
mond (d), warna merah r dan titik-titik tersebut dihubungkan oleh garis putus-putus (:).
Gambar yang terdapat pada jendela grak akan hilang bila kita keluar dari MATLAB. Bila gambar
tersebut masih akan digunakan dikemudian hari maka kita perlu menyimpannnya. Ada dua cara
45
menyimpan grak, yaitu dalam bentuk gambar MATLAB yaitu dengan ekstensi g atau dieksport
ke dalam bentuk lainnya seperti bmp, eps, jpeg dan lain-lain. Untuk mudahnya, kita dapat
menggunakan jendela grak secara interaktif.
Untuk menyimpan dan mengeksport grak kedalam bentuk eps, lakukan langkah-langkah berikut :
1. Pada window grak seperti tampak pada Gambar, klik File, kemudian pilih save atau save
as.
2. pilih save as type yang diinginkan (dalam hal ini EPS color le dengan ekstensi eps).
3. Berikan nama le yang akan disimpan. letakkan pada direktori yang di inginkan.
20.2 Grak tiga dimensi
Pada bagian ini akan dijelaskan cara menggambar grak pada ruang berdimensi tiga dengan meng-
gunakan fungsi-fungsi built-in pada MATLAB. Ada empat macam fungsi MATLAB yang sering
digunakan untuk menggabar grak tiga dimensi ini, yaitu :
1. plot3
2. mesh, meshc
3. surf, surfc
4. contour
Untuk menjelaskan fungsi-fungsi tersebut, diperhatikan beberapa contoh berikut.
>> t=10pi : pi /100: 10 pi ;
>> x=t . cos ( t ) ;
>> y=t . s i n ( t ) ;
>> pl ot 3 ( x , y , t ) ;
>> t i t l e ( Kurva r ( t ) = ( t cos ( t ) , t s i n ( t ) , t ) )
>> xl abe l ( x )
46
>> yl abe l ( y )
>> z l a be l ( z )
>> gr i d
perintah plot3(x,y,z), bila x, y and z are tiga vector dengan panjang sama menggambar lintasan
garis dalam ruang 3-d yang melalui koordinat-koordinat x, y dan z. Sedangkan plot3(X,Y,Z),
bila X, Y dan Z adalah tiga matriks berukuran sama adalah memplot beberapa lintasan garis yang
masing-masing melalui kolom-kolom matriks X, Y dan Z.
Sebelum dijelaskan fungsi mesh, diperkenalkan fungsi meshgrid. Diperhatikan ilustrasi berikut
> x =[ 0 1 2 ] ;
>> y =[ 10 12 14] ;
>> [X, Y]=meshgri d ( x , y)
X =
0 1 2
0 1 2
0 1 2
Y =
10 10 10
12 12 12
14 14 14
Jadi perintah [X,Y]=meshgrid(x,y) menghasilkan dua matriks X yang baris- barisnya adalah array
x, dan matriks Y yang kolom-kolomnya adalah array y. Jadi pasangan (X,Y) memuat semua pasan-
gan nilai pada array x dan array y yang mungkin. Perintah ini biasa digunakan untuk mengevaluasi
fungsi multivariabel pada sejumlah titik yang diambil pada domainnya.
Contoh 2: Misalkan akan digambar grak dari parabola hyperbolik
z = y
2
-x
2
pada kotak {(x, y) : -1 x 1, -1 y 1}
>> x=1: 0. 05: 1;
>> y=x ;
>> [X, Y]=meshgri d ( x , y ) ;
>> Z=Y.^2X. ^2;
47
>> mesh(X, Y, Z)
>> t i t l e ( Graf i k f ungs i z = x^2y ^2 ) ;
Perintah surf hampir sama seperti mesh tetapi di sini warna kurva lebih padat, seperti terlihat
pada Gambar berikut.
Contour kurva yang disebut juga level kurva adalah proyeksi kurva z = f(x,y) pada sumbu xy
yang mempunyai nilai fungsi yang sama, yaitu
C
a
:= {f(x, y) : f(x; y) = a}
48
Bila kita ingin menampilkan level kurva secara lengkap, lakukan perintah berikut.
>> [ c , h] = cont our f (X, Y, Z, k );
>> c l a be l ( c , h)
Masih banyak sekali fungsi-fungsi menarik yang berkaitan dengan grak dimensi tiga ini, sehingga
tidak mungkin terangkum semuanya pada tutorial singkat ini. Untuk lebih lengkapnya, silahkan
lihat pada MATLAB help dengan mengetik
>>hel p graph3d
Selain dari kemampuan untuk menghasilkan grak tiga dimensi, MATLAB juga mampu membaca
citra baik gray-scale maupun full-color dengan menggunakan fungsi image dan sejenisnya.
>> l oad durer
>> whos
Name Si z e Bytes Cl ass
X 648 x509 2638656 doubl e array
capt i on 2 x28 112 char array
49
map 128x3 3072 doubl e array
Grand t o t a l i s 330272 el ements us i ng 2641840 bytes
>> image (X) ; col ormap (map)
Di sini le durer sudah tersimpan di dalam MATLAB. Variabel X berupa matriks persegi panjang
yang merep resentasikan itensitas keabuan (gray-scale) suatu citra. Masih ada lagi fasilitas pada
MATLAB untuk keperluan visualisasi yaitu untuk animasi. Fungsi yang sering digunakan untuk
animasi ini adalah movie atau menggunakan Erase- Mode. Bila tertarik, lihat help navigator pada
MATLAB.
Latihan
1. Plot dalam satu gure grak fungsi y1 = |sin(x)|, y2 = |cos(x)|, 0 x 10.
2. Gambar grak dari parabola hyperbolik
z = y
2
x
2
pada daerah {(x, y) : 1 x 1, 1 x 1}
3. Bagaimana contour dari soal no 2.
50
MATLAB : Pertemuan 11
21 Pemrograman dengan MATLAB
Sebagaimana telah dijelaskan pada awal modul ini, MATLAB adalah program komputer untuk
melakukan komputasi numerik yang basis datanya berupa matriks. Untuk penggunaan lebih luas,
kita harus menulis bahasa dan kode khusus yang dapat dieksekusi oleh MATLAB. Bahasa dan kode
MATLAB ini ditulis pada jendela editor/debugger.
21.1 m-le
Bahasa pemrograman MATLAB yang ditulis pada jendela editor/debugger disebut m-le. Ada
dua macam m-le yaitu :
1. script le, yaitu m-le yang tidak memerlukan variabel masukan dan variabel keluaran. Pro-
gram ini dapat dijalankan dari command window dengan cara mengetik nama lenya.
2. input le, yaitu m-le yang variabel keluarannya didenisikan langsung di dalam le, sedan-
gkan variabel masukkannya dimasukkan secara interaktif pada command window.
3. function le, yaitu m-le yang terdiri dari variabel masukan dan variabel keluaran. Bentuk
umum function le adalah
function [out1,out2,....]=nama_fungsi(in1,in2,...)
Di sini in1,in2,...adalah variabel masukan dan out1,out2,... adalah variabel keluaran.
Untuk menjalankan program ini, ketik pada command window :
>> [ out1 , out2 , . . . . ] = nama_fungsi ( i n1 , i n2 , . . . )
Prosedur dalam pemrograman MATLAB dilakukan sebagai berikut :
1. Buka jendela editor/debugger dengan cara, pada desktop MATLAB klik File - pilih New -
klik M-le.
2. Tulis bahasa dan kode MATLAB yang telah dipersiapkan.
3. Simpan le dengan cara, pada jendela editor/debugger :
klik File- pilih Save As - (beri nama le) - klik Save.
4. Kembali ke command window, dan jalankan program dengan cara seperti yang telah disam-
paikan di atas.
Contoh script le : Tulis kalimat berikut pada jendela editor/debugger:
x = pi /100: pi /100: 10 pi ;
y = s i n ( x ) . / x ;
pl ot ( x , y)
gr i d
Setelah selesai, simpan le ini dengan nama le1. Kemudian untuk memanggilnya pada command
window, diketik
>> f i l e 1
maka akan dihasilkan:
51
Contoh function le : Misalkan kita ingin membuat suatu program untuk menghitung rata-
rata, standar deviasi, nilai maksimum dan nilai minimum untuk suatu data yang disajikan dalam
array x. Jadi dalam hal ini kita mempunyai :
1. variabel masukan : x (berupa data yang diketahui).
2. variabel keluaran : mean (untuk rata-rata), stdev (untuk standar deviasi), terkecil (untuk
data minimum) dan terbesar (untuk data maksimum).
f unc t i on [ mean , stdev , t e r k e c i l , t e r be s ar ] = s t at ( x)
n = l engt h ( x ) ;
mean = sum( x)/n ;
stdev = s qr t (sum( ( xmean) . ^2) / n ) ;
t e r k e c i l = min( x ) ;
t e r be s ar = max( x ) ;
Setelah le disimpan, katakan namanya stat.m maka kita dapat menjalankan program ini untuk
data x yang diberikan sebagai variabel masukan. Misalnya,
>> x =rand ( 1 , 6)
x =
0. 9901 0. 7889 0. 4387 0. 4983 0. 2140 0. 6435
>> [mean , stdev , t e r k e c i l , t e r be s ar ] = s t at ( x)
mean =
0. 5956
stdev =
0. 2500
t e r k e c i l =
0. 2140
t e r be s ar =
0. 9901
Data x = rand(1,6) adalah bilangan random berukuran 1x6 yang dibangkitkan dengan menggu-
nakan fungsi MATLAB rand.
52
Contoh input le : Kita ingin menghitung akar-akar persamaan kuadrat dengan rumus abc.
%program untuk menghitung akarakar persamaan kuadrat
%dengan rumus abc .
a = i nput ( masukkan n i l a i a : )
b = i nput ( masukkan n i l a i b : )
c = i nput ( masukkan n i l a i c : )
akar1 = (b+s qr t ( b^24ac ) ) /( 2 a ) ;
akar2 =(bs qr t ( b^24ac ) ) /( 2 a ) ;
akarnya = [ akar1 ; akar2 ]
Kemudian le disimpan dengan nama abc.m. Misalkan kita akan menghitung akar-akar persamaan
:
x
2
+ 7x + 4 = 0 :
Dalam hal ini kita harus memberikan nilai a, b dan c yang bersesuaian setiap kali MATLAB
memintanya. Coba lakukan prosedur berikut.
>> abc
masukkan n i l a i a : 1
a =
1
masukkan n i l a i b : 7
b =
7
masukkan n i l a i c : 4
c =
4
akarnya =
0.6277
6.3723
21.2 Pengendali alur ( ow control)
Sebelum kita membahas pengendali alur, kita harus mengetahui terlebih dulu relasi dan operator
logika berikut :
< kurang dari
<= kurang dari atau sama dengan
> lebih dari
>= lebih dari atay ssama dengan
= = sama dengan
~= tidak sama dengan
| atau (disjungsi)
& dan (konjungsi)
~ tidak (ingkaran)
Beberapa pengendali alur pada MATLAB :
1. if
2. switch and case
3. for
4. while
5. continue
6. break
53
if - elseif - else - end
Pernyataan if akan mengevaluasi suatu ekspresi logika dan selanjutnya serangkaian statemen diek-
sekusi bila ekspresi tersebut benar. Pilihan elseif dan else menyediakan alternatif lainnya bila
ekspresi sebelumnya salah. Kata end yang berpasangan dengan if digunakan untuk mengakhiri
statemen terakhir. Jadi bentuk umum konstruksi if-elseif-else-end adalah sebagai berikut :
i f e ks pr e s i l ogi ka1
sekel ompok statemen di e ks e kus i
e l s e i f e ks pr e s i l ogi ka2
sekel ompok statemen l ai nnya di e ks e kus i
dan s et er us nya
e l s e e ks pr e s i l ogi ka t e r akhi r .
sekel ompok statemen t e r akhi r di e ks e kus i
end
Contoh penggunaan if : Misalkan kita akan membuat suatu klasikasi skor angka pada range
[0; 10] menjadi tiga kategori kurang, cukup dan baik. Bila nilai yang dimasukkan di luar range
tersebut akan diberi peringatan SALAH DATA.
x=i nput ( masukkan n i l a i x : )
i f x <=5 & x>=0
di s p ( KURANG )
e l s e i f x>=5&x<6.5
di s p ( CUKUP )
e l s e i f x>=6.5 &x<=10
di s p ( BAIK )
e l s e
di s p ( SALAH DATA, n i l a i x harus di dalam [ 0 , 1 0 ] )
end
Perintah disp(string) digunakan untuk menampilkan kata string. Sekarang kita simpan m-le
ini dengan nama konversi.m. Selanjutnya, pada command window kita lakukan :
>> konver s i
masukkan n i l a i x : 2
KURANG
>> konver s i
masukkan n i l a i x : 5 . 7
CUKUP
>> konver s i
masukkan n i l a i x : 8 . 9
BAIK
>> konver s i
masukkan n i l a i x : 1 1
SALAH DATA, n i l a i x harus di dalam [ 0 , 1 0 ]
switch - case - otherwise - end
Pernyataan switch mengeksekusi serangkaian pernyataan yang kreterianya didasarkan pada nilai
variabel atau ekspresi. Hanya kasus yang cocok pertama saja yang dieksekusi, sedangkan kasus
lainnya tidak dieksekusi. Untuk mudahnya, struktur kontrol alur ini dapat dilhat pada contoh
berikut.
54
c hoi c e = i nput ( masukkan n i l a i 1 , atau 2 atau 3 : )
x = pi : 0 . 0 1 : pi ;
swi tch choi c e
cas e 1
pl ot ( x , s i n ( x ) )
cas e 2
pl ot ( x , cos ( x ) ) ;
cas e 3
pl ot ( x , s i n ( x ) , x , cos ( x ) )
ot her wi s e
di s p ( TIDAK ADA PILIHAN DONG )
end
Mari simpan le ini dengan nama kasus.m. Pada m-le ini kita menginginkan salah satu keluaran
dari tiga pilihan yang ada, yaitu menggambar grak fungsi y = sin(x) saja, atau grak y =
cos(x) saja, atau grak y = sin(x) dan y = cos(x) digambar secara bersamaan pada satu bidang
koordinat. Angka 1, 2, atau 3 digunakan untuk pilihan. Untuk memblokir kemungkinan lain
digunakan perintah otherwise.
>> kasus
masukkan n i l a i 1 , atau 2 atau 3 : 3
c hoi c e =
3
Hasilnya akan muncul grak seperti ditunjukkan pada berikut. Perhatikan :
apa yang terjadi bila dimasukkan angka selain 1, 2, atau 3.
Sesungguhnya, kendali alur switch-case-otherwise-end mempunyai kemiripan dengan if-elseif-else-end.
Tetapi alur switch hanya bisa mengevaluasi kesamaan, sedangkan if bisa untuk kesamaan maupun
ketidaksamaan. Di lain pihak, switch dapat membandingkan string dengan panjang berbeda,
sedangkan if masih membutuhkan perintah strcmp untuk untuk membandingkan string dengan
panjang berbeda. File kasus.m di atas dapat pula ditulis dengan menggunakan if sebagai berikut.
c hoi c e = i nput ( masukkan n i l a i 1 , atau 2 atau 3 : )
x = pi : 0 . 0 1 : pi ;
i f c hoi ce == 1
pl ot ( x , s i n ( x ) )
55
e l s e i f c hoi ce == 2
pl ot ( x , cos ( x ) ) ;
e l s e i f c hoi ce == 3
pl ot ( x , s i n ( x ) , x , cos ( x ) )
e l s e
di s p ( SALAH MASUKAN )
end
Tetapi alur switch tidak bisa digunakan untuk kasus dalam contoh pemakaian if sebelumnya.
56
MATLAB : Pertemuan 12
for - end
Kontrol alur for digunakan untuk mengulangi serangkaian statemen yang frekuensinya berhingga
dan ditentukan terlebih dahulu.
Contoh pemakaian for-end : Misalkan kita ingin membangun matriks Hilbert berukuran mn
dengan elemen ke (i, j) nya didenisikan oleh :
H
i,j
:=
1
i+j
.
f unc t i on H=hi l b (m, n)
f o r i = 1: n
f o r j = 1:m
H( i , j )=1/( i+j ) ;
end
end
Setelah disimpan dengan nama hilb.m maka diperoleh
>> H=hi l b ( 4 , 5)
H =
0. 5000 0. 3333 0. 2500 0. 2000
0. 3333 0. 2500 0. 2000 0. 1667
0. 2500 0. 2000 0. 1667 0. 1429
0. 2000 0. 1667 0. 1429 0. 1250
0. 1667 0. 1429 0. 1250 0. 1111
Contoh pemakaian gabungan for dan if Misalkan kita akan mendenisikan fungsi berikut dan
menggambar graknya.
f(x) :=
_
xsin(1/x) bila x = 0
0 untuk x lainnya
kita gambarkan juga grak fungsi y
1
= x dan y
2
= x pada bidang koordinat yang sama.
f unc t i on y = o s i l a s i ( x ) ;
f o r i =1: l engt h ( x ) ;
i f x( i )~=0
y( i )=x( i ) s i n (1/x( i ) ) ;
e l s e
y( i )=0;
end
end
pl ot ( x , y ) ;
hol d on
%tambahan
y1=x ; y2=x ;
pl ot ( x , y1 , k : , x , y2 , k : )
gr i d
hol d o f f
57
Di sini variabel masukan berupa array x, sedangkan keluarannya berupa array y yang didenisikan
secara berurutan (pengulangan) oleh for dan bersyarat oleh if. Perintah length(x) suatu
bilangan bulat positip yang merupakan panjang vektor x. Perintah hold on meminta MATLAB
untuk tetap mengaktifkan jendela grak, artinya apapun grak yang dibuat tetap digambarkan
pada bidang yang sama sampai muncul perintah hold off. Bila pada command window dilakukan
:
>> x=1/pi : 0 . 0 0 0 1 : 1 / pi ;
>> y=o s i l a s i ( x ) ;
maka akan menghasilkan Gambar
while - end
Kontrol alur while melakukan pengulangan serangkaian statemen terus menerus di bawah kondisi
logika tertentu. Bila kondisi ini belum terpenuhi maka proses eksekusi terus dijalankan. Jadi
terdapat kemungkinan pengulangan (iterasi) sampai tak berhingga (divergen).
Contoh penggunaan while : Misalkan kita akan membagi dengan dua bilangan , hasilnya kita
bagi lagi dengan dua, dan seterusnya sampai diperoleh hasil bagi kurang dari 0.0013. Kemudian
kita juga ingin mengetahui berapa banyak pengulangan yang di- lakukan untuk mencapai bilangan
ini. Untuk mengerjakan ini, langsung saja dikerjakan pada command window sebagai berikut :
>> q=pi ;
>> i t =0;
>> whi l e q >= 0. 0013;
q = q / 2 ; i t = i t +1; end
>> q
q =
7. 669903939428206 e004
>> i t
i t =
12
Jadi q = 7.669903939428206e-004 adalah bilangan pertama yang lebih kecil dari 0.0013 yang diper-
oleh dengan proses di atas. Untuk mencapai hasil ini diperlukan 12 kali iterasi (pengulangan).
58
Contoh penggunaan while - if : Misalkan kita ingin menghitung secara pendekatan akar dari
persamaan
x
3
2x 5 = 0
yang berada pada suatu suatu interval[0, 3]. Metoda yang akan digunakan adalah metoda biseksi,
yaitu dengan cara membagi dua interval terus menerus sampai ditemukan akar. Program berikut
dilengkapi juga informasi jumlah iterasi yang diperlukan untuk mencapai pendekatan akar tersebut.
f unc t i on [ akar , i t e r a s i ] = bi s e c ( t o l ) ;
%mf i l e untuk menghitung akar persamaan x^32x5 pada
%i nt e r v a l [ 0 , 3 ] dengan menggunakan t o l e r a n s i t o l .
a=0;b=3; f a = 5; i t = 0;
whi l e ba > t o l
x = ( a+b ) /2;
f x = x^32x5;
i f s i gn ( f x ) == s i gn ( f a ) %untuk mengetahui p o s i s i akar
a = x ; f a = f x ;
e l s e
b = x ;
end
i t = i t +1;
end akar = x ;
i t e r a s i = i t ;
>> [ akar , i t e r a s i ] = bi s e c (3 eps )
akar =
2. 09455148154233
i t e r a s i =
53
Hasil ini berarti dengan toleransi 3eps = 6.661338147750939e-016 kita mem- peroleh akar 2.09455148154233.
Untuk mencapai akar ini diperlukan 53 kali pengulangan (iterasi).
Dua kendali alur lainnya, yaitu continue dan break tidak dijelaskan secara rinci dalam modul ini.
Secara singkat, kendali continue digunakan untuk menghindari sejumlah langkah pada lingkungan
for atau while dengan cara meloncat pada iterasi berikutnya. Sedangkan break digunakan untuk
mengakhiri secara prematur iterasi pada lingkungan for atau while. Kadang-kadang dengan alasan
tertentu, kedua kendali ini dibutuhkan dalam pemrograman.
Latihan
1. Buat function le untuk menghitung kar-akar persamaan kuadrat dengan rumus abc, yang
didenisikan sebagai berikut :
x
1
=
b+

b
2
4ac
2a
dan x
2
=
b

b
2
4ac
2a
kemudian hitung akar-akar persamaan :
x
2
4x + 3 = 0.
2. Buat function le untuk menghitung nilai a dan b pada fungsi regresi linear berikut :
y = a + bx
dimana :
a =
(

yi)(

x
2
i
)(

xi)(

xiyi)
n

x
2
i
(

xi)
2
dan
b =
n

xiyi(

xi)(

yi)
n

x
2
i
(

xi)
2
59
MATLAB : Pertemuan 13-14
Presentasi Tugas Mahasiswa
60

También podría gustarte