Anda di halaman 1dari 5

6,5 MATLAB FUNGSI: fzero

Fungsi fzero dirancang untuk menemukan akar real dari sebuah persamaan tunggal. Sebuah representasi sederhana dari sintaks adalah

dimana pemisalan.

adalah nama fungsi yang dievaluasi, dan x0 adalah inisial dari sebuah

Perhatikan bahwa dua pemisalan yang berada dalam kurung akar dapat disebut sebagai vektor: [ ]

Dimana x0 dan x1 adalah pemisalan yang bisa termasuk perubahan tanda. Berikut ini adalah sesi simpleMATLAB yang memecahkan untuk akar kuadrat sederhana: . Jelas terdapat dua akar di -3 dan 3. Untuk menemukan akar negatif: >> x = fzero(@(x) x^2-9,-4) x= -3 Jika kita ingin menemukan akar positif, gunakan pemisalan yang mendekati itu: >> x = fzero(@(x) x^2-9,4) x= 3 Jika kita masukkan ke dalam pemisalan awal nol, maka kita akan menemukan akar negatif: >> x = fzero(@(x) x^2-9,0) x= -3 Jika kita ingin memastikan bahwa kita menemukan akar positif, kita bisa memasukkan dua pemisalan seperti berikut ini: >> x = fzero(@(x) x^2-9,[0 4]) x= 3 Juga, jika kita memakai perubahan tanda antara dua pemisalan, dan tidak dapat ditemukan akarnya, maka pesan kesalahan ditampilkan >> x = fzero(@(x) x^2-9,[-4 4]) ??? Error using ==> fzero The function values at the interval endpoints must ... differ in sign.

