Dasar Dasar MATLAB

12
Dasar-Dasar MATLAB Materi untuk Pelatihan Dasar MATLAB pada Sabtu, 14 April 2012 2012 Agam Maulana Program Studi Teknik Elektro, Universitas Jenderal Soedirman 4/14/2012

description

Try This

Transcript of Dasar Dasar MATLAB

Page 1: Dasar Dasar MATLAB

Dasar-Dasar MATLAB Materi untuk Pelatihan Dasar MATLAB pada Sabtu, 14 April 2012

2012

Agam Maulana Program Studi Teknik Elektro, Universitas Jenderal Soedirman

4/14/2012

Page 2: Dasar Dasar MATLAB

Dasar-Dasar MATLAB 2012

Agam Maulana

1

Dasar-Dasar MATLAB

Materi untuk Pelatihan Dasar MATLAB pada Sabtu, 14 April 2012

Pendahuluan

Sekilas MATLAB

MATLAB merupakan sebuah bahasa komputasi teknis dan lingkungan yang interaktif untuk

pengembangan algoritma, visualisasi data, analisis data, dan komputasi numerik. Dengan

menggunakan produk MATLAB, kita bisa mengatasi masalah komputasi teknis dengan lebih

cepat apabila dibandingkan dengan menggunakan bahasa pemrograman tradisional seperti C,

C++, dan Fortran.

Kita dapat menggunakan MATLAB untuk aplikasi yang luas, seperti pengolahan sinyal dan

citra, komunikasi, perancangan sistem kendali, pengujian dan pengukuran, pemodelan dan

analisis finansial, dan biologi komputasional. Toolbox-toolbox tambahan (kumpulan fungsi

MATLAB dengan tujuan khusus, tersedia secara terpisah) memperluas kegunaan MATLAB

untuk mengatasi masalah yang terkait dengan bidang tertentu.

MATLAB menyediakan sejumlah fitur untuk mendokumentasikan serta berbagi hasil

pekerjaan kita. Kita dapat mengintegrasikan kode MATLAB dengan bahasa dan aplikasi lain,

serta mendistribusikan algoritma dan aplikasi MATLAB. Fitur-fitur tersebut diantaranya

adalah:

Bahasa tingkat tinggi untuk komputasi teknis

Lingkungan pengembangan untuk manajemen kode, berkas, dan data

Tool-tool yang interaktif untuk eksplorasi, perancangan, dan penyelesaian masalah

secara iteratif

Fungsi-fungsi matematis untuk aljabar linear, statistik, analisis fourier, penapisan,

optimisasi, dan integrasi numeris

Fungsi grafik 2-D dan 3-D untuk menampilkan data

Tool-tool untuk membangun antarmuka grafis secara custom

Fungsi-fungsi untuk mengintegrasikan algoritma berbasis MATLAB dengan aplikasi

maupun bahasa lain, seperti C, C++, Fortran, Java™, COM, dan Microsoft® Excel

“Saya kadang-kadang berpikir, bahwa sebagai mahasiswa Teknik Elektro, kita bukan hanya

mempelajari keilmuan Teknik Elektro namun secara perlahan-lahan, kita juga menjadi ahli

bahasa.”

Page 3: Dasar Dasar MATLAB

Dasar-Dasar MATLAB 2012

Agam Maulana

2

Variabel dan Tipe Data

Double dan Single

Sebagai bahasa tingkat tinggi, dalam MATLAB kita dapat menggunakan sebuah variabel

secara langsung tanpa perlu mendeklarasikannya terlebih dahulu. Sebagai contoh, apabila

pada command window diketikkan perintah sebagai berikut:

>> a = 3;

Maka variabel a akan menyimpan nilai 3 tanpa memprotes bahwa a belum dideklarasikan

seperti yang biasa kita temui dalam bahasa C/C++ misalnya. Lalu jika demikian,

bagaimanakah variabel a menyimpan nilai 3? Apakah sebagai integer, floating point, atau

bahkan character? Untuk mengetahuinya, kita bisa mengetikkan perintah berikut:

>> whos a

Seharusnya, anda akan menemukan jawaban sebagai berikut pada command window:

Name Size Bytes Class Attributes

a 1x1 8 double

Nah, sekarang mari kita bahas satu per satu apa maksud dari pesan tersebut. Di bawah Name

