Modul Praktikum BP

95
BAB I INTRODUCTION I.1. Memulai Program MATLAB MATLAB merupakan suatu program komputer yang bisa membantu memecahkan berbagai masalah matematis yang kerap kita temui dalam bidang teknis. Kita bisa memanfaatkan kemampuan MATLAB untuk menemukan solusi dari berbagai masalah numerik secara cepat, mulai hal yang paling dasar, misalkan sistem 2 persamaan dengan 2 variabel: x - 2y = 32 12x + 5y = 12 hingga yang kompleks, seperti mencari akar- akar polinomial, interpolasi dari sejumlah data, perhitungan dengan matriks, pengolahan sinyal, dan metoda numerik. Salah satu aspek yang sangat berguna dari MATLAB ialah kemampuannya untuk menggambarkan berbagai jenis grafik, sehingga kita bisa memvisualisasikan data dan fungsi yang kompleks. Sebagai contoh, tiga gambar berikut diciptakan dengan command surf di MATLAB. Kita memulai MATLAB dengan mengeksekusi ikon MATLAB di layar komputer ataupun melalui tombol Start di Windows. Setelah proses loading program, jendela utama MATLAB akan muncul seperti berikut ini.

description

Modul Praktikum yang berisi panduan-panduan dalam bahasa pemrograman, dengan menggunakan program matlab. Dengan modul ini maka diharapkan kita mengerti dasar-dasar fungsi matlab dan mengerti logika berpikir. Logika berpikir sangatlah penting, sebab pemrograman adalah suatu seni. Seni berpikir yang disebabkan karena tiap orang memiliki pandangan, pemikiran, dan problem solving yang berbeda-beda.

Transcript of Modul Praktikum BP

BAB IINTRODUCTION

I.1.Memulai Program MATLABMATLAB merupakan suatu program komputer yang bisa membantu memecahkan berbagai masalah matematis yang kerap kita temui dalam bidang teknis. Kita bisa memanfaatkan kemampuan MATLAB untuk menemukan solusi dari berbagai masalah numerik secara cepat, mulai hal yang paling dasar, misalkan sistem 2 persamaan dengan 2 variabel: x - 2y = 32 12x + 5y = 12 hingga yang kompleks, seperti mencari akar-akar polinomial, interpolasi dari sejumlah data, perhitungan dengan matriks, pengolahan sinyal, dan metoda numerik. Salah satu aspek yang sangat berguna dari MATLAB ialah kemampuannya untuk menggambarkan berbagai jenis grafik, sehingga kita bisa memvisualisasikan data dan fungsi yang kompleks. Sebagai contoh, tiga gambar berikut diciptakan dengan command surf di MATLAB.Kita memulai MATLAB dengan mengeksekusi ikon MATLAB di layar komputer ataupun melalui tombol Start di Windows. Setelah proses loading program, jendela utama MATLAB akan muncul seperti berikut ini.

I.2.Mencoba Kemampuan MATLABJika Anda baru pertama kali menggunakan MATLAB, ada baiknya kita mencoba beberapa command untuk melihat sepintas berbagai kemampuan dan keunggulan MATLAB. MATLAB dapat kita pergunakan seperti halnya kalkulator:

Gambar I.2. Contoh MATLAB digunakan Sebagai Kalkulator

Jawaban tersebut nantinya akan disimpan dalam variabel yang diberi nama ans, jadi saat kita mengetikan variabel ans maka hasil perhitungan terakhir akan ditampilkan.

Gambar I.3. Hasil Perhitungan disimpan pada variabel ans

I.3.Script Editor dan M-ScriptAnda telah belajar berinteraksi dengan MATLAB menggunakan command window. Sekarang, katakanlah anda harus mempergunakan sederetan command secara berulang- ulang di dalam sesi MATLAB yang berbeda. Akan sangat repot jika Anda harus mengetikkan command tersebut secara manual di command window setiap kali Anda butuhkan. Namun dengan M- script, deretan command tersebut bisa Anda simpan dalam bentuk skrip teks. Kapan saja anda butuhkan, skrip tersebut bisa dijalankan/dieksekusi secara otomatis dengan cara mengetikkan nama M-file yang bersangkutan di command window. Untuk menuliskan skrip M-file, Anda bisa mulai dengan membuka file baru. Caranya ialah melalui menu di main window: File-Open atau File-New-M-file; atau dengan mengklik ikon yang ada di jendela utama. Sebuah jendela editor akan terbuka, seperti gambar berikut ini.

Gambar I.4. Tampilan Script Editor

Dengan editor ini, kita bisa membuka sejumlah M-file, melakukan editing, ataupun mencoba menjalankannya sementara itu, untuk menyimpan M-file, Anda bisa lakukan dengan menu: File-Save atau File-Save As; ataupun dengan mengklik ikon yang ada. Namun demikian, sebenarnya anda juga bisa menuliskan M-file dengan sembarang editor teks, seperti MS Word, Notepad, dll.; yang penting Anda menyimpan file tersebut dengan ekstensi *.m. Pada bagian ini, kita akan menggunakan M-file untuk menjalankan sederetan command yang kita tuliskan sebagai skrip. Mari kita mulai dengan skrip sederhana untuk menghitung rata-rata dari lima bilangan. File ini kita namakan rata_rata.m. Bukalah M-file baru lalu ketikkan skrip berikut ini :% Program sederhana untuk menghitung % rata-rata 5 bilangan: % rata_rata.m a = 50;b = 100; c = 150;d = 200;e = 250;% Menghitung dan menampilkan rata-rata hasil = (a + b + c + d + e)/5; hasil Teks yang diawali tanda "%" menunjukkan komentar, dan tidak akan dieksekusi oleh MATLAB. Simpanlah file ini di dalam direktori Matlab\work dengan nama rata_rata.m. Sekarang cobalah jalankan dari command window. Sebelumnya pastikan bahwa direktori menunjuk ke Matlab\work. Perhatikan "Current Directory" yang ada di jendela utama MATLAB. Kita bisa mengubah direktori yang sedang aktif melalui drop-down menu ataupun melalui browse. Cara menjalankannya dengan mengetikkan nama file rata_rata.m, maka program yang kita buat tersebut akan dijalankan.