Fungsi fzero bekerja sebagai berikut. Jika pemisalan awal tunggal dilewati, pencarian pertama kali adalah untuk mengidentifikasi perubahan tanda. Pencarian ini berbeda dari pencarian tambahan dijelaskan dalam Bagian 5.3.1, dalam pencarian itu dimulai pada pemisalan awal tunggal dan kemudian mengambil langkah-langkah lebih besar baik dalam arah positif dan negatif sampai perubahan tanda terdeteksi. Setelah itu, metode cepat (interpolasi kuadrat garis potong dan invers) digunakan kecuali hasil yang tidak dapat diterima terjadi (misalnya, perkiraan akar berada di luar braket). Jika hasil tidak dapat diterima terjadi, pemecahannya diimplementasikan sampai suatu akar diperoleh dengan salah satu metode cepat. Seperti bisa diduga, pembelahan biasanya mendominasi pada awalnya tetapi sebagai akar didekati, teknik bergeser ke metode lebih cepat. Sebuah representasi yang lebih lengkap dari sintaks fzero dapat ditulis sebagai [X, fx] = fzero (fungsi, x0, opsi, p1, p2, ...) di mana [x, fx] = vektor yang berisi x root dan fungsi dievaluasi pada fx root, pilihan adalah struktur data yang dibuat oleh fungsi optimset, dan p1, p2 ... adalah setiap parameter kebutuhan fungsi. Catatan bahwa jika Anda ingin mengirim parameter tetapi tidak menggunakan pilihan, lewati vektor kosong [ ] pada tempatnya. Fungsi optimset memiliki sintaks options = optimset ('par1', VAL1, "par2 ', val2, ...) dimana parameter pari memiliki vali nilai. Sebuah daftar lengkap dari semua parameter mungkin dapat diperoleh hanya dengan memasukkan optimset pada prompt perintah. Parameter yang umum digunakan dengan fungsi fzero adalah tampilan: Bila diatur ke 'iter' menampilkan catatan rinci dari semua iterasi. tolx: Sebuah skalar positif yang menetapkan toleransi terminasi pada x. EXAMPLE 6.7 The fzero and optimset Functions Ingat bahwa pada Contoh 6.3, kita telah menemukan akar positif dari dengan menggunakan metode Newton-Raphson dengan pemisalan awal 0,5. Kita juga dapat memecahkan masalah itu dengan optimset dan fzero. Solusi. Sebuah sesi MATLAB interaktif dapat diimplementasikan sebagai berikut:

Dengan demikian, setelah 25 iterasi dari pencarian, fzero menemukan perubahan tanda. Ia kemudian menggunakan interpolasi dan pemecahan sampai mendapatkan hasil cukup dekat ke akar sehingga interpolasi yang mengambil alih dan cepat menyatu pada akar.

Misalkan kita ingin menggunakan tolerance. Kita dapat menggunakan function untuk menetapkan toleransi maksimum rendah dan perkiraan yang kurang akurat dari hasil akar:

>> options = optimset ('tolx', 1e-3); >> [x,fx] = fzero(@(x) x^10-1,0.5,options) x= 1.0009 fx = 0.0090

6.6 POLYNOMIALS Polinomial adalah jenis khusus dari persamaan aljabar nonlinier (6.12) dimana n adalah urutan polinomial, dan a adalah koefisien konstan. Di banyak (tapi tidak semua) kasus, koefisien akan menjadi nyata. Untuk kasus tersebut, akar dapat nyata dan / atau kompleks. Secara umum, polinomial orde ke-n akan memiliki akar n. Polinomial memiliki banyak aplikasi dalam rekayasa dan ilmu pengetahuan. Sebagai contoh, mereka digunakan secara ekstensif dalam pencocokan kurva. Namun, salah satu yang paling menarik dan aplikasi yang kuat dalam karakteristik sistem dinamis dan, khususnya, sistem linier. Contohnya termasuk reaktor, perangkat mekanik, struktur, dan sirkuit listrik. 6.6.1 MATLAB Fungsi: akar Jika Anda berurusan dengan masalah di mana Anda harus menentukan akar real tunggal polinomial, teknik seperti pemecahan dan metode Newton-Raphson dapat memiliki keunggulan. Namun, dalam banyak kasus, insinyur ingin menentukan semua akar, baik yang nyata maupun yang kompleks. Sayangnya, teknik sederhana seperti pemecahan dan Newton-Raphson tidak tersedia untuk menentukan semua akar polinomial tingkat tinggi. Namun, MATLAB memiliki kemampuan yang sangat baik dalam fungsi akar, untuk tugas ini. Fungsi akar memiliki sintaks, bentuk umum

di mana x adalah vektor kolom yang berisi akar dan c adalah vektor baris yang berisi koefisien polinomial. Jadi bagaimana cara kerja fungsi akar? MATLAB sangat baik dalam menemukan nilai eigen dari matriks. Akibatnya, pendekatan ini adalah untuk menyusun kembali tugas evaluasi akar sebagai nilai eigen masalah. Karena kita akan menjelaskan masalah nilai eigen nanti dalam buku ini, kita hanya akan memberikan gambaran umum di sini. Misalkan kita memiliki polinomial:

Dibagi oleh

, hasilnya adalah:

Sebuah matriks khusus dapat dibangun dengan menggunakan koefisien dari sisi kanan sebagai baris yang pertama dan dengan 1 dan 0 ditulis untuk baris lainnya seperti yang ditunjukkan:

Persamaan (6.14) disebut matriks polynomial companion. Memiliki sifat yang nilai eigen adalah akar dari polinomial. Dengan demikian, algoritma yang mendasari fungsi akar terdiri dari menyiapkan matriks pendamping dan kemudian menggunakan MATLAB yang kuat eigenvalue dalam evaluasi fungsi untuk menentukan akar. Aplikasi ini, bersama dengan beberapa fungsi polinom manipulasi lain yang terkait, dijelaskan dalam mengikuti contoh. Kita harus catat bahwa akar memiliki fungsi invers disebut poli, yang ketika melewati nilai-nilai akar, akan kembali koefisien yang polynomial itu. Sintaks-nya adalah

dimana r adalah vektor kolom yang berisi akar dan c adalah vektor baris yang berisi koefisien polinomial.

Anda mungkin juga menyukai