kita dapat melihat a: bagian ini menyatakan variabel yang dimaksud dari perintah whos yang

dipanggil. Karena pada perintah whos menyertakan variabel a, maka hanya ditunjukkan

informasi mengenai variabel a saja. Apabila perintah whos tidak menyertakan variabel

apapun, maka semua variabel yang telah diinisialisasi akan ditampilkan informasinya.

Selanjutnya, di bagian Size kita menemukan keterangan 1x1. Bagian ini menyatakan ukuran

dimensi dari variabel a. Seperti yang telah kita ketahui MATLAB adalah akronim dari Matrix

Laboratory dan MATLAB digunakan untuk memudahkan operasi-operasi matriks. Dengan

alasan itu, semua variabel MATLAB dianggap sebagai matriks. Apabila sebuah variabel diisi

dengan nilai skalar, maka variabel tersebut dianggap sebagai matriks 1x1.

Sekarang mari kita beralih ke bagian Bytes. Bytes menyatakan panjang memori yang

digunakan untuk menyimpan sebuah variabel. Di sini terlihat bahwa variabel a mengambil

ruang pada memori sebesar 8 byte, atau 64 bit apabila kita ingin menyatakannya dalam bit (1

byte = 8 bit).

Beralih ke Class, kita dapat melihat double di bawah bagian ini. Nah, bagian inilah yang

menyatakan tipe data yang disimpan. Variabel a disimpan sebagai double, dan variabel

apapun yang kita gunakan untuk menyimpan angka nantinya secara default akan disimpan

sebagai double. Yang dimaksud dengan double adalah double precision floating point.

Untuk lebih jauh mengenal tipe data floating point, perhatikan Tabel 1.

Page 4: Dasar Dasar MATLAB

Dasar-Dasar MATLAB 2012

Agam Maulana

3

Tabel 1. Tipe Data floating point

Class Lebar Keterangan

double 8 byte Double precision floating point

single 4 byte Single precision floating point

Untuk mengubah a menjadi single, kita dapat menggunakan fungsi single() untuk

melakukan konversi. Ketikkan perintah sebagai berikut:

>> a = single(a);

Lalu lanjutkan dengan melakukan perintah whos terhadap a, perhatikan perbedaan yang

terjadi.

Integer

Apabila variabel yang ingin kita gunakan hanya akan menyimpan nilai-nilai integer, maka

sebaiknya kita mengubah variabel yang kita gunakan ke dalam tipe integer. Untuk

melakukannya kita dapat menggunakan salah satu dari fungsi-fungsi yang tercantum pada

Tabel 2.

Tabel 2. Fungsi untuk mengubah variabel menjadi integer

Fungsi Lebar Rentang Nilai Keterangan

int8 1 byte -(27) hingga (2

7-1) Bilangan bulat bertanda dengan lebar 8 bit

int16 2 byte -(215

) hingga (215

-1) Bilangan bulat bertanda dengan lebar 16 bit

int32 4 byte -(231

) hingga (231

-1) Bilangan bulat bertanda dengan lebar 32 bit

int64 8 byte -(263

) hingga (263

-1) Bilangan bulat bertanda dengan lebar 64 bit

uint8 1 byte 0 hingga (28-1) Bilangan bulat tak bertanda dengan lebar 8 bit

uint16 2 byte 0 hingga (216

-1) Bilangan bulat tak bertanda dengan lebar 16 bit

uint32 4 byte 0 hingga (232

-1) Bilangan bulat tak bertanda dengan lebar 32 bit

Page 5: Dasar Dasar MATLAB

Dasar-Dasar MATLAB 2012

Agam Maulana

4

uint64 8 byte 0 hingga (264

-1) Bilangan bulat tak bertanda dengan lebar 64 bit

Dengan demikian, apabila kita menginginkan sebuah variabel menyimpan suatu nilai sebagai

integer, kita dapat menggunakan perintah sebagai berikut:

>> an_integer = int16(20)

Perintah tersebut akan membuat variabel an_integer menyimpan nilai 20 sebagai integer

menggunakan lebar 16 bit. Cobalah perintah-perintah yang lain dan pahami masing-masing

perintah tersebut!

Character dan String

Untuk menginisialisasi sebuah variabel dengan character maupun string, kita cukup

meletakkan character atau string tersebut di dalam tanda petik satu (single quote). Berikut ini

