modulmetnum_matlab

February 14, 2019 | Author: Dio Dika Adhistana | Category: N/A
Share Embed Donate


Short Description

metnum...

Description

Pemrograman MATLAB -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

PETUNJUK UMUM

1. Sebelum anda melaksanakan praktikum, pelajari dahulu dengan seksama BAB yang akan anda laksanakan. 2. Laksanakan praktikum sesuai dengan urutan BAB yang ada. 3. Selama anda melaksanakan praktikum dilarang untuk membawa makanan dan minuman, dan makan, minum, atau merokok. 4. Setelah anda selesai melaksanakan praktikum, buatlah rangkuman catatan apa yang telah anda kerjakan dan anda temukan selama anda melaksanakan praktikum. 5. Jika pada praktikum yang akan anda laksanakan ada tugas untuk membuat program, siapkan draft program dan datanya sebelum anda melaksanakan praktikumnya. Kemudian serahkan hasil pekerjaan tugas anda kepada Asisten Praktikum. 6. Ikutilah petunjuk pelaksanaan praktikum ini dengan sebaik-baiknya. 7. Format laporan hasil tugas praktikum : a.  Nama praktikan

: ........................................

 b.  NIM

: ........................................

c. Hasil program

: ...................................... ....................................... dst (jika ada tugas membuat  program)

d. Hasil analisa

: ...................................... ....................................... dst

tanda tangan Asisten

=========================== ======================================== =========================== ============================ ===================== ======= Teklnik Informatika – UMP ----------------------------------------------------------------------------------------------------------------------------------------------------------- hal 1

Pemrograman MATLAB -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

BAB I PENGENALAN MATLAB Untuk memulai bekerja dengan MATLAB, lakukan langkah berikut : 1.

Dari desktop monitor anda, klik 2 kali icon Matlab

2.

Dari jendela Matlab yang ada di hadapan anda, anda bisa langsung menjalankan  perintah-perintah  perintah-perintah Matlab.

3.

Untuk mengakhiri program MATLAB, pilih menu File kemudian Exit. Sebagai latihan pertama, cobalah anda jalankan beberapa perintah berikut ini

langsung dari prompt MATLAB ( >>). Perhatikan apa yang dilakukan oleh perintah perintah tersebut, tersebut, catat dan amati ! >>info >>demo >>tour >>intro >>who >>whos >>whatsnew Untuk mengetahui perintah-perintah yang ada pada program MATLAB dapat dilihat dengan menggunakan perintah help seperti di bawah ini. Jalankan perintah help ini diikuti dengan instruksi (perintah) info, demo, tour, intro, whos, dan whatsnew seperti yang telah anda lakukan di atas. Perhatikan hasil yang diberikan. >>help contoh : >> help who Salah satu fungsi MATLAB adalah sebagai kalkulator. Untuk itu, coba jalankan  perintah untuk menghitung seperti berikut (setiap akhir pemberian instruksi / perintah, selalu diakhiri dengan penekanan tombol enter). perhatikan hasilnya, serta variabel  penampungnya.  penampungnya.

=========================== ======================================== =========================== ============================ ===================== ======= Teklnik Informatika – UMP ----------------------------------------------------------------------------------------------------------------------------------------------------------- hal 2

Pemrograman MATLAB -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

BAB I PENGENALAN MATLAB Untuk memulai bekerja dengan MATLAB, lakukan langkah berikut : 1.

Dari desktop monitor anda, klik 2 kali icon Matlab

2.

Dari jendela Matlab yang ada di hadapan anda, anda bisa langsung menjalankan  perintah-perintah  perintah-perintah Matlab.

3.

Untuk mengakhiri program MATLAB, pilih menu File kemudian Exit. Sebagai latihan pertama, cobalah anda jalankan beberapa perintah berikut ini

langsung dari prompt MATLAB ( >>). Perhatikan apa yang dilakukan oleh perintah perintah tersebut, tersebut, catat dan amati ! >>info >>demo >>tour >>intro >>who >>whos >>whatsnew Untuk mengetahui perintah-perintah yang ada pada program MATLAB dapat dilihat dengan menggunakan perintah help seperti di bawah ini. Jalankan perintah help ini diikuti dengan instruksi (perintah) info, demo, tour, intro, whos, dan whatsnew seperti yang telah anda lakukan di atas. Perhatikan hasil yang diberikan. >>help contoh : >> help who Salah satu fungsi MATLAB adalah sebagai kalkulator. Untuk itu, coba jalankan  perintah untuk menghitung seperti berikut (setiap akhir pemberian instruksi / perintah, selalu diakhiri dengan penekanan tombol enter). perhatikan hasilnya, serta variabel  penampungnya.  penampungnya.

