• Tidak ada hasil yang ditemukan

Tutorial Octave

N/A
N/A
Protected

Academic year: 2021

Membagikan "Tutorial Octave"

Copied!
37
0
0

Teks penuh

(1)

TUTORIAL OCTAVE

sigit.adinu@ub.ac.id

(2)

MATLAB

Bahasa pemrograman proprietary yang dikembangkan oleh MathWorks

Awalnya dikhususkan untuk komputasi numerik, sebagai pengembangan dari LINPACK dan EISPACK Saat ini telah berkembang dan mendukung bidang bioinformatics, neural network, image processing, signal processing, dll

Matlab merupakan software komersial, yang

harganya ditentukan berdasarkan jumlah modul yang digunakan

(3)
(4)

GNU OCTAVE

Octave merupakan software opensource yang kompatibel dengan MATLAB

Sebagai bagian dari project GNU, Octave dapat didownload secara gratis di

https://www.gnu.org/software/octave/do wnload.html

(5)

Octave Interface

FILE BROWSER WORKSPACE COMMAND HISTORY COMMAND WINDOW

(6)

Octave Interface

FILE BROWSER WORKSPACE COMMAND HISTORY SCRIPT EDITOR

(7)

VARIABEL

Berbeda dengan Java, variabel pada octave tidak perlu didefinisikan terlebih dahulu Variabel dapat digunakan ulang untuk tipe data yang berbeda

>> a=4 a = 4 >> b=5 b = 5 >> a='FILKOM’ a = FILKOM >>

(8)

VARIABEL

Hasil perhitungan yang tidak di assign pada suatu variabel, akan disimpan pada variabel bernama ans >> b*2 ans = 10 >> ans ans = 10 >> ans + 7 ans = 17

(9)

VARIABEL

Beberapa variabel sudah memiliki nilai default pada octave

>> pi ans = 3.1416 >> i ans = 0 + 1i >> j ans = 0 + 1i >> eps ans = 2.2204e-16 >> realmax ans = 1.7977e+308 >> realmin ans = 2.2251e-308

(10)

BUILT-IN FUNCTIONS

Octave memiliki fungsi-fungsi bawaan, diantaranya :

Nama fungsi Kegunaan

cos Cosinus dari suatu sudut (dalam satuan radian) sin Sinus dari suatu sudut (dalam satuan radian) exp Fungsi eksponensial

log Logaritma natural log10 Logaritma basis 10

abs Nilai mutlak

round Pembulatan bilangan

mod Modulo dari dua bilangan

or Operasi binary OR

Daftar lengkap fungsi dasar octave :

(11)

BUILT-IN FUNCTIONS

>> rem(20,3) ans = 2 >> ne(20,17) ans = 1 >> or(1,0) ans = 1 >> floor(9.82) ans = 9 >> abs(-123) ans = 123

(12)

VEKTOR

Vektor pada octave merupakan sekumpulan angka, sama dengan struktur data array pada Java. Vektor dapat berbentuk vektor kolom maupun vektor baris

>> v1=[1 7 5 3.14e3] v1 = 1 7 5 3140 >> v2 = [2;4;6;8] v2 = 2 4 6 8 >> v3 = [v1 10:15] v3 = 1 7 5 3140 10 11 12 13 14 15 >> v3(3) %mengakses elemen ke 3 ans = 5

v1 merupakan vektor baris

(13)

OPERASI VEKTOR

>> v4 = v1 * 3 v4 = 3 21 15 9420 >> v5 = v2‘ v5 = 2 4 6 8 >> v1 * v5

error: operator *: nonconformant arguments (op1 is 1x4, op2 is 1x4)

>> v1 .* v5

ans = 2 28 30 25120 >> dot(v1,v5)

(14)

MATRIKS

>> m1 = [1, 6, 3; 2, 7, 4] m1 = 1 6 3 2 7 4 >> m2 = [2 7;8 3; 5 9] m2 = 2 7 8 3 5 9 >> m1(2,3) ans = 4 >> m2(2,:) ans = 8 3 >> m1([1,2],[2]) ans = 6 7

(15)

OPERASI MATRIKS

>> m1 + m2‘ %penjumlahan per elemen

ans = 3 14 8 9 10 13

>> m1 * 3 %perkalian matriks dengan skalar ans = 3 18 9

6 21 12 >> m1 * m2‘

error: operator *: nonconformant arguments (op1 is 2x3, op2 is 2x3)

>> m1 .* m2‘ %perkalian per elemen ans = 2 48 15

(16)

OPERASI MATRIKS

>> m1 * m2 %perkalian 2 buah matriks

ans = 65 52 80 71

>> size(m1) %ukuran matriks (jumlah baris dan kolom)

ans = 2 3

>> inv(m2([1,2],[1,2]))

ans = -0.060000 0.140000 0.160000 -0.040000

(17)

FUNGSI DASAR MATRIKS

Nama Fungsi Kegunaan contoh

eye Membuat matriks identitas eye(3,2)

zeros Membuat matriks dengan semua elemen berisi angka 0 zeros(5,3) ones Membuat matriks dengan semua elemen berisi angka 1 ones(2,4) rand Membuat matriks dengan semua elemen berisi angka acak rand(4,3)

inv Nilai inverse dari sebuah matriks inv(m1)

det Nilai deterinan dari sebuah matriks det(m2)

trace Menghitung jumlah diagonal dari suatu matriks trace(m1) eig Menghitung nilai eigenvector dan eigenvalue dari suatu

matriks eig(m1)

svd Menghitung nilai SVD dari suatu matriks svd(m1)

(18)

SELEKSI

Seleksi percabangan pada octave dapat dilakukan menggunakan if…else... atau switch If…else... switch if expression statements elseif expression statements else statements endif switch x case x1 statements case x2 statements otherwise statements endswitch

(19)

SELEKSI

> nilai = 67; >> if nilai > 80 nilaiHuruf = 'A'; elseif nilai > 75 nilaiHuruf = 'B+'; elseif nilai > 69 nilaiHuruf = 'B'; elseif nilai > 60 nilaiHuruf = 'C+'; elseif nilai > 55; nilaiHuruf = 'C‘; else nilaiHuruf ='D+'; endif >> nilaiHuruf nilaiHuruf = C+

(20)

SELEKSI

>> x = input('Masukkan angka : '); Masukkan angka : 2.5 >> switch x case -1 disp('Minus satu'); case 1 disp('Satu'); case 0 disp('Nol'); otherwise disp('Angka lainnya'); endswitch Angka lainnya

(21)

PERULANGAN

Perulangan pada octave dapat dilakukan menggunakan for atau while atau do…until

Variabel values pada for loop bertipe vektor

for while do…until

for index = values

statements endfor while expression statements endwhile do statements until (condition)

(22)

FOR

loop

>> x = [1.2, 6.3, 7.8, 3.6];

>> sum=0;

>> for value = x

sum = sum + value; endfor

>> sum

sum = 18.900

>> meanValue = sum/length(x) meanValue = 4.7250

(23)

FOR

loop

%jumlah bilangan bulat antara 0 sampai 10 >> for x = 0:2:10

sum=sum+x; endfor

>> sum

(24)

WHILE

loop

>> x=1; >> while x < 1000 disp(x); x = x*2; endwhile

(25)

do...until

>> x=1; >> do disp(x); x = x*2; until (x>1000)

(26)

FUNGSI POLYNOMIAL

Octave mampu menyelesaikan permasalahan-permasalahan yang melibatkan persamaan polinomial.

Permasalahan yang dapat diselesaikan diantaranya adalah :

1. Mencari akar-akar persamaan

2. Evaluasi nilai persamaan

3. Turunan (derivative) dari persamaan

(27)

NOTASI FUNGSI POLYNOMIAL

Pada octave, suatu persamaan polynomial ditulis dalam bentuk vektor yang berisi koefisien-koefisien dari persamaan tersebut.

Koefisien dari persamaan polynomial disusun menurun berdasarkan pangkatnya Contoh :

1. 𝑥$ − 2𝑥' − 𝑥 + 2 dinotasikan dalam vektor [1,-2,-1,2]

2. 4𝑥* − 3𝑥' + 2𝑥 + 33 dinotasikan dalam vektor [4,0,0,-3,2,33]

>> p1 = [1,-2,-1,2];

>> p2 = [4,0,0,-3,2,33];

>> polyout(p1, 'x') %polyout digunakan untuk menampilkan notasi matematika

(28)

EVALUASI FUNGSI POLYNOMIAL

1. Berapakah nilai 𝑓 𝑥 = 𝑥$ − 2𝑥' − 𝑥 + 2 untuk x=5 ?

2. Berapakah nilai f x = 4𝑥* − 3𝑥' + 2𝑥 + 33 untuk x=7, x=3, dan x=15 ?

>> y1 = polyval(p1,5) y1 = 72

>> y2 = polyval(p2,x)

(29)

AKAR FUNGSIPOLYNOMIAL

Akar dari fungsi polynomial f(x) adalah nilai x yang memenuhi f(x) = 0 Suatu fungsi polynomial dapat memiliki satu atau lebih akar

Contoh :

1. Berapakah akar persamaan 𝑓 𝑥 = 𝑥$ − 2𝑥' − 𝑥 + 2 ?

2. Berapakah akar persamaan 𝑓 𝑥 = 𝑥$ − 3𝑥' − 2𝑥 + 6 ?

>> roots(p1) ans =

-1.00000 2.00000 1.00000

(30)

TURUNAN DAN INTEGRAL FUNGSI

1. Berapakah turunan dan integral dari fungsi 𝑓 𝑥 = 𝑥$ − 2𝑥' − 𝑥 + 2 ?

2. Berapakah turunan dan integral dari fungsi 𝑓 𝑥 = 𝑥$ − 3𝑥' − 2𝑥 + 6 ?

Turuan dari 𝑓 𝑥 = 𝑥$ − 2𝑥' − 𝑥 + 2 adalah 3𝑥' − 4𝑥 − 1 dan integralnya 0.25𝑥4 − 0.66667𝑥$ − 0.5𝑥' + 2𝑥 >> polyder(p1) ans = 3 -4 -1 >> polyint(p1) ans = 0.25000 -0.66667 -0.50000 2.00000 0.00000

(31)

PLOT

Octave memiliki fasilitas visualisasi 2D dan 3D, yang disediakan oleh library GNUPLOT

Fungsi dasar untuk membuat grafik adalah plot(x,y), dimana x dan y adalah koordinat yang akan digambar

Jika x dan y adalah skalar, hasil plot berupa titik

Jika x dan y adalah vektor (dengan jumlah elemen yang sama), maka plot yang dihasilkan berupa garis yang menghubungkan titik-titik pada vektor

>> x=[0,1,2,3]; >> y=[3,4,-1,2]; >> plot(x,y)

(32)

PLOT

Misal plot 𝑦 = 𝑥' akan dibuat dengan nilai x di antara interval 0 dan 1. Langkah-langkah :

1. Buat vektor x yang berisi nilai-nilai x. Vektor x dapat dibuat dengan fungsi

linspace(batasBawah,batasAtas,n) 2. Tentukan nilai 𝑦 = 𝑥' 3. Plot nilai x dan y >> x = linspace(0,1,11); >> y = x .^ 2; >> plot(x,y);

(33)

PLOT

Judul, label sumbu x, dan label sumbu y dapat diatur menggunakan perintah berikut :

◦ title(‘Judul plot’);

◦ xlabel(‘Label sumbu x’);

◦ ylabel(‘Label sumbu y’);

>> title('Kurva y=x^2'); >> xlabel('Nilai x');

(34)

PLOT

Warna dan style plot dapat diubah menggunakan opsi berikut

kode warna w putih m magenta c cyan r merah g hijau b biru y kuning k hitam

kode style kode style

. titik h Hexagram

o lingkaran - Garis

x silang : Titik rapat

+ plus -. Garis dan titik

* bintang -- Garis putus

s kotak

d diamond

v Segitiga bawah

(35)

PLOT

>> plot(x,y,'ro')

(36)

PLOT

Satu figure pada octave mampu menampung beberapa kurva

Fungsi hold on dan hold off digunakan untuk menambahkan kurva

Untuk menggambarkan fungsi 𝑦 = 𝑥' dan 𝑦 = 𝑥$ pada satu figure, perintah yang digunakan adalah : >> x = linspace(0,1,11); >> y1 = x .^ 2; >> y2 = x .^ 3; >> plot(x,y1,'r-'); >> hold on >> plot(x,y2,'g-'); >> hold off >> legend('x^2','x^3')

(37)

PLOT

Plot yang dihasilkan melalui octave dapat disimpan dengan berbagai format

Syntax yang digunakan adalah : print(‘namafile.ekstansi’,’-d[format]’) Contoh : print('graph1.png','-dpng') Contoh format penyimpanan ps eps jpeg gif cdr png jpg svg pdf

Referensi

Dokumen terkait

 Setelah 10 menit berlalu, tutor meminta kepada 3 orang mahasiswa untuk menjawab soal yang ditulis tutor di papan tulis terkait dengan soal persamaan linear, persamaan pecahan,

Berdasar informasi yang dihimpun dan disusun berdasar kebutuhan mitra (observasi) yang telah disepakati dalam bentuk agenda kerja perancangan desain

Kamus adalah buku yang berisi daftar kata dari suatu bahasa yang digunakan untuk mengetahui arti kata, sinonim, bentuk, lafal dan ungkapan lainnya dari suatu kata yang

Pembangkitan ini dilakukan dengan menggunakan tiga program pembangkit matriks koefisien dan vektor konstanta dari suatu sistem persamaan linear yang terdapat pada

 ASPIRATOR: Jurnal Penelitian Penyakit Tular Vektor menerima artikel ilmiah yang ditulis berdasar- kan hasil penelitian (original paper), systematic review, case reports,

 ASPIRATOR: Jurnal Penelitian Penyakit Tular Vektor menerima artikel ilmiah yang ditulis berdasar- kan hasil penelitian (original paper), systematic review, case reports,

Hasil koefisien regresi linier berganda yang diperoleh ditulis dalam bentuk persamaan yang menggambarkan hubungan data X dan Y yang digunakan adalah sebagai berikut: Y = 0,130 + 0,974

Operasi Vektor Persamaan penjumlahan dan pengurangan Resultan dan Selisih yang diperoleh sebelumnya, juga dapat diaplikasikan untuk berbagai bentuk vektor lain dengan berbagai sudut