adalah perintah untuk menginisialisasi variabel dengan character:

>> a_character = 'x';

Dan berikut ini adalah contoh untuk menginisialisasi variabel dengan string:

>> a_string = 'this is a string example'

Skalar, Vektor, dan Matriks

Skalar dan Vektor

Sejauh ini, kita baru bermain-main dengan data skalar. Dalam konteks MATLAB, yang

dimaksud skalar adalah matriks dengan dimensi 1x1. Selanjutnya, kita akan mencoba

menginisialisasi sebuah vektor. Pengertian vektor secara sempit di sini adalah sebuah matriks

yang hanya terdiri dari satu baris atau satu kolom. Vektor kolom adalah vektor yang hanya

terdiri dari satu kolom. Berikut ini adalah perintah untuk menginisialisasi sebuah variabel

dengan vektor kolom:

>> col_vect = [1; 2; 3; 4; 5; 6; 7; 8]

Perhatikan penggunaan tanda “titik koma” (semicolon), tanda ini digunakan untuk

memasukkan nilai pada baris berikutnya. Untuk melihat dimensi dari vektor ini, kita dapat

menggunakan perintah sebagai berikut:

Apabila kita perhatikan, perintah-perintah yang telah kita gunakan ada yang diakhiri

dengan “titik koma” (semicolon) dan ada yang tidak. Apa perbedaan dari keduanya?

Page 6: Dasar Dasar MATLAB

Dasar-Dasar MATLAB 2012

Agam Maulana

5

>> size(col_vect)

Berbeda dengan vektor kolom, vektor baris adalah vektor yang hanya terdiri dari satu baris.

Untuk membuat vektor baris, perintah yang bisa digunakan adalah:

>> row_vect = [1 2 3 4 5 6 7 8]

Untuk memisahkan elemen satu dengan elemen lainnya, cukup digunakan spasi. Cobalah

perintah size pada row_vect dan perhatikan apa perbedaan antara col_vect dengan

row_vect apabila dikenakan perintah size.

Untuk mengakses tiap elemen dari vektor, kita cukup memanggil nama variabel vektor

dengan menyertakan indeks dari elemen yang ingin dipanggil. Sebagai contoh, apabila kita

ingin mengambil elemen kelima dari row_vect dan col_vect, kita dapat menggunakan

perintah row_vect(5) dan col_vect(5).

Matriks

Ya, sebuah matriks pada dasarnya adalah susunan sejumlah angka-angka yang membentuk

bidang segiempat. Susunan angka-angka tersebut akan terdiri dari m baris dan n kolom

sehingga akan membentuk matriks 2 dimensi dengan ukuran m × n. Salah satu matriks yang

telah lama dikenal antara lain susunan bilangan yang dikenal sebagai magic number, dimana

jumlah angka-angka pada arah vertikal, horisontal maupun diagonal selalu sama. Untuk

membuat sebuah matriks magic number ini, kita dapat mengetikkan perintah sebagai berikut:

>> magical = magic(3)

Perintah di atas akan menghasilkan sebuah matriks magic number dengan ukuran 3x3.

Cobalah untuk menjalankan perintah whos pada variabel magical dan amati keterangan yang

muncul.

Matriks lain yang biasa digunakan untuk berbagai keperluan adalah matriks identitas, matriks

satuan, maupun matriks nol. Perintah-perintah yang digunakan untuk menghasilkan matriks-

matriks tersebut dapat dilihat pada Tabel 3.

Tabel 3. Perintah untuk menghasilkan matriks tertentu

Perintah Keterangan

magic(n) Perintah untuk menghasilkan matriks magic number dengan ukuran n × n.

“A matriks is a rectangular array of number.”

Page 7: Dasar Dasar MATLAB

Dasar-Dasar MATLAB 2012

Agam Maulana

6

eyes(n) Perintah untuk menghasilkan matriks identitas dengan ukuran n × n.

ones(n) Perintah untuk menghasilkan matriks satuan dengan ukuran n × n.

zeros(n) Perintah untuk menghasilkan matriks nol dengan ukuran n × n.

Apabila kita ingin membuat matriks sendiri, maka kita pun dapat dengan mudah

melakukannya. Berikut ini sebuah contoh perintah untuk menghasilkan matriks 2x2:

>> a_matrix = [1 2; 3 4]

Perhatikan bahwa untuk berpindah ke elemen pada kolom selanjutnya kita cukup

mengetikkan spasi, sedangkan untuk berpindah ke elemen pada baris berikutnya kita perlu

mengetikkan tanda “titik koma” (semicolon).

Operasi Aritmatik

Penjumlahan dan Pengurangan

Seperti yang terlihat pada Error! Reference source not found., operasi penjumlahan dapat

dengan mudah dilakukan dengan operator +. Yang perlu diingat adalah, bahwa semua

variabel dalam MATLAB dianggap sebagai matriks. Dengan demikian, ketika kita akan

melakukan operasi aritmatik, syarat-syarat operasi aritmatik dalam matriks harus dipenuhi.

Untuk operasi penjumlahan, ukuran matriks kedua variabel harus sama. Sebagai contoh,

perhatikan perintah-perintah berikut:

>> 3 + 3

>> [3 4] + [4 7]

>> [1 2; 3 4] + [5 6; 7 8]

Perintah seperti di atas tidak akan bermasalah pada MATLAB. Perhatikan bahwa

penjumlahan dilakukan terhadap elemen-elemen matriks yang memiliki indeks yang sama.

Selanjutnya, perhatikan perintah-perintah berikut:

>> [1 2] + [3; 4]

>> [2; 3] + [4 5; 5 6]

Perintah di atas tidak akan dapat dieksekusi oleh MATLAB karena tidak memenuhi aturan

operasi penjumlahan matriks: dimensi kedua operand harus sama. Aturan ini berlaku juga

untuk operasi pengurangan. Cobalah beberapa perintah pengurangan dan amati hasilnya.

Perkalian

Seperti yang telah kita ketahui, aturan perkalian matriks adalah apabila terdapat matriks A

Page 8: Dasar Dasar MATLAB

Dasar-Dasar MATLAB 2012

Agam Maulana

7

dan matriks B, maka perkalian matriks A × B dapat dilakukan apabila ukuran A adalah m × n

dan ukuran B adalah n × o. Atau dengan kata lain, jumlah kolom pada matriks A harus sama

dengan jumlah kolom pada matriks B. Operator yang digunakan untuk perkalian adalah

operator *.

Selain untuk melakukan operasi perkalian pada matriks dengan syarat tersebut, operator *

juga digunakan untuk perkalian skalar dan perkalian skalar dengan matriks. Untuk lebih

memahami penggunaan operasi perkalian dalam MATLAB, cobalah untuk menjalankan

perintah-perintah berikut dan amati hasilnya:

>> [5 8] * [2; 2]

>> 2*[3 9; 7 2]

Selain itu, MATLAB juga memiliki operator perkalian lain, yaitu operator .*. Operator ini

digunakan untuk melakukan perkalian per elemen matriks. Dengan demikian, operator ini

mensyaratkan agar kedua operand untuk memiliki ukuran yang identik. Untuk mengetahui

perbedaannya dengan perintah perkalian matriks, coba jalankan perintah-perintah di bawah

ini dan amati perbedaannya:

>> [4 3] .* [2 2]

>> [9 2; 1 3] .* [1 2; 1 2]

Pembagian

Untuk operasi pembagian matriks, perlu memahami terlebih dahulu mengenai operasi

perkalian dan inverse matriks. Kita tentunya telah memahami operasi-operasi matriks berikut:

Ax = B

x = A-1.B

yA = B

y = B.A-1

Nah, untuk menghitung x kita menggunakan perintah A\B dengan syarat A dan B memiliki

jumlah baris yang sama. Sedangkan, untuk menghitung y kita menggunakan perintah B/A

dengan syarat A dan B memiliki jumlah kolom yang sama.

Selain kedua operasi pembagian tersebut, MATLAB juga dapat melakukan pembagian

matriks per elemen. Operator yang digunakan adalah ./ atau .\. Kedua operator tersebut

akan menghasilkan hasil yang sama. Syarat yang diperlukan adalah ukuran kedua matriks

harus identik.

Perpangkatan

Untuk operasi perpangkatan, operator yang digunakan adalah operator ^. Operator tersebut

merupakan operator untuk perpangkatan matriks. Apabila kita bermaksud untuk

memangkatkan masing-masing elemen matriks, maka operator yang digunakan adalah

Page 9: Dasar Dasar MATLAB

Dasar-Dasar MATLAB 2012

Agam Maulana

8

operator .^.

Tabel 4. Macam-macam operator aritmatik

+ Operasi penjumlahan

- Operasi pengurangan

* Operasi perkalian

.* Operasi perkalian per element

\ Operasi matrix left division

/ Operasi matrix right division

./ Operasi pembagian per element

^ Operasi perpangkatan

.^ Operasi perpangkatan per element

Operasi-Operasi Dasar Matriks

Pada bagian ini, kita akan membahas beberapa operasi dasar matriks: transpose, inverse, dan

konvolusi.

Untuk melakukan transpose, dapat kita lakukan dengan operator '. Sebagai contoh, apabila

kita memiliki matriks A dan kita ingin men-transpose-nya, dapat kita lakukan dengan

perintah A'. Untuk meng-inverse matriks A tersebut, digunakan perintah inv(A). Perintah

inverse hanya dapat dilakukan apabila matriks A adalah matriks persegi.

Operasi konvolusi sangat banyak digunakan pada aplikasi pengolahan sinyal, pengolahan

citra, dan juga banyak aplikasi lainnya. Pada bahasa komputasi yang lain (misalnya C atau

Java) memerlukan penggunaan perulangan untuk dapat melakukan konvolusi. Sementara

dengan menggunakan MATLAB, operasi konvolusi dapat dilakukan dengan lebih mudah.

Untuk melakukan konvolusi antara matriks A dengan matriks B, maka dapat dilakukan

dengan perintah conv(A,B).

Page 10: Dasar Dasar MATLAB

Dasar-Dasar MATLAB 2012

Agam Maulana

9

Menampilkan Grafik

Dalam banyak aplikasi, kita seringkali perlu untuk membuat grafik yang menampilkan data

atau menunjukkan hubungan antar variabel. Dengan menggunakan MATLAB, hal ini dapat

kita lakukan dengan mudah. Sebagai contoh, misalnya kita ingin membuat grafik dari fungsi

y = e-x sin(x). Pertama, kita siapkan rentang x yang diinginkan dengan perintah sebagai

berikut:

>> x = 0:0.01:30;

Dengan perintah tersebut, kita telah mempersiapkan x untuk rentang 0 hingga 10 dengan

ketelitian 0.01. Kemudian, kita buat fungsi y yang diinginkan dengan perintah berikut:

>> y = exp(-x) .* sin(x);

Perintah di atas akan mengkalkulasi nilai y sesuai dengan nilai x yang telah didefinisikan.

Perhatikan bahwa operator perkalian yang digunakan di sini adalah .* dan bukan *

(kenapa?).

Kemudian, untuk menampilkan grafik dari fungsi tersebut digunakan perintah sebagai

berikut:

>> plot(x,y)

Selain plot, ada banyak cara lain untuk menampilkan grafik. Berikut ini adalah fungsi-fungsi

yang dapat digunakan untuk menampilkan grafik dengan masing-masing tujuan yang

berbeda-beda:

area

bar

contour

errorbar

plot, plot3, loglog, semilogx, semilogy

quiver, quiver3

scatter, scatter3

stairs

stem, stem3

surf, mesh

M-files

Kita telah mempelajari beberapa perintah-perintah MATLAB sebagai perintah yang terpisah

dan berdiri sendiri. Apabila untuk menyelesaikan masalah kita memerlukan beberapa langkah

yang memerlukan banyak perintah berbeda dan berurutan, tentunya akan merepotkan apabila

kita harus mengetikkannya berkali-kali pada command window. Apalagi jika solusi tersebut

perlu kita uji dengan banyak masukkan berbeda secara berulang-ulang. Dalam kasus ini, kita

bisa menerapkan algoritma yang kita rancang dan mengimplementasikannya ke dalam sebuah

m-file.

Dengan m-file, kita dapat membuat sebuah program dari MATLAB. Sebagai latihan, buatlah

sebuah m-file melalui MATLAB (File New m-file) lalu kemudian ketikkan perintah

Page 11: Dasar Dasar MATLAB

Dasar-Dasar MATLAB 2012

Agam Maulana

10

berikut:

im = imread('football.jpg'); imshow(im) title('gambar asli') imgray = rgb2gray(im); figure,imshow(imgray) title('gambar grayscale') im_plus = imgray + 20; figure,imshow(im_plus) im_filt = conv2(imgray,[-1 0 1;-1 0 1;-1 0 1],'same'); figure,imshow(im_filt)

