Modul Praktikum-matlab 2011new

39 

Loading....

Loading....

Loading....

Loading....

Loading....

Teks penuh

(1)

MODUL PRAKTIKUM

MODUL PRAKTIKUM

PIK 4410

PIK 4410

PENERAPAN KOMPUTER PADA ILMU KELAUTAN

PENERAPAN KOMPUTER PADA ILMU KELAUTAN

Matlab Tutorial

Matlab Tutorial

Oleh: Oleh:

Onward Dimar K Nugraha Onward Dimar K Nugraha

Prodi Ilmu Kelautan

Prodi Ilmu Kelautan

Fakultas Perikanan dan Ilmu Kelautan

Fakultas Perikanan dan Ilmu Kelautan

Universitas Brawijaya

Universitas Brawijaya

2011

2011

(2)
(3)

Kata Pengantar

Kata Pengantar

Kata

Kata computer computer  tidak terlepas dari kata asalnya “to compute”, sehingga tidak terlepas dari kata asalnya “to compute”, sehingga dengan demikian matematika sebagai ilmu dasar tidak dapat dipisahkan dengan demikian matematika sebagai ilmu dasar tidak dapat dipisahkan dengan penerapan komputer, khususnya di bidang ilmu kelautan.

dengan penerapan komputer, khususnya di bidang ilmu kelautan.

Ilmu Kelautan adalah sebuah cabang ilmu yang berkaitan secara Ilmu Kelautan adalah sebuah cabang ilmu yang berkaitan secara menyeluruh (holistic) dari berbagai bidang ilmu-ilmu lainnya. Pengetahuan menyeluruh (holistic) dari berbagai bidang ilmu-ilmu lainnya. Pengetahuan bidang keilmuan lain, seperti: kimia, fisika, biologi, matematika, teknik, bidang keilmuan lain, seperti: kimia, fisika, biologi, matematika, teknik, manajemen, statistik, rekayasa teknologi, meteorologi dan klimatologi, manajemen, statistik, rekayasa teknologi, meteorologi dan klimatologi, oceanografi, remote sensing, pesisir dan pantai adalah merupakan syarat oceanografi, remote sensing, pesisir dan pantai adalah merupakan syarat yang tidak bisa dihindari dalam rangka memahami bidang kelautan yang yang tidak bisa dihindari dalam rangka memahami bidang kelautan yang komprehensif.

komprehensif.

Modul praktikum ini disusun sebagai dasar acuan praktikum Modul praktikum ini disusun sebagai dasar acuan praktikum mahasiswa Ilmu Kelautan di Universitas Brawijaya, yang merupakan suatu mahasiswa Ilmu Kelautan di Universitas Brawijaya, yang merupakan suatu modal usaha pembelajaran perhitungan matematika dengan menggunakan modal usaha pembelajaran perhitungan matematika dengan menggunakan komputer. Kemampuan dasar ini diharapkan dapat menunjang mata kuliah komputer. Kemampuan dasar ini diharapkan dapat menunjang mata kuliah lain, seperti: fisika dan kimia oceanografi, pemetaan dan penginderaan jarak lain, seperti: fisika dan kimia oceanografi, pemetaan dan penginderaan jarak  jauh,

 jauh, pengolahan data pengolahan data statistik, statistik, geologi geologi laut, laut, proses-proses proses-proses pantai pantai dan dan tugastugas akhir.

akhir.

Selamat belajar dan semoga bermanfaat. Selamat belajar dan semoga bermanfaat.

Onward Dimar K Nugraha Onward Dimar K Nugraha

(4)

Daftar Isi

Daftar Isi

Kata Pengantar ... i Kata Pengantar ... i Daftar Isi ... ii Daftar Isi ... ii Matlab Dasar ... 1 Matlab Dasar ... 1 1.1. Notasi di Matlab 1.1. Notasi di Matlab ... ... 11 1.2. Fungsi Trigonometri ... 2 1.2. Fungsi Trigonometri ... 2 1.3. Konstanta khusus 1.3. Konstanta khusus ... ... 33 1.4.Operasi matriks ... 4 1.4.Operasi matriks ... 4

1.4.1. Operasi perkalian matriks ... 5

1.4.1. Operasi perkalian matriks ... 5

1.4.2. Matrik identitas (I) ... 5

1.4.2. Matrik identitas (I) ... 5

Grafik/Figure ... 6 Grafik/Figure ... 6 2.1. Plotting grafik ... 6 2.1. Plotting grafik ... 6 2.2. Membuat Subplot ... 9 2.2. Membuat Subplot ... 9 2.3. Membuat plotting 3D ... 9 2.3. Membuat plotting 3D ... 9

Persamaan Linear dan Polinomial Persamaan Linear dan Polinomial ... .. 1212 3.1. 3.1. Menyelesaikan Persamaan Matematika Menyelesaikan Persamaan Matematika ... ... 1212 3.1.1. Persamaan Linear (Orde derajat 1) ... 3.1.1. Persamaan Linear (Orde derajat 1) ... ... 1212 3.1.2. Persamaan 3.1.2. Persamaan Kuadrat (Orde Kuadrat (Orde derajat 2) derajat 2) ... ... 1212 3.1.3. Persamaan Orde Derajat Tinggi 3.1.3. Persamaan Orde Derajat Tinggi ... ... 1414 3.2. 3.2. Menyelesaikan persamaan linear Menyelesaikan persamaan linear dengan solve dengan solve method method ... ... 1414 3.3. Fungsi Polinomial ... 15 3.3. Fungsi Polinomial ... 15 3.3.1. Fungsi polyval 3.3.1. Fungsi polyval ... .. 1515 3.3.2. Fungsi Polyfit ... 16 3.3.2. Fungsi Polyfit ... 16 3.3.3. Fungsi polyder ... 18 3.3.3. Fungsi polyder ... 18 3.3.4. Fungsi roots ... 19 3.3.4. Fungsi roots ... 19 3.3.4. Fungsi poly ... 19 3.3.4. Fungsi poly ... 19 3.3.5. Fungsi conv ... 20 3.3.5. Fungsi conv ... 20 3.3.6. Fungsi deconv ... 20 3.3.6. Fungsi deconv ... 20 Persamaan Differensial Persamaan Differensial ... ... 2222 4.1. Menggunakan ode23 4.1. Menggunakan ode23 ... ... 2222 4.2. Menggunakan ode45 4.2. Menggunakan ode45 ... ... 2222 4.3. 4.3. Studi Studi kasus dalam kasus dalam menggunakan sebuah menggunakan sebuah persamaan differensial persamaan differensial ... ... 2323 Matriks ... 25

Matriks ... 25

5.1. Determinan Matriks ... 25

5.1. Determinan Matriks ... 25

5.2. Menyelesaikan persamaan linear 5.2. Menyelesaikan persamaan linear dengan matriks ...dengan matriks ... .. 2525 5.2.1. Cara 1 dengan determinan 5.2.1. Cara 1 dengan determinan ... ... 2525 5.2.2. Cara 5.2.2. Cara 2 dengan m2 dengan matriks diperbesar / atriks diperbesar / Augmented matrix Augmented matrix ... ... 2525 5.2.3. Cara 3 dgn matriks invers 5.2.3. Cara 3 dgn matriks invers ... ... 2626 Statistik ... 28

Statistik ... 28

6.1. Pengolahan Data Statistik ... 28

6.1. Pengolahan Data Statistik ... 28

6.2. Membuat 6.2. Membuat persamaan matematika dari persamaan matematika dari sampling data sampling data ... ... 3030 Soal-Soal Tugas ... 35

(5)

Matlab Dasar

1.1. Notasi di Matlab Notasi Matematika Freemat/Matlab A x B  B  A Ab  A Log a π  A  B A * B A / B A^b SQRT(A) Log (a) Pi A \ B

Perintah (syntax) di matlab

; =sesudah baris persamaan artinya hasil hitungan tidak segera ditampilkan di layar

clear = membersihkan / reset dari awal

Matlab tidak memerlukan deklarasi variabel atau pernyataan dimensi pada setiap variabel yang akan digunakan dalam sebuah program komputer. Variabel dalam Matlab secara otomatis akan dibuat dan disimpan setiap kali Matlab menemukan nama variabel baru. Disamping itu, hal yang sangat penting untuk diingat bahwa variabel Matlab bersifat case sensitif, artinya antara huruf besar dengan huruf kecil dibedakan. Dibawah ini diberikan beberapa aturan penulisan variabel dalam Matlab:

1. Variable tidak boleh diawali dengan angka, misalnya 2abc, 45y, 3ok43 2. Variabel dapat merupakan kombinasi antara huruf dan angka,

misalnya ok45, ok45ok, abc432 dsb

(6)

4. Hindari memberikan nama variabel dengan nama-nama khusus yang ada di Matlab, misalnya hindari memberikan nama variabel dengan nama pi, eps, i, j. Karena pi=22/7, eps= 2 − 54 , i dan j memiliki harga − 1.

5. Disarankan pembuatan variabel singkat tetapi penuh makna (informatif). Hal ini untuk menghindari kesalahan penulisan variabel yang berulang-ulang.

Perintah tambahan yang berguna untuk pemrograman a) clc: menghapus layar di command window

b) close all: menghapus semua gambar yang tampil sebelumnya. c) clear: perintah untuk menghapus data di memori Matlab

d) cd: perintah untuk mengubah direktori

e) pwd: perintah untuk mengetahui kita berada di direktori mana pada saat ini.

f) dir: perintah untuk mengetahui file apa saja yang ada di current directory

g) mkdir: perintah untuk membuat direktori dibawah current direktori h) delete: perintah untuk menghapus file

i) who: menampilkan semua variabel saat ini.

 j) whos: menampilkan semua variabel saat ini bersama dengan informasi tentang ukuran, bytes, class dll

k) what: menampilkan semua file dengan ekstensi .M (M-File)

1.2. Fungsi Trigonometri

Ada beberapa fungsi trigonometri yang kita kenal dalam matematika. Fungsi-fungsi tersebut masuk ke dalam Fungsi-fungsi bawaan Matlab. Fungsi-Fungsi-fungsi trigonometri tersebut antara lain: sin(), cos(), tan(), sinh(), cosh(), tanh(), asin(), acos(), atan(), asinh(), acosh()dan atanh(). Disamping fungsi trigonometri, fungsi-fungsi dasar juga penting. Beberapa fungsi dasar tersebut antara abs(), sqrt(), exp(), log(), log10(), log2(). Untuk lebih jelasnya, lihat tabel dibawah ini:

