introduction & matlab basics

51
MODULE-01 MODULE-01 INTRODUCTION & INTRODUCTION & MATLAB BASICS MATLAB BASICS Prof. Salengke, Ph. Agricultural Engineering, Hasanuddin Univers

Upload: rifa-adea

Post on 20-Nov-2015

30 views

Category:

Documents


1 download

DESCRIPTION

Rifa

TRANSCRIPT

  • MODULE-01INTRODUCTION & MATLAB BASICSProf. Salengke, Ph. D.Agricultural Engineering, Hasanuddin University

  • Engineering AnalysisEngineering:

    Merupakan sebuah profesi yang fokus pada penciptaan dan penyempurnaan sistim, proses, dan produk untuk memenuhi kebutuhan ummat manusia (Engineering Research in Canadian University) Menerapkan prinsip-prinsip sains dan matematik, pengalaman, dan pertimbangan logis dalam menciptakan sesuatu yang dapat memberi manfaat bagi ummat manusia.

  • Engineering AnalysisAnalysis = Problem Solving skills

    Menerapkan suatu pendekatan yang konsisten dan terstruktur dalam menyelesaikan berbagai masalah.Menyelesaikan masalah secara terstruktur dengan menggunakan algoritma atau prosedur hingga diperoleh suatu penyelesaian.

  • EngineersInsinyur (engineers) menggunakan keahlian teknik (technical expretise) dan keterampilan menyelesaikan masalah (problem solving skills) yang dihadapi masyarakat.Engineers menggunakan berbagai metode dan teknik matematik dalam menyelesaikan masalah. Salah satu alat penting yang paling sering digunakan adalah komputer.

  • Agricultural EngineersSebagai insinyur masa mendatang dalam bidang pertanian (agricultural engineers), anda mungkin bertanggung jawab dalam membangun atau menciptakan:

    Sistim produksi pertanian yang lebih baik (termasuk precision agriculture)Sistim irigasi/drainase yang lebih baikSistim pascapanen, penyimpanan, dan transportasi yang lebih baik.Mesin-mesin pertanian yang lebih baik.Metode dan industri pengolahan yang lebih baik.

  • Problem-Solving ProcessIdentifikasi dan definisikan masalah,Buat persamaan atau model matematik yang akan digunakan dalam penylesaiannya,Kembangkan metode komputasi yang akan digunakan dalam menyelesaikan masalah tersebut,Implementasikan metode komputasi tersebutUji dan review penyelesaian yang diperoleh.

  • Problem DefinitionIdentifikasi dan definisikan masalah yang akan dipecahkan secara akurat (mungkin merupakan step yang paling sulit).Tentukan landasan teori dan data eksperimen yang akan dibutuhkan dalam menyelesaikan masalah tersebut.Tentukan informasi dan data input yang sudah tersedia atau yang masih perlu dikumpulkan.

  • Mathematical Formulae (Model)Tentukan prinsip-prinsip dasar (matematik, fisika, kimia, biologi, dll) yang dapat digunakan.Gambar diagram agar masalah tersebut dapat dipahami lebih mudah.Tetapkan variabel penting dan gunakan notasi untuk setiap variabel.Tuliskan masalah kedalam bentuk persamaan matematis.Sederhanakan masalah jika memungkinkan.

  • Computational MethodsTurunkan persamaan-persamaan yang dibutuhkan dalam perhitungan.Kembangkan algorithma (langkah-demi-langkah proses perhitungan yang digunakan dalam mengevaluasi persamaan.Tuliskan algorithma tersebut kedalam bentuk matematis dan tuliskan kedalam bentuk program komputer.Review secara seksama penyelesaian yang diperoleh.

  • Implementasi Metode KomputasiPerkirakan kekuatan komputer yang dibutuhkan.Pilih program komputer dan jenis komputer yang paling tepat untuk masalah yang akan dipecahkan.

  • Uji dan Review Hasil Komputasi Jalankan program pada suatu kondisi dimana penyelesaian secara sederhana dapat diperoleh atau sudah tersedia (sebagai pembanding).Hasil komputasi harus dibandingkan dengan hasil yang diharapkan.Periksa apakah penyelesaian masuk akan.

  • Apa yang akan kita lakukan?Mata Kuliah ini akan fokus pada penyelesaian masalah dengan komputer.Kita akan belajar menulis dan mengeksekusi program komputer dengan menggunakan MATLAB.Menyelesaikan masalah-masalah keteknikan dengan menggunakan metode numerik.

  • Topics Covered in this ModulePendahuluan (Introduction)

    Ruang kerja pada Matlab (MATLAB windows)

    Operasi aritmetika (Arithmetic Operations)

    Bekerja pada Command Window

    Mendefinisikan Variabel (scalars)

  • MATLAB (MATrix LABoratory) merupakan software untuk komputasi numerik, visualisasi, dan pemprograman.Elemen data dasarnya berupa matrix (array).

    Apa yang dapat dilakukan dengan MATLAB:Gunakan sebagai kalkulator.Mendefiniskan variabel untuk digunakan dalam proses komputasi.Menulis dan menjalankan program komputerMembuat grafik/plot Melakukan perhitungan-perhitungan simbolik.

  • MATLAB WindowsCommand window: Ruang kerja utara (main window) yang terbuka pada saat Matlab dibuka. Semua perintah dapat diketik pada command window. Command window digunakan untuk menjalankan program yang telah ditulis/tersimpan di komputer.

    Editor Window: Digunakan untuk menulis dan mengedit program. Window ini dibuka dari menu File pada command window.

  • Figure Window: Memuat grafik/plot yang dibuat oleh perintah untuk membuat grafik (misalnya perintah plot).

    Help Window: Memuat informasi bantuan (help). Window ini dibuka dari menu Help pada setiap Matlab window.

    MATLAB Windows

  • Aspek Penting Dalam Pemograman MatlabMamahami Syntax MatlabMemahami Logic dari program yang ditulis

  • Operasi Arithmetik

    Jenis OperasiContohPenjumlahan (+)X + YPengurangan (-)X YPerkalian (*)X * YPembagian ke kanan (/)X/Y (X dibagi Y)Pembagian ke kiri (\)X\Y (Y dibagi X)Pemangkatan (^)X^Y

  • Urutan Eksekusi (Order of Precedence)Operasi hirarki tinggi dieksekusi terlebih dahulu sebelum operasi hirarki rendah.Jika dua operasi memiliki hirarki setara, eksekusi akan dilakukan dari kiri ke kanan. Tingkat hirarki:

    Tingkat HirarkiJenis OperasiPertamaTanda kurung (eksekusi mulai dari tanda kurung paling dalam)KeduaPemangkatanKetigaPerkalian dan pembagianKeempatPenjumlahan dan pengurangan

  • Display FormatsFormat short --- 4 decimal digitsFormat long --- 16 digitsFormat short e --- 5 digits (4 decimals) plus exponentFormat long e --- 16 digits (15 decimals) plus exponentFormat bank --- 2 decimal digits

  • Bekerja Pada Command WindowUntuk mengetik sebuah perintah, kursor harus ditempatkan setelah tanda prompt (>>).Setelah perintah diketik dan tombol Enter ditekan, perintah tersebut langsung dieksekusi. Semua yang telah dieksekusi sebelumnya tidak akan berubah.Tidak dimungkinkan kembali ke baris sebelumnya yang sudah dieksekusi untuk melakukan koreksi.Perintah yang sudah diketik sebelumnya dapat dipanggil dengan menggunakan tombol panah ke atas ( ).

  • MATLAB Sebagai Kalkulator>> 8+12/2ans =14

    >>27^(1/3)+32^0.2ans =5

  • MATLAB Built-in FunctionsMATLAB memiliki ratusan fungsi internal (built-in functions). Misalnya:

    Sin(x), cos(x), tan(x), cot(x), asin(x), acos(x),

    exp, log (natural logarithm), log10 (base 10 logarithm), sqrt (akar) abs (nilai absolute)

  • Operator Pemberi Nilai (Assignment Operator)The left handSide can onlyBe One variableThe right hand side can be a specific value, or a computable expression (an expression that includes values and/or previous defined variables).Contoh:

    X + 4 = 30 tidak valid (MATLAB tidak dapat menyelesaikan persamaan)

    X = 30 4 valid (nilai yang ditetapkan untuk X adalah 26)

    Variabel=sebuah nilai, atau nilai yang dapat dihitung

  • Mendefinisikan VariabelSebuah variabel didefinisikan dengan memberinya nama yang diikuti oleh tanda = dan sebuah nilai atau ekspresi matematik.

    >> a = 8a = 8>> B = 12;Setelah sebuah variabel didefinisikan, komputer akan mengingat variabel tersebut dan menyimpan nilainya. Variabel tersebut dapat digunakan untuk perhitungan selanjutnya.

  • Aturan Nama VariabelNama variabel tidak boleh lebih dari 21 karakter.Nama dapat mengandung huruf, angka, dan tanda garis bawah.Nama harus dimulai dengan huruf.MATLAB bersifat case sensitive; sehingga membedakan antara huruf besar dengan huruf kecil. Misalnya, A dan a merupakan variabel yang berbeda.

  • Variabel yang telah terdefinisikanMATLAB memiliki banyak nama variabel yang telah terdefinisikian secara internal. Direkomendasikan agar kita jangan menggunakan nama-nama variabel tersebut saat mendefinisikan variabel.

    Contoh: pi, eps, inf, i, j, ans, Hindari menggunakan nama-nama fungsi internal sebagai nama variabel. Apabila anda menggunakan nama fungsi internal sebagai nama variabel maka fungsi internal tersebut tidak dapat lagi digunakan dalam perhitungan.

    Contoh: sin, cos, exp, sqrt, ., etc. min, max, sum, det, .., etc.

  • Beberapa Perintah Penting

    clcmembersihkan command windowclearmenghapus semua variabel dari memoryclear X Y ZMenghapus variabel X, Y, dan Z dari memorywhoMembuat daftar variabel yang tersimpan di memoryclfMembersihkan Figure Window%Menandakan bahwa baris program merupakan baris komentar sehingga tidak dieksekusi

  • Array of numbersArray dapat mewakili data:

    Array dapat mewakili sebuah vektor. Dalam MATLAB, sebuah vektor atau daftar angka dapat diketik secara horisontal (baris) atau vertikal (kolom).

    Year1984198619881990199219941996Population127130136145158178211

  • Baris:

    [1984 1986 1988 1990 1992 1994 1996]

    [127 130 136 145 158 178 211]

    Kolom:

    [1984; 1986; 1988; 1990; 1992; 1994; 1996]

    [127; 130; 136; 145; 158; 178; 211]

    Atau:

    [1984[127198613019881361990145199215819941781996]211]Vector posisi dapat diketik sbb:

    Baris:[5 4 7]

    Kolom:[547]

  • Vector Dengan Jarak SeragamJarak antara setiap elemen sama.Vector dengan elemen pertama m, jarak spasi q, dan elemen terakhir n dapat dibuat dengan mengetik [m:q:n]. Jika spasinya diabaikan (tidak ditulis) maka spasi 1 digunakan sebagai default.

    >> x=[1:2:13] x=1 3 5 7 9 11 13>> x=[1:13] x=1 2 3 4 5 6 7 8 9 10 11 12 13

  • Menetapkan elemen pertama, terakhir, dan jumlah elemenSebuah vector dengan elemen pertama xi, elemen terakhir xf, dan jumlah elemen n dapat dibuat dengan mengetik perintah linspace(xi,xf,n). Apabila nilai n tidak ditulis maka program menggunakan nilai 100 sebagai default.

    >>u = linspace(0,8,6)u =0 1.6000 3.2000 4.8000 6.4000 8.000

  • Membuat Matrix Dalam MATLABSebuah matrix dibuat dengan mengetik nilai elemen baris demi baris di dalam sebuah tanda kurung besar [ ]. Ketik tanda kurung pembuka [ kemudian diikuti nilai-nilai elemen pada baris pertama yang dipisahkan oleh spasi atau tanda koma. Untuk memasukkan nilai-nilai elemen pada baris kedua, ketik tanda titik-koma atau tekan Enter kemudian ketik nilai-nilai elemen pada baris tersebut. Ketik tanda kurung penutup ] pada akhir baris terakhir.

  • >> a=[1 2 3; 4 5 6; 7 8 9]a =1 2 34 5 67 8 9

    >> b = [1 2 3 4 52 3 4 5 63 4 5 6 7]b =1 2 3 4 52 3 4 5 63 4 5 6 7

  • Operasi Transpose ()Untuk Vektor: Mengkonversi vektor baris menjadi vektor kolom; aqtau sebaliknya.

    >> d=A dimana A merupakan sebuah vector dan d adalah transpose dari vektor A.Untuk matrix: Mengkonversi baris menjadi kolom.

    >>m=n dimana n adalah sebuah matiks dan m adalah transpose dari matriks n

  • Vector transpose

    Vector A>> A = [3 8 2]A =3 8 2

    >> b = Ab =382Matrix transpose

    Matrix C

    >>C=[1 55 14 8; 21 5 32 11; 41 64 9 1]C=2 55 14 821 5 32 1141 64 9 1>>G=CG= 2 21 4155 5 6414 32 9 8 11 1

  • Alamat Elemen Array Untuk VectorAlamat elemen dalam sebuah vektor merupakan posisi elemen tersebut pada baris atau kolom.

    Contoh:>>V=[35 46 78 23 5 14 81 3 55]V=35 46 78 23 5 14 81 3 55

    >>V(1)>>V(6)>>V(9)ans=ans=ans=351455

  • Alamat Array Untuk MatrixAlamat suatu elemen dalam matrix ditentukan oleh posisinya pada baris dan kolom.

    >>X=[3 11 6 5; 4 7 10 2; 13 9 0 8]X=3 11 6 54 7 10 213 9 0 8 >>X(2,1)Ans= 4>>X(3,2)Ans= 9

  • Menggunakan tanda titik-dua (:) Untuk alamat ArrayTanda titik-dua dapat digunakan untuk merujuk ke elemen-elemen dalam array (vector atau matrix).

    Untuk Vector:

    v(:) merepresentasi semua elemen dalam vektor (baris atau kolom)

    v(3:6) merepresentasi elemen 3 sampai 6

  • Untuk Matrix:

    A(:,3) semua elemen pada kolom 3

    A(2,:) semua elemen pada baris 2

    A(:,2:7) elemen pada kolom 2 sampai 7 pada semua baris

    A(1:5,:) elemen pada baris 1 sampai 5 pada semua kolom

    A(1:3,2:4) elemen pada baris 1 sampai 3 dan kolom 2 sampai 4

  • Variabel Pada MATLABSemua variable dalam MATLAB dianggap sebagai array. Sebuah skalar merupakan array yang terdiri atas 1 elemen.Vector merupakan sebuah array yang terdiri atas satu baris atau satu kolom.Matrix merupakan sebuah array yang terdiri atas elemen baris dan elemen kolom.

  • Strings dan Variabel StringString merupakan sedertan karakter yang dimulai dan diakhiri dengan tanda kutip tunggal. Contoh

    >>a=My Heart Is In San FranciscoString dapat memuat huruf, angka, spasi, dan simbol.String dapat digunakan untuk mendefinisikan variabel atau digunakan dalam input beberapa fungsi.Dapat digunakan untuk membuat perintah input atau pesan pada output.

  • Operasi ArithmeticPenjumlahan (+) dan pengurangan (-) dapat digunakan pada variabel skalar atau array dengan ukuran yang identik.Operasi aritmatik akan dilakukan pada elemen dengan alamat yang sama (elemen pada posisi yang sama)

  • Contoh:>> a=[5 -3; 9 2]a = 5 -3 9 2

    >> b=[10 9; -11 15]b = 10 9 -11 15

    >> c=a+b>>d=a-bc=d= 15 6 -5 -12 -2 17 20 -13

  • Perkalian dan PembagianA*B mengikuti aturan perkalian untuk matrix. Operasi perkalian hanya bisa dilakukan apabila jumlah kolom pada matrix A sama dengan jumlah baris pada matrix B.A/B (pembagian dari kiri). A/B = A*B-1

    Operasi ini dapat dilakukan pada matriks A dan B yang jumlah baris dan kolomnya sama dan jumlah elemen pada matrix A dan B sama..Pembagian dari kanan (\) dapat digunakan untuk memnyelesaikan persamaan:

    A*x = b dimana A, x, dan b adalah marix; maka x = A\b

  • Pemangkatan, Perkalian, dan Pembagian elemen demi elemenOperasi elemen-demi-elemen dilakukan dengan mengetik tanda titik (.) sebelum tanda operator (^, *, atau /).

    If a=[a1 a2 a3 a4] and b=[b1 b2 b3 b4]then:a .* b = [a1b1 a2b2 a3b3 a4b4]a ./ b = [a1/b1 a2/b2 a3/b3 a4/b4]a .^b = [a1^b1 a2^b2 a3^b3 a4^b4]

  • Built-in Functions yang dapat digunakan pada array vektor

    max(A) menghasilkan element tertinggi dalam A.

    min(A) menghasilkan element terkecil dalam A.

    mean(A) menghasilkan nilai rata-rata semua elemen dalam A

    sum(A) memberi hasil penjumlahan semua elemen dalam A

    length(A) menghasilkan jumlah elemen dalam A A

    sort(A) mengurutkan nilai-nilai elemen dalam A

  • AplikasiPerhitungan elemen-demi-elemen sangat berguna dalam mengolah data dan menghitung nilai dari sebuah fungsi matematik pada banyak titik.

  • Contoh Pengolahan Data

    Koefisien gesek ditentukan dengan mengukur gaya F yang dibutuhkan untuk menggerakkan massa m berdasarkan persamaan:Hail Pengukuran:

    Massa m (kg)245102050Gaya F (N)12243060117294

  • Penyelesaian Menggunakan MATLAB

    >>% Enter m dalam bentuk vector>> m = [2 4 5 10 20 50];>>% Enter F dalam bentuk vector>> F = [12 24 30 60 117 294];>>% Hitung koefisien gesek>>meu = F ./(9.8*m)meu =0.6122 0.6122 0.6122 0.6122 0.5969 0.6000>>% Hitung koefisien gesek rata-rata>>meu_ave = mean(meu)meu_ave=0.6077

  • Menghitung Nilai sebuah Fungsi pada Banyak Titik (nilai x)Bentuk fungsi:

    Hitung nilai y pada x=-5, -4, -3, -2, -1, 0, 1, 2, 3Penyelesaian:>>x=[-5:3];>>y=(x .^2 x) ./(x.^2+x+1)y=1.4286 1.5385 1.7143 2.0000 2.0000 0 0 0.2857 0.4615