5
Akar: Metode Bracketing
TUJUAN BAB
Tujuan utama dari bab ini adalah untuk memperkenalkan Anda dengan metode bracketing untuk
menemukan akar persamaan nonlinier tunggal. Tujuan khusus dan topik yang dibahas adalah
• Memahami apa akar masalah dan di mana mereka terjadi dalam rekayasa dan
Sains. •
Mengetahui cara menentukan akar secara grafis. •
Memahami metode pencarian inkremental dan kekurangannya. • Mengetahui cara
menyelesaikan masalah akar dengan metode bagi dua. • Mengetahui bagaimana
memperkirakan kesalahan bagi dua dan mengapa itu berbeda dari kesalahan
perkiraan untuk jenis lain dari algoritme lokasi akar. • Memahami
posisi yang salah dan perbedaannya dengan bagi dua.
cedera vertebra yang signifikan meningkat secara signifikan jika kecepatan jatuh bebas melebihi
Studi medis3t6elamh/smseenteltaahpk4asnebkaohnwjaatuphelbueabnagsb. uBnogseAenjudma pdei
rpeurnutusakhmaeamn ploemrtpaahtabnuknagneae ingin Anda menentukan massa di mana kriteria ini
terlampaui dengan koefisien hambatan 0,25 kg/m.
Anda tahu dari penelitian Anda sebelumnya bahwa solusi analitik berikut dapat digunakan untuk
memprediksi kecepatan jatuh sebagai fungsi waktu:
gm gcd
v(t) = mencurigakan t (5.1)
M
CD
Cobalah sekuat tenaga, Anda tidak dapat memanipulasi persamaan ini untuk memecahkan m secara eksplisit—
yaitu, Anda tidak dapat mengisolasi massa di sisi kiri persamaan.
126
Machine Translated by Google
Cara alternatif untuk melihat masalah melibatkan pengurangan v(t) dari kedua sisi
untuk memberikan fungsi baru:
f (m) =
gm gcd
mencurigakan
t v (t) (5.2)
CD
M
Sekarang kita dapat melihat bahwa jawaban dari soal tersebut adalah nilai m yang membuat fungsi tersebut
sama dengan nol. Oleh karena itu, kami menyebutnya sebagai masalah "akar". Bab ini akan memperkenalkan Anda bagaimana
Titik. Meskipun Persamaan. (5.1) memberikan representasi matematis dari hubungan timbal balik
antara variabel model dan parameter, tidak dapat diselesaikan secara eksplisit untuk massa. Sedemikian
kasus, m dikatakan implisit.
Keseimbangan panas
Suhu Waktu dan posisi Sifat termal material, geometri sistem
Keseimbangan massa Konsentrasi atau kuantitas Waktu dan posisi Perilaku kimia material, perpindahan massa,
massa geometri sistem
Kekuatan keseimbangan Besar dan arah gaya Waktu dan posisi Kekuatan material, sifat struktural, sistem
geometri
Keseimbangan energi Perubahan energi kinetik Waktu dan posisi Sifat termal, massa material, geometri sistem
dan potensial
hukum Newton tentang Percepatan, kecepatan, Waktu dan posisi Massa material, geometri sistem, parameter
gerakan atau lokasi disipatif
hukum Kirchhoff Arus dan tegangan Waktu Sifat listrik (resistansi, kapasitansi,
induktansi)
Machine Translated by Google
Ini merupakan dilema yang nyata, karena banyak masalah desain melibatkan penentuan sifat atau
komposisi sistem (seperti yang diwakili oleh parameternya) untuk memastikan bahwa ia bekerja dengan
cara yang diinginkan (seperti yang diwakili oleh variabelnya). Dengan demikian, masalah ini sering
membutuhkan penentuan parameter implisit.
Solusi untuk dilema ini disediakan oleh metode numerik untuk akar persamaan.
Untuk memecahkan masalah menggunakan metode numerik, adalah konvensional untuk menyatakan
kembali Persamaan. (5.1) dengan mengurangkan variabel dependen v dari kedua sisi persamaan untuk
memberikan Persamaan. (5.2). Oleh karena itu, nilai m yang membuat f (m) = 0 adalah akar persamaan.
Nilai ini juga mewakili massa yang memecahkan masalah desain.
Halaman-halaman berikut berurusan dengan berbagai metode numerik dan grafis untuk menentukan
akar penambangan hubungan seperti Persamaan. (5.2). Teknik-teknik ini dapat diterapkan pada banyak
masalah lain yang dihadapi secara rutin dalam bidang teknik dan sains.
Pernyataan masalah. Gunakan pendekatan grafis untuk menentukan massa pelompat bungee dengan
koefisien hambatan 0,25 kg/m agar memiliki kecepatan 36 m/s setelah 4 s jatuh bebas. Catatan: Percepatan
gravitasi adalah 9,81 m/s2 .
Larutan. Sesi MATLAB berikut menyiapkan plot Persamaan. (5.2) versus massa:
1
Akar
Fungsi memotong sumbu m antara 140 dan 150 kg. Inspeksi visual plot memberikan perkiraan kasar akar
145 kg (sekitar 320 lb). Validitas estimasi grafis dapat diperiksa dengan mensubstitusikannya ke dalam Persamaan.
(5.2) untuk menghasilkan
>> sqrt(g*145/cd)*tanh(sqrt(g*cd/145)*t)-v
tahun =
0,0456
yang mendekati nol. Itu juga dapat diperiksa dengan mensubstitusikannya ke dalam Persamaan. (5.1) bersama
dengan nilai parameter dari contoh ini untuk memberikan
>> sqrt(g*145/cd)*tanh(sqrt(g*cd/145)*t)
tahun =
36.0456
Teknik grafis memiliki nilai praktis yang terbatas karena tidak terlalu presisi.
Namun, metode grafis dapat digunakan untuk mendapatkan perkiraan kasar dari akar. Perkiraan ini dapat
digunakan sebagai tebakan awal untuk metode numerik yang dibahas dalam bab ini.
Selain memberikan perkiraan kasar dari akar, interpretasi grafis berguna untuk memahami sifat-sifat fungsi
dan mengantisipasi perangkap metode numerik. Misalnya, Gambar 5.1 menunjukkan sejumlah cara di mana akar
dapat muncul (atau tidak ada) dalam interval yang ditentukan oleh batas bawah xl dan batas atas xu. Gambar
5.1b menggambarkan kasus di mana akar tunggal diapit oleh nilai negatif dan positif dari f (x). Namun, Gambar
5.1d, di mana f (xl) dan f (xu) juga berada pada sisi yang berlawanan dari sumbu x , menunjukkan tiga akar yang
terjadi dalam interval tersebut. Secara umum, jika f (xl) dan f (xu) berlawanan tanda, ada jumlah akar ganjil dalam
interval. Seperti ditunjukkan oleh Gambar 5.1a dan c, jika f (xl) dan f (xu) memiliki tanda yang sama, tidak ada
akar atau jumlah akar genap di antara nilai-nilai tersebut.
Meskipun generalisasi ini biasanya benar, ada kasus di mana mereka tidak berlaku.
Misalnya, fungsi yang bersinggungan dengan sumbu x (Gbr. 5.2a) dan fungsi diskontinu (Gbr. 5.2b) dapat
melanggar prinsip-prinsip ini. Contoh fungsi yang bersinggungan dengan sumbu adalah persamaan kubik f (x) =
(x 2)(x 2)(x 4). Perhatikan bahwa x = 2 membuat dua suku dalam polinomial ini sama dengan nol. Secara
matematis, x = 2 disebut akar ganda.
Meskipun mereka berada di luar cakupan buku ini, ada teknik khusus yang secara tegas dirancang untuk
menemukan akar ganda (Chapra dan Canale, 2010).
Keberadaan kasus dari jenis yang digambarkan pada Gambar. 5.2 membuat sulit untuk mengembangkan
algoritma komputer bukti-bodoh dijamin untuk menemukan semua akar dalam suatu interval. Namun, ketika
digunakan bersama dengan pendekatan grafis, metode yang dijelaskan dalam bagian berikut ini sangat berguna
untuk memecahkan banyak masalah yang dihadapi secara rutin oleh para insinyur, ilmuwan, dan matematikawan
terapan.
f(x)
(Sebuah)
f(x)
f(x)
x
(B)
f(x)
x
(Sebuah)
(C)
f(x)
f(x)
x x
xl koin xl
koin
(D)
(B)
GAMBAR 5.1
GAMBAR 5.2
Ilustrasi dari sejumlah cara umum bahwa akar dapat muncul
Ilustrasi beberapa pengecualian untuk kasus umum
dalam interval yang ditentukan oleh batas bawah xl dan batas
yang digambarkan pada Gambar 5.1. (a) Akar ganda yang
atas xu . Bagian (a) dan (c) menunjukkan bahwa jika f (xl) dan
muncul ketika fungsi tangensial terhadap sumbu x . Untuk
f (xu ) memiliki tanda yang sama, maka tidak akan ada akar
atau akan ada jumlah akar yang genap dalam interval. Bagian kasus ini, meskipun titik-titik ujungnya berlawanan tanda, ada
jumlah intersepsi sumbu yang genap untuk interval tersebut.
(b) dan (d) menunjukkan bahwa jika fungsi memiliki tanda
(b) Fungsi-fungsi diskontinu di mana titik-titik ujung yang
yang berbeda pada titik akhir, akan ada jumlah akar ganjil
dalam interval. berlawanan tanda mengurung sejumlah akar genap. Diperlukan
strategi khusus untuk menentukan akar dari kasus-kasus ini.
Machine Translated by Google
alat seperti spreadsheet. Dengan memungkinkan Anda membuat banyak tebakan dengan cepat, alat tersebut
sebenarnya dapat membuat pendekatan coba-coba menarik untuk beberapa masalah.
Namun, untuk banyak masalah lain, lebih baik memiliki metode yang menghasilkan jawaban yang
benar secara otomatis. Menariknya, seperti halnya trial and error, pendekatan ini membutuhkan “tebakan”
awal untuk memulai. Kemudian mereka secara sistematis masuk ke akar dengan cara yang berulang.
Dua kelas utama metode yang tersedia dibedakan berdasarkan jenis tebakan awal. Mereka
• Metode kurung. Seperti namanya, ini didasarkan pada dua tebakan awal
bahwa "kurung" akar—yaitu, berada di kedua sisi akar.
• Metode terbuka. Metode ini dapat melibatkan satu atau lebih tebakan awal, tetapi tidak ada
perlu bagi mereka untuk mengurung root.
Untuk masalah yang diajukan dengan baik, metode bracketing selalu bekerja tetapi menyatu dengan lambat
(yaitu, mereka biasanya mengambil lebih banyak iterasi ke rumah pada jawabannya). Sebaliknya, metode terbuka
tidak selalu berhasil (yaitu, mereka dapat menyimpang), tetapi ketika mereka melakukannya, mereka biasanya
menyatu lebih cepat.
Dalam kedua kasus, tebakan awal diperlukan. Ini mungkin secara alami muncul dari konteks fisik yang
Anda analisis. Namun, dalam kasus lain, tebakan awal yang baik mungkin tidak jelas. Dalam kasus seperti
itu, pendekatan otomatis untuk mendapatkan tebakan akan berguna. Bagian berikut menjelaskan salah satu
pendekatan tersebut, pencarian inkremental.
Saat menerapkan teknik grafis pada Contoh 5.1, Anda mengamati bahwa f (x) berubah tanda pada
sisi berlawanan dari akar. Secara umum, jika f (x) real dan kontinu pada selang xl ke xu dan f (xl) dan
f (xu) berlawanan tanda, yaitu,
1
Fungsi ini adalah versi modifikasi dari M-file yang awalnya disajikan oleh Recktenwald (2000).
Machine Translated by Google
f(x)
x0 x1 x2 x3 x
x4 x5 x6
GAMBAR 5.3
Kasus-kasus di mana akar dapat terlewatkan karena panjang tambahan dari prosedur pencarian adalah
terlalu besar. Perhatikan bahwa akar terakhir di sebelah kanan adalah banyak dan akan terlewatkan terlepas dari
pertambahan panjang.
fungsi xb = incsearch(fungsi,xmin,xmax,ns)
% incsearch: pencari akar pencarian tambahan
% xb = incsearch(fungsi,xmin,xmax,ns):
% menemukan tanda kurung dari x yang mengandung perubahan tanda
% dari suatu fungsi pada suatu interval
% memasukkan:
% func = nama fungsi
% Pencarian tambahan
x = linspace(xmin,xmax,ns); f = fungsi(x); nb = 0; xb =
[]; %xb adalah null kecuali perubahan tanda terdeteksi
untuk k = 1:panjang(x)-1
if sign(f(k)) ~= sign(f(k+1)) %periksa perubahan tanda
nb = nb + 1;
xb(nb,1) = x(k);
xb(nb,2) = x(k+1);
akhir
akhir
jika isempty(xb) %tampilan bahwa tidak ada tanda kurung yang ditemukan
disp('tidak ada tanda kurung ditemukan')
disp('periksa interval atau tambah ns')
lain
GAMBAR 5.4
132 Sebuah M-file untuk mengimplementasikan pencarian tambahan.
Machine Translated by Google
Pernyataan masalah. Gunakan pencarian file-M ( Gbr. 5.4) untuk mengidentifikasi tanda kurung di dalam
interval [3, 6] untuk fungsi:
tahun =
3.2449 3.3061
3.3061 3.3673
3.7347 3.7959
4.6531 4.7143
5.6327 5.6939
Sebuah plot dari Persamaan. (5.4) bersama dengan lokasi root ditampilkan di sini.
2
3 3.5
4 4,5 5 5.5 6
Meskipun lima perubahan tanda terdeteksi, karena subintervalnya terlalu lebar, fungsi tersebut melewatkan
kemungkinan akar pada x = 4.25 dan 5.2. Akar yang mungkin ini terlihat seperti itu
akar ganda. Namun, dengan menggunakan alat zoom in, jelas bahwa masing-masing mewakili dua real
akar yang sangat rapat. Fungsi dapat dijalankan lagi dengan lebih banyak subinterval
dengan hasil bahwa semua sembilan perubahan tanda berada
jumlah kurung:
9
tahun =
3.2424 3.2727
3.3636 3.3939
3.7273 3.7576
Machine Translated by Google
4.2121 4.2424
4.2424 4.2727
4.6970 4.7273
5.1515 5.1818
5.1818 5.2121
5.6667 5.6970
2
3 3.5
4 4,5 5 5.5 6
Contoh di atas menggambarkan bahwa metode brute force seperti pencarian inkremental
tidak mudah. Anda akan bijaksana untuk melengkapi teknik otomatis seperti itu dengan apapun
informasi lain yang memberikan wawasan tentang lokasi akar. Informasi tersebut dapat
ditemukan dengan memplot fungsi dan melalui pemahaman masalah fisik dari
dimana persamaan tersebut berasal.
5.4 BISECTION
Metode bagi dua adalah variasi dari metode pencarian inkremental di mana interval
selalu dibagi dua. Jika suatu fungsi berubah tanda pada suatu interval, nilai fungsi pada
titik tengah dievaluasi. Lokasi akar kemudian ditentukan sebagai terletak di dalam
subinterval tempat terjadinya perubahan tanda. Subinterval kemudian menjadi interval untuk
iterasi berikutnya. Proses ini diulang sampai akar diketahui dengan presisi yang dibutuhkan.
Sebuah gambaran grafis dari metode ini disediakan pada Gambar. 5.5. Contoh berikut ini
melalui perhitungan aktual yang terlibat dalam metode ini.
Pernyataan masalah. Gunakan bagi dua untuk menyelesaikan masalah yang sama yang didekati secara grafis dalam
Contoh 5.1.
Larutan. Langkah pertama dalam membagi dua adalah menebak dua nilai yang tidak diketahui (di masa sekarang
masalah, m) yang memberikan nilai untuk f (m) dengan tanda yang berbeda. Dari solusi grafis di
Machine Translated by Google
f(m)
50 100 150
0
M
Akar
2
6
xl
xr koin
Iterasi pertama
xl xr koin
Iterasi kedua
xl xr koin
Iterasi ketiga
xl xr xu
Iterasi keempat
GAMBAR 5.5
Sebuah gambaran grafis dari metode bagi dua. Plot ini sesuai dengan empat iterasi pertama
dari Contoh 5.3.
Contoh 5.1, kita dapat melihat bahwa fungsi berubah tanda antara nilai 50 dan 200
plot jelas menyarankan tebakan awal yang lebih baik, katakanlah 140 dan 150, tetapi untuk tujuan
ilustrasi mari kita asumsikan kita tidak memiliki manfaat dari plot dan telah membuat tebakan
konservatif.
Oleh karena itu, estimasi awal dari akar xr terletak pada titik tengah interval
50 + 200
xr = = 125
2
Perhatikan bahwa nilai pasti dari akarnya adalah 142,7376. Ini berarti bahwa nilai 125 yang dihitung di sini
memiliki persen kesalahan relatif yang sebenarnya sebesar
142,7376 125
|ÿt| = × 100% = 12,43%
142.7376
Selanjutnya kita menghitung produk dari nilai fungsi pada batas bawah dan pada titik tengah:
yang lebih besar dari nol, dan karenanya tidak ada perubahan tanda yang terjadi antara batas bawah dan
titik tengah. Akibatnya, akar harus ditempatkan di interval atas antara 125 dan
200. Oleh karena itu, kami membuat interval baru dengan mendefinisikan ulang batas bawah sebagai 125.
Machine Translated by Google
Pada titik ini, interval baru terbentang dari xl = 125 hingga xu = 200. Perkiraan akar yang direvisi
pasangan kemudian dapat dihitung sebagai
125 + 200
xr = = 162,5
2
yang mewakili kesalahan persen sebenarnya dari |ÿt| = 13,85%. Proses ini dapat diulang untuk mendapatkan
estimasi yang disempurnakan. Sebagai contoh,
Oleh karena itu, akar sekarang berada pada interval yang lebih rendah antara 125 dan 162,5. Batas atas
didefinisikan ulang sebagai 162,5, dan perkiraan akar untuk iterasi ketiga dihitung sebagai:
125 + 162,5
xr = = 143,75
2
yang mewakili persen kesalahan relatif t = 0,709 %. Cara tersebut dapat diulang sampai
hasilnya cukup akurat untuk memenuhi kebutuhan Anda.
Kami mengakhiri Contoh 5.3 dengan pernyataan bahwa metode tersebut dapat dilanjutkan untuk memperoleh
perkiraan halus dari akar. Kita sekarang harus mengembangkan kriteria objektif untuk memutuskan kapan
untuk mengakhiri metode.
Saran awal mungkin untuk mengakhiri perhitungan ketika kesalahan berada di bawah beberapa
tingkat yang ditentukan sebelumnya. Misalnya, dalam Contoh 5.3, kesalahan relatif sebenarnya turun dari 12,43
menjadi 0,709% selama perhitungan. Kami mungkin memutuskan bahwa kami harus mengakhiri
ketika kesalahan turun di bawah, katakanlah, 0,5%. Strategi ini cacat karena perkiraan kesalahan
dalam contoh didasarkan pada pengetahuan tentang akar sebenarnya dari fungsi tersebut. Ini tidak akan
kasus dalam situasi aktual karena tidak akan ada gunanya menggunakan metode jika kita
sudah tahu akarnya.
Oleh karena itu, kami memerlukan perkiraan kesalahan yang tidak bergantung pada pengetahuan sebelumnya tentang
akar. Salah satu cara untuk melakukannya adalah dengan memperkirakan perkiraan persen kesalahan relatif seperti pada [recall
persamaan (4.5)]
baR ru -
|a|= TahRan 100% (5.5)
baru
R
dimana xnRew
adalah akar untuk iterasi saat ini dan xold R adalah root dari iterasi sebelumnya. Ketika
a menjadi kurang dari kriteria penghentian yang ditentukan sebelumnya s, perhitungannya adalah
dihentikan.
Pernyataan masalah. Lanjutkan Contoh 5.3 hingga perkiraan kesalahan turun di bawah a
kriteria penghentian s = 0,5%. Gunakan Persamaan. (5.5) untuk menghitung kesalahan.
Larutan. Hasil dari dua iterasi pertama untuk Contoh 5.3 adalah 125 dan 162.5. Substitusi nilai-nilai ini ke dalam
Persamaan. (5.5) hasil
162,5 125
|a|= 100% = 23,08%
162.5
Machine Translated by Google
Ingatlah bahwa persen kesalahan relatif sebenarnya untuk perkiraan akar 162,5 adalah 13,85%. Oleh
karena itu, |ÿa| lebih besar dari |ÿt|. Perilaku ini dimanifestasikan untuk iterasi lain:
Jadi setelah delapan iterasi |ÿa| akhirnya turun di bawah s = 0,5%, dan perhitungannya bisa menjadi
dihentikan.
Hasil ini dirangkum dalam Gambar 5.6. Sifat "kasar" dari kesalahan yang sebenarnya adalah karena
pada fakta bahwa, untuk pembelahan, akar sejati dapat terletak di mana saja dalam interval kurung.
Kesalahan benar dan kesalahan perkiraan berjauhan ketika interval kebetulan terpusat
pada akar yang benar. Mereka dekat ketika akar sejati jatuh di kedua ujung interval.
GAMBAR 5.6
Kesalahan untuk metode bagi dua. Kesalahan benar dan perkiraan diplot versus jumlah
iterasi.
100
Perkiraan kesalahan,
Sebuah
10
Kesalahan benar, T
0.1
02468
Iterasi
Meskipun perkiraan kesalahan tidak memberikan perkiraan yang tepat dari kesalahan yang sebenarnya,
Gambar 5.6 menunjukkan bahwa |ÿa| menangkap tren penurunan umum |ÿt|. Selain itu, plotnya
menunjukkan karakteristik yang sangat menarik bahwa |ÿa| selalu lebih besar dari |ÿt|. Dengan demikian,
Machine Translated by Google
kapan |ÿa| jatuh di bawah s, perhitungan dapat dihentikan dengan keyakinan bahwa root
diketahui paling tidak seakurat tingkat yang dapat diterima yang telah ditentukan sebelumnya.
Meskipun berbahaya untuk menarik kesimpulan umum dari satu contoh, itu bisa menjadi
menunjukkan bahwa |ÿa| akan selalu lebih besar dari |ÿt| untuk membagi dua. Hal ini karena fakta
bahwa setiap kali akar perkiraan terletak menggunakan membagi dua sebagai xr = (xl + xu)/2, kita tahu
bahwa akar sejati terletak di suatu tempat dalam interval x = xu xl . Oleh karena itu, akar
harus berada dalam ±x/2 dari perkiraan kami. Misalnya, ketika Contoh 5.4 dihentikan,
kita bisa membuat pernyataan definitif bahwa
143.7500 142.5781
xr = 143,1641 ± = 143.1641 ± 0.5859
2
Intinya, Persamaan. (5.5) memberikan batas atas kesalahan yang sebenarnya. Untuk ini pasti
terlampaui, akar sebenarnya harus berada di luar interval bracketing, yang menurut definisi tidak akan
pernah terjadi untuk pembelahan. Teknik root-locating lainnya tidak selalu berperilaku
dengan baik. Meskipun pembelahan umumnya lebih lambat daripada metode lain, kerapiannya
analisis kesalahan adalah fitur positif yang membuatnya menarik untuk rekayasa tertentu dan
aplikasi ilmiah.
Manfaat lain dari metode bagi dua adalah bahwa jumlah iterasi yang diperlukan untuk mencapai
kesalahan absolut dapat dihitung secara apriori—yaitu , sebelum memulai perhitungan.
Hal ini dapat dilihat dengan mengenali bahwa sebelum memulai teknik, kesalahan mutlak adalah
E0 = x0 x0
_
Sebuah kamu
Machine Translated by Google
di mana superscript menunjuk iterasi. Oleh karena itu, sebelum memulai metode ini, kita berada di
"iterasi nol." Setelah iterasi pertama, kesalahannya menjadi
x0
E1 =
Sebuah
2
Karena setiap iterasi berikutnya membagi dua kesalahan, rumus umum yang menghubungkan kesalahan dan
jumlah iterasi n adalah
x0
Di =
2n
Sebuah
Jika Ea,d adalah kesalahan yang diinginkan, persamaan ini dapat diselesaikan untuk 2
|143.7500 142.5781|
Ea = = 0,5859
2
Kita dapat mensubstitusikan nilai-nilai ini ke dalam Persamaan. (5.6) memberi
n = log2(150/0,5859) = 8
2
MATLAB menyediakan fungsi log2 untuk mengevaluasi logaritma basis-2 secara langsung. Jika kalkulator saku atau
bahasa komputer yang Anda gunakan tidak menyertakan logaritma basis-2 sebagai fungsi intrinsik, persamaan ini
menunjukkan cara praktis untuk menghitungnya. Secara umum, logb(x) = log(x)/log(b).
Machine Translated by Google
Jadi, jika kita tahu sebelumnya bahwa kesalahan kurang dari 0,5859 dapat diterima, rumus memberitahu
kita bahwa delapan iterasi akan menghasilkan hasil yang diinginkan.
Meskipun kami telah menekankan penggunaan kesalahan relatif untuk alasan yang jelas, akan ada
kasus di mana (biasanya melalui pengetahuan tentang konteks masalah) Anda akan dapat menentukan
kesalahan mutlak. Untuk kasus ini, bagi dua bersama dengan Persamaan. (5.6) dapat menyediakan
algoritme lokasi akar yang berguna.
File-M untuk mengimplementasikan bagi dua ditampilkan pada Gambar 5.7. Itu diteruskan fungsi
(fungsi) bersama dengan tebakan bawah (xl) dan atas (xu) . Selain itu, kriteria penghentian opsional (es)
GAMBAR 5.7
Sebuah M-file untuk mengimplementasikan metode bagi dua.
% input: %
func = nama fungsi
xu = xr;
tes elseif > 0
xl = xr; lain
ea = 0;
akhir
jika ea <= es | iter >= maxit,break,end
akhir
akar = xr; fx = func(xr, varargin{:});
Machine Translated by Google
dan iterasi maksimum (maxit) dapat dimasukkan. Fungsi pertama-tama memeriksa apakah ada
argumen yang cukup dan jika tebakan awal mengurung tanda berubah. Jika tidak, pesan kesalahan
ditampilkan dan fungsi dihentikan. Itu juga memberikan nilai default jika maxit dan es tidak diberikan.
Kemudian while...break loop digunakan untuk mengimplementasikan algoritme bagi dua sampai
kesalahan perkiraan turun di bawah es atau iterasi melebihi maxit.
Kita dapat menggunakan fungsi ini untuk memecahkan masalah yang diajukan di awal bab.
Ingatlah bahwa Anda perlu menentukan massa di mana kecepatan jatuh bebas pelompat bungee
melebihi 36 m/s setelah 4 s jatuh bebas dengan koefisien hambatan 0,25 kg/m. Jadi, Anda harus
menemukan akar dari
9.81m
f (m) = tan 9.81(0.25)
h M 4 36
0,25
Dalam Contoh 5.1 kami membuat plot fungsi ini versus massa dan memperkirakan bahwa akarnya
jatuh antara 140 dan 150 kg. Fungsi bagi dua dari Gambar 5.7 dapat digunakan untuk menentukan
akar sebagai
massa =
142,74
fx =
4.6089e-007
ea =
5.345e-005
iter =
21
Dengan demikian, hasil m = 142,74 kg diperoleh setelah 21 iterasi dengan kesalahan relatif perkiraan
a = 0,00005345 %, dan nilai fungsi mendekati nol.
f (xu)(xl xu ) f (xl)
xr = xu _ (5.7)
f ( xu)
Ini adalah rumus posisi palsu. Nilai xr dihitung dengan Persamaan. (5.7) kemudian menempatkan
kembali mana saja dari dua tebakan awal, xl atau xu , menghasilkan nilai fungsi dengan yang sama
Machine Translated by Google
f(x)
f(xu)
xr
xl
x
koin
f(xl )
GAMBAR
5.8 Posisi salah.
tanda sebagai f (xr). Dengan cara ini nilai xl dan xu selalu mengurung akar yang sebenarnya. Proses
ini diulang sampai root diperkirakan secara memadai. Algoritma ini identik dengan satu untuk bagi dua
(Gbr. 5.7) dengan pengecualian bahwa Persamaan. (5.7) digunakan.
Pernyataan masalah. Gunakan posisi salah untuk menyelesaikan masalah yang sama yang
didekati secara grafis dan dengan bagi dua pada Contoh 5.1 dan 5.3.
Larutan. Seperti pada Contoh 5.3, mulai perhitungan dengan tebakan xl = 50 dan xu = 200.
Iterasi pertama:
Iterasi kedua:
Oleh karena itu, akar terletak pada subinterval pertama, dan xr menjadi batas atas untuk subinterval berikutnya
iterasi, xu = 176,2773.
xl = 50
f (xl) = 4.579387
xu = 176,2773
f (xu) = 0,566174
0.566174(50 176.2773)
xr = 176,2773 = 162,3828
4.579387 0.566174
yang memiliki kesalahan relatif benar dan perkiraan masing-masing 13,76% dan 8,56%. Iterasi tambahan
dapat dilakukan untuk memperbaiki perkiraan akar.
Meskipun posisi palsu sering kali berkinerja lebih baik daripada membagi dua, ada kasus lain
di mana tidak. Seperti pada contoh berikut, ada kasus-kasus tertentu di mana membagi dua
menghasilkan hasil yang unggul.
CONTOH 5.6 Kasus di mana Bisection lebih disukai daripada False Position
Pernyataan masalah. Gunakan bagi dua dan posisi salah untuk mencari akar dari
f (x) = x 10 1
antara x = 0 dan 1,3.
Jadi, setelah lima iterasi, kesalahan sebenarnya berkurang menjadi kurang dari 2%. Untuk posisi salah, a
diperoleh hasil yang sangat berbeda:
Setelah lima iterasi, kesalahan sebenarnya hanya berkurang menjadi sekitar 59%. Wawasan ke dalam
hasil ini dapat diperoleh dengan memeriksa plot fungsi. Seperti pada Gambar 5.9, kurva
melanggar premis yang menjadi dasar posisi salah—yaitu, jika f (xl) lebih dekat ke
Machine Translated by Google
f(x)
10
0 1.0 x
GAMBAR 5.9
Plot f (x) = x10 1 , menggambarkan konvergensi lambat dari metode posisi palsu.
nol daripada f (xu), maka akarnya harus lebih dekat ke xl daripada ke xu (ingat Gbr. 5.8).
Karena bentuk dari fungsi sekarang, yang terjadi adalah kebalikannya.
Latar belakang. Telah didokumentasikan dengan baik bahwa tingkat atmosfer dari beberapa yang
disebut gas “rumah kaca” telah meningkat selama 50 tahun terakhir. Misalnya, Gambar 5.10
menunjukkan data untuk tekanan parsial karbon dioksida (CO2) yang dikumpulkan di Mauna Loa,
Hawaii dari tahun 1958 hingga 2008. Tren dalam data ini dapat disesuaikan dengan baik dengan
polinom kuadrat,3
2
pCO2 = 0,012226(t + 1,418542(t 1983) + 342,38309
1983)
dimana pCO2 = CO2 tekanan parsial (ppm). Data ini menunjukkan bahwa level telah
meningkat sedikit di atas 22% selama periode 315-386 ppm.
Satu pertanyaan yang dapat kita jawab adalah bagaimana tren ini mempengaruhi pH air
hujan. Di luar kawasan perkotaan dan industri, tercatat dengan baik bahwa karbon dioksida
adalah penentu utama pH hujan. pH adalah ukuran aktivitas ion hidrogen
dan, oleh karena itu, keasaman atau alkalinitasnya. Untuk larutan berair encer, dapat dihitung sebagai:
pH = log10[H+]
(5.8)
[H+][HCO- 3 ]
K1 = 106 KE (5.9)
H pCO2
GAMBAR 5.10
Tekanan parsial tahunan rata-rata karbon dioksida atmosfer (ppm) diukur di Mauna
Loa, Hawai.
370
350
pCO2
(ppm)
330
310
1950
1960 1970 1980 1990 2000 2010
3
Di Bagian Empat, kita akan belajar bagaimana menentukan polinomial seperti itu.
Machine Translated by Google
K2 =
[H +] [CO 23 ]
(5.10)
[HCO- 3 ]
Kw = [H+][OHÿ]
(5.11)
KE
H pCO2
cT = + [HCO- 3 ] + [CO 2 3 (5.12)
] 106
0 = [HCO
3 ] + 2 [CO 2 3 ] + [OHÿ] [ H+] (5.13)
dimana K H = Konstanta Henry, dan K1, K2, dan Kw adalah koefisien kesetimbangan. lima
yang tidak diketahui adalah cT = total karbon anorganik, [HCO3 ] = bikarbonat, [COÿ2 3 ] = karbonat,
[H+] = ion hidrogen, dan [OHÿ] = ion hidroksil. Perhatikan bagaimana tekanan parsial CO2
muncul dalam Persamaan. (5.9) dan (5.12).
=
Gunakan persamaan ini untuk menghitung pH air hujan jika diketahui bahwa K 10ÿ1.46, K1 = 10ÿ6.3, K2H
= 10ÿ10.3, dan Kw = 10ÿ14. Bandingkan hasil pada tahun 1958 ketika
pCO2 adalah 315 dan pada tahun 2008 ketika itu adalah 386 ppm. Saat memilih metode numerik
untuk perhitungan Anda, pertimbangkan hal berikut:
• Anda tahu pasti bahwa pH hujan di daerah yang masih asli selalu turun antara
2 dan 12.
• Anda juga tahu bahwa pH hanya dapat diukur hingga dua tempat dengan presisi desimal.
Larutan. Ada berbagai cara untuk menyelesaikan sistem lima persamaan ini. Satu arah
adalah menghilangkan yang tidak diketahui dengan menggabungkannya untuk menghasilkan satu fungsi yang hanya bergantung
pada [H+]. Untuk melakukan ini, pertama-tama selesaikan Persamaan. (5.9) dan (5.10) untuk
K1
[HCO- 3 ] = KE
H pCO2 (5.14)
106 [H+]
K2[HCO- 3 ]
[CO 23 ] = (5.15)
[H+]
K2K1
[CO 23 ] = KE
H pCO2 (5.16)
106 [H+]2
Persamaan (5.14) dan (5.16) dapat disubstitusikan bersama dengan Persamaan. (5.11) ke dalam Persamaan. (5.13) untuk memberi
K1
0= K2K1 Kw
106 [H+] KE
H pCO2 + KE
H pCO2 + [ H+ (5.17)
2 106 [H+]2 [H+] ]
Meskipun mungkin tidak segera terlihat, hasil ini adalah polinomial orde ketiga dalam
[H+]. Dengan demikian, akarnya dapat digunakan untuk menghitung pH air hujan.
Sekarang kita harus memutuskan metode numerik mana yang akan digunakan untuk mendapatkan solusi. Di sana
adalah dua alasan mengapa pembelahan akan menjadi pilihan yang baik. Pertama, fakta bahwa pH selalu
berada dalam kisaran 2 hingga 12, memberi kita dua tebakan awal yang baik. Kedua, karena pH hanya
Machine Translated by Google
dapat diukur dengan presisi dua desimal, kami akan puas
Machine Translated by Google
dengan galat mutlak Ea,d = ±0,005. Ingat bahwa diberikan tanda kurung awal dan kesalahan yang
diinginkan, kita dapat menghitung jumlah iterasi apriori. Mengganti nilai sekarang ke dalam Persamaan.
(5.6) memberikan
n=
10.9658
fungsi f = fpH(pH,pCO2)
K1=10^-6.3;K2=10^-10.3;Kw=10^-14; KH=10^-1,46; H=10^-pH;
f=K1/(1e6*H)*KH*pCO2+2*K2*K1/(1e6*H)*KH*pCO2+Kw/HH;
Kemudian kita dapat menggunakan file-M dari Gambar 5.7 untuk mendapatkan solusinya. Perhatikan
bagaimana kita telah menetapkan nilai kesalahan relatif yang diinginkan (ÿa = 1 × 10ÿ8) pada tingkat yang
sangat rendah sehingga batas iterasi (maxit) tercapai terlebih dahulu sehingga tepat 11 iterasi
diimplementasikan
pH1958 =
5.6279
fx =
-2.7163e-008
ea =
0,08676
iter =
11
Jadi, pH dihitung sebagai 5,6279 dengan kesalahan relatif 0,0868%. Kita dapat yakin bahwa hasil
pembulatan 5,63 benar sampai dua tempat desimal. Ini dapat diverifikasi dengan per membentuk run lain
dengan lebih banyak iterasi. Misalnya, mengatur maxit ke 50 hasil
pH1958 =
5.6304
fx =
1.615e-015
ea =
5.169e-009
iter =
35
Untuk tahun 2008, hasilnya adalah
Machine Translated by Google
>> [pH2008 ea iter]=bagi dua(@fpH,2,12,1e-8,50,386)
Machine Translated by Google
MASALAH 147
pH2008 =
5,5864
fx =
3.2926e-015
ea =
5.2098e-009
iter =
35
Menariknya, hasil menunjukkan bahwa kenaikan 22,5% tingkat CO2 atmosfer hanya menghasilkan
penurunan pH 0,78%. Meskipun hal ini memang benar, ingatlah bahwa pH mewakili skala logaritmik seperti
yang didefinisikan oleh Persamaan. (5.8). Akibatnya, penurunan satuan pH mewakili peningkatan urutan
besarnya (yaitu, 10 kali lipat) dalam ion hidrogen. Konsentrasi dapat dihitung sebagai [H+] = 10ÿpH dan
persentase perubahannya dapat dihitung sebagai.
>> ((10^-pH2008-10^-pH1958)/10^-pH1958)*100
tahun =
10.6791
MASALAH
5.1 Gunakan bagi dua untuk menentukan koefisien gaya hambat yang
5.5 (a) Tentukan akar-akar f (x) = 12 21x + 18x2 2.75x3
diperlukan agar seorang pelompat bungee bermassa 80 kg memiliki
secara grafik. Selain itu, tentukan akar pertama dari fungsi
dengan (b)
kecepatan 36 m/s setelah 4 s jatuh bebas. Catatan: Percepatan gravitasi adalah 9b,8a1gmi d/su2a. dan (c) posisi salah.
Mulailah dengan tebakan awal xl = 0,1 dan xu = 0,2 dan Untuk (b) dan (c) gunakan tebakan awal xl = 1 dan xu = 0 dan
teruskan sampai perkiraan kesalahan relatif turun di bawah 2%. kriteria penghentian 1%.
5.2 Kembangkan file-M Anda sendiri untuk membagi dua dengan cara yang mirip 5.6 Cari akar nontrivial pertama dari sin(x) = x2 di mana x dalam
dengan Gambar 5.7. Namun, daripada menggunakan iterasi maksimum dan radian. Gunakan teknik grafik dan bagi dua dengan interval awal
Persamaan. (5.5), menggunakan Persamaan. (5.6) sebagai kriteria berhenti Anda. 0,5 sampai 1. Lakukan perhitungan sampai a kurang dari s = 2%.
Pastikan untuk membulatkan hasil Persamaan. (5.6) hingga bilangan bulat tertinggi berikutnya.
Uji fungsi Anda dengan memecahkan Prob. 5.1 menggunakan Ea,d = 0,0001.
5.7 Tentukan akar real positif dari ln(x2) = 0,7 (a) secara grafik,
5.3 Ulangi Soal. 5.1, tetapi gunakan metode posisi salah
(b) menggunakan tiga iterasi dari metode bagi-bagi, dengan
untuk mendapatkan solusi Anda.
tebakan awal xl = 0,5 dan xu = 2, dan (c) menggunakan tiga
5.4 Kembangkan file-M untuk metode posisi palsu. Uji dengan
iterasi dari metode posisi salah, dengan tebakan awal yang
memecahkan Prob. 5.1.
Machine Translated by Google
sama seperti pada (b).
Machine Translated by Google
T2 _
Sebuah
8.621949 × 1011
- melebihi 10. Diskusikan hasil Anda.
T4 5.11 Model Michaelis-Menten menjelaskan kinetika
Sebuah
dimana osf = konsentrasi saturasi oksigen terlarut dalam air tawar Reaksi yang diperantarai enzim:
pada 1 atm (mg Lÿ1 ); dan Ta = mutlak dS S
suhu (K). Ingat bahwa Ta = T + 273,15, di = vm
DT ks + S
mana
T = suhu (°C). Menurut persamaan ini, saturasi
berkurang dengan meningkatnya suhu. Untuk alami yang khas di mana S = konsentrasi substrat (mol/L), vm = laju serapan
perairan di daerah beriklim sedang, persamaan tersebut dapat digunakan maksimum (mol/L/d), dan ks = setengah jenuh
untuk menentukan bahwa konsentrasi oksigen berkisar antara 14,621 mg/L konstan, yang merupakan tingkat substrat di mana penyerapan adalah setengah
pada 0 °C hingga 6,949 mg/L pada 35 °C. Mengingat nilai maksimum [mol/L]. Jika tingkat substrat awal pada
t = 0 adalah S0, persamaan diferensial ini dapat diselesaikan untuk
konsentrasi oksigen, rumus ini dan metode bagi dua dapat:
digunakan untuk memecahkan suhu dalam
S = S0 vmt + ks ln(S0/S )
°C.
(a) Jika tebakan awal ditetapkan sebagai 0 dan 35 °C, berapa banyak Kembangkan file-M untuk menghasilkan plot S versus t untuk
iterasi bagi dua akan diperlukan untuk menentukan suhu kasus di mana S0 = 8 mol/L, vm = 0,7 mol/L/d, dan
dengan kesalahan mutlak 0,05 °C? ks = 2,5 mol / L.
(b)
Berdasarkan (a), kembangkan dan uji fungsi file-M bagi dua 5.12 Reaksi kimia yang dapat dibalik
bagian untuk menentukan T sebagai fungsi dari konsentrasi
oksigen yang diberikan. Uji fungsi Anda untuk osf = 8, 10 dan 14 2A + Bÿ ÿC
mg/L. Periksa hasil Anda.
dapat dicirikan oleh hubungan keseimbangan
5.9 Sebuah balok dibebani seperti ditunjukkan pada Gambar P5.9. cc
K=
Gunakan metode bagi dua untuk menyelesaikan posisi di dalam balok di mana
c2 acb
tidak ada momen.
5.10 Air mengalir dalam saluran trapesium dengan laju di mana nomenklatur ci mewakili konsentrasi konstituen i. Misalkan
Q = 20 m3 /s. Kedalaman kritis y untuk saluran seperti itu kita mendefinisikan variabel x sebagai representasi
harus jumlah mol C yang dihasilkan. Konservasi
memenuhi persamaan massa dapat digunakan untuk merumuskan kembali hubungan kesetimbangan sebagai
0=1 Q2
B (cc,0 + x)
K=
g A3 C (ca,0 2x )2(cb,0 x )
di mana g = 9,81 m/s2 , Ac = luas penampang (m2 ),
dan B = lebar saluran di permukaan (m). Untuk ini di mana subskrip 0 menunjukkan konsentrasi awal
kasus, lebar dan luas penampang dapat dikaitkan dari masing-masing konstituen. Jika K = 0,016, ca,0 = 42, cb,0 =
dengan
28, dan cc,0 = 4, tentukan nilai x. (a) Dapatkan solusi secara grafis.
kedalaman y (b) Berdasarkan (a), selesaikan akar dengan tebakan awal dari
dengan B = 3 + y
xl = 0 dan xu = 20 hingga s = 0,5%. Pilih baik bagi dua atau
100 lb/ft 100 pon posisi palsu untuk mendapatkan solusi Anda. Membenarkan pilihan Anda.
5.13 Gambar P5.13a menunjukkan balok seragam yang dikenai beban
terdistribusi yang meningkat lebih awal. Persamaan untuk kurva elastis
yang dihasilkan adalah (lihat Gambar P5.13b)
w0
y= (ÿx5 + 2L2x3 L4x (hal5.13)
120EIL )
3' 3' GAMBAR
4' 2'
P5.9
Machine Translated by Google
Gunakan
bagi-bagi
untuk
menentukan
titik defleksi
maksimum
(yaitu, nilai x
di mana
dy/dx = 0).
Kemudian
ganti ini
nilai ke dalam Persamaan.
(P5.13) untuk menentukan
nilai maksimum
defleksi. Gunakan nilai
parameter berikut di
Machine Translated by Google
MASALAH 149
(x = 0, y = 0) 2
A=P i(1 + i)n dapat diwakili oleh kuantitas tak berdimensi lain, bilangan
Reynolds Re. Rumus yang memprediksi f diberikan Re
(1 + i)n 1
adalah persamaan von Karman:
5.15 Banyak bidang teknik memerlukan perkiraan populasi yang 1
akurat. Misalnya, insinyur transportasi mungkin merasa perlu = 4 log10 Re f 0,4 f
untuk menentukan secara terpisah tren pertumbuhan penduduk
Nilai khas untuk bilangan Reynolds untuk aliran turbulen adalah
kota dan pinggiran kota yang berdekatan. Populasi daerah
10.000 hingga 500.000 dan untuk faktor gesekan Fanning adalah
perkotaan menurun dengan waktu menurut Pu (t) = Pu,maxeÿku
0,001 hingga 0,01. Kembangkan fungsi yang menggunakan bagi-bagi
t + Pu,min sedangkan untuk
speepnedrutidpuakdpainPgsg,miraanx kPosta(t)b=er1ta+mbah, menyelesaikan f yang diberikan nilai Re yang disediakan pengguna antara 2.500
dan
[Ps,max / P0 1]eÿkst
Sebuah
GAMBAR P5.17
Machine Translated by Google
GAMBAR P5.22
v=u m0
ln gt _
m0 - qt
gunakan bagi dua untuk menentukan tinggi, h, dari bagian yang
di mana v = kecepatan naik, u = kecepatan bahan bakar
berada di atas air. Gunakan nilai berikut untuk perhitungan Anda:
dikeluarkan relatif terhadap roket, m0 = massa awal roket pada
r = 1 m, s = massa jenis bola = 200 kg/m3 , dan w = masasiar =jenis
waktu t = 0, q = laju konsumsi bahan bakar, dan g = percepatan
1.000 kg/m3 . Perhatikan bahwa volume bagian bola di atas air
gravitasi ke bawah ( diasumsikan konstan = 9,81 m/s2 ). Jika u =
dapat dihitung dengan
1800 m/s, m0 = 160.000 kg, dan q = 2600 kg/s, hitung waktu di
h2
mana v = 750 m/s. (Petunjuk: t adalah antara 10 dan 50 detik.) V = (3r - jam)
Tentukan hasil Anda sehingga berada dalam 1% dari nilai 3
sebenarnya. Periksa jawaban mu. 5.23 Lakukan perhitungan yang sama seperti pada Soal. 5.22,
5.21 Meskipun kami tidak menyebutkannya di Sec. 5.6, Persamaan. tetapi untuk frustrum kerucut seperti yang digambarkan pada
(5.13) adalah ekspresi elektroneutralitas—yaitu , muatan positif dan Gambar. P5.23. Gunakan nilai berikut untuk perhitungan Anda: r1
negatif harus seimbang. Ini dapat dilihat lebih jelas dengan = 0,5 m, r2 = 1 m, h = 1 m, f = kerapatan frustrum =da2n00w
mengungkapkannya sebagai k=g/m3 , kerapatan air = 1.000 kg/m3 . Perhatikan bahwa volume
frustrum
diberikan oleh
[H+] = [HCO 3] + 2[CO2ÿ3 ] + [OH]
h 22+r2
V = (r + r1r2)
Dengan kata lain, muatan positif harus sama dengan muatan 3 1
H
dimana Alk = alkalinitas (eq/L). Misalnya, alkalinitas Danau Superior
kira-kira 0,4 × 10–3 eq/L. Lakukan perhitungan yang sama seperti pada
Sec. 5.6 untuk menghitung pH Danau Superior pada tahun 2008.
Asumsikan bahwa seperti halnya tetesan air hujan, danau berada
r2
dalam kesetimbangan dengan CO2 atmosfer tetapi memperhitungkan
alkalinitas seperti pada Persamaan. (P5.21).
5.22 Menurut prinsip Archimedes, gaya apung sama dengan berat
fluida yang dipindahkan oleh bagian benda yang terendam. Untuk GAMBAR P5.23
bola yang digambarkan pada Gambar. P5.22,