Gambar I.5. Mengubah Current Directory pada Command Window

I.4.Mengatur Variabel dan TampilannyaVariabel seperti sebuah kotak yang akan menyimpan data yang diinputkan didalamnya, adapun cara menginputkan seperti gambar dibawah ini.

Gambar I.6. Contoh Cara Menginputkan VariabelDisini kita membuat variabel x, y, dan kali yang isinya adalah 11,12, dan hasil kali kedua variabel.

Untuk melihat variabel yang tadinya kita buat, kita tinggal mengetikkan whos.

Gambar I.7. Contoh Penggunaan Command whos

Untuk menghapus semua variabel yang sudah kita buat, tinggal mengetikkan clear, maka semua variabel akan terhapus.

Gambar 1.8. Contoh Penggunaan Command clear

Untuk membersihkan layar command, tinggal mengetikkan clc. Maka layar command akan bersih.

Gambar 1.9. Contoh Penggunaan Command clc Sebelum dan Setelah Dijalankan

Dan untuk pemberian nama variabel mengikuti rambu-rambu berikut ini: Gunakan karakter alfabet (A s/d Z, a s/d z), angka, dan garis bawah ( _ ), sebagai nama variabel. Perlu diingat bahwa MATLAB peka terhadap besar-kecilnya huruf. Misalkan :jumlah, x1, x2, S_21; adalah nama variable yang valid sinyal1, Sinyal1, SINYAL1; dianggap variabel yang berbeda. Jangan gunakan spasi, titik, koma, atau operator aritmatik sebagai bagian dari nama. Selain berisi bilangan, variabel juga bisa berisi teks. Dalam mendefinisikan variabel teks gunakanlah tanda petik tunggal.>> baca_ini = 'Contoh variabel berisi teks!'; >> baca_ini baca_ini = Contoh variabel berisi teks!

BAB IIBUILT-IN FUNCTION

II.1.Menggunakan Built-in FunctionPada bab sebelumnya sudah dijelaskan bahwa mat lab dapat digunakan sebagai kalkulator yang jauh lebih kompleks, seperti scientific calculator. Matlab memiliki built-in mathematical functions yang sangat berguna. Bagaimana cara menggunakannya ? dapat dilihat contoh dibawah ini.

Gambar II.1. Contoh Penggunaan Built-in Function

Matlab dapat mencari hasil logaritma dari suatu bilangan hanya dengan mengetikkan log10 diikuti bilangan yang ditanyakan. Log10 adalah salah satu built-in mathematical functions. Masih banyak fungsi yang lain seperti sin, cos, tan, akar kuadrat dan masih banyak lagi.

II.2.Help dan List Built-in FunctionUntuk mengetahui fungsi-fungsi yang lain, kita dapat mencarinya sendiri lewat menu help. Langkah-langkahnya adalah sebagai berikut : Klik menu help Pilih function browser atau untuk lebih mudahnya tekan shift dan F1 Maka akan muncul kotak help, didalam folder-folder help tersebut terdapat berbagai macam fungsi dan kegunaannya Lebih jelasnya lihat gambar dibawah ini

Gambar II.2. Membuka Function Browser

Gambar II.3. Tampilan Function Browser

BAB IIISYMBOLIC CALCULATION

III.1.Menggunakan Variabel berupa Simbolik atau StringMatlab dapat digunakan sebagai calculator akan tetapi matlab juga dapat menyelesaikan perhitungan yang berupa symbol atau huruf (bukan bilangan). Lebih jelasnya dapat dilihat dibawah ini.

Gambar III.1. Contoh Penggunaan MATLAB Sebagai Kalkulator Simbolik

Pertama kita mendeklarasikan a b c d dan e sebagai symbol dengan syms untuk itu sebaiknya variabel yang digunakan bukan salah satu dari symbol, dalam contoh diatas menggunakan variabel f,g,h, dan i. Matlab dapat menemukan jawaban persoalan dalam bentuk symbol 4*a+b. int dan diff adalah beberapa contoh built-in function yang dimiliki matlab, int (integral) dan diff (diferensial), a harus diinputkan untuk mengetahui persamaan harus diintegral atau didiferensial terhadap variabel a.

III.2.Built-in Function Perhitungan SimbolikContoh di bawah ini menunjukan cara untuk mensubtitusikan suatu nilai. Soal diatas mensubtitusikan angka 1 sebagai nilai dari variabel x.

Gambar III.2. Contoh Mengsubstitusikan Nilai dengan Fungsi subs

Kita juga bisa mencari penyelesaian suatu persamaan dengan solve. Seperti contoh di bawah, kita akan mendapatkan penyelesaian dari persamaan var1 dan var 2 yaitu x1=4 dan y1=2 untuk eq1 dan x2=1 dan y2=-1 untuk eq2. Masih banyak built-in function yang dapat mendukung operasi hitung symbolic.

Gambar III.3. Contoh Penggunaan Fungsi solve

BAB IVLOGICAL SENTENCE

IV.1.Penggunaan if-endSeperti halnya bahasa program pada umumnya, kita bisa mengendalikan arah program dengan berbagai cara, berupa percabangan arah program berdasarkan kondisi tertentu, ataupun loop (perhitungan berulang).Ini merupakan statement untuk percabangan program berdasarkan satu/beberapa kondisi tertentu. syntax yang digunakan dalam MATLAB meliputi:if kondisi Command yang dijalankan jika kondisi dipenuhi end if kondisi Command yang dijalankan jika kondisi dipenuhielse Command yang dijalankan jika kondisi tidak dipenuhiend

if kondisi1 Command yang dijalankan jika kondisi1 dipenuhi elseif kondisi2 Dijalankan jika kondisi2 dipenuhi elseif kondisi3 Dijalankan jika kondisi3 dipenuhi elseif ... ...dst...else Dijalankan jika kondisi manapun tidak dipenuhiend

Selain itu, dimungkinkan pula membuat pernyataan if di dalam pernyataan yang lain (disebut nested-if), misalkan: if kondisi1 command1 if kondisiA commandAelse commandBend else command2end

Penting!Jangan keliru menuliskan elseif dan else if, karena keduanya berbeda. Yang pertama untuk menguji kondisi alternatif setelah kondisi di if terdahulu tak dipenuhi; tetapi yang kedua berarti nested-if.

IV.2.Penggunaan switch-caseSebagai alternatif dari statement if ... elseif ... else ... end, kita bisa menggunakan statement switch. Sintaksnya ialah:switch nama_variabel case{kondisi1,kondisi2,... dst} command jika kondisi1 atau kondisi2 dst... dipenuhi case{kondisiA,kondisiB,...} command jika kondisiA atau kondisiB dst... dipenuhi case{kondisiX,kondisiY,...} command jika kondisiX atau kondisiY dst... dipenuhi default command jika kondisi manapun tidak dipenuhi end

IV.3.Perulangan dengan for-endStatement ini digunakan untuk loop/perhitungan berulang. Sintaks yang digunakan dalam MATLAB ialah:for variabel = nilai_awal : inkremen (pertambahan) : nilai_akhir Command untuk dijalankan endMisalkan untuk menampilkan bilangan kelipatan 3 dari 30 sampai 100.for k = 30:3:100 k endHasilnya ialah:k = 30k = 33k = ...k = 99

IV.4.Perulangan dengan while-endAlternatif dari sintaks loop ialah berikut ini :while kondisi Command untuk dijalankan jika kondisi dipenuhiend %keluar dari loop jika kondisi tidak dipenuhi

IV.5.Operator Perbandingan dan LogikaKita harus bisa menuliskan kondisi dalam bahasa MATLAB untuk menciptakan percabangan program ataupun loop. Untuk keperluan ini kita mungkin harus membandingkan dua variabel (sama atau tidak, lebih besar atau lebih kecilkah?), mengevaluasi apakah suatu variabel memenuhi satu dari sejumlah syarat, dan sebagainya. Untuk membandingan dua variabel digunakan operator berikut ini:< > lebih kecil, lebih besar= lebih kecil atau sama dengan, lebih besar atau sama dengan== ~= sama dengan, tidak sama dengan

Sementara untuk mengevaluasi logika, digunakan fungsi dan operator:and(A,B) atau A & B operasi logika AND antara A dan Bor(A,B) atau A | B operasi logika ORxor(A,B) operasi logika XORnot(A) atau ~A operasi logika NOT pada AAdapun konsep kebenaran yang digunakan pada setiap operasi logika tersebut ialah sebagai berikut:ABA&BA|Bxor(A,B)

nolNol000

NolBukan nol011

Bukan nolNol011

Bukan nolBukan nol110

Tabel IV.1. Operator Logika dan Kebenarannya

Perlu diperhatikan bahwa operasi logika memiliki prioritas untuk dihitung lebih dahulu, kemudian diikuti operasi aritmatika, lalu operasi perbandingan., sama seperti kita mendahulukan operasi hitung kali lebih dulu baru penjumlahan.

BAB VARRAY AND MATRIX

V.1.Skalar, Vektor, dan MatriksTerdapat tiga jenis format data di MATLAB, yaitu skalar, vektor, dan matriks. Skalar, ialah suatu bilangan tunggal Vektor, ialah sekelompok bilangan yang tersusun 1-dimensi. Dalam MATLAB biasanya disajikan sebagai vektor-baris atau vektor-kolom Matriks, ialah sekelompok bilangan yang tersusun dalam segi-empat 2-dimensi. Di dalam MATLAB, matriks didefinisikan dengan jumlah baris dan kolomnya. Di MATLAB terdapat pula matriks berdimensi 3, 4, atau lebih.

Sebenarnya, semua data bisa dinyatakan sebagai matriks. Skalar bisa dianggap sebagai matriks satu baris satu kolom (matriks 1x1), dan vektor bisa dianggap sebagai matriks 1-dimensi: satu baris n kolom, atau n baris 1 kolom (matriks 1xn atau nx1). Semua perhitungan di MATLAB dilakukan dengan matriks, sehingga disebut MATrix LABoratory. Matriks didefinisikan dengan kurung siku ( [ ] ) dan biasanya dituliskan baris-per-baris. Tanda koma (,) digunakan untuk memisahkan kolom, dan titik-koma (;) untuk memisahkan baris. Kita juga bisa menggunakan spasi untuk memisahkan kolom dan menekan Enter ke baris baru untuk memisahkan baris.Perhatikan cara mendefinisikan skalar dengan ataupun tanpa kurung siku.>> skalar1 = 3.1415skalar1 = 3.1415>> skalar2 = [2.71828]skalar2 = 2.7183

Contoh vektor-baris dan vektor-kolom.>> vektor1=[3,5,7]vektor1 = 3 5 7

>> vektor2=[2;4;6]vektor2 = 246

Berikutnya kita coba contoh berikut untuk mendefinisikan matriks 3x3.>> matriks1=[10 20 3040 50 6070 80 90];>> matriks2=[10 20 30; 40 50 60; 70 80 90];

Terlihat bahwa matrix1 dan matrix2 isinya sama, karenanya kita bisa menekan Enter untuk membuat baris baru, ataupun menggunakan titik-koma. Kita juga bisa mendefinisikan matriks elemen per elemen.>> mat(1,1)=100; mat(1,2)=200; mat(2,1)=300;>> mat(2,2)=400mat = 100 200300 400

Kita sekarang akan mencoba menggabungkan variabel yang ada untuk membentuk matriks baru.>> gabung1=[vektor2 matriks1]gabung1 = 2 10 20 304 40 50 606 70 80 90 >> gabung2=[vektor1; matriks2]gabung2 = 3 5 710 20 3040 50 6070 80 90

Kita harus ingat bahwa matriks gabungan harus memiliki jumlah baris dan kolom yang valid sehingga membentuk persegi panjang. Lalu, sekarang cobalah menghitung matriks gabungan berikut:>> gabung3=[vektor2 vektor2 vektor2]>> gabung4=[vektor1;vektor1;vektor1]>> gabung5=[gabung3 gabung4]

V.2.Ukuran MatriksUntuk mengetahui ukuran atau dimensi dari matriks yang ada, kita bisa gunakan command size dan length. size umumnya digunakan untuk matriks 2-dimensi, sementara length untuk vektor.>> length(vektor1)ans = 3>> size(matrix1)ans = 3 3

Menunjukkan panjang vektor1 ialah 3 elemen, dan ukuran matrix1 ialah 3-baris 3-kolom. Lalu, kita juga bisa menyimpan keluaran command dalam variabel baru.>> panjang=length(vektor2)panjang =3>> [jml_baris,jml_kolom]=size(gabung5) jml_baris = 3 jml_kolom = 6

Sementara itu, untuk menghitung jumlah elemen dari suatu matriks, kita pergunakan command prod. Misalkan untuk matriks gabung5, jumlah elemennya ialah:>> jml_elemen=prod(size(gabung5))jml_elemen = 18

V.3.Matriks KhususMATLAB menyediakan berbagai command untuk membuat dan memanipulasi matriks secara efisien. Di antaranya ialah command untuk membuat matriks-matriks khusus, manipulasi indeks matriks, serta pembuatan deret. Mari kita bahas terlebih dahulu mengenai matriks khusus.Berbagai matriks khusus yang kerap kita pergunakan dalam perhitungan bisa dibuat secara efisien dengan command yang telah ada di MATLAB.

Tabel V.1. Fungsi untuk Membuat Matriks Khusus

Untuk memperdalam pemahaman, mari kita lihat contoh di bawah ini.>> clear >> mat_1=5*ones(2,4)mat_1 = 5 5 5 5 5 5 5 5>> mat_2=zeros(2,4)mat_2 = 0 0 0 0 0 0 0 0>> mat_3=[eye(4) -ones(4)]mat_3 =1 0 0 0 -1 -1 -1 -10 1 0 0 -1 -1 -1 -10 0 1 0 -1 -1 -1 -10 0 0 1 -1 -1 -1 -1>> bil_acak_uniform=rand(1,10)bil_acak_uniform =Columns 1 through 7 0.9501 0.2311 0.6068 0.4860 0.8913 0.7621 0.4565Columns 8 through 10 0.0185 0.8214 0.4447>> gaussian_noise=randn(5,1)gaussian_noise = -0.4326 -1.6656 0.1253 0.2877 -1.1465

V.4.Manipulasi Indeks MatriksDalam vektor ataupun matriks, indeks digunakan untuk menunjuk satu/beberapa elemen dari vektor/matriks. Indeks dituliskan di dalam tanda kurung ( ) dengan pola umum sebagai berikut.Untuk vektor:nama_vektor( indeks ) Untuk matriks:nama_matriks( indeks_baris , indeks_kolom )

Dalam suatu vektor, elemen pertama diberi indeks = 1, sementara dalam matriks, indeks menunjukkan nomor baris dan nomor kolom dari elemen yang ingin ditunjuk. Untuk lebih jelasnya perhatikan contoh berikut ini.>> clear>> vektor_ini = [1 3 5 7 9]; >> vektor_itu = [9; 8; 7; 6; 5];>> matrix = [10 20 30; 40 50 60; 70 80 90];>> vektor_ini(1)ans = 1>> vektor_itu(2)ans = 8>> matrix(1,2)ans = 20>> [matrix(1,1) matrix(1,2) matrix(1,3)]ans = 10 20 30

Kita juga bisa mengambil beberapa baris dan kolom sekaligus dari suatu matriks dengan operator titik-dua (:). Dalam hal ini tanda titik-dua berarti sampai dengan. Misalkan untuk mengambil elemen ke-1 sampai ke-3 dari vektor_ini.

>> vektor_ini(1:3)ans = 1 3 5

Mengambil elemen ke-3 sampai ke-5 dari vektor_itu.>> vektor_itu(3:5)ans = 765

Mengambil elemen baris ke-1 sampai ke-2, kolom ke-2 sampai ke3 dari matrix.>> matrix(1:2,2:3)ans = 20 3050 60

Dalam hal lain tanda titik-dua bisa berarti seluruhnya. Misalkan untuk mengambil seluruh elemen dari vektor_ini.>> vektor_ini(:)ans = 1 3 5 7 9

Mengambil seluruh baris dan kolom dari matrix.>> matrix(:,:)ans = 10 20 3040 50 6070 80 90

Mengambil seluruh elemen di baris ke-1 dari matrix.>> matrix(1,:)ans = 10 20 30

Mengambil seluruh elemen di kolom ke-2 dari matrix.>> matrix(:,2) ans = 205080

Mengambil seluruh elemen di kolom ke-2 dan ke-3 dari matrix.>> matrix(:,2:3)ans = 20 3050 6080 90

Dengan menggunakan indeks, kita bisa mengubah nilai elemen matriks yang telah ada.>> vektor_ini(1)=1000vektor_ini = 1000 3 5 7 9>> vektor_itu(2:4)=[-1; 1; 1]vektor_itu = 9-1-1-1 5

>> matrix(3,:)=100*ones(1,3)matrix = 10 20 30 40 50 60100 100 100

V.5.Pengoperasian MatriksPenjumlahan dua matriks, A+B, dan selisih dua matriks, AB, terdefinisi jika A dan B berukuran sama. Namun demikian, penjumlahan/pengurangan juga bisa dilakukan antara matriks dengan skalar. Untuk jelasnya mari kita praktekkan contoh berikut ini.>> A=[0 1;2 3]; >> B=[4 5;6 7];>> Jumlah=A+B, Selisih=A-B, Tambah50=A+50 Jumlah = 4 6 8 10Selisih = -4 -4 -4 -4Tambah50 = 50 51 52 53

Perkalian matriks, misalkan C = AB, terdefinisi jika jumlah kolom di A sama dengan jumlah baris di B. Selain itu, perkalian juga bisa dilakukan antara matriks dengan skalar. Kita akan lanjutkan contoh sebelumnya.>> A,BA = 0 1 2 3B = 4 5 6 7

>> MultAB=A*B, MultBA=B*AMultAB = 6 7 26 31MultBA = 10 1914 27 x=[3 2 1];y=[100;10;1];>> z1=x*y, z2=y*xz1 = 321z2 = 300 200 100 30 20 10 3 2 1

Selain perkalian di atas, dikenal pula perkalian vektor, yaitu: dotproduct(atau disebut juga inner-product), dan cross-product.

Tabel V.2. Fungsi Perkalian Vektor dan Penjelasannya

Selain itu matriks juga dapat dipergunakan untuk menyelesaikan beberapa persamaan linier dengan beberapa variable.

Sedangkan pada MATLAB kita tuliskan:>> A=[1 2;12 5]; B=[32;7];>> X=inv(A)*BX = 6.0000 -13.0000

Sehingga kita dapatkan solusi x1 = 6 dan x2 = -13.Atau kita juga bisa mendapatkan solusi tersebut dengan operator pembagian terbalik:>> X=A\BX = 6.0000 -13.0000

Sebagai bahan latihan, cobalah Anda pecahkan persamaan linier dengan tiga variabel berikut ini. x + 2y + 3z = 2 4x + 5y + 6z = -5,5 7x + 8y 9z = -49

Selain itu di dalam MATLAB, operasi matematik juga bisa dilakukan elemen per-elemen. Dalam hal ini matriks atau vektor yang terlibat harus berukuran sama Operasi yang bisa dilakukan ialah perkalian/pembagian, penjumlahan/pengurangan, serta pangkat. Operator yang digunakan diawali dengan tanda titik (kecuali penjumlahan atau pengurangan), yaitu:

Tabel V.3. Tanda Operasi Elemen-per-elemen Array

Operasi penjumlahan/pengurangan matriks secara definit sudah dilakukan elemen-per-elemen, sehingga + dan tidak diawali titik. Sekarang kita coba praktekkan contoh di bawah ini.>> A=[1 -2;1 5]; B=[7 5; 2 0];>> A+Bans = 8 3 3 5>> A.*Bans = 7 -10 2 0>> B./Aans = 7.0000 -2.5000 2.0000 0>> B.^2ans = 49 25 4 0>> A.^Bans = 1 -32 1 1

>> 2.^Bans = 128 32 4 1

Perhatikan bahwa hasil operasi juga berupa matriks berukuran sama dengan A dan B. Pada contoh berikutnya kita coba operasi antar vektor.>> a = [3 2 1]; b = [4 5 6]; >> c = [10 20 30]; d = [5 10 15];>> a.*bans =12 10 6>> c.*dans = 50200450>> a.*c??? Error using ==> .*Matrix dimensions must agree.

Perhatikan bahwa ukuran a dan c tidak cocok sehingga muncul pesan error (a berukuran 1x3 sementara c 3x1).>> b.^a, c./d+2ans = 64 25 6ans = 4 4 4

>> c./2.*d.^2ans = 125 1000 3375

Ingat, operasi pangkat selalu dilakukan lebih dulu, diikuti perkalian/pembagian, kemudian penjumlahan/pengurangan.

V.6.Transposisi MatriksSalah satu operasi yang penting dalam matriks ialah transposisi, dituliskan dalam MATLAB dengan operator petik tunggal ( ) dan titik-petik ( .). Operasi ini mempertukarkan baris dan kolom dari suatu matriks atau vektor.

Tabel V.4. Penggunaan Tanda Petik untuk Transposisi Matriks

Mari kita praktekkan contoh berikut ini untuk memahami kedua operator di atas.>> Mat_riil=[1 0; 3 5], Mat_kompleks=[1+2i 3i; 1 2+3i]Mat_riil = 1 0 3 5Mat_kompleks = 1.0000 + 2.0000i 0 + 3.0000i 1.0000 2.0000 + 3.0000i>> Transp_riil=Mat_riil',Transp_kompleks=Mat_kompleks'Transp_riil = 1 3 0 5

Transp_kompleks =1.0000 - 2.0000i 1.0000 0 - 3.0000i 2.0000 - 3.0000i>> Transp_riil2=Mat_riil.' Transp_riil2 = 1 3 0 5>> Transp_kompleks2=Mat_kompleks.'Transp_kompleks2 = 1.0000 + 2.0000i 1.0000 0 + 3.0000i 2.0000 + 3.0000i

BAB VIINPUT AND OUTPUT STRING

VII.1.Menginput String atau KarakterPada MATLAB, huruf atau karakter dapat diinput dan diolah sebagai sebuah array atau matriks (matriks baris). Berikut merupakan cara untuk menginputkan karakter : Menginputkan karakter seperti menginputkan persamaan pada simbolik, seperti syntax berikut :=

Gambar VI.1. Contoh Penginputan String seperti pada Perhitungan Simbolik

Atau, jika anda ingin memberikan permintaan dapat dengan fungsi input. Fungsi ini meminta user untuk memberi inputan, sehingga fungsi ini lebih cocok digunakan jika anda sedang menggunakan script editor. Adapun syntax-nya sebagai berikut :=input()

Gambar VI.2. Contoh Penginputan String dengan Fungsi Input

VII.2.Mengolah String atau Karakter dengan ArrayKarena string atau karakter diinput dan diolah sebagai array, maka beberapa fungsi pada array dapat berlaku. Berikut hal-hal yang perlu diperhatikan untuk mengolah string : Jika anda ingin menggabungkan atau menambahkan kata-kata di bagian tengah, atau memisahkan kata-kata, anda dapat menggunakan perulangan (for atau while) untuk mencari letak tanda pemisah (terletak pada kolom/karakter ke berapa tanda pemisahnya).

Gambar VI.3. Contoh Pemisahan atau Penggabungan Karakter di bagian Tengah

Jika anda ingin menggabungkan atau menambah kata-kata pada string di bagian awal atau akhir string, anda dapat mengolah string tersebut seperti sebuah matriks.

Gambar VI.4. Contoh Penggabungan Karakter di bagian Awal atau Akhir

VII.3.Menampilkan String atau KarakterUntuk menampilkan string atau karakter pada command window dapat dengan beberapa cara, yaitu : Dengan menuliskan nama variabel, sehingga isi dari variabel akan ditampilkan. Dengan fungsi disp, yaitu fungsi untuk menampilkan isi dari variabel tanpa menunjukkan variabelnya apa. Namun fungsi ini hanya dapat menampilkan 1 variabel saja. Berikut syntaxnya :disp() Dengan fungsi fprintf, yaitu fungsi untuk menampilkan variabel dengan format-format tertentu. Fungsi ini dapat menampilkan variabel lebih dari 1, yang ditampilkan dapat berupa campuran karakter dengan angka. Adapun syntaxnya :fprintf(,,, ... )

Gambar VI.5. Contoh Menampilkan String atau Karakter

Untuk menampilkan fungsi fprintf dengan baik anda harus memikirkan peletakkan kode formatnya dengan baik, karena tempat peletakkan kode format merupakan tempat peletakkan variabel itu sendiri (dengan urutan dari kiri ke kanan). Berikut kode format fprintf untuk menampilkan string :

%sFormat untuk string atau karakter

\nUntuk membuat baris baru, seperti Enter saat pengetikan

\tUntuk membuat tab baru

Tabel VI.1. Kode Format fprintf untuk Menampilkan String

BAB VIIBASIC PLOTTING

VII.1.Membuat Grafik dengan Plotting TitikBerikut langkah-langkah dalam membuat grafik dari plotting titik : Buatlah 2 matriks baris yang berisikan absis dan ordinat dari titik-titik yang akan di plot. Tulislah pada fungsi plot sesuai syntax berikut :plot(,) Lalu enter, maka hasil dari plotting grafik akan ditampilkan.

Gambar VII.1. Contoh Membuat Grafik dengan Plotting Titik

VII.2.Membuat Grafik dengan Mengolah PersamaanBerikut langkah-langkah dalam membuat grafik dengan persamaan : Buatlah matriks absis seperti syntax berikut :=:: Ubahlah persamaan dari grafik ke dalam bentuk eksplisit, dan tuliskan seperti syntax berikut := Tulislah pada fungsi plot sesuai syntax berikut :plot(,) Lalu enter, maka hasil dari persamaan grafik akan ditampilkan.

Gambar VII.2. Contoh Membuat Grafik dengan Mengolah Persamaan

VII.3.Membuat Grafik lebih dari 1Berikut langkah-langkah dalam membuat lebih dari 1 grafik : Persiapkanlah absis dan ordinat masing-masing grafik dengan cara sebelumnya. Tulislah pada fungsi plot sesuai syntax berikut :plot(,,,, ... ) Lalu enter, maka hasil dari persamaan grafik akan ditampilkan.

Gambar VII.3. Contoh Membuat Grafik lebih dari 1

VII.4.Mengatur Tampilan dan Keterangan GrafikDalam menyajikan grafik pada MATLAB, ada beberapa tampilan yang dapat diatur : Untuk warna, tanda/simbol, dan jenis garis dapat diatur dengan menambahkan tulisan pada fungsi plot seperti syntax berikut :plot(,,, ... )

Berikut beberapa keterangan dan artinya untuk fungsi plot :WarnaSimbolTipe Garis

rMerah.Titik-Normal

gHijauoLingkaran:Titik-titik

bBiruxSilang-.Graris-titik-garis

cCyan+Tambah--Garis Putus-putus

yKuning*Bintang

mMagentadWajik

kHitamvSegitiga ()

wPutih^Segitiga ()

Segitiga ()

pPentagnal

hHeksagonal

Tabel VII.1. Keterangan untuk fungsi plot

Untuk menampilkan garis bantu pada grafik dapat dengan menuliskan command grid on. Untuk memberikan judul grafik dengan menggunakan fungsi title seperti syntax berikut :title() Untuk memberikan nama sumbu x dengan menggunakan fungsi xlabel seperti syntax berikut :xlabel() Untuk memberikan nama sumbu y dengan menggunakan fungsi ylabel seperti syntax berikut :ylabel() Untuk memberikan legenda/nama masing-masing grafik dengan menggunakan fungsi legend seperti syntax berikut :legend(,, ... )

Gambar VII.4. Contoh Mengatur Tampilan dan Keterangan Grafik

VII.5.Mencari Titik Potong 2 GrafikUntuk mencari titik potong 2 grafik, dapat dihitung terlebih dahulu dengan perhitungan simbolik. Adapun langkah-langkah untuk menghitungnya : Ubahlah kedua persamaan grafik ke dalam bentuk eksplisit. Lalu masukan persamaan tersebut (berupa hasil substitusi y=y) pada command window, seperti syntax berikut :== Lalu pergunakan fungsi solve untuk mencari absis dari titik potongnya. Dan untuk menghitung ordinatnya, tuliskan persamaan eksplisit salah satu grafik (bukan simbolik).

Gambar VII.5. Contoh Mencari Titik Potong 2 Grafik

VII.6.Memberi Tanda dan Teks Koordinat pada Titik PotongAdapun beberapa langkah untuk memberikan tanda dan teks koordinat pada titik potong : Setelah menghitung/memasukan koordinat titik potong (berupa matriks absis dan ordinat) pada command window, masukkan pada fungsi plot sebagai grafik baru dengan keterangan tanpa jenis garis. Untuk membuat teks koordinat, pertama-tama tulis command hold on pada command window. Fungsinya agar grafik tersebut jika akan di-edit, teksnya tidak menghilang. Lalu untuk memberikan teks koordinat dapat menggunakan fungsi text dengan syntax sebagai berikut :text(,,)

Gambar VII.6. Contoh Memberi Tanda dan Teks Koordinat pada Titik Potong

VII.7.Mencari Luas Daerah Grafik BerbatasBerikut merupakan langkah-langkah untuk mencari daerah grafik berbatas : Carilah batas-batas dari luas daerah yang akan dicari. Untuk mencari luasan juga harus menggunakan perhitungan simbolik, yaitu dengan menggunakan fungsi int, yaitu integral. Luas dari grafik berbatas merupakan hasil integral dari fungsi dengan batas tertentu. Adapun syntax dari fungsi int :int(,,) Jika diperlukan anda dapat menggunkan fungsi simbolik lainnya seperti eval untuk mengevaluasi hasil perhitungan simbolik sehingga hasil akan dirubah dari karakter/string menjadi nilai/angka.

Gambar VII.7. Contoh Mencari Luas Daerah Grafik Berbatas

VII.8.Memberi Tanda dan Teks Luas Daerah pada Daerah BatasBerikut merupakan langkah-langkah memberi tanda dan teks luas pada daerah batas : Carilah luasan daerah batas seperti perhitungan sebelumnya. Tanda pada daerah batas berupa pewarnaan daerah tersebut. Untuk memberi warna pada daerah tersebut dapat dengan fungsi fill, dengan syntax berikut :fill(,,) Memberikan teks luasan pada daerah batas dilakukan dengan cara yang sama seperti memberikan teks koordinat. Adapun syntaxnya :text(,,) Jika diperlukan, dapat berupa variabel tertentu yang berisikan karakter/strings. Selain itu, anda dapat menggunakan fungsi num2str untuk mengubah nilai perhitungan luas daerah agar dapat diolah sebagai karakter/string.

Gambar VII.8. Contoh Memberi Tanda dan Teks Luas Daerah dengan Daerah Batas

BAB VIIIM-FILE PROGRAM

VIII.1.Membuat M-scriptPada MATLAB, program M-file terdiri dari 2 jenis, m-script dan m-function. M-script merupakan program yang berbentuk command, sedangkan m-function berbentuk fungsi. Dalam pembuatan m-script, ada beberapa hal yang harus diperhatikan : Pada proses input m-script, beberapa data harus diinputkan oleh user dengan fungsi input dengan syntak berikut :=input(); Proses pengolahan m-script merupakan bagian yang sangat berpengaruh pada program, karena data hasil inputan sebelumnya akan diolah pada bagian ini sesuai dengan script yang dibuat. Proses ini tidaklah menentu karena pembuatannya sesuai tujuan dari dibuatnya program. Proses output m-script sebenarnya juga relatif, tergantung hasil seperti apa yang anda inginkan pada program yang anda buat. Misalnya saja anda ingin hasil akhrinya berupa variabel saja yang ditampilkan, berupa plotting grafik, ataupun berupa tampilan fprintf. Untuk menampilan variabel saja dapat dengan tidak memberi tanda ; atau dengan menuliskan nama variabelnya di akhir. Sedangkan jika berupa grafik, dapat dengan menambahkan fungsi plot dan pengatur tampilannya di akhir. Sedangkan untuk fungsi fprintf sesuai dengan syntax pada materi string sebelumnya :fprintf(,,, ... ); Tidak lupa script disimpan dengan nama yang anda tentukan (1 kata) pada lokasi yang sama dengan current directory agar program dapat dijalankan. Lalu untuk menjalankannya dapat dengan menuliskan nama script pada command window.

Gambar VIII.1. Contoh Program M-script

VIII.2.Kode Format untuk fprintfBerikut beberapa hal penting yang harus diingat dalam pembuatan kode format pada fungsi fprintf : Untuk penulisan kode format bilangan pecahan misal seperti %6.2f, memiliki arti bilangan pada variabel tersebut memiliki 6 digit total (termasuk koma) dengan 2 digit desimal. Sedangkan untuk kode format bilangan bulat seperti %3d, memiliki arti bilangan pada variabel tersebut memiliki 3 digit total. Adapun beberapa kode format yang perlu diingat untuk membuat suatu output :%sFormat untuk string atau karakter

%dFormat untuk bilangan bulat

%fFormat untuk bilangan pecahan

%eFormat untuk bilangan pecahan dengan format e (10 pangkat)

%gFormat untuk bilangan secara umum atau general

\nUntuk membuat baris baru, seperti Enter saat pengetikan

\tUntuk membuat tab baru

Tabel VIII.1. Kode Format fprintf pada Proses Output M-script

VIII.3.Membuat M-functionSelain M-script, M-function juga merupakan program yang pembuatannya di script editor. Program ini, biasanya dibuat dengan tujuan untuk mempermudah perhitungan. Untuk cara penggunaannya tidak jauh berbeda dari fungsi-fungsi yang lain. Berikut hal-hal yang perlu diperhatikan dalam pembuatan fungsi : Dalam pembuatan m-function, scriptnya lebih teratur sehingga syntax-nya harus anda perhatikan dengan baik. Berikut syntaxnya :function =(,, ... )%

end Nama fungsi di atas harus sama dengan nama file-nya dan terdiri dari satu kata. Keterangan pada fungsi dibuat dengan tujuan agar saat memunculkan fungsi tersebut dari help, penjelasannya akan muncul sesuai keterangannya. Isi fungsi harus dapat mendeskripsikan nilai dari variabel hasil, sehingga hasil yang ditampilkan nantinya merupakan nilai dari variabel hasil pada variabel ans. Setelah program selesai dan disimpan, berikut syntax untuk menjalankan m-function :(,, ... )

Gambar VIII.2. Contoh Program M-function

VIII.4.Perbedaan M-script dengan M-functionDalam penggunaan dan pembuatannya, adapun inti perbedaan antara m-script dengan m-function :M-scriptM-function

Tidak dapat menerima input arguments atau memberikan respon output arguments.Dapat menerima input arguments dan memberikan respon output arguments.

Menyimpan variabel yang dipakai dan dapat digunakan juga setelahnya.Menyimpan variabel yang dipakai pada internal dari fungsi, sehingga tidak dapat digunakan setelahnya.

Berguna untuk membuat program yang mempermudah dan praktis.Berguna untuk mempersingkat perhitungan pada program yang rumit.

Tabel VIII.2. Perbedaan M-script dengan M-function

BAB IXREAD AND WRITE TEXTFILE PROGRAM

IX.1.Data Teks yang DipersiapkanUntuk membuat program pengolahan data dari teks atau file notepad, anda harus membuat atau mempersiapkan data teks dari notepad/script editor yang akan dibaca oleh user. Lalu disimpan dengan ekstensi .txt pada current directory.

Gambar IX.1. Contoh File Teks yang Dipersiapkan

IX.2.Program Pengolahan Data TextProgram pengolahan data teks memiliki 3 tahapan, yaitu : Tahap pembacaan data teks. Pada tahap ini data teks dibaca dengan fungsi input dan textread. Fungsi input bertujuan untuk meminta user untuk memasukan nama filenya, Berikut syntax-nya :=input(,s)=textread(,headlines,)

Tahap pengolahan data teks. Pada tahap ini data pada variabel matriks di atas diolah sesuai tujuan dari program. Terkadang dalam mengolahnya diperlukan perulangan (for atau while) agar dapat mengolah matriks tersebut. Berikut syntax perulangannya (misal for) :for =1:length()

end Tahap penulisan data teks. Pada tahap ini data teks ditulis dengan perulangan (for atau while) dan fungsi fopen, fprintf, dan fclose. Perulangan digunakan untuk menyimpan Fungsi fopen digunakan untuk membuka file teks yang akan diketik, fungsi fprintf untuk mengetiknya pada file yang dibuka, dan fungsi fclose untuk menutupnya setelah diketik. Jika diperlukan fungsi input dapat diberikan dengan tujuan saat program dijalankan user sendiri yang akan memberikan nama pada filenya. Berikut syntax-nya (misal perulangan for) :=input(,s)=fopen([],w);fprintf(,\n);for =1:length()fprintf(,\n,);endfclose();

Gambar IX.2. Contoh Program Pengolahan Data Teks

IX.3.Data Teks Hasil PengolahanKarena program pengolahan data file termasuk m-script, maka cara untuk menjalankannya sama dengan cara untuk menjalankan program m-script yaitu dengan mengetik nama filenya. Lalu program akan dijalankan sesuai urutan pada script. Tidak lupa user harus menginputkan nama file input dan output. Hasil dari perhitungan tersebut akan ditampilkan pada file teks outputnya.

Gambar IX.3. Contoh Hasil setelah Menjalankan Program Pengolahan Data Teks

LAMPIRANREFERENCES AND WEBSITE RESOURCES