(7)

No Nama variabel Keterangan

1 abs() Menyatakan harga mutlak, misal ∣ x ∣ 2 sqrt() Menyatakan akar pangkat dua

, misal √x

3 exp() Menyatakan harga eksponensial, misal ex 4 log() Menyatakan harga ln, misal ln(x)

5 log10() Menyatakan harga logaritma basis 10, misal log(x) 6 log2() Menyatakan harga logaritma basis 2, misal

2

log  x 

1.3. Konstanta khusus

Di Matlab ada beberapa konstanta khusus yang mana sebaiknya dihindari untuk didefinisikan kembali sebagai konstanta. Beberapa konstanta khusus tersebut antara lain:

No Nama variabel Keterangan

1 pi 3.14159265...

2 i Unit imajiner, √-1

3 j Sama dengan i

4 eps Ketelitian relatif floating-point 5 realmin Bilangan floating-point terkecil 6 realmax Bilangan floating-point terbesar

7 inf Bilangan tak hingga

Contoh 1:

Hitung volume bola

 

 

 

 

= 3 3 4 r  V  π   , dimana r = 2 m

(8)

>>V = (4/3)*pi*r^3

Membuat interval baris bilangan >> x = [0:2:10] >> x = [0:0.1:1] Membuat matriks >> A = [2;1;4]   matrik kolom >> B = [2 0 4]   matrik baris >> C = [1,1,9]   matrik baris 1.4.Operasi matriks Contoh 1: >> A = [-1,6;7,11] >> B = [2,0,1;-1,7,4;3,0,1] >> C =2*A Contoh 2: >> A = [5 1;0 9]; >> B = [2 -2;1 1]; >> A + B >> A – B

>> A’   transpose matrik A (AT)

Contoh 3: >> A = [2;1;4]; >> W = [ 3,0,3]; >> Y = a’ >> X = [2,1,1]; >> K = [1;4;5]; >> Y = W - X >> L = [2;3;3]; >> M = K + L

(9)

1.4.1. Operasi perkalian matriks

>> A = [ 2 1;1 2]; >> B = [3 4;5 6];

>> A * B   perkalian matriks

>> A .* B    bukan perkalian matriks, hy perkalian bilangan dlm matriks

1.4.2. Matrik identitas (I)

Untuk membuat matrik identitas, dengan cara: >> eye(4)  matriks identitas dimensi 4 x 4

Latihan:

1. Hitunglah dengan menggunakan Matlab: a. 4 11 5 b. 7 3 3 8 5 + c. 91.25

(10)

Grafik/Figure

2.1. Plotting grafik

Freemat dan Matlab juga menyediakan fasilitas untuk membuat grafik dari suatu persamaan.

Membuat grafik fungsi y = cos (x) untuk 0 ≤ x ≤ 10

>> x = [0:0.1:10];   artinya nilai x dari 0 s/d 10 dgn interval 0.1 >> y = cos(x);

>> plot(x,y)

Membuat label >> x = [0:0.01:10]; >> y = cos(x);

>> plot(x,y), xlabel(‘x’), ylabel(‘cos(x)’)

Membuat grid >> x = [-6:0.01:6]; >> y = tanh(x); >> plot(x,y), grid on

Menggabungkan beberapa fungsi dalam satu plot misal fungsi f(t)= e-t dan g(t)= e-2t

>> t = [0:0.01:5]; >> f = exp(-t); >> g = exp(-2*t); >> plot(t,f,t,g,’--‘)

Keterangan:

Untuk bentuk garis: Solid line ‘-‘ Dashed line ‘--‘ Dashed dot line ‘-.’

(11)

Dotted line ‘:’

Jadi jika ingin membuat garis yang berbeda, maka: >> plot(t,f,’:’,t,g,’--‘) Membuat legenda >> x = [0:0.01:2]; >> y = sinh(x); >> z = cosh(x); >> plot(x,y,x,z,’-.’),xlabel(‘x’),ylabel(‘potential’), legend(‘sinh(x)’,’cosh(x)’) Mensetting warna: >> x = [-5:0.01:5]; >> y = sinh(x); >> z = cosh(x);

>> plot(x,y,’r’,x,z,’b’) atau >> plot(x,y,’r’,x,z,’b--‘) Keterangan: Warna Variabel White Black Red Cyan Green w b r c g

(12)

Magenta Yellow

m y

Setting skala sumbu axis Axis([xmin xmax ymin ymax]) Contoh 1:

Y = sin(2x+3) utk 0≤ x ≤5 , -1 ≤ y ≤ 1 >> x = [0:0.01:5];

>> y = sin(2*x+3);

>> plot(x,y),axis([0 5 -1 1] )

Contoh 2:

Y = e-1.5x sin(5x+3) untuk 0 ≤ x ≤ 5, -1 ≤ y ≤ 1 >> x = [0:0.01:5];

>> y = exp(-1.5*x .* sin(5*x+3);   .* digunakan utk perkalian 2 fungsi >> plot(x,y),axis([0 5 -1 11])

Ingat!!

Untuk mengoperasikan dua fungsi, gunakan: .* utk perkalian

.^ utk pangkat Misal:

(13)

Y = sin2(5x) jadi >> y = sin(5*x).^2;

2.2. Membuat Subplot

Membuat beberapa grafik dalam satu plot Contoh: Y = e-1.2xsin(20x) Y = e-2x-sin(20x) >> x = [0:0.01:5]; >> y = exp(-1.2*x).*sin(20*x); >> subplot(1,2,1)

 membuat 2 pane dlm 1 row

>> plot(x,y),xlabel(‘x’),ylabel(‘exp(-1.2x)*sin(20)’),axis([0 5 -1 11]) >> y = exp(-2*x).*sin(20*x); >> subplot(1,2,2) >> plot(x,y),xlabel(‘x’),ylabel(‘exp(-2x)*sin(20x)’),axis([0 5 -1 11]) 2.3. Membuat plotting 3D Contoh 1: Z = cos(x)sin(y) utk -2π ≤ x, y ≤ 2π >> [x,y] = meshgrid(-2*pi:0.1:2*pi);

(14)

>> z = cos(x).*sin(y); >> mesh(x,y,z),xlabel(‘x’),ylabel(‘y’),zlabel(‘z’) Contoh 2: 2 2  y  x

 ye

 z

=

− + >> [x,y]=meshgrid(-2:0.1:2); >> z = y.*exp(-x.^2-y.^2); Perintah mesh: >> mesh(x,y,z),xlabel(‘x’),ylabel(‘y’),zlabel(‘z’)

Jika ingin membuat surface plot, gunakan: >> surf(x,y,z),xlabel(‘x’),ylabel(‘y’),zlabel(‘z’)

Pilihan lain, gunakan surfl:

>> surfl(x,y,z),xlabel(‘x’),ylabel(‘y’),zlabel(‘z’)

Contoh 3:

Contoh berikut hanya dapat dilakukan di Matlab, menggunakan cylindrical plot >> t = [0:pi/10:2*pi];

>> [x,y,z] = cylinder(1+sin(t); >> surf(x,y,z)

(15)

Contoh 4: >> t = [0:pi/10:2*pi]; >> [x,y,z] = cylinder(1+cos(t); >> surf(x,y,z) >> axis square shading faceted

Pelajari perintah-perintah 3D lainnya di matlab dengan menu help atau ketik help “nama_fungsi”. Syntax-syntax tersebut antara lain adalah: ezplot3, ezsurf, ezsurfc, ezmesh, emeshc, ezcontour dan ezcontourf.

Contoh 5:

Menggambar fungsi (x,y,z)= (sin(2πt), cos(2πt),t) dimana t ≥ 0 >> ezplot3 (‘cos(2*pi*t)’,’sin(2*pi*t)’,’t’,[0.5])

Contoh 6:

Menggambar grafik 3D dari suatu fungsi

   

 >> ezsurf ((‘x*y*exp((-x^2+y^2))’)

LATIHAN:

Buatlah plot grafik x-y (2D) dari persamaan berikut: x=sin(t), y1=sin(t+0.25), y1=cos(t-0.25) untuk 0 ≤ t ≤ 2π.

(16)

Persamaan Linear dan Polinomial

3.1. Menyelesaikan Persamaan Matematika

Penyelesaian dengan menggunakan solve method  : 3.1.1. Persamaan Linear (Orde derajat 1)

Contoh 1:

Selesaikan persamaan x+3=0, x+8=0 >> x = solve(‘x+3=0’)  cara 1 >> x = solve(‘x+8’)  cara 2

Contoh 2:

Selesaikan persamaan ax+5=0 >> x = solve(‘ax+5’)

Contoh 3:

Menggunakan solve(equation, variable) >> x = solve(‘ax+5’,’a’)

3.1.2. Persamaan Kuadrat (Orde derajat 2)

Contoh 1:

(17)

>> s = solve(‘x^2=6*x-12=0’)

Contoh 2:

>> d = ‘x^2-6*x-12’; >> solve(d)

>> ezplot(d)  cara mudah membuat plot grafik

Contoh 3:

Membuat grafik persamaan linear >> ezplot(‘x+3’)

Contoh 4:

Cari akar-akar dari persamaan x2+x-√2=0 >> y = ‘x^2+x-sqrt(2) atau y = ‘x^2+x-2^1/2’; >> s = solve(y)

Hasil yang keluar susah dimengerti, oleh karena itu dapat dikonversi menjadi bilangan desimal, dengan cara:

>> x = double(s(1)) >> y = double(s(2)) Kemudian buat plotnya >> ezplot(y)

(18)

3.1.3. Persamaan Orde Derajat Tinggi Contoh 1:

Selesaikan persamaan berikut

4x4-5x3+4x2-5x+6=0 untuk -10≤x≤10 Solusinya:

>> y = ‘x^4-5*x^3+4*x^2-5*x+6’; >> s = solve(y);

>> a = double(s(1))  akar ke-1 >> b = double(s(2))  akar ke-2 >> c = double(s(3))  akar ke-3 >> d = double(s(4))  akar ke-4 >> ezplot(5,[-10 10]), grid on

Contoh 2:

Carilah akar-akar persamaan dari:

X3+3x2-2x-6=0 untuk -8≤x≤8, -8≤y≤8 Solusinya: >> f = ‘x^3+3*x^2-2*x-6’; >> s = solve(f) >> ezplot(f,[-8,8,-8,8]), grid on Latihan:

Carilah akar-akar persamaan dari 2t3-t2+4t-6=0

3.2. Menyelesaikan persamaan linear dengan solve method Contoh 1:

Carilah nilai x dan y dari persamaan berikut: 5x+4y=3

(19)

Solusinya:

>> s = solve(‘5x+4y=3’,’x-6y=2’); >> x = s.x

>> y = s.y   menggunakan notasi (.) / dot

Contoh 2:

Selesaikan persamaan berikut: w+x+4y+3z=5 2w+3x+y-2z=1 w+2x-5y+4z=3 w-3z=9 Solusinya: >> s1=’w+x+4y+3z=5’; >> s2=’2w+3x+y-2z=1’; >> s3=’w+2x-5y+4z=3’; >> s4=’w-3z=9’; >> s=solve(S1,S2,S3,S4); >> w=s.w >> x=s.x >> y=s.y >> z=s.z 3.3. Fungsi Polinomial 3.3.1. Fungsi polyval

Fungsi polyval digunakan untuk menentukan nilai sebuah polinomial dalam bentuk

p (x)=a 0 + a 1 x 1 + a 2 x 2  + a 3  x 3  + a 4  x 4 +...+a n-1 x n-1 + a n  x n 

Matlab memiliki cara sederhana untuk menyatakan polinomial seperti dia tas dengan cara

(20)

Contoh

Diketahui sebuah polinomial berbentuk p (x)=x 4+ 3x 2 + 4x  + 5 akan

dievaluasi pada x =2, 3 dan 4. Jawab

Pertama, kita nyatakan polinomial yang akan dievaluasi berbentuk p=[1 0 3

4 5].

Kedua, kita nyatakan titik evaluasi yaitu x=[2,-3,4]

Ketiga, mengevaluai polinomial pada x, yaitu polyval(p,x)

Jika ditulis dalam command window >> p=[1 0 3 4 5];

>> x=[2,-3,4]; >> polyval(p,x)

3.3.2. Fungsi Polyfit

Jika kita telah memperoleh hasil dari sebuah eksperimen, maka kadang kita perlu mencocokan dengan bentuk fungsi apa data yang telah diperoleh.

Mungkin saja cocok dengan fungsi yang berbentuk linier, kuadratis, polinomial tiga atau polinomial lainnya. Dengan menggunakan fungsi ini, kita dapat

mencocokan data kita. Bentuk umum fungsi ini adalah:

p = polyfit(x,y,n)

dengan n adalah polinomial orde n, yaitu polinomial yang digunakan untuk mencocokan data.

Contoh:

X 1 2 3 4 5 6 7 8 9 10

(21)

Dari data eksperimen yang diperoleh, kita akan melakukan pencocokan ke bentuk polinomial tertentu. Tetapi, kalau kita lihat dari trend data y, kita bias menduga bahwa data kita mendekati polinomial orde 2 (kuadratis).

>> x=[1:10];

>> y=[1.3,3.2,11.3,15.1,25.5,38.2,47.1,68.2,81.3,98.2]; >> p=polyfit(x,y,2)

Akhirnya diperoleh p berbentuk p =

0.9284 0.7693 -1.0350

yang merupakan koefisien polinomial p. Sekarang kita memiliki polynomial hasil pencocokan berbentuk

p =0.9284 x 2 + 0.7693 x −1.0350

Untuk melihat seberapa bagus hasil pencocokan yang kita lakukan, marilah kita lakukan evaluasi pada titik-titik data yang kita miliki.

>> f=polyval(p,x); >> tabel=[x' y' f' (y-f)'] >> tabel = 1.0000 1.3000 0.6627 0.6373 2.0000 3.2000 4.2173 -1.0173 3.0000 11.3000 9.6286 1.6714 4.0000 15.1000 16.8968 -1.7968 5.0000 25.5000 26.0218 -0.5218 6.0000 38.2000 37.0036 1.1964 7.0000 47.1000 49.8423 -2.7423 8.0000 68.2000 64.5377 3.6623 9.0000 81.3000 81.0900 0.2100 10.0000 98.2000 99.4991 -1.2991

Sekarang, marilah kita tampilkan selengkapnya dalam bentuk grafik dengan menuliskan code melalui jendela editor.

(22)

3.3.3. Fungsi polyder

Fungsi polyder digunakan untuk menurunkan polinomial yang kita miliki. Bentuk umum penggunaan fungsi polyder adalah

k = polyder(p) atau

k = polyder(a,b)

Contoh

Turunkan polinomial di bawah ini P (x )=4x 4 + 3x 2 + 4x  + 5 Jawab >> p=[4 0 3 4 5]; >> polyder(p) >> ans = 16 0 6 4

Hasilnya jika dituliskan dalam bentuk ungkapan matematis 16 x 3 + 6 x  + 4

Contoh

Turunkan polinomial di bawah ini

(23)

Jawab a=[4 0 3 4 5]; b=[2 1 3 1]; p=polyder(a,b) p = 56 24 90 60 69 40 19 atau p (x )=56 x 6 + 24 x 5 + 90 x 4 + 60x 3 + 69x2 + 40 x  + 19 3.3.4. Fungsi roots

Fungsi roots digunakan untuk memperoleh akar dari sebuah polynomial orde n. Bentuk umum dari fungsi ini adalah:

r = roots(c) Contoh

Diketahui sebuah polinomial p (x )=4x 4 + 3x 2 + 4x  + 5 . Dapatkan akarakar polinomial tersebut dengan menggunakan fungsi roots.

Jawab

Polinomial p( x )=4x 4 + 3x 2 + 4x  + 5 dapat dituliskan dalam Matlab berbentuk >> p=[ 4 0 3 4 5]

Akar polinomial tersebut adalah >>roots(p) >> ans = 0.6364 + 1.0830i 0.6364 - 1.0830i -0.6364 + 0.6222i -0.6364 - 0.6222i 3.3.4. Fungsi poly

Fungsi poly digunakan untuk menentukan bentuk polinomial setelah akar akar polinomial tersebut diketahui. Bentuk umum fungsi poly adalah

p = poly(r) Contoh

Diketahui akar polinomial p adalah 1,2,3,4 dan 5. Tentukan bentuk polinomialnya.

Jawab

>> r=[1 2 3 4 5]; >> poly(r)

(24)

atau

p (x )=x 5−15 x 4 + 85 x 3−225 x 2 + 274 x −120

3.3.5. Fungsi conv

Fungsi conv digunakan untuk mengalikan polinomial. Bentuk umumnya adalah

w = conv(u,v) Contoh

Diketahui dua buah polinomial u  ( x )=x 2 + 3x  + 2 dan

v (x )=x 3 + 2x 2 + 3x  +1 . Tentukan hasil perkalian dua polinomial tersebut. Jawab >> u=[1 3 2]; >> v=[1 2 3 1]; >> conv(u,v) ans = 1 5 11 14 9 2 atau x 5 + 5 x 4 + 11 x 3 + 14 x 2 + 9x  + 2 3.3.6. Fungsi deconv

Fungsi deconv berkebalikan dengan conv. Fungsi ini akan melakukan pembagian dua buah polinomial. Bentuk umumnya adalah

[q,r] = deconv(v,u)

dengan q dan r masing-masing adalah hasil bagi dan residu. Contoh

Diketahui dua buah polinomial yaitu p 1 (x )=2x 4 + 3x 3 + x 2 + 4x  + 5 dan p 2 (x ) =x 2 + 3x  + 4 , maka carilah hasil bagi antara p 1 dengan p 2 beserta

residunya. Jawab

Dengan menggunakan fungsi deconv, maka kita dapat memperoleh hasil bagi dan residunya.

>> p1=[2 3 1 4 5]; >> p2=[1 3 4]; >> [q r]=deconv(p1,p2) q = 2 -3 2 r = 0 0 0 10 -3

atau jika dinyatakan dalam bentuk matematis q =2x 2−3x  + 2 dan r =10 x −3

(25)

Latihan:

1. Selesaikan persamaan berikut: x-3y-2z=6

2x-4y-3z=8 -3x+6y+8z=-5

2. Carilah akar-akar persamaan

 

 

   1  0

. Gambarkanlah kurva fungsi tersebut untuk mengkonfirmasikan hasilnya.

(26)

Persamaan Differensial

4.1. Menggunakan ode23





  ��� 

Buat function file satu.m function ydot = eq1(t,y) ydot = cos(t);

gunakan syntax seperti ini:

[t,y] = ode23(‘nama_fungsi’,[start_time, end_time], y(0))

>> [t,y] = ode23('eq1',[0 2*pi],2);

Coba kita cocokkan hasilnya dengan membandingkan hasilnya dengan menaikkan sebuah turunan y'=cos(t) → y = sin(t)+C

>> f = 2 + sin(t); >> plot(t,y,'o',t,f),xlabel('t'),ylabel('y(t)'),axis([0 2*pi 0 4]) Cek error >> err = zeros(size(y)); >> for i = 1:1:size(y) err(i) = abs((f(i)–y(i))/f(i)); end Hasilnya: >> err

>> emax=max(err) → maksimum error

4.2. Menggunakan ode45

(27)

>> f = 2 + sin(t); >> plot(t,w,'o',t,f),xlabel('t'),ylabel('y(t)'),axis([0 2*pi 0 4]) Cek error >> err = zeros(size(w)); >> for i = 1:1:size(w) err(i) = abs((f(i)–w(i))/f(i)); end >> wmax = max(err)

4.3. Studi kasus dalam menggunakan sebuah persamaan differensial Seorang tentara dengan bobot 80kg terjun dengan menggunakan parasut dari ketinggian 600m. Tentara tersebut tentunya kecepatan terjun dipercepat dengan percepatan gravitasi (9.81 m/s2) dan diperlambat dengan tahanan dari parasut. Dinyatakan dalam persamaan differensial, sebagai berikut:





     

4

15

Buat function file terjun.m function rk=f(t,y) mass= 9.81; g=9.81; rk=-g+4/15*y^2/mass; >> clear all >> timerange=[0 30]; % seconds >> initialvelocity=0; %m/s >> [t,y]=ode45(@f,timerange, initialvelocity)

>> plot(t,y), ylabel('velocity (m/s)'), xlabel ('time (s)')

Latihan:

1. Selesaikan persamaan differensial berikut ini:





(28)

2. Gunakan ode45 untuk menghitung persamaan differensial berikut:





 

 

(29)

Matriks

5.1. Determinan Matriks 21 12 22 11 22 21 12 11  xa a  xa a a a a a  D

= −

= Contoh 1: >> A = [1 3;4 5]; >> det(A)

5.2. Menyelesaikan persamaan linear dengan matriks 5.2.1. Cara 1 dengan determinan

5x + 2y - 9z = 44 -9x -2y + 2z = 11 6x + 7y + 3z = 44

=

=

− − − − =  z  y  x c b  A , 44 11 44 , 3 7 6 2 2 9 9 2 5 >> A = [5 2 -9;-9 -2 2;6 7 3]; >> b = [44;11;44]; >> c = det(A) >> d = A \ b

5.2.2. Cara 2 dengan matriks diperbesar / Augmented matrix

Untuk menyelesaikan persamaan linear dengan matriks diperbesar, diperlukan uji tes rank dari matrik sebuah ukuran jumlah independen linear baris / kolom. Jika nilai rank matrik A = matrik [A b], dengan catatan nilai rank < n (jumlah variabel persamaan), maka ada solusi persamaan linear tersebut.

(30)

3x – 4y + 5y = 20 -2x + y + 7z = 11

=

− − = 11 20 12 , 7 1 2 5 4 3 1 2 1 b  A Augmented matriks [A b] =

− − 11 7 1 2 20 5 4 3 12 1 2 1 >> A = [1 -2 1;3 4 5;-2 1 7]; >> b = [12 20 11]; >> c = [A b] >> rank(A)

>> rank(c)  jika rank A dan rank C sama, maka >> c = A\b

5.2.3. Cara 3 dgn matriks invers A A-1 = A-1A = 1

A x = b x = A-1 b

di dalam Matlab untuk mencari matriks invers: A-1 = inv(A) Contoh 1:

− − − − = 8 9 0 0 1 1 2 0 1 3 2 4 2 1 0 1  A >> A = [1 0 -1 2;4 -2 -3 1;0 2 -1 1;0 0 9 8];

>> det(A)  jika det ≠ 0, maka ada inversnya >> B = inv(A)

(31)

Contoh 2: 3x – 2y = 5 6x – 2y = 2 >> A = [3,-2;6,-2]; >> b = [5;2]; >> det(A); >> c = inv(A)*b Latihan: 1. x + 2y + 3z = 12 2. x – 2y + 3z = 1 -4x + y + 2z = 13 x + 4y + 3z = 2 9y – 8y = -1 2x + 8y +z = 3 3. 3x + 2y - 9z = -65 -9x + 5y +2z = 16 6x + 7y + 3z = 5

(32)

Statistik

6.1. Pengolahan Data Statistik

Pengolahan data statistik menggunakan Matlab Contoh 1:

Dari 36 siswa didapat nilai matematika sebagai berikut: Jumlah Nilai Jumlah Nilai

1 100 7 78 2 96 4 75 4 90 6 70 2 88 1 69 3 85 2 63 1 84 1 55 2 82 >> X = [55,63,69,70,75,78,82,84,85,88,90,96,100]; >> Y = [1,2,1,6,4,7,2,1,3,2,4,2,1]; >> bar(x,y) Contoh 2: Nilai Jumlah 50 – 59 1 60 – 69 3

(33)

70 – 79 17

80 – 89 8

90 - 110 7

Terlebih dulu kita cari nilai tengah dari range data tersebut. >> a = [54.5,64.5,74.5,84.5,94.5];

>> b = [1,3,17,8,7];

>> bar(a,b),xlabel(‘score’),ylabel(‘jumlah siswa’),title(‘Nilai Matematika’) Untuk menampilkan grafik horisontal, gunakan barh:

>> barh(a,b),xlabel(‘score’),ylabel(‘jumlah siswa’),title(‘Nilai Matematika’) Jika ingin menampilkan bentuk 3D:

>> bar3(a,b),xlabel(‘score’),ylabel(‘jumlah siswa’),title(‘Nilai Matematika’)

Contoh 3:

Nilai UTS matematika di FPIK

Nilai PSPK MSP SEPK 91 – 100 10 5 8 81 – 90 13 10 17 71 – 80 18 20 15 61 – 70 3 5 2 51 – 60 0 3 1

(34)

>> x = [54.5,64.5,74.5,84.5,94.5]; kelompokkan dalam 3 kolom vektor: >> pspk = [0;3;18;13;10];

>> msp = [3;5;20;10;5]; >> sepk = [1;2;15;17;8];  kemudian buat persamaan: >> y = [pspk msp sepk]; >> bar(x,y),xlabel(‘nilai’),ylabel(‘jumlahsiswa’),legend(‘pspk’,’msp’,’sepk’] Contoh 4: >> A = [11,11,12,12,12,,14,14,14,15,16,16,23,24,28,29,30]; >> mean(A) >> median(A) >> std(A) Latihan: Frequency 2 1 3 6 1 3 1 1 3 4 3 2 1 Weight (pounds) 130 138 145 150 152 155 160 164 165 167 170 172 175

Carilah nilai mean, median dan standar deviasi.

6.2. Membuat persamaan matematika dari sampling data Contoh 1:

Carilah persamaan matematika dan buat grafik kurva dari data permainan golf berikut:

Handicap 6 8 10 12 14 16 18 20 22 24

Score 3.94 3.8 4.1 3.87 4.45 4.33 4.12 4.43 4.6 4.5

(35)

>> score = [3.94,3.8,4.1,3.87,4.45,4.33,4.12,4.43,4.6,4.5];

mencari persamaan dengan polyfit orde 1 >> p = polyfit(handicap,score,1);

Bentuk persamaan orde/derajat 1 adalah: Y = mx + b

Maka dicari nilai m dan b: >> m = p(1)

>> b = p(2)

kemudian buat plotnya: >> x = [6:2:24];

>> y = m*x+b; >> subplot(2,1,2);

>> plot(handicap,score,’o’,x,y),xlabel(‘handicap’),ylabel(‘score’) untuk mengetahui nilai fungsi y pada tiap nilai x:

>> w=m*handicap+b Tes error dng uji r2 R2 = 1- A/S

Dimana:

A = kuadrat jumlah selisih data yang dihitung dengan data nilai yang dikumpulkan

S = kuadrat jumlah selisih data yang dikumpulkan dengan nilai rata-rata(mean) Jadi: >> ave=mean(score) >> A = sum((w-score).^2 >> S = sum((score-ave).^2 >> R2=1-A/S 

 jika nilai mendekati 1, artinya persamaan tsb cocok dng error yg kecil

Contoh 2:

(36)

Luasan 1200 1500 1750 2000 2250 2500 2750 3000 3500 4000 Harga 135 142 156 165 170 220 225 275 300 450

>> luas=[1200,1500,1750,2000,2250,2500,2750,3000,3500,4000]; >> harga=[135,142,156,165,170,220,225,275,300,450];

>> plot(luas,harga,'o'),xlabel('Rumah m2'),ylabel('Harga'), Title('Harga Rumah di Malang'),axis([1200 4000 135 450]) >> p=polyfit(luas,harga,1); >> m=p(1) >> b=p(2) >> x=[1200:10:4000]; >> y=mx+b >> subplot(2,1,2); >> plot(x,y,luas,harga,'o'),xlabel('Rumahm2'),... ylabel('Harga'),title('Harga Rumah di Malang'),axis([1200 4000 135 450])

Uji RMS (Root Mean Square) dari persamaan yg didapat: Y=(0.1032)x-28.4909

Dengan memasukkan nilai-nilai diatas didapat: >> w=m*luas+b Luasan 1200 1500 1750 2000 2250 2500 2750 3000 3500 4000 Harga 135 142 156 165 170 220 225 275 300 450 Y 95 126 152 178 204 230 255 281 333 384

(

)

12 0 2

=

=  N   j error 

 N 

 Aj

Ti

 RMS 

Dimana:

T = nilai yang dikumpulkan

A = nilai prediksi dari persamaan y N = jumlah data

(37)

>> d=(harga-w).^2;

>> N=10;   jumlah data=10 >> RMS=sqrt((1/N*sum(d))  nilai RMS mendekati 1

Kita ulangi proses dari awal dengan menaikkan orde/derajat persamaan. >> p=polyfit(luas,harga,2);   orde 2 >> a=p(1) >> b=p(2) >> c=p(3) >> x=[1200:10:4000]; >> y=a*x.^2+b*x+c; >> plot(x,y,luas,harga,'o'),xlabel('Rumahm2'),... ylabel('Harga'),title('Harga Rumah di Malang'),axis([1200 4000 135 450]) >> w = a*luas.^2 + b*luas + c; >> d2=(harga-w).^2; >> N=10; >> RMS2=sqrt((1/N)*sum(d2))

Kemudian kita uji R2 >> m1=mean(harga) >> S=((harga-m1).^2) >> A=sum((w-harga).^2) >> R2=1-A/S

Hasilnya mendekati 1, jadi model persamaan ini dapat dipakai, yaitu: Y = ax2+bx+c, isikan nilai a, b dan c maka:

Y = (3.75 x 10-5)x2 – 0.09x + 194.1715

Latihan:

Carilah fungsi persamaan dari data yang dikumpulkan atlit angkat berat, sebagai berikut:

(38)

Usia 15 17 18 19 24 30 35 37

(39)

Soal-Soal Tugas

Tugas I Dasar-dasar penggunaan Matlab

Terjemahkan pernyataan-pernyataan berikut ini dalam Matlab

Tugas II Plotting grafik/figure

1. Buatlah plot grafik dari persamaan

  2

. untuk

0    10

2. Gambarlah grafik fungsi

  

��

 untuk -5

   5

Tugas III Persamaan Linear dan Polinomial

1. Hitunglah dengan Matlab persamaan ini:













 , x=5

2. Tentukan harga p pada titik x= 1, -4, 10 dan 3 dari polynomial ini:

  

 

 

     

3. Carilah akar-akar persamaan

 3  4  0

. Gambarkanlah kurva fungsi tersebut untuk mengkonfirmasikan hasilnya

Tugas IV Persamaan Differensial

Selesaikan persamaan differensial dan plot hasilnya dari permasalahan ini: Sebuah model penyebaran penyakit pada suatu populasi binatang diformulasikan ke dalam persamaan differensial biasa sebagai berikut:

0

)),

(

1

)(

(

− ≥ =

ku

u

dt 

du

Figur

Memperbarui...

Referensi

Memperbarui...

Related subjects :