Kemudian simpan dan jalankan perintah tersebut (F5). Amati hasilnya dan coba pahami

perintah-perintah di atas.

Control Structure

Control structure merupakan sebuah cara untuk mengendalikan alur program. Yang pertama

akan kita pelajari adalah struktur if-else. Berikut ini sebuah contoh struktur if-else:

if a == b message = 'a sama dengan b' elseif a > b message = 'a lebih dari b' else message = 'a kurang dari b' end

Selain menggunakan pola if-else, kita juga dapat menggunakan pola switch-case untuk

melakukan conditional selection. Berikut ini contohnya:

switch x case 0 message = 'bagian ini dieksekusi apabila x = 0' case 1 message = 'bagian ini dieksekusi apabila x = 1' case 2 message = 'bagian ini dieksekusi apabila x = 2' otherwise message = 'bagian ini untuk x selain 0, 1, dan 2' end

Selanjutnya, kita juga dapat melakukan instruksi perulangan menggunakan while dan for.

Contoh penggunaan perulangan while adalah sebagai berikut:

while x > 0 message = 'bagian ini dieksekusi selama x > 0' x = x - 1; end

Sementara untuk for, dapat dilakukan seperti contoh di bawah ini:

for i=1:10

Page 12: Dasar Dasar MATLAB

Dasar-Dasar MATLAB 2012

Agam Maulana

11

a_vector(i) = i; end

Dalam struktur perulangan, dikenal perintah break dan continue. Perintah break akan

membuat eksekusi perulangan berhenti seketika. Perintah ini seringkali digunakan dalam

algoritma pencarian dimana ketika nilai yang dicari telah ditemukan, maka perintah break

dieksekusi untuk menghentikan perulangan perintah yang tidak perlu. Sementara itu, perintah

continue akan menyebabkan eksekusi mengabaikan perintah-perintah setelah continue

dan kemudian melanjutkan perulangan dari bagian awal perintah perulangan.

Fungsi

Fungsi merupakan sebuah struktur program yang tidak dapat berdiri sendiri. Fungsi

sebenarnya disimpan sebagai m-file. Namun berbeda dengan m-file biasa, sebuah fungsi yang

telah dibuat dapat dipanggil berkali-kali melalui command window ataupun m-file lain yang

kita buat. Dengan demikian, melalui fungsi kita dapat menerapkan prinsip code reuse. Kita

tidak perlu mengetikkan berkali-kali perintah yang sama apabila perintah-perintah tersebut

telah kita jadikan sebagai sebuah fungsi.

Sekarang kita akan mencoba membuat sebuah fungsi sederhana. Pertama, buatlah sebuah m-

file baru lalu ketikkan perintah berikut:

function luas = segitiga(alas,tinggi) luas = a*t/2; end

Simpanlah fungsi tersebut. Secara default, nama berkas fungsi akan menyesuaikan dengan

definisi yang kita buat. Pada fungsi di atas, kita mendeklarasikan nama fungsi segitiga

dengan parameter alas dan tinggi. Fungsi ini akan mengembalikan nilai luas kepada

pemanggil fungsi.

Untuk memanggil fungsi, ketikkan perintah berikut pada command window:

>> segitiga(5,2)

Amatilah hasilnya, apakah sesuai dengan luas segitiga yang seharusnya? Selanjutnya, cobalah

berbagai nilai yang lain untuk menguji fungsi tersebut.

Penutup

Alhamdulillah, modul ini ditulis sebagai pendamping pelatihan MATLAB pada Sabtu, 14

April 2012. Modul ini diharapkan dapat membantu peserta pelatihan untuk mempelajari

berbagai dasar-dasar dalam perintah MATLAB dan OCTAVE yang telah menjadi alat bantu

pembelajaran penting di dalam lingkungan Program Studi Teknik Elektro. Modul ini tentu

jauh dari sempurna apabila ditujukan bagi mahasiswa yang ingin menguasai berbagai fitur

dan perintah dalam MATLAB yang begitu banyak. Dalam hal ini, kemandirian belajar untuk

peserta sangat dianjurkan untuk dapat memanfaatkan MATLAB dalam berbagai kebutuhan

pembelajaran dan penelitian.