TUTORIAL MATLAB PERTEMUAN 1-2 PENDAHULUAN MATLAB merupakan suatu program komputer yang bisa membantu memecahkan berbagai masalah

matematis yang kerap ditemui dalam bidang teknis. Kemampuan MATLAB dapat dimanfaatkan untuk menemukan solusi dari berbagai masalah numerik secara cepat, mulai hal yang paling dasar, misalkan sistem persamaan dengan dua variable hingga yang kompleks, seperti mencari akar-akar polinom, interpolasi sejumlah data, perhitungan dengan matriks, pengolahan sinyal dan metoda numerik. Salah satu aspek yang sangat berguna dari MATLAB ialah kemampuannya untUk menngambarkan berbagai jenis matriks, sehingga data dan fungsi yang kompleks dapat divisualisasikan. VARIABEL DAN OPERASI DASAR Kalkulator Sederhana Dalam mode penggunaan dasar, Matlab dapat digunakan sebagai fungsi kalkulator. Sebagai contoh: >> 4+5 ans = 9 >> 46*10-4 ans = 456 >> (77+3)/2^3 ans = 10 Operator aritmatik dasar yang didukung Matlab ialah:

-

Menciptakan Variabel Variabel juga bisa diciptakan untuk menyimpan nilai baik berupa bilangan ataupun teks. Contoh: >> a=100; >> b=300; >> c=800; >> total=a+b+c; >> average=total/3 average = 400 Penamaan Variabel Pemberian nama variabel mengikuti rambu-rambu berikut: 1. Gunakan karakter alfabet (A ± Z, a ± z), angka dan garis bawah ( _ ), sebagai nama variabel. 2. Perlu diingat bahwa Matlab peka terhadap besar kecilnya huruf 3. Jangan gunakan spasi, titik koma atau operator aritmatik sebagai bagian dari nama Selain berisi bilangan, variabel juga berisi teks. Dalam mendefinisikan teks gunakanlah tanda petik tunggal. >> baca_ini='contoh variabel berisi teks!'; >> baca_ini

-

baca_ini = contoh variabel berisi teks! Variabel terdefinisi di Matlab Di dalam Matlab telah terdapat beberapa variabel yang telah terdefinisi sehingga bisa langsung dipergunakan tanpa perlu mendeklarasikannya lagi. Variabel tersebut adalah:

-

Fungsi Matematika Berbagai fungsi matematika yang umum dipergunakan telah terdefinisi di Matlab, meliputi fungsi eksponensial, logaritma, trigonometri, pembulatan, dan lain-lain

-

-

Latihan 1 >> a=pi/2,b=100,c=-0.5,d=13,e=4 >> sqrt(10*b), exp(c), exp(b) >> log(exp(c)), log10(b), log2(b+24) Latihan 2 Hitunglah rata-rata dari data berikut menggunakan Matlab 13 18 19 20 21 33 44 55 66 32

TUTORIAL MATLAB PERTEMUAN 3-4 MATRIKS DAN OPERASI MATRIKS Mendefinisikan kan matriks Cara 1: >> matriks1=[10 20 30 40 50 60 70 80 90] matriks1 = 10 20 30 40 50 60 70 80 90 Cara 2: >> matriks2=[10 20 30;40 50 60;70 80 90] matriks2 = 10 20 30 40 50 60 70 80 90 Cara 1 dan 2 menghasilkan matriks yang sama (menekan enter untuk membuat baris baru ataupun menggunakan titik-koma). Mendefinisikan matriks juga bisa dilakukan per elemen, contoh: (cara 3) >> mat(1,1)=100;mat(1,2)=200;mat(2,1)=300;mat(2,2)=400 mat = 100 200 300 400 Ukuran Matriks Command size dan length dapat digunakan mengetahui ukuran atau dimensi dari matriks yang ada. Contoh: >> vektor1=[1 2 3]; >> length(vektor1) ans = 3 >> size(matriks1) ans = 3 3 Menunjukkan panjang vektor1 ialah 3 elemen dan ukuran matriks 1 ialah 3 baris dan 3 kolom. Sementara itu command prod dapat digunakan untuk menghitung jumlah elemen dari suatu matriks >> jml_elemen=prod(size(matriks1)) jml_elemen = 9 Matriks khusus Matlab juga menyediakan berbagai command untuk membuat dan memanipulasi matriks secara efisien. Diantaranya ialah command untuk membuat matrik-matrik khusus, yaitu

4.3) mat_4 = 1 1 1 1 1 1 Membuat deret Deret bilangan merupakan hal yang kerap ditemui dalam pengolahan data. Misalkan terdapat data mengenai tegangan suatu baterai pada setiap menit selama 1 jam. 3.. 2 .60] ..4) mat_1 = 5 5 5 5 5 5 5 5 >> mat_2=zeros(2...Contoh: >> mat_1=5*ones(2. terutama berkaitan dengan plot data dan proses iterasi (perhitungan berulang-ulang).4) mat_2 = 0 0 0 0 0 0 0 0 >> mat_3=[eye(4) -ones(4)] mat_3 = Columns 1 through 4 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 Columns 5 through 8 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 >> mat_4=ones(2. Dalam menyajikan data waktu dapat dibuat sebagai berikut: >> time=[1.

contoh: x1 ± 2x2 = 32 12x1 + 5x2 = 7 Dalam bentuk matrisk dituliskan:     AX=B X=A-1 B Dalam Matlab dapat dituliskan: >>A = [1 -2.0000 -13.7]. 4 5].B=[32. >> X = inv(A)*B X= 6. >> C=A*B C= 17 4 33 16 Persamaan linier beberapa variabel sering diselesaikan menggunakan matriks .5:10.0. >> y=-10. Di dalam Matlab pembuatan deret juga bisa dilakukan dengan command berikut: Contoh: >>linspace(0.11) >>logspace(0. misalkan C = AB terdefinisi jika jumlah kolom A sama dengan jumlah baris di B. Formulanya adalah: Sehingga dituliskan >> time=1:60 >> x=0:100:2300.0000 . >> z=10:-0.2.Akan lebih efisien jika dituliskan dengan menggunakan operator titik 2. Contoh: >>A=[1 3. Selain itu.12 5]. >> B=[2 4. perkalian juga dilakukan antara matriks dengan skalar. 5 0].10.05:0.10) Operasi Persamaan Linier dalam Matriks Perkalian matriks.

2y +z + 3w = 4 5x + 2y +3z ± 2w= . Perhatikan SPL berikut: x +y +z + w= 2 2x + 3y .5.-5.4 Tentukan solusi dari SPL diatas! «1 0 2» 2.0000 Latihan 3 1.0000 0.5000 2. >> b=[2.2z .7 8 -9].Sehingga dapatkan solusi x1 = 6 dan x2=-13 Contoh berikut: x +2y + 3z = 2 4x+5y+6z=-5. Tentukanlah matriks yang merupakan invers dari matrik M ! ¬2  1 3¼ ¬ ¼ ¬1 1 4¼ ­ ½ .5 7x+8y-9z=-49 Dengan Matlab >> a=[1 2 3.-49]. >> x=inv(a)*b x= -5.w = 5 3x .4 5 6.

40 50 60.TUTORIAL MATLAB PERTEMUAN 5-6 MANIPULASI MATRIKS Dalam vektor ataupun matriks. 70 80 90].1) matrix(2. 8. >> matrix=[10 20 30. indeks digunakan untuk menunjuk satu/beberapa elemen dari vektor/matriks. Misalkan untuk mengambil elemen ke-1 sampai ke-3 vektor_ini >> vektor_ini(1:3) ans = 1 3 5 >> matrix(3. Dalam hal ini tanda titik dua berarti ³sampai dengan´. sementara dalam matriks.2:3) . Indeks dituliskan didalam tanda kurung ( ) dengan pola umum sebagai berikut: Dalam suatu vektor. indeks menunjukkan nomor baris dan nomor kolom dari elemen yang ingin ditunjuk.3)] ans = 10 40 90 Dan mengambil elemen ke-3 sampai ke-5 dari vektor itu >> vektor_itu(3:5) ans = 7 6 5 Kemudian mengambil elemen baris ke-1 sampai ke-2. >> vektor_ini(1) ans = 1 >> vektor_itu(2) ans = 8 Operator ± Titik dua ( : ) bisa digunakan untuk mengambil beberapa baris dan kolom sekaligus dari suatu matriks. 6. 5]. elemen pertama diberi indeks = 1.1) matrix(3.3) ans = 90 >> [matrix(1. 7. Untuk lebih jelasnya perhatikan contoh berikut: >> vektor_ini=[ 1 3 5 7 9]. kolom ke-2 sampai ke-3 >> matrix(1:2. >> vektor_itu=[9.

ans = 20 30 50 60 Operator titik-dua bisa juga berarti seluruhnya.:) ans = 10 20 40 50 70 80 30 60 90 >> matrix(1.3) matrix = 10 20 40 50 30 60 100 100 100 . misalkan: >> vektor_ini(:) ans = 1 3 5 7 9 >> matrix(:. nilai elemen matriks yang telah ada bisa diubah >> vektor_ini(1)=1000 vektor_ini = 1000 3 5 7 9 >> vektor_itu(2:4)=-1 vektor_itu = 9 -1 -1 -1 5 >> matrix(3.2) ans = 20 50 80 Dengan menggunakan indeks.:) ans = 10 20 30 >> matrix(:.:)=100*ones(1.

^B ans = 1 -32 1 1 >> 2.5000 >> B.^B ans = 128 32 4 1 >> A. 2 0].*b ans = 12 10 >> c. Dalam hal ini matriks atau vektor yang terlibat harus berukuran sama. Misalkan: >> A=[1. .5000 2. 6 >> B.0000 -2.\A ans = 0. Operasi yang bisa dilakukan ialah perkalian/pembagian. >> A+B ans = 8 3 3 5 >> A.-2.0000 >> B. >> a. yaitu./A ans = 7. >> c=[ 10 20 30]'.*d ans = 50 200 450 >> a. Operator yang digunakan diawali dengan tanda ³titik´ (kecuali pengurangan/penjumlahan).4000 0. penjumlahan/pengurangan.^2 ans = 49 25 4 0 Inf 0 FUNGSI ELEMEN PER ELEMEN Semua fungsi matematik yang berlaku pada skalar berlaku pula untuk matriks/vektor secara elemen per elemen. operasi matematik juga bisa dilakukan elemen-per-elemen.1429 -0.B=[7 5. serta pangkat. b=[4 5 6].*B ans = 7 -10 2 0 >> a=[3 2 1].1 5].OPERASI ELEMEN-PER-ELEMEN MATRIKS Di daam Matlab.*c ??? Error using ==> times Matrix dimensions must agree. d = [5 10 15]'.

>> x=-100:inkremen:100.0000 -0.3863 0 0. >> panjang=length(x) panjang = 401 >> titik_tengah=round(panjang/2) titik_tengah = 201 >> x_baru=x(titik_tengah-4:titik_tengah+4) x_baru = -2.0000 >> y_baru=y(titik_tengah-4:titik_tengah+4) y_baru = 1.05.5000 1.8109 1.3863 0.5.8109 0.3863 -36.3863 >> y=log(x.0000 -1.0000 1.3863 Latihan 3 Carilah solusi dari persamaan lingkaran berikut: 0.5000 -1.0000 -1. >> y_baru=y(titik_tengah-4:titik_tengah+4) y_baru = 1.^2+eps).8109 1.8109 0 -1.5000 0 0.5000 2.^2).3863 0. Setelah itu tampilkan nilai y pada rentang x=0 hingga x=1 saja .Contoh Sederhana  ) Dimana x bernilai antara -100 hingga +100. >> y=log(x.3863 -Inf -1.3863 Untuk -5”x”5 dengan inkremen sebesar 0. Setelah itu tampilkan nilai hanya pada rentang x=-2 hingga x=2 saja >> inkremen=0.0000 0.0437 -1.

1:3.^3. label. dimana command yang paling dasar adalah plot. y=[20 22 25 30 28 25 24 22].y) >> xlabel('sumbu X'). Plot 2-Dimensi Untuk memvisualisasi data secara 2 dimensi ataupun 3 dimensi. dan grid ke dalam hasil plot. digunakan berbagai command plotting. a.TUTORIAL MATLAB PERTEMUAN 7-8 GRAFIK DAN SUARA Salah satu keunggulan MATLAB adalah kemampuannya dalam menampilkan/mengolah grafik dan suara dengan command yang sederhana dan fleksibel. BMP. ylabel('sumbu Y') >> title('kurva Y=x^3') >> grid on . >> plot(x. atau disimpan sebagai file FIG dengan File Save (Ctrl+S). serta penyuaraan. digunakan command berikut: Contoh berikutnya adalah memplot kurva y = x3 pada rentang x=-3 hingga x=+3 >> x=-3:0. contoh: >> x=1:8. Pada bagian ini akan dipelajari mengenai visualisasi data (plot grafik 2 dimensi dan 3 dimensi). >> plot(x. ataupun diekspor sebagai file JPG.y) Akan muncul window berupa figure hasil plotting Setiap gambar di figure window. EMF. dsb dengan File Export. bisa di print melalui menu Flie Print (Ctrl+P). >> y=x. Untuk menambahkan judul.

Perhatikan urutan nomor area dari kiri-atas ke kanan bawah .plot(x. plot(x.y4). >> xlabel('sumbu -x'). >> grid on >> hold on >> y2=exp(-0.5.y2)..plot(x. Untuk memplot beberapa fungsi dalam satu figure sekaligus dapat digunakan command hold Contoh >> x=linspace(0. >> y4=exp(-0. atau membagi window menjadi sejumlah area plot. gambar sebelumnya di figure window akan terhapus. ataupun mengatur properti dari plot yang akan digambar. Misalkan figure window dibagi menjadi 2-baris x 2-kolom dengan subplot.25*x). Lebih Jauh Mengenai Plot Terkadang diperlukan untuk memplot beberapa fungsi dalam figure window yang terpisah..y1).500).5*x).y3).Ketika menggunakan command plot.plot(x. >> y3=exp(-0. negatif') b. Beberapa command di bawah ini bisa digunakan untuk tujuan tersebut.ylabel('sumbu-y') >> title('perbandingan fungsi eksponensial.1*x). >> y1=exp(-x).

25*t). >> kotak=square(2*pi*0.grid on.Contoh: >> figure >> t=0:0. >> axis([0 25 0 20 0 80]) .y.kotak). title('cosinus 1/4 Hz') >> subplot(2.cosinus).title('sinus1/4 Hz') >> subplot(2.sinus).3). >> plot(t.2. >> plot(t. >> y=[5 5 15 15 5]. dan dibutuhkan vektor z.. >> plot(t. namun kali ini akan digunakan command plot(. >> title('contoh plot 3-D'). Plot garis Plot garis dalam ruang 3 dimensi mirip dengan plot 2 dimensi.tittle('gigi gergaji 1/4 Hz') >> plot(t.gigi).. >> cosinus=cos(2*pi*0. >> sinus=sin(2*pi*0. >> subplot(2. >> gigi=sawtooth(2*pi*0.25*t).zlabel('sumbu z'). >> plot3(x. plot permukaan (surface). >> plot(t.title('kotak 1/4 Hz') >> subplot(2.). >> xlabel('sumbu x').1).25*t).2. Contoh: >> x=[10 20 20 10 10].ylabel('sumbu y').2.2).gigi). dan plot kontur a.2. >> z=[0 0 70 70 0].z).4). untuk dimensi ketiga.05:10. Plot 3 Dimensi Pada bagian ini akan dibahas tiga macam plot 3dimensi: plot garis.title('gigi gergaji 1/4 Hz') c.25*t).

y0. y=x.z). untuk plot permukaan (surface) dalam ruang 3 dimensi digunakan command mesh atau surf.z). Buatlah plot dengan command mesh atau surf >> clear >> batas_x=-10:1:10. >> z=sin(r).40). >> [x.y]=meshgrid(batas_x./(r+eps). Contoh berikut ini menggambarkan fungsi dua variabel z=x2 + y2 Caranya ialah: 1.  .^2+y. Contoh lainnya: memplot fungsi >> x=linspace(-10. dimana   . Plot permukaan Sementara itu. >> [x.y]=meshgrid9x.batas_y).^2.y]=meshgrid(x. >> z=x. >> mesh(x.^2).y. batas_y=-10:4:10.y. Hitunglah fungsi 3 dimensi untuk jalinan titik tersebut 4.b. >> r=sqrt(x.y). Gunakan command meshgrid untuk mengisi bidang XY dengan jalinan titik 3. >> [x. Definisikan batas-batas nilai x dan y yang akan di plot 2. >> surf(x.10.^2+y.

misalkan z=f(x. Caranya ialah melalui menu di main window: File Open atau File new M-file.contour(x.z).meshc(x. atau dengan mengklik ikon yang ada di jendela utama.y.z). telah dipelajari berinteraksi dengan MATLAB menggunakan command window. bisa dimulai dengan membuka file baru. Deretan command window tersebut dapat disimpan dalam bentuk skrips teks dan dapat digunakan kapanpun dibutuhkan atau dijalankan/dieksekusi secara otomatis dengan cara mengetikkan nama M-File yang bersangkutan di command Window a.c. >> figure.y) bisa digambarkan konturnya dalam dua dimensi dengan command berikut: Contoh: fungsi sin(r)/r di atas lalu bandingkan dengan plot permukaannya: >> figure. M-FILE DAN PEMROGRAMAN MATLAB Pada bab-bab terdahulu. Membuat M-File Untuk menuliskan skrip M-File.y. Plot kontur Fungsi dua variabel. .

m Sekarang panggi M-file tersebut >> segi3 sisi_C = 5 Luas = 6 Keliling = 12 . Sementara itu untuk menyimpan M-File bisa dilakukan dengan menu File Save atau Save as b.Dengan editor ini. M-File sebagai skrip program Pada bagian ini M-file akan digunakan untuk menjalankan sederet command yang telah dituliskan sebgai skrip. kita bisa membuka sejumlah M-file.m Kemudian dieksekusi di workspace dengan cara memanggil nama file tersebut: >> clear >> rata_rata hasil = 150 Contoh lainnya: Lalu simpan dengan nama segi3. file ini dinamakan rata_rata. melakukan editing. ataupun mencoba menjalankan dan melakukan debugging (mencari kesalahan dalam skrip). contoh: program menghitung rata-rata dari lima bilangan.

d. Parameter keluaran: atau argument output yang jumlah dan jenisnya sebarang Deklarasi fungsi di M-file dilakukan pada baris awal sintaks: Contoh: Lalu simpan dengan nama ³segitiga. Jumlah parameter masukan bisa sebarang (satu. Display dan Input Adakalanya dibutuhkan interaksi dengan pengguna program untuk memasukkan parameter tertentu di awal/tengah program. atau tidak ada argumen input sama sekali). dua. Seringkali kita menjalankan satu program/algoritma berulangkali dengan nilai masukan yang berbeda-beda. M-File sebagai fungsi Sebagai skrip program.m %untuk menghitung jumlah kombinasi . Area. Sementara command disp digunakan untuk menampilkan teks ke layar. Proses di dalam program: beru[a deretan command untuk menjalankan suatu algoritma tertentu 3.c. Kll) 2. kita bisa menggunakan nama argumen input/output yang berbeda dengan di M-file. Luas. Dalam hal ini bisa dipergunakan cara sederhana dengan commmand input. Untuk keperluan ini M-file bisa digunakan sebagai fungsi spesifik sesuai dengan kebutuhan Dalam setiap fungsi terdapat 3 unsur: 1. Ketika dipanggil di command window.m´ Sekarang panggil fungsi tersebut >> [Hyp. Circum]=segitiga(12.16) Hyp = 20 Area = 96 Circum = 48 Dari contoh sederhana tersebut terdapat beberapa hal yang perlu diperhatikan: 1. sisi_b) dan tiga argumen output(sisi_C. Jenis argumen bisa berupa variabel. untuk mengubah/mengatur parameter masukan program dilakukan dalam editor. bilangan ataupun teks. misalkan dalam proses iterasi atau optimasi. Dalam fungsi segitiga terdapat dua argumen input(sisi_a. namun urutannya tidak berubah. 2. Contoh: %Program menghitung kombinasi:hit_komb. Parameter masukan: dalam hal ini disebut sebagai argumen input. sepuluh.

end Ini merupakan statemen untuk percabangan program berdasarkan satu/beberapa kondisi tertentu. Statement if. Control Statement Seperti bahasa program pada umumnya.. elseif.. misalkan..%dari sejumlah populasi %menampilkan judul program clc. disp('Menghitung Kombinasi').. %meminta masukan dari user n=input ('berapa jumlah mahasiswa yang ada?:'). arah program bisa dikendalikan dengan berbagai cara. %menghitung kombinasi kombinasi=factorial(n)/(factorial(r)*factorial(n-r)). .. Sintaks yang digunakan dalam Matlab meliputi: Selain itu. berupa percabangan arah program berdasarkan kondisi tertentu. r=input ('berapa jumlah personel satu team?:').. disp('--------------------'). %menampilkan keluaran disp('jumlah kombinasi yang ada= '). dimungkin pula membuat pernyataan if di dalam pernyataan yang lain (disebut nested-if).. ataupun loop (perhitungan berulang) ketika melakukan iterasi. kemudian dijalankan program tersebut: Menghitung Kombinasi -------------------berapa jumlah mahasiswa yang ada?:8 berapa jumlah personel satu team?:5 jumlah kombinasi yang ada= 56 e.disp(kombinasi). else.

6 0 0 0 3 0 0. bisa digunakan statement switch.Contoh: function y=hit_taknol(x) y=[]..0000 0. >> y=hit_taknol(x) y= 2.. end Statement ini digunakan untuk loop/perhitungan berulang. Sintaksnya adalah: Statement for.end.... end end setelah dicobakan: >> x=[0 0 2 -3.case Sebagai alternatif dari statement if.elseif.0000 -3..else ..6 10 0 0 0]. Misalkan untuk menampilkan bilangan kelipatan 3 dari 30 sampai seratus .6000 10.. for i=1:length(x) if x(i)==0 continue else y=[y x(i)]..0000 Statement switch .6000 3. Sintakas yang digunakan dalam Matlabs ialah: Adapun sintaks yang digunakan untuk membatasi loop mirip dengan yang dipakai untuk membuat deret.

.. hold on. for i = 1:length(A) y = A(i)*x. end grid on. cukup dituliskan nilai awal dan akhir. x=linspace(-4.>> clear >> for k=30:3:100 k end k= 30 k= 33 k= . Misalkan untuk mendaftar bilangan bulat dari -10 hingga 10 dan menyimpannya dalam satu vektor Atau untuk memplot kurva parabola Y=Ax2 figure. plot(x.y). .4.^2..500).5:2. k= 99 Sementara untuk nilai inkremen=1.5:0. A=0.

..Statemen while . end Alternatif dari sintaks loop ialah beikut ini: Misalkan untuk memplot fungsi akar kuadrat y = B x1/2 dengan berbagai nilai parameter B .

Maksimum dan Minimum Nilai maksimum dan minimum diperoloeh dengan command berikut: Contoh: Berikut adalah data indeks prestasi dari 4 mahasiswa dalam 3 semester b.TUTORIAL MATLAB PERTEMUAN 9-10 ANALISIS DATA a. Jumlah dan Produk Beberapa jenis operasi penjumlahan bisa dilakukan dengan command sum dan cumsum .

.

c. Statistika Beberapa command untuk analisis data statistik Sebagai contoh kita gunakan kembali data tinggi badan dan nilai IP mahasiswa seperti sebelumnya d. Histogram Histogram dan diagram batang yang kerap digunakan untuk menggambarkan data statistik juga bisa ditampilkan dengan Matlab dengan comand berikut .

Pertama kita plot menjadi histogram dengan 10 interval .Mari kita coba gunakan data tinggi badan yang ada.

.

penanganan dan evaluasinya akan dibahas pula dalam bagian ini. Elemen vektor menunjukkan koefisien dari polinomial yang diurutkan dari orde tertinggi ke terendah.TUTORIAL MATLAB PERTEMUAN 11-12 ANALISIS FUNGSI dan FUNCTION TOOL Berbagai fungsi matematis bisa dievaluasi dan dianalisis dengan berbagai command yang ada di MATLAB. nilai2 = polyval(h. Untuk mengevaluasi polinomial pada x = 10 kita tuliskan: >> nilai1 = polyval(g. Polinomial di MATLAB Suatu polinomial. dinyatakan sebagai: Command berikut digunakan untuk menangani polinomial: Misalkan kita memiliki dua polinomial sebagai berikut: g(x) = 2x3 + 5x í1 h(x) = 6x2 í 7 Dalam MATLAB kedua polinomial ini dinyatakan dengan: >> g = [2 0 5 ±1]. Berikutnya akan disajikan juga analisis fungsi. misalkan mencari nol. maksimum. berderajat n dinyatakan sebagai sebuah vektor baris p berukuran n+1.10). yaitu polinomial. >> h = [6 0 ±7]. Salah satu fungsi matematis yang sering digunakan. yaitu sebuah tool analisis fungsi yang ada di MATLAB. dan minimum. Pada bagian akhir akan dikenalkan ³Function Tool. p(x).10) nilai1 = .

5903i 0.1.1. g2=polyder(g1) g1 = 6 0 5 . nilai2 = polyval(h.0801i 0 .x).2049 nilai2 = 593 Namun bisa pula x berbentuk vektor: >> x=-3:3 x= -3 -2 -1 0 1 2 3 >> nilai1 = polyval(g.0801i Turunan Fungsi Turunan pertama dan kedua dari g(x) bisa kita hitung pula: >> g1=polyder(g).5903i -0.0985 + 1.h) p= 12 0 44 -6 35 -7 yang mewakili: p(x) = 12x5 +16x3 í 6x2 í 35x + 7 Akar persamaan Polinomial Akar-akar dari polinomial g(x) dan h(x) bisa kita hitung: >> akar_g = roots(g).x) nilai1 = -70 -27 -8 -1 6 25 68 nilai2 = 61 31 13 7 13 31 61 Jika kita kalikan kedua polinomial tersebut.1969 akar_h = 0 + 1. akar_h = roots(h) akar_g = -0. akan diperoleh sebuah polinomial baru: >> p = conv(g.0985 .

/(x-3)+x.3:1.4633 -6.3000 0.0) % sama dengan f(0) ans = -6./(x-3)+x. Contoh: >> f=inline('1.3333 -6.3333 >> x=0:0. Perintah dasar yang tersedia adalah fmin yang akan memberikan nilai x yang menyebabkan f(x) minimum pada suatu interval tertentu.5370 .4086 -6./((x-9)./((x-9).2 x= 0 0.2000 >> y=f(x) y= -6.x) % sama dengan f(x) ans = -6.4633 -6.3333 -6.^2+4)-6') f= Inline function: f(x) = 1.5370 Untuk menghitung nilai fungsi bisa juga dengan menggunakan perintah feval.6000 0.4086 -6.^2+4)-6 >> f(4) ans = -4.9000 1.3333 >> feval(f.g2 = 12 0 yang masing-masing mewakili g'(x) = 6x2 + 5 dan g''(x) = 12x Nilai Minimum/Maksimum Matlab menyediakan perintah yang dapat digunakan untuk mencari nilai maksimum/minimum lokal sebuah fungsi.3666 -6.8621 >> f(0) ans = -6. >> feval(f.3666 -6.

dari command window bisa kita ketikkan: .1965 4. Hitung nilai f pada nilai x yang didapat untuk mencari ymax >> ymax=f1(xmax) ymax = -3. >> y1=f(x1).01:.y2).6] >> xmin=fminbnd(f.y1.25.10.10]) Nilai minimum fungsi Mencari nilai x pembuat minimum pada [3. Simpan M-File dengan menggunakan nama minbndf.8.5615 Function Tool Di dalam MATLAB telah terdapat perangkat (tool) untuk menggambar dan menganalisis fungsi secara praktis yang dikenal dengan ³Function Tool´. dapat digunakan langkah sebagai berikut (kita gunakan definisi M-file): 1.x2=3.1:3.m 3.x2. Untuk membuka perangkat ini.-10. Kemudian kita cari minimum dari fungsi tersebut yang merupakan maksimum dari f(x) >> xmax=fminbnd('minbndf'.[-3.10.3.Menggambar kurva y=f(x) >> ezplot(f.1:10.01:. >> plot(x1.10) xmax = 9.y2=f(x2). Definisikan fungsi minbndf(x)=-f1(x) (pada M-file): function y=minbndf(x) y=-f1(x).-10.3255 >> ymin=f(xmin) ymin = -5.10]) >> x1=0. Untuk mencari nilai maksimum.6) xmin = 5.2657 Nilai x dan y maksimum Matlab tidak menyediakan perintah xmax.25.axis([0. 2.

>> funtool dan akan muncul tiga window berikut ini: Berbagai operasi fungsi bisa kita lakukan dengan mengklik berbagai tombol yang ada di Figure3. misalkan: .

xx. Contoh 1: >>x=[1 3] x = 1 >> y=[3 5] y = 3 5 3 >> yi=interp1(x. Command interp1 menggunakan algoritma khusus untuk interpolasi titik-titik data yang terpisah secara seragam.y. dimungkinkan untuk menentukan titik-titik perantaranya dengan interpolasi.y. Cara termudah untuk menghitungnya ialah dengan menggunakan interpolasi linier untuk menghubungkan dua titik yang berdekatan. Untuk command ini.¶*nearest¶).'*linear') yi = 4 . kita harus tambahkan tanda asteris µ*¶ di depan nama metoda yang diinginkan.2. misalkan interp(x.TUTORIAL MATLAB PERTEMUAN 11-12 INTERPOLASI Pada fungsi yang memiliki sejumlah titik terbatas.

'linier'. misalkan: trapezoid. tt.'k--') >> grid on. Berikutnya.tt.pres. ..'*cubic') >> PP3 = interp1q(t'.'k-'. dll.100) >> PP1 = interp1(t.. >> xlabel('waktu (jam)').PP1.pres. >> pres = [660 900 400 300 500 50 300]. ylabel('Pressure') >> legend('data'. >> tt = linspace(0.12.'*linear') >> PP2 = interp1(t.'k*'.'interp1q') >> title('Perbandingan metode interpolasi') INTEGRAL Solusi numerik dari integral terbatas bisa dihitung secara efisien di MATLAB. Terdapat sejumlah metode perhitungan integral secara numerik.'kubik'.pres.tt. kita akan pelajari perhitungan integral dengan berbagai metode numerik. Pertama.tt') >> figure >> plot(t.Contoh 2: >> t = [0 2 3 5 8.PP2. .tt.5 10 12].tt. kita kembangkan ke perhitungan integral lipat-2 dan lipat-3. kuadratur.pres'.'k:'.PP3.

0.00001) int_2 = 0.0.^3).892952253878937 Kita bandingkan akurasinya dengan quad8: >> int_3 = quadl('bljrintegral'.2.y) % integralkan ! integral = 0.0.001) int_1 = 0.2) int_3 = 0.50).892953514295466 >> format short. Kita hitung integral tersebut dengan toleransi yang berbeda: >> format long. % hitung nilai y >> integral = trapz(x.2. kita hitung integral berikut ini dengan metode numerik: >> x = linspace(0.Contoh: Sebagai contoh. % format bilangan ³long´ >> int_1 = quad('bljrintegral'.0.2.% mengembalikan format ke ³short´ . % definisikan vektor x >> y = exp(-x. kita terlebih dahulu harus mendefinisikan fungsi dalam M-file: function y = bljrintegral(x) y = exp(-x.0.^3).8930 Dengan command quad.893097075892141 >> int_2 = quad('bljrintegral'.

Misalkan kita ingin menghitung integral berikut ini: Pertama.5105 Cara lain yang lebih praktis untuk menghitung integral lipat-2 ialah menggunakan command berikut ini: .50).Integral Lipat 2 Kita bisa menghitung integral terbatas lipat-2 dengan menyelesaikan integralnya satu per satu menggunakan command quad. misalkan dengan trapz.0. kita hitung integral-integral pada arah y untuk x yang tetap: >> x = linspace(0. >> Integral2 = trapz(x. kita hitung integral arah x. end Sekarang.y) z = exp(-x. % definisikan nilai x >> for i = 1:50 % hitung integral unt setiap x(i) integral(i) = quad('fungsiku'. kita memiliki 50 integral pada arah y. Kedua. kita buat M-file untuk fungsi ini: function z = fungsiku(x.[].integral) Integral2 = 0.x(i)).1.[].1.^3-y). Ketiga.

for j = 1:length(y)-1 Y = (y(j)+y(j+1))/2.5104 Untuk mendapatkan gambaran dari fungsi tersebut. kita definisikan batas-batas nilai x.50).1. dan z: >> x = linspace(-2. Kita akan selesaikan integral tersebut dengan metode yang berbeda dengan sebelumnya. yaitu menggunakan nested-for: Pertama.x). % definisikan nilai x >> y = x.^2). kita ketikkan: >> [X.^2 + y. % definisikan nilai y >> z = x.Y. >> for i = 1:length(x)-1 X = (x(i)+x(i+1))/2. % definisikan nilai z >> int_w = 0. dX = x(i+1)-x(i).Z) Integral Lipat 3 Serupa dengan integral lipat-2.2. >> Z = fungsiku(X.y. y. integral lipat-3 bisa kita selesaikan setahap demi setahap.1) Integral_dobel = 0.Y] = meshgrid(x.0. >> mesh(X.Y).Untuk contoh integral di atas: >> Integral_dobel = dblquad(µfungsiku¶. .^2 + z.z) w = sqrt(x. Misalkan untuk integral berikut ini kita simpan dalam M-file: function w = funxyz(x.0. dY = y(j+1)-y(j).

9346 Cara lain yang lebih praktis ialah menggunakan command berikut ini: Untuk contoh integral di atas. int_w = int_w + funxyz(X..for k = 1:length(z)-1 Z = (z(k)+z(k+1))/2.. -2.2.Y. dZ = z(k+1)-z(k).2.Z)*dX*dY*dZ. kita hitung dengan toleransi 0. end end end >> int_w int_w = 122.001) Integral_tripel = 122.-2.0.2.-2.9577 . .001: >> Integral_tripel = triplequad(µfunxyz¶.

Sign up to vote on this title
UsefulNot useful