=========================== ======================================== =========================== ============================ ===================== ======= Teklnik Informatika – UMP ----------------------------------------------------------------------------------------------------------------------------------------------------------- hal 2

Pemrograman MATLAB -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

>> 2+3 >> 3/2

 perhatikan perbedaan hasil yang diberikan oleh instruksi di atas (3/2) dengan hasil yang diberikan oleh instruksi berikut : >> 3\2 apa yang bisa anda jelaskan ? Lanjutkan dengan perintah-perintah berikut : >> 5*6

>> 100-5 >> 12^7 >> 3* ( 2-4 )/2 .5^3 >> x = 8; >> y = 5; >> z = x * y kemudian >> x * y  perhatikan hasilnya, hasilnya, catat perbedaan-perbedaan perbedaan-perbedaan yang anda temukan, dan dan analisalah ! Bilangan Kompleks

Bagian imaginari dan bilangan kompleks,



1 , disimpan dalam MATLAB dengan

huruf i atau  j. Contoh operasi yang bisa dilakukan dengan menggunakan operasi bilangan kompleks adalah seperti yang ada di bawah ini. Cobalah instruksi-instruksi tersebut, kemudian perhatikan hasil yang diberikan. Perhatikan hasil outputnya dan amati kegunaan dari fungsi-fungsi yang ada, serta perhatikan variabel penampungnya (variabel penyimpan hasil output). >> y=i^2 >> real(x) >> imag(x)

>> conj (x) Untuk operasi Aritmatika atas Bilangan Kompleks, bisa anda perhatikan dan coba instruksi seperti di bawah ini : >> x=3+4i >> y=2+5j =========================== ======================================== =========================== ============================ ===================== ======= Teklnik Informatika – UMP ----------------------------------------------------------------------------------------------------------------------------------------------------------- hal 3

Pemrograman MATLAB ------------------------------------------------------------------------------------------------------

>> zl=x+y >> z2=x-y >> z3=x*y >> z4=x/y

>> z5=x^y >> z6=x^2 >> a=real(x) >> b=imag(x) >> c = conj(x) Cara menggambarkan bilangan kompleks secara grafis, bisa anda berikan perintah berikut : >> plot (a,b, ' * ' )  perhatikan hasilnya ! Cara yang lebih singkat untuk menggambarkan bilangan kompleks adalah sebagai berikut : >> plot(x,’*’) Perhatikan hasilnya, dan coba bandingkan dengan cara sebelumnya (plot(a,b,’*’)). Apakah ada perbedaan hasil yang diberikan? Mengapa tidak menggunakan parameter a dan b ? Berikan penjelasannya! Selanjutnya bisa anda coba untuk perintah-perintah di bawah ini : >> a = sin(pi)

>> b = sin(pi)^2+cos(pi)^2 >> c = atan(pi) >> d = atan(5)

TUGAS :

Cobalah sekali lagi perintah/instruksi-instruksi seperti yang telah anda lakukan di atas, tetapi selesai mengetikkan instruksi dalam satu barisnya, akhiri dengan tanda titik koma ( ;) kemudian baru enter. =========================================================================== Teklnik Informatika – UMP --------------------------------------------------------------------------------- hal 4

Pemrograman MATLAB ------------------------------------------------------------------------------------------------------

Contoh : >> x = 6 + 7 >> x = 6 + 7; Apa yang anda peroleh ? Bandingkan hasilnya dan perbedaan yang terjadi (jika ada)!. Coba lagi untuk instruksi-instruksi yang lain yang telah anda coba sebelumnya!

=========================================================================== Teklnik Informatika – UMP --------------------------------------------------------------------------------- hal 5

Pemrograman MATLAB ------------------------------------------------------------------------------------------------------

BAB II TIPE DATA Tipe data dasar yang digunakan dalam MATLAB adalah string, scalar, dan matriks. Untuk mengetahui lebih jauh tentang tipe-tipe data ini, cobalah anda berikan instruksiinstruksi berikut. A. STRING

>> saya = ‘Mahasiswa Matematika FKIP – UMP’; >> vartest = ‘test aja ....’;  bandingkan dengan contoh berikut ini : >> saya = “Mahasiswa Matematika FKIP – UMP”; >> vartest = ”test aja ...”; apa yang anda temukan? Jelaskan ! Beberapa fungsi built-in  yang dapat digunakan untuk manipulasi data tipe string dapat anda coba perintah-perintah dibawah ini: >> disp(‘Praktikum Pemrograman MATLAB ‘) >> x=1:5; disp(x) >> Nama=input('Masukkan nama Anda !’,’s’); >> disp (‘Nama yang anda masukkan =’ ); disp (Nama) >> z = ‘Percobaan Command fprintf ‘; >> y= ‘Ini test kedua ‘; >> fprintf(‘%s \n’, z) >> fprintf(‘%s \n %s \n’, z, y) >> fprintf(‘%s %s \n’, z, y) Perhatikan hasil yang diberikan, coba amati perbedaan antara penggunaan disp  dengan fprintf , dan penggunaan tanda  \n dan %s.

=========================================================================== Teklnik Informatika – UMP --------------------------------------------------------------------------------- hal 6

Pemrograman MATLAB ------------------------------------------------------------------------------------------------------

B. SCALAR

Untuk mengetahui kerja MATLAB dengan tipe data scalar, bisa anda lakukan  perintah seperti di bawah ini : >> x = 0 : .1 : 1; y = [x; sin(x)]; >> fid = fopen(c:\folder_anda\sin.txt,’w’); >> fprintf (fid, ‘%6.2f %12.8f\n’, y); >> fclose (fid); Perintah ini akan menyimpan tabel berisikan x dan sin(x) di file sin.txt yang berada pada folder anda. Coba bukalah file sin.txt tersebut dan perhatikan datanya ! (file anda ini bisa dilihat dengan mengaktifkan notepad, kemudian buka filenya. Tugas :

Tampilkan data tersebut di layar (screen) monitor anda (bukan di dalam file)! C. ARRAY

Untuk tipe data array, anda bisa mencoba instruksi-instruksi berikut ini : >> a = zeros(10) apa yang dihasilkan ? Untuk mengasign  nilai sebuah array, lakukan contoh perintah berikut, dan  perhatikan hasil yang diberikan ! >> x=[3 4 5 6] Apa yang dihasilkan ? Lanjutkan dengan perintah berikut : >> y=zeros(10) >> y([l 5 10])=[0.1 0.3 0.2] Bagaimana hasilnya? Untuk setiap perintah berikut ini, perhatikan apa yang terjadi, amati, dan analisalah! >> x = 3:1:6; >> x =========================================================================== Teklnik Informatika – UMP --------------------------------------------------------------------------------- hal 7

Pemrograman MATLAB ------------------------------------------------------------------------------------------------------

>> x=6:-l:3; >> x >> y=x(2:4) >> y=x([l 3 5]) >> x = x (1: length (x )-l) >> x([3 5])=[ ] Menambahkan element dari array

Sebagai contoh, kita akan lakukan penambahan sebagai berikut, perhatikan hasilnya ! Sebelumnya perhatikan nilai dari variabel x, catat, dan amati! >> x = [x 1 2] >> x = [l 2 x 3] Apa yang anda temukan, catat dan analisalah ! Mengakses sebagian element array

Apa yang dilakukan dengan perintah seperti di bawah ini ? >> y = x(2:4) >> y = x ([l 3 5]) cobalah dengan akses elemen yang lain ! Perhatikan hasilnya dan catatlah! Manghapus element array

Lihat contoh berikut! a. Menghapus element terakhir dari array x >> x = x (1: length (x )-l)  b. Menghapus element pada index tertentu >> [ 1 2 3 4 5 6 ]; >> x ([3 5]) = [ ]  berapa nilai x sekarang ? mengapa demikian?

=========================================================================== Teklnik Informatika – UMP --------------------------------------------------------------------------------- hal 8

Pemrograman MATLAB ------------------------------------------------------------------------------------------------------

TUGAS :

1. Buatlah sebuah deret angka (array) yang dimulai dari angka 5 sampai dengan 100 dengan selisih dari dua angka yang berdekatan adalah 5. (5, 10, ..., 100). 2. Buatlah sebuah file test.txt di direktori anda dengan data sebagai berikut : 1

2

3

55

6

7

8

10

23

22

5

76

2

34

21

8

90

11

Baca data file anda tersebut dengan memasukkannya ke dalam variabel vektor dengan cara sebagai berikut dan perhatikan hasilnya : >> fd=fopen( ‘c:\folder_anda\test.txt’ );

>> vektor =fscanf(fd,’%g’,inf); >> fclose(fd); Sekarang variabel vektor telah berisi data seperti di atas. Sebagai tugas yang harus anda lakukan adalah tampilkan isi variabel vektor tersebut! 3. Sekarang buatlah file fstr.txt yang disimpan di folder anda dengan informasi berikut : Ini adalah contoh menggunakan fscanf untuk data string !!! Baca data file anda tersebut dengan memasukkannya ke dalam variabel vekstr kemudian tampilkan isi variabel tersebut! (langkah seperti pada nomor 2). Ini adalah cara untuk membaca file

berisi string (ASCII) dan isi file (nilainya)

dimasukkan sebagai suatu array character (string).

=========================================================================== Teklnik Informatika – UMP --------------------------------------------------------------------------------- hal 9

Pemrograman MATLAB ------------------------------------------------------------------------------------------------------

BAB III MATRIKS Menyusun Matriks

Jalankan perintah-perintah berikut, perhatikan hasilnya dan perbedaan-perbedaan yang diberikan antara perintah yang satu dengan perintah yang lainnya ! >> a = [1 2 3; 4 5 6; 7 8 9] >> a = [ 1 2 3 456 7 8 9] >> al = [1 2 3] >> a2 = [4 5 6] >> a3 = [7 8 9] >> a = [al;a2;a3]  perhatikan hasil-hasil yang diberikan ! Lanjutkan dengan berikut : >> A (1,1) = 1 ; A (1,2) = 2 ; A (2,1) = 3; A (2,2) = 4; >> A Sampai di sini, pahami hasil yang diberikan ! Apa yang anda temukan, catat dan analisalah! Kemudian lanjutkan dengan perintah berikut : >> A (2,3) = 7; >> A Apa hasilnya ? Mengapa demikian ? Mengetahui ukuran matriks

Jalankan dan perhatikan perintah berikut, amati dan catat : >> A = zeros(2,3) >> [baris kolom] = size(A) >> barismatriks = size(A, 1) =========================================================================== Teklnik Informatika – UMP --------------------------------------------------------------------------------- hal 10

Pemrograman MATLAB ------------------------------------------------------------------------------------------------------

>> kolommatriks = size(A, 2) >> size(A, 2) Mengambil sebagian elemen dari matriks

Cobalah contoh berikut, perhatikan hasilnya, catat dan analisalah ! >> a = A (:, 2) >> b = A (1, :) Membalik urutan kolom/baris dari matriks

>> n=size(A, 2); >> a =A(:, n:-l: l); Perhatikan hasilnya, dan analisalah ! Lanjutkan dengan perintah berikut : >> j = size(A, 1) ; >> b =A(j: -l: l,:) Tugas :

Untuk lebih jelasnya, cobalah isikan matriks A dengan nilai elemen ≠ 0. Lakukan perintah seperti yang telah anda lakukan di atas ! Amati hasilnya, catat dan analisa mengapa terjadi demikian ! Mencari invers matriks

Lakukan perintah berikut : >> a = [1 2 3; 4 5 6; 7 8 9] >> inv(a) >> b = inv(a) Operasi atas Matriks

Perhatikan operasi yang dilakukan terhadap dua matriks berikut, catat hasilnya dan analisalah ! : >> a =[l 2 3; 4 5 6; 7 8 9]; >> b = [2 5 1; 3 8 2; 5 8 6]; =========================================================================== Teklnik Informatika – UMP --------------------------------------------------------------------------------- hal 11

Pemrograman MATLAB ------------------------------------------------------------------------------------------------------

>> a + b >> a.*b >> a * b >> a./b >> a.^b >> a’ Tugas :

Perhatikan contoh sistem persamaan linear berikut ini x1 + 2x2 + 3x3 = 366 4x1 + 5x2 + 6x3 = 804 7x1 + 8x2 + 0x3 = 351 dari sistem persamaan tersebut akan dibuat matriks sebagai berikut : >> a = [l 2 3; 4 5 6; 7 8 0) >> b = [366; 304; 351] untuk mengetahui bahwa sistem persamaan linear di atas mempunyai penyelesaian unik dimana determinan matriks a tidak sama dengan nol, maka lakukan perintah berikut : >> det(a) (perhatikan hasilnya, sebelum anda lanjutkan dengan perintah selanjutnya) >> x=inv(a)*b Apa yang dihasilkan ? Bandingkan hasil tersebut dengan hasil yang diberikan oleh perintah berikut ini : >> x=a\b Apa pendapat anda ?

=========================================================================== Teklnik Informatika – UMP --------------------------------------------------------------------------------- hal 12

Pemrograman MATLAB ------------------------------------------------------------------------------------------------------

BAB IV M-FILE

Membuat File dalam MATLAB

File yang dibuat dalam MATLAB berekstensi *.m, file MATLAB berisi deretan  perintah yang ingin dieksekusi secara berurutan, dan caranya adalah : 1. Dari menu bar pilihlah file, kemudian pilihlah new, lalu pilih M-file. 2. Setelah itu, akan didapatkan window (layar) baru yang siap diisi dengan perintah  program Anda. 3. Setelah program diketik, simpanlah dengan ekestensi *.m. 4. Pindah ke prompt MATLAB, jalankan program tersebut dengan mengetik nama filenya saja dan tekan enter. Contoh: Buatlah file MATLAB berikut dan berikan nama coba.m  dengan mengikuti langkah-langkah di atas : % program untuk menghitung hasil penjumlahan dua variabel A = 7; B = 8; C = A+ B; C (perhatikan tanda % di awal pernyataan) setelah program tersebut dijalankan akan didapatkan hasil penjumlahan dari dua variabel di atas. Tugas :

Buatlah program dengan nama file spl.m yang berisi penyelesaian SPL pada BAB III di atas! Jalankan program tersebut (dengan mengikuti langkah cara pembuatan file dalam MATLAB di atas), catat hasilnya dan amati apa yang terjadi !

=========================================================================== Teklnik Informatika – UMP --------------------------------------------------------------------------------- hal 13

Pemrograman MATLAB ------------------------------------------------------------------------------------------------------

Statemen Input/Output

Memasukkan data ke dalam variabel skalar, vektor, maupun matriks dapat secara langsung dengan lambang pemberian nilai / value assignment ( = ) >> x = 50; >> y = [1 0 3 0 -1]; Contoh :

1. Tulislah fungsi di bawah ini dan simpanlah dengan nama flipud.m function y = flipud(x) % flipud pembalikan matriks % misalkan %x=l 4

menjadi

3 6

%

2 5

2 5

%

3 6

1 4

if ndims(x) ~= 2, error (‘x harus matriks 2-D’); end [m,n] = size(x); y = x(m: -1:1,:); Dari layar Matlab, lakukan pengisian elemen terhadap matriks x, kemudian  panggil fungsi flipud tersebut dengan perintah sebagai berikut : >> x = [ 1 4; 2 5; 3 6] >> flipud(x)  perhatikan output yang diberikan, catat hasilnya dan analisalah ! 2. Menyajikan fungsi dan program untuk mendapatkan nilai f(x) dari fungsi berikut: f(x) =

1 ( x − 0.3) 2

+

0.01

+

1 ( x − 0.9) 2

+

0.04

-6

Jalankan instruksi berikut melalui m.file dan simpan dengan nama fungsi_x.m : function y =fungsi_x(x) y = l./ ( (x-0.3) .^2 + 0. 01) + l. / ( (x - 0.9) .^2 + 0.04) - 6; dan program panggilannya adalah sebagai berikut: =========================================================================== Teklnik Informatika – UMP --------------------------------------------------------------------------------- hal 14

Pemrograman MATLAB ------------------------------------------------------------------------------------------------------

>> x = -l : 0.01:2; >> fungsi_x(x) >> plot (x,y) sekarang bandingkan dengan perintah-perintah berikut : >> x = -l : 0.01:2; >> y = humps(x) >> plot (x,y) apa yang anda dapatkan? Perhatikan output dan grafiknya, cobalah analisa apa yang dikerjakan oleh fungsi humps ? 3. Berikut ini adalah fungsi dengan dua buah variabel hasil skalar serta dengan satu  parameter yang merupakan sebuah vektor. Fungsi ini mencari jumlah dan rerata nilai elemen-elemen dalam vektor tersebut (simpan file ini dengan nama  jumrat.m):

function[jum, rat] = jumrat(x) n = max (size(x));  jum = sum(x); if n>0 rat = jum/n; end;  perhatikan fungsi-fungsi built-in yang digunakan, catat, apa yang dikerjakan oleh fungsi built-in tersebut, dan amati hasil yang diberikan! Jika hasil reratanya belum ditampilkan, cobalah untuk menampilkannya! Penggunaan fungsi tersebut dapat dilakukan dengan cara berikut: >> v = [3 4 5]; >> [p, q] = jumrat(v); >> disp([p q])  bandingkan dengan instruksi berikut : >> v = [3 4 5]; >> jumrat(v) adakah perbedaannya? mengapa? =========================================================================== Teklnik Informatika – UMP --------------------------------------------------------------------------------- hal 15

Pemrograman MATLAB ------------------------------------------------------------------------------------------------------

BAB V CARA PEMANGGILAN FUNGSI DALAM M.FILE Berikut ini diberikan beberapa contoh cara pemanggilan fungsi baik oleh program utama maupun oleh fungsi yang lain : 1. Fungsi untuk menyelesaikan persamaan kuadrat sederhana: function[xl,x2]= kuad(a,b,c) % fungsi untuk menyelesaikan persamaan kuadrat % ax2 + bx + c = 0 dengan a,b,c diketahui % hasilnya adalah xl dan x2 d = b*b + 4*a*c; xl = (-b + sqrt(d) )/(2*a); x2= (-b - sqrt(d) )/(2*a) ; % program selesai cara menggunakan fungsi tersebut adalah dengan memasukkan nilai a, b, dan c sebagai  parameter dari fungsi kuad(a, b, c) : >> [x,y]=kuad(l, l, 2)  perhatikan hasil yang diberikan. Cobalah berulang-ulang dengan nilai-nilai a, b, dan c yang lain! 2. Fungsi dan program panggilannya untuk mencari akar dari suatu fungsi: % nama file: zfungsi.m % program untuk menghitung f(x), f ‘(x) dengan x diketahui % digunakan sebagai bagian dari algoritma Newton untuk % menetapkan f(x)=0 % f(x) dan f'(x) harus didefinisikan secara eksplisit dalam file ini. function[f, ff]=zfungsi(x) f = x^5 - 2*x^4 + 3*x^3 – 4*x^2 + 5*x – 6; ff= 5*x^4 - 8*x^3 + 9*x^2 - 8*x + 5; Siapkan pula File znewton .m di bawah ini: =========================================================================== Teklnik Informatika – UMP --------------------------------------------------------------------------------- hal 16

Pemrograman MATLAB ------------------------------------------------------------------------------------------------------

% namafile: znewton. m % algoritma newton untuk menyelesaikan f(x)=0; k=0; x = input(‘masukan nilai taksiran awal = ‘); [f,ff] = zfungsi(x); while abs(f) > 0.0001 k = k + l; y = x - f/ff; [f, ff] = zfungsi (x); x = y; end; disp (x) % program selesai Perhatikan kembali kedua fungsi di atas beserta cara pemanggilannya, termasuk cara  pemanggilan suatu fungsi terhadap fungsi lain (di dalam fungsi znewton memanggil fungsi lain yaitu zfungsi). Jalankan program tersebut dengan perintah berikut : >> znewton apa yang anda dapatkan? Catat hasilnya dan analisalah! 3. Contoh program yang terdiri dari dua fungsi yaitu fungsi.m dan besud.m dan program utama coba .m untuk memanggil kedua fungsi tersebut. Perhatikan beberapa fungsi built-in, pelajari apa fungsinya ? function[f]=fungsi(s) q = s + 1; h = (s + 2.5) * (s*s - 2*s + 2); if h ~= 0 f = q./h; else f = 10 + 10i; end; % akhir fungsi.m =========================================================================== Teklnik Informatika – UMP --------------------------------------------------------------------------------- hal 17

Pemrograman MATLAB ------------------------------------------------------------------------------------------------------

Sekarang dengan membuat file baru, ketiklah fungsi berikut dengan nama besud.m function [bes, sud]=besud(s) x = real (s) ; y = imag(s) ;  bes = sqrt (x.^2 + y.^2); if(abs(x)) ~= 0 z = atan(abs(y) ./abs(x)); else z = 4; end z = 180*z/pi; if (x>0 & y>=0) sud = z; elseif (x 0) sud =180-z; elseif (x>= 0 & y> clear; >> clc; >> x = 0:0.l:2*pi; >> y = sin(x); >> plot (x,y, ' .-r' ) ; >> grid; >> xlabel(‘Nilai-x’); >> ylabel(‘Nilai sin(x)’); >> title(‘Contoh gambar fungsi sin (x)’); >> shg; Dari perintah-perintah tersebut masukkan dalam sebuah file baru dengan nama grafsin.m dan jalankan file tersebut! Bandingkan dengan hasil yang telah anda peroleh pada cara yang  pertama. Lebih mudah/enak yang mana? Contoh selanjutnya adalah akan digambar penjualan salah satu perusahaan dari bulan  November sampai Desember 1995 (menggambar histogram) : y = [1994 1994 1995*ones(1,12)]; m = [11 12 (1:12) ] ; s = [1.1 1.3 1.2 1.4 1.5 1.5 1.7 1.6 1.8 1.3 1.9 1.7 1.6 1.9];  bar(datenum(y,m,1),s); datetick('x','mmmyy'); ylabel('Rp. Trillion'); title ('Penjualan perbulan'); Buat m.file untuk instruksi-instruksi di atas dengan nama histogr.m. Panggil (jalankan) file tersebut dan perhatikan hasilnya! =========================================================================== Teklnik Informatika – UMP --------------------------------------------------------------------------------- hal 20

Pemrograman MATLAB ------------------------------------------------------------------------------------------------------

MENGGAMBAR LEBIH DARI SATU GAMBAR DALAM SATU LAYAR

1. Cobalah program di bawah ini dan perhatikan hasil yang diberikan ! >> clear >> x = 0:0.01:2*pi; >> y = sin(x); >> z = cos(x); >> a = 2*sin(x) .*cos (x); >> b = sin(x) ./(cos (x) + eps) ; >> subplot (2, 2, 1); >> plot(x,y),title(‘Sin(x) ‘),axis([0 2*pi -1 1]); >> subplot(2, 2, 2); >> plot(x,z),title(‘Cos(x) '),axis([0 2*pi -1 1]); >> subplot(2, 2, 3); >> plot(x,a),title(‘2Sin(x)*Cos(x) ‘),axis([0 2*pi -1 1]); >> subplot(2, 2, 4); >> plot(x,b),title(‘Sin(x)/Cos(x) ‘),axis([0 2*pi -20 20]) 2. Menggambar Pie >> clear; >> a = [0.5 1 1.6 1.2 0.8 2.1]; >> pie (a, a == max (a)); >> title (‘Contoh gambar Pie ‘); Bagaimana hasilnya ? GRAFIK 3 DIMENSI

Bedakan dan perhatikan pemakaian fungsi built-in untuk grafik 2D dengan grafik 3D. Jalankan perintah-perintah tersebut dan perhatikan hasilnya dari ketiga contoh berikut. Analisalah fungsi masing-masing statement! : 1. Gambar 1 =========================================================================== Teklnik Informatika – UMP --------------------------------------------------------------------------------- hal 21

Pemrograman MATLAB ------------------------------------------------------------------------------------------------------

>> clear; >> t = 0:10*pi; >> plot3 (sin (t) , cos (t) , t) ; >> axis ij >> clear >> t = 0:0.1:10*pi; >> plot3(sin(t),cos(t),t); >> title (‘ Helix ‘),xlabel (‘Sin (t) ‘),ylabel(‘Cos (t) ‘) ; >> zlabel(‘T’); >> shg 2. Gambar 2 >> clear; >> x = -2.9 : 0.2 : 2.9; >> y = exp(-x.*x); >> bar3 (x,y); >> title (‘3-D bar’); 3. Gambar 3 >> clear; >> x = -7.5 : 0.5 : 7.5; >> y = x; >> [X,Y] = meshgrid(x,y); >> r = sqrt(X.^2 + Y.^2) + eps; >> z = sin(r). / r; >> subplot(l,2,1); >> mesh(X,Y,z); >> subplot (1, 2, 2); >> surf (X, Y, z) ;

=========================================================================== Teklnik Informatika – UMP --------------------------------------------------------------------------------- hal 22

Pemrograman MATLAB ------------------------------------------------------------------------------------------------------

BAB VII STATEMEN PENGENDALI 1. IF …. END

% program untuk mencoba statemen if % program untuk mengecek angka yang dimasukkan apakah itu

% negatif, nol, atau positif a = input (‘ Masukkan sebuah angka = ‘); if a < 0 disp(‘ angka Anda negatif’); elseif a == 0 disp(‘angka Anda nol.'); else disp(‘angka Anda positif’); end; Simpan program anda ini dengan nama ifend.m 2. FOR …. END

Contoh 1 >> for n =1:10

x(n) =sin(n*pi/10) end Contoh 2 : % program untuk mencoba statemen for % program untuk menjumlahkan elemen-elemen yang ada pada % diagonal sebuah matriks x = input (‘ Masukkan sebuah matriks = ‘); n = size (x); sum = 0.0; for i = 1 : n; for j = 1: n =========================================================================== Teklnik Informatika – UMP --------------------------------------------------------------------------------- hal 23

Pemrograman MATLAB ------------------------------------------------------------------------------------------------------

if i == j sum = sum + x(i,i); end % untuk if end % untuk for j end % untuk for i disp(‘sum = ‘ ) disp(sum) Simpan file anda ini dengan nama forend.m 3. WHILE … END

% program untuk mencoba statemen while % program untuk mencari akar dari fungsi sinus % menggunakan metode Newton, dengan taksiran awal 3.0 x0 = 3.0; dif =1.0; while dif > 0.0001 xl = x0 - sin(x0)/cos(x0); dif = abs(x0 - xl); x0 = xl; end; disp(x0) 4. GABUNGAN WHILE DAN IF Contoh 1:

x = input(‘Masukan nilai x : ‘); y = input(‘Masukan nilai y : ‘); q = 0; c = l; k = l; if (x == 0) | (x> x = [0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1]; >> y = [-.447 1.987 3.28 6.16 7.08 7.34 7.66 9.56 9.48 9.30 11.2 ] ; >> plot (x, y, ‘-‘,x, y, ‘o’) Simpan file anda dengan nama curvit.m. Interpolasi Contoh 1 : (simpan dengan nama file intpol1.m)

clear; clc; clf; t =1900:10:1990;  p = [75.995 91.972 105.711 123.203 131.669 150.697 179.32 203.212 226.505 249.633]; % untuk estimasi pada tahun 1975 y = interp1(t, p, 1925); disp(y) subplot (1, 2, 1);  plot(t, p, 'o', 1925, y, 'k'); x =1900:1:2000; % untuk estimasi dari tahun 1900-2000 y1 = interp1(t, p, x, 'spline'); disp(y1); subplot (1, 2, 2);  plot (t, p, 'o' , x, y1, '.k');

=========================================================================== Teklnik Informatika – UMP --------------------------------------------------------------------------------- hal 30

Pemrograman MATLAB ------------------------------------------------------------------------------------------------------

Contoh 2: (simpan dengan nama file intpol2.m)

clear; clc; clf; x = 0 : 10; y = sin(x); xi = 0: .25:10; yi = interp1(x, y, xi, 'nearest'); subplot (2, 2, 1) ;  plot(x,y,'o',xi,yi,'-k') title ('Kurva interpolasi metode nearest') yi = interp1(x,y,xi, 'linear'); subplot (2, 2, 2) ;  plot (x, y, 'o',xi, yi, '-k') title('Kurva interpolasi metode linear') yi = interp1(x, y, xi, 'cubic'); subplot (2, 2, 3) ;  plot (x, y, 'o',xi, yi, '-k'); title ('Kurva interpolasi metode cubic') yi = interp1(x, y, xi, 'spline'); subplot (2,2,4) ;  plot(x,y, 'o',xi,yi, '-k' ) title ('Kurva interpolasi metode spline') Contoh 3: (simpan dengan nama file intpol3.m)

clear; clc; clf; % colormap('gray') [x,y,z] = peaks(10); [xi,yi] = meshgrid(-3:.1:3, -3:.1:3); =========================================================================== Teklnik Informatika – UMP --------------------------------------------------------------------------------- hal 31

Pemrograman MATLAB ------------------------------------------------------------------------------------------------------

zi = interp2(x,y,z,xi, yi, 'nearest'); subplot(2,2,1) ; mesh(xi,yi, zi); title('Kurva interpolasi metode nearest') subplot(2,2,2); zi = interp2(x,y,z,xi,yi, 'Linear'); mesh(xi,yi, zi); title('Kurva interpolasi metode linear') subplot (2, 2, 3) ; zi = interp2(x,y,z,xi,yi, 'cubic'); mesh(xi,yi,zi); title('Kurva interpolasi metode cubic'); subplot(2,2,4) ; zi = interp2 (x, y,z,xi,yi,'spline'); mesh(xi,yi,zi); title('Kurva interpolasi metode spline'); Bandingkan hasil yang diperoleh dari contoh 2 dan contoh 3 ! Perhatikan perbedaannya, apa sebabnya? Analisalah! Integrasi

Contoh metode integral yang digunakan dalam komputasi adalah metode Simpson, Trapezoidal, Quad, dan menggunakan fungsi int.

Bandingkan keempat hasil yang diberikan pada program di bawah ini (menggunakan metode Simpson, Trapezoidal, Quad, dan fungsi int) : clear; clc; format bank; a =0:15:90; x = (pi*a/180) ‘; =========================================================================== Teklnik Informatika – UMP --------------------------------------------------------------------------------- hal 32

View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF