FISIKA KOMPUTASI
OLEH
KELOMPOK 1
5. Ketahui cara menerjemahkan flawcharts terstruktur dan kode ino pseudocode dalam
bahasa tingkat tinggi.
6. Mulailah untuk mem-hamliarize diri Anda sendiri setiap paket sohwoe yang akan Anda
gunakan bersama dengan laxx ini.
7. Kenali perbedaan antara pemotongan dan roundaff enos. Undesstand the concept
8. Kenali perbedaan antara emor e yang sebenarnya, perkiraan relative mr accapable t dari
angka-angka signifikan, occutocy dan predision. dan mengerti hawond, digunakan untuk
mengakhiri perhitungan berulang.
9. Pahami bagaimana angka-angka diwakili dalam kompuser digital dan bagaimana dan
bagaimana emitor ha-off. Dalam partioular, ketahuilah perbedaan antara presisi tunggal
dan exdended.
11. Tentukan bagaimana deret Taylor dan sisanya digunakan untuk merepresentasikan fungsi
berkesinambungan.
13. Lakukan abla ke analyae haw eoes yang disangga melalui nelationship fungsional.
2,5 MATLAB
MATLAB adalah produk perangkat lunak andalan dari The MathWorks, Inc., yang dirikan
oleh analis numerik Cleve Moler dan John N. kecil. Sesuai namanya, MATLAB pada
awalnya dikembangkan sebagai laboratorium matriks. Untuk hari ini, unsur utama dari
MATLAB masih matriks. manipulasi matematika matriks yang sangat nyaman imple-
mented dalam lingkungan yang mudah digunakan, interaktif. Untuk manipulasi matriks
ini, MATLAB telah menambahkan berbagai fungsi numerik, perhitungan simbolik, dan
alat visual-isasi. Sebagai konsekuensinya, versi ini merupakan lingkungan komputasi
teknologi-te cukup komprehensif.
MATLAB memiliki berbagai fungsi dan operator yang memungkinkan nyaman
implementa-tion dari banyak metode numerik yang dikembangkan dalam buku ini. Ini
akan dijelaskan secara rinci dalam bab-bab individu yang mengikuti. Selain itu, program
dapat ditulis sebagai disebut M-file yang dapat digunakan untuk mengimplementasikan
perhitungan numerik. Mari kita menjelajahi bagaimana hal ini dilakukan.
Pertama, Anda harus mengakui bahwa penggunaan MATLAB normal berkaitan erat
dengan pro-gramming. Sebagai contoh, misalkan kita ingin menentukan solusi analitis untuk
masalah penerjun. Hal ini dapat dilakukan dengan seri berikut perintah MATLAB
> g = 9,8;
> m = 68,1;
> cd = 12,5;
> tf = 2;
> v = g * m / cd * (1-exp (-cd / m * tf))
Dengan demikian, urutan perintah adalah seperti urutan instruksi dalam bahasa pro-
gramming khas.
Sekarang bagaimana jika Anda ingin menyimpang dari struktur berurutan. Meskipun
ada beberapa cara yang rapi untuk menyuntikkan beberapa kemampuan nonsequential
dalam modus perintah standar, dimasukkannya keputusan dan loop paling baik dilakukan
dengan membuat dokumen MATLAB disebut M-file. Untuk melakukan ini, membuat
pilihan menu
File New Mfile
dan jendela baru akan terbuka dengan judul “MATLAB Editor / Debugger.” Pada jendela
ini, Anda dapat mengetik dan mengedit program MATLAB. Ketik kode berikut ada:
g = 9,8;
m = 68,1;
cd = 12,5;
tf = 2;
v = g * m / cd * (1-exp (-cd / m * tf))
42 PEMROGRAMAN DAN SOFTWARE
Perhatikan bagaimana perintah ditulis dengan cara yang persis seperti mereka akan
ditulis di ujung depan MATLAB. Menyimpan program dengan nama: analpara.
MATLAB akan au-tomatically melampirkan m ekstensi untuk menunjukkan sebagai M-
berkas: analpara.m.
Untuk menjalankan program ini, Anda harus kembali ke modus perintah. Cara yang
paling langsung untuk melakukan ini adalah dengan mengklik tombol “MATLAB
Command Window” pada task bar (yang biasanya di bagian bawah layar).
Program ini sekarang dapat dijalankan dengan mengetikkan nama M-berkas,
analpara, yang akan terlihat seperti
>> analpara
Jika Anda telah melakukan semuanya dengan benar, MATLAB harus menanggapi dengan
jawaban yang benar:
v =
16,4050
Sekarang satu masalah dengan hal tersebut adalah bahwa hal itu sudah diatur untuk
menghitung satu kasus saja. Anda dapat membuatnya lebih fleksibel dengan memiliki
input pengguna beberapa variabel. Misalnya, sup-berpose bahwa Anda ingin menilai
dampak massa pada kecepatan di 2 s. M-file yang dapat ditulis ulang sebagai berikut
untuk mencapai hal ini
g = 9,8;
m = input ( 'massa (kg):');
cd = 12,5;
tf = 2;
v = g * m / cd * (1-exp (-cd / m * tf))
Simpan ini sebagai analpara2.m. Jika Anda mengetik analpara2 sementara berada di
modus perintah, prompt akan menunjukkan
massa (kg):
Pengguna kemudian bisa memasukkan nilai seperti 100, dan hasilnya akan ditampilkan
sebagai
v =
17,3420
Sekarang harus cukup jelas bagaimana kita dapat memprogram solusi numerik
dengan M-file. Untuk melakukan ini, pertama kita harus memahami bagaimana
MATLAB menangani struktur logis dan perulangan. Gambar 2.9 daftar pseudocode
bersama kode MATLAB untuk semua struktur con-trol dari bagian sebelumnya.
Meskipun struktur dari pseudocode dan kode MATLAB sangat mirip, ada beberapa
perbedaan kecil yang harus diperhatikan.
Secara khusus, melihat bagaimana kita telah mewakili struktur DOEXIT. Di tempat
DO, kita menggunakan pernyataan WHILE (1). Karena MATLAB menafsirkan nomor 1
sebagai sesuai dengan “benar,” pernyataan ini akan mengulangi jauh dengan cara yang
sama seperti pernyataan DO. loop diakhiri dengan perintah istirahat. transfer perintah ini
kontrol ke pernyataan berikut pernyataan akhir yang mengakhiri loop.
(Sebuah)pseudocode (B)MATLAB
JIKA KEMUDIAN:
IF kondisi THEN jika b ~ = 0
benar blok r1 = -c / b;
akhi
BERAKHIR JIKA r
IF / THEN / ELSE:
IF kondisi THEN jika <0
benar blok b = Sqrt (abs (a));
LAIN lain
blok palsu b = Sqrt (a);
akhi
BERAKHIR JIKA r
IF / THEN /
ELSEIF:
JIKA kondisi1 KEMUDIAN jika kelas == 1
Blok1 x = x + 8;
kondisi ELSEIF2 kelas elseif <1
Blok2 x = x - 8;
kondisi ELSEIF3 kelas elseif <10
Blok3 x = x - 32;
LAIN lain
Blok4 x = x - 64;
akhi
BERAKHIR JIKA r
KASUS:
SELECT CASE Uji Ekspresi beralih + b
KASUS Nilai1 kasus 1
Blok1 x = -5;
KASUS Nilai2 kasus 2
Blok2 x = -5 - (a + b) / 10;
KASUS Nilai3 kasus 3
Blok3 x = (a + b) / 10;
ELSE CASE jika tidak
Blok4 x = 5;
akhi
END SELECT r
GAMBAR 2.9 DOEXIT:
Struktur kontrol mendasar
MELAKUKAN sementara (1)
dalam (a) pseudocode dan
Blok1 i = i + 1;
(b) bahasa pemrograman
jika i> = 10, istirahat,
MATLAB. JIKA kondisi EXIT akhir
Blok2 j = i * x;
akhi
EndDo r
COUNT-DIKENDALIKAN
LOOP:
DOFOR i = awal, akhir, langkah akhi
Blok EndDo r
43
44 PEMROGRAMAN DAN SOFTWARE
kecepatan (m / s):
17,4381
Sebagai langkah terakhir dalam pembangunan ini, mari kita di atas M-file dan
mengubahnya menjadi sebuah fungsi yang tepat. Hal ini dapat dilakukan sebagai berikut
M-file berdasarkan pseudocode dari Gambar. 2.7
Fungsi yy = Euler (dt, ti, tf, yi, m, cd)
t = ti;
y = yi;
h = dt;
sementara (1)
jika t + dt> tf
h = tf - t;
akhir
dydt = dy (t, y, m, cd);
y = y + dydt * h;
t = t + h;
jika t> = tf, istirahat, akhir
akhir
yy = y;
2,6 Mathcad 45
Simpan file ini sebagai euler.m dan kemudian membuat yang lain M-file untuk
menghitung turunan,
Fungsi dydt = dy (t, v, m, cd)
g = 9,8;
dydt = g - (cd / m) * v;
Simpan file ini sebagai dy.m dan kembali ke modus perintah. Dalam rangka untuk
memanggil fungsi dan lihat hasilnya, Anda dapat mengetikkan perintah berikut
> m = 68,1;
> cd = 12,5;
> ti = 0;
> tf = 2 .;
> vi = 0;
> dt = 0,1;
> Euler (dt, ti, tf, vi, m, cd)
Ini adalah kombinasi dari lingkungan MATLAB dengan M-file bahasa pemrograman
yang benar-benar membuka sebuah dunia kemungkinan untuk pemecahan masalah
rekayasa. Dalam bab-bab mendatang kami akan menggambarkan bagaimana hal ini
tercapai.
2.6 Mathcad
Mathcad mencoba untuk menjembatani kesenjangan antara spreadsheet seperti Excel dan
notes. Ini pada awalnya dikembangkan oleh Allen Razdow dari MIT yang dirikan
Mathsoft, Inc., yang menerbitkan versi komersial pertama pada tahun 1986. Hari ini,
Mathsoft merupakan bagian dari Parametric Technology Corporation (PTC) dan Mathcad
adalah dalam versi 14.
Mathcad pada dasarnya adalah notepad interaktif yang memungkinkan para insinyur
dan ilmuwan untuk melakukan sejumlah umum matematika, data penanganan, dan tugas
grafis. Infor-masi dan persamaan input ke lingkungan desain “papan tulis” yang memiliki
semangat yang sama halaman kertas. Tidak seperti alat pemrograman atau spreadsheet,
antarmuka Mathcad ini menerima dan menampilkan notasi matematika alam dengan
menggunakan tombol atau menu palette klik-dengan tidak diperlukan pemrograman.
Karena lembar kerja mengandung hidup dengan f-tions, keystroke tunggal yang
mengubah input atau persamaan langsung mengembalikan hasil yang diperbarui.
Mathcad dapat melakukan tugas-tugas baik dalam modus numerik atau simbolik.
Dalam mode numerik, fungsi dan operator Mathcad memberikan respon numerik,
sedangkan pada hasil modus simbolis diberikan sebagai ungkapan umum atau persamaan.
Maple V, paket matematika simbolik yang komprehensif, adalah dasar dari modus
simbolis dan dimasukkan ke Mathcad pada tahun 1993.
Mathcad memiliki berbagai fungsi dan operator yang memungkinkan pelaksanaan
nyaman dari banyak metode numerik yang dikembangkan dalam buku ini. Ini akan
dijelaskan secara rinci dalam bab berikutnya. Dalam hal bahwa Anda tidak terbiasa
dengan Mathcad, Lampiran C juga menyediakan primer pada menggunakan perangkat
lunak yang kuat.
46 PEMROGRAMAN DAN SOFTWARE
t = ti
y = yi
h = dt
Melakukan
Jika (t + dt> tf) Lalu
h = tf - t
Berakhir jika
dydt = dy (t, y, m, cd)
y = y + dydt * h
t = t + h
Jika (t> = tf) Keluar
akhir Do
Euler = y
end Function
Untuk C, hasilnya akan terlihat sangat mirip dengan fungsi MATLAB. Intinya
adalah bahwa sekali algoritma yang terstruktur dengan baik dikembangkan dalam bentuk
pseudocode, dapat mudah imple-mented di berbagai lingkungan pemrograman.
Dalam buku ini, pendekatan kami akan memberikan Anda dengan prosedur yang
terstruktur dengan baik surat perintah-sepuluh sebagai pseudo. Koleksi ini algoritma
kemudian merupakan perpustakaan numerik yang dapat diakses untuk melakukan tugas
numerik khusus dalam berbagai perangkat lunak dan bahasa pro-gramming.
Di luar program Anda sendiri, Anda harus menyadari bahwa perpustakaan
pemrograman komersial mengandung banyak prosedur numerik berguna. Sebagai contoh,
perpustakaan Resep numerik meliputi berbagai macam algoritma yang ditulis dalam
5
Fortran dan C. Prosedur ini dijelaskan di kedua buku (misalnya, Tekan et al. 1992) dan
bentuk elektronik.
5
prosedur Resep numerik juga tersedia dalam buku dan format elektronik untuk Pascal, MS BASIC, dan
MATLAB. Informasi tentang semua produk Resep numerik dapat ditemukan di http://www.nr.com/.
MASALAH 47
F T
x ≥ 10
F T
x <5
x=x-5
x = 7,5 x=5
F
x <50
Gambar P2.1
cos x = 1
x2
cos x = 1 -
x2 x4
cos x = 1 - +
AG = WQ × AQ + WH × AH + WF × FE × 100%
WQ + WH + WF
Langkah 8: Lanjutkan ke langkah 10.
Langkah 9: Tentukan AG nilai rata-rata menurut
AG = WQ × AQ + WH × AH × 100%
WQ + WH
48 PEMROGRAMAN DAN SOFTWARE
Langkah 11: Hentikan perhitungan. 2.8 Sejumlah uang P diinvestasikan di rekening mana antar-est
(a) Menulis pseudocode terstruktur dengan baik untuk diperparah pada akhir periode. Masa depan senilai F dihasilkan
mengimplementasikan algoritma ini. pada tingkat bunga i setelah n periode dapat ditentukan dari rumus
(b) Menulis, debug, dan dokumen program komputer yang berikut:
terstruktur berdasarkan algoritma ini. Mengujinya n
menggunakan data berikut untuk menghitung kelas tanpa F = P(1 + saya)
ujian akhir dan kelas dengan ujian akhir: WQ=35; WH=30; Menulis sebuah program yang akan menghitung nilai masa depan dari
WF=35; kuis= 98, 85, investasi-ment untuk setiap tahun dari 1 sampai n. Input ke fungsi
90, 65, 99; pekerjaan rumah=95, 90, 87, 100, 92, 77; dan harus mencakup P investasi awal, tingkat bunga i (sebagai Desember-
ujian akhir= 92. imal), dan jumlah tahun n yang nilai masa depan harus dihitung.
2.7 The “membagi dan rata-rata” metode, metode lama-waktu output harus terdiri dari meja dengan judul dan kolom untuk n dan F.
untuk ap-proximating akar kuadrat dari setiap nomor positif yang Jalankan program untuk P= $ 100.000,
bisa untuk-mulated sebagai i = 0.06, dan n = 5 tahun.
x+ 2,9 formula ekonomi yang tersedia untuk menghitung
Sebuah/ pembayaran tahunan untuk pinjaman. Misalkan Anda meminjam
x sejumlah uang P dan setuju untuk membayar dalam pembayaran
x tahunan n pada tingkat bunga i. rumus untuk menghitung
= 2
pembayaran A tahunan
(S
eb
ua Menulis pseudocode terstruktur dengan baik untuk
h) mengimplementasikan algoritma ini
seperti yang digambarkan pada Gambar. P2.7. Gunakan
lekukan yang tepat sehingga
Struktur jelas.
Mengembangkan, debug, dan dokumen program untuk
(B) melaksanakan ini
persamaan baik bahasa tingkat tinggi atau bahasa makro n
SEBU saya(1+ saya)
AH =
P
pilihanmu. Struktur kode Anda sesuai dengan Gambar. T
P2.7.
squareroot = x
F T
Sebuah > 0
Gambar P2.7
5
tol = 10
x = Sebuah/
Squareroot = 0 2
y = (x +
Sebuah/x) / 2
e = |(y - x) /y|
x=y
F
e <tol
n
(1 +saya) -1
Tulis program untuk menghitung A. Uji dengan P = $
55.000 dan tingkat di-terest 6,6% (i= 0.066). Hasil Hitung
untuk n= 1, 2, 3, 4, dan 5 dan menampilkan hasil sebagai
meja dengan judul dan kolom untuk n dan A.
2.10 Rata-rata suhu harian untuk suatu wilayah dapat
approxi-dikawinkan dengan fungsi berikut,
habis. Untuk metode ini untuk mengurutkan array sepenuhnya, ia mengembalikan volume untuk semua kasus di mana kedalaman
mungkin perlu melewati berkali-kali. Sebagai melewati kurang dari 3R. Mengembalikan pesan kesalahan ( “melampaui”)
melanjutkan untuk semacam menaik-order, unsur-unsur yang jika Anda tinggi dr tangki, yaitu, d>3R. Mengujinya dengan data
lebih kecil dalam array muncul untuk naik menuju puncak seperti sebagai berikut:
gelembung. Akhirnya, akan ada lulus melalui array di mana swap
tidak diperlukan. Kemudian, array diurutkan. Setelah lulus R 1 1 1 1
pertama, nilai terbesar dalam array tetes langsung ke bawah. d 0,5 1.2 3.0 3.1
Akibatnya, kedua lulus hanya memiliki untuk melanjutkan ke
nilai kedua-untuk-terakhir, dan sebagainya. Mengembangkan
sebuah program untuk mendirikan sebuah array 20 nomor acak
dan mengurutkan mereka dalam rangka ascend-ing dengan bubble
sort (Gambar. P2.12). 2R
d
mulai
R
m=n-1
Gambar P2.13
saklar = false
s
saya a
T =1 y
saya > m II a
saya = y
saya +
1
F
x
T Tidak T
Sebuah >
saya
Sebuah
beralih saya1
AKU AKU AKU IV
F F menukar
Se
Seb
bu
ah uah
Gambar P2.14
say
a saya1
akhir
bagian silinder, total volume cairan termasuk bagian kerucut diisi dan
Gambar P2.12 bagian silinder terisi sebagian. Menulis prosedur fungsi yang
terstruktur untuk menghitung volume tangki sebagai fungsi dari nilai
yang diberikan dari R dan d. Gunakan putusan kontrol struc-
2.13 Gambar P2.13 menunjukkan tangki silinder dengan dasar membangun struktur (seperti Jika / Kemudian, ElseIf, Lain, End If).
berbentuk kerucut. Jika tingkat cair cukup rendah di bagian kerucut, Desain fungsi sehingga
volume sim-lapis volume kerucut cairan. Jika tingkat cair midrange di
2.14 Dua jarak yang diperlukan untuk menentukan lokasi titik
relatif terhadap asal dalam ruang dua dimensi (Gambar P2.14.):
• Jarak horizontal dan vertikal (x. y) dalam koordinat Cartesian
• Radius dan sudut (r, θ ) Dalam koordinat radial.
Hal ini relatif mudah untuk menghitung koordinat Cartesian (x. y)
atas dasar koordinat polar (r, Θ). Proses reverse tidak begitu
sederhana. radius dapat dihitung dengan rumus berikut:
2 2
r= x +y
50 PEMROGRAMAN DAN SOFTWARE
C 70 ≤ kelas numerik <80
D 60 ≤ kelas numerik <70
Jika koordinat terletak dalam koordinat pertama dan F kelas numerik <60
keempat (yaitu,
x > 0), maka rumus sederhana dapat digunakan untuk menghitung
θ 2.16 Mengembangkan prosedur fungsi yang terstruktur
dengan baik untuk menentukan
(a) faktorial tersebut; (B)nilai minimum dalam sebuah vektor;
dan(C) yang av-erage dari nilai-nilai dalam vektor.
-1
θ = berjemur
y
x y θ
-1
berjemur (Y /
<0 >0 x) + π
-1
berjemur (Y /
<0 <0 x) - π
<0 =0 π
=0 >0 π /2
=0 <0 -π / 2
=0 =0 0
x y r θ
1 0
1 1
0 1
-1 1
-1 0
-1 -1
0 -1
1 -1
0 0
Surat Kriteria
SEBUA
H 90 ≤ kelas numerik ≤ 100
B 80 ≤ kelas numerik <90
2,17 Mengembangkan program-program yang terstruktur untuk
(Sebuah) menentukan alun-alun akar dari jumlah kuadrat dari
elemen array dua dimensi (yaitu, matriks) dan (B) menormalkan
matriks dengan membagi setiap baris dengan nilai absolut
maksimum berturut-turut sehingga elemen maksimum dalam
setiap baris adalah 1.
2.18 fungsi piecewise kadang-kadang berguna ketika hubungan-
kapal antara dependen dan variabel independen tidak dapat
diwakili secara memadai oleh persamaan tunggal. Misalnya,
kecepatan roket mungkin dijelaskan oleh
11T
2
1100
- 5t 5t 10
0 ≤
t
t ≤ 10 20
- ≤ ≤
2
v (t) 50t 2(t
20) 20 t 30
= + - ≤ ≤
1520e-
0.2(t
0 -
30) t > 30
jika tidak
+
dimana U kecepatan (m / s), S channel kemiringan, n kekasaran
koefisien-ficient, lebar B (m), dan H kedalaman (m). Data berikut
ini tersedia untuk lima saluran:
n S B H
0,035 0,0001 10 2
0,020 0,0002 8 1
0,015 0,0010 20 1,5
0,030 0,0007 24 3
0,022 0,0003 15 2,5
MASALAH 51
Menulis sebuah program yang terstruktur dengan baik yang 2.23 Volume V cairan dalam silinder horisontal berongga radius r
menghitung kecepatan untuk masing-masing saluran ini. Memiliki dan panjang L terkait dengan kedalaman h cair dengan
program menampilkan data masukan bersama dengan kecepatan = - r - - -
dihitung dalam bentuk tabel di mana kecepatan adalah kolom 2 1 r- h
r
kelima. Sertakan judul di atas meja untuk label kolom. V sebab (r h) 2r h h2 L
2.22 Sebuah sinar hanya didukung dimuat seperti yang
Mengembangkan terstruktur dengan baik fungsi untuk membuat
ditunjukkan pada Gambar. P2.22. Menggunakan fungsi
plot volume terhadap kedalaman. Menguji program untuk r 2 m
singularitas, perpindahan sepanjang balok dapat dinyatakan
dan L 5 m.
dengan persamaan:
2.24 Mengembangkan program terstruktur dengan baik untuk
-5 4 4 15 3 menghitung kecepatan sebuah penerjun sebagai fungsi waktu
u y (x) = [ x -0 -x -5 ] + x -8 menggunakan metode Euler. Menguji program anda untuk kasus
66 di mana m 80 kg dan c 10 kg / s. Melakukan perhitungan dari t 0
2 57 3
+ 75 x - 7 + x - 238.25x sampai 20 s dengan ukuran langkah 2 s. Gunakan kondisi awal
6 yang penerjun yang memiliki kecepatan ke atas 20 m / s pada t 0.
Pada t 10 s, menganggap bahwa parasut itu seketika dikerahkan
Menurut definisi, fungsi singularitas dapat dinyatakan sebagai berikut:
sehingga koefisien drag melompat ke 50 kg / s.
x- Se 2,25 Pseudocode pada Gambar. P2.25 menghitung faktorial.
Sebua ketika bu
Mengekspresikan algoritma ini sebagai fungsi yang terstruktur
h = 0 x ah
dengan baik dalam bahasa pilihan Anda. Mengujinya dengan
>
(x komputasi 0! dan 5! Selain itu, menguji perangkap kesalahan
n
ketika Sebu
n -Sebuah) x ah dengan mencoba untuk mengevaluasi 2!
≤
FUNGSI fac (n)
Mengembangkan program yang menciptakan plot perpindahan JIKA n 0 THEN
terhadap dis-dikan di sepanjang balok x. Perhatikan bahwa x 0 di x = 1
ujung kiri balok. DOFOR i = 1, n
x = x · i
END DO
20 kips / ft
fac = x
LAIN
pesan kesalahan display
150 kip-ft
15 kips mengakhiri
BERAKHIR JIKA
END fac
5' 2' 1' 2'
Gambar P2.22 Gambar P2.25
BAB 3
perkiraan dan
Kesalahan putaran-Off
Karena begitu banyak metode dalam buku ini mudah dalam deskripsi dan appli-kation,
itu akan sangat menggoda pada saat ini bagi kita untuk melanjutkan langsung ke tubuh
utama dari teks dan mengajarkan Anda bagaimana menggunakan teknik ini. Namun,
memahami konsep kesalahan sangat penting untuk penggunaan yang efektif dari metode
numerik yang kita telah memilih untuk mengabdikan dua bab berikutnya dengan topik
ini.
Pentingnya kesalahan diperkenalkan dalam diskusi kita tentang penerjun jatuh Chap.
1. Ingat bahwa kita ditentukan kecepatan dari penerjun jatuh oleh kedua metode analisis
dan numerik. Meskipun teknik numerik menghasilkan perkiraan yang dekat dengan
solusi analitis yang tepat, ada perbedaan, atau kesalahan, karena metode numerik yang
terlibat perkiraan. Sebenarnya, kami sangat beruntung dalam hal itu karena ketersediaan
solusi analitis memungkinkan kita untuk menghitung kesalahan persis. Bagi banyak
masalah teknik terapan, kita tidak bisa mendapatkan solusi analitis. Oleh karena itu, kita
tidak bisa menghitung persis kesalahan yang terkait dengan metode numerik kami. Dalam
kasus ini, kita harus puas perkiraan atau estimasi dari kesalahan.
kesalahan tersebut merupakan ciri khas dari sebagian besar teknik yang dijelaskan
dalam buku ini. Pernyataan ini mungkin pada awalnya tampak bertentangan dengan apa
yang biasanya conceives sebagai suara insinyur-neering. Siswa dan berlatih insinyur terus
berusaha untuk membatasi kesalahan dalam pekerjaan mereka. Saat mengambil ujian
atau melakukan masalah pekerjaan rumah, Anda dihukum, tidak dihargai, untuk
kesalahan Anda. Dalam praktek profesional, kesalahan dapat mahal dan kadang-kadang
bencana. Jika struktur atau perangkat gagal, nyawa bisa hilang.
Meskipun kesempurnaan adalah tujuan terpuji, jarang, jika pernah, dicapai. Sebagai
contoh, meskipun fakta bahwa model yang dikembangkan dari hukum kedua Newton adalah
pendekatan yang sangat baik, itu tidak akan pernah dalam praktek persis memprediksi musim
gugur penerjun ini. Berbagai faktor seperti angin dan sedikit variasi dalam hambatan udara
akan mengakibatkan penyimpangan dari prediksi. Jika penyimpangan ini sistematis tinggi
atau rendah, maka kita mungkin perlu untuk mengembangkan model baru. Namun, jika
mereka didistribusikan secara acak dan erat dikelompokkan di sekitar prediksi, maka
penyimpangan mungkin dianggap diabaikan dan model dianggap memadai. perkiraan numerik
juga memperkenalkan pertentangan yang serupa ke dalam analisis. Sekali lagi, pertanyaannya
adalah: Berapa banyak kesalahan berikutnya hadir dalam perhitungan dan itu ditoleransi?
Bab ini dan Chap. 4 penutup topik dasar yang berhubungan dengan identifikasi,
kuantifikasi, dan minimalisasi kesalahan ini. Dalam bab ini, informasi umum berkaitan
dengan kuantifikasi kesalahan ditinjau dalam bagian pertama. Ini diikuti dengan bagian pada
satu
52
3.1 ANGKA PENTING 53
dari dua bentuk utama dari kesalahan numerik: error round-off. Round-off error ini
disebabkan oleh fakta bahwa komputer dapat hanya mewakili jumlah dengan jumlah
terbatas digit. Kemudian Chap. 4 penawaran dengan besar bentuk lain: kesalahan
pemotongan. kesalahan pemotongan adalah perbedaan dalam-troduced oleh fakta bahwa
metode numerik dapat menggunakan perkiraan untuk mewakili operasi matematika yang
tepat dan kuantitas. Akhirnya, kita secara singkat membahas kesalahan tidak langsung
con-nected dengan metode numerik sendiri. Ini termasuk kesalahan, formulasi atau
kesalahan model, dan ketidakpastian data.
GAMBAR 3.1
Speedometer mobil dan odometer menggambarkan konsep angka yang signifikan.
40
60
40 80
20 100
0 120
8 7 3 2 4 4
5
54 Perkiraan DAN KESALAHAN ROUND-OFF
hanya dua digit pertama dapat digunakan dengan keyakinan. Perkiraan digit ketiga (atau
lebih tinggi) harus dilihat sebagai perkiraan. Ini akan menjadi menggelikan untuk
mengklaim, atas dasar speedometer ini, bahwa mobil tersebut berpergian di 48.8642138
km / jam. Sebaliknya, odome-ter menyediakan hingga enam digit tertentu. Dari Gambar.
3.1, kita dapat menyimpulkan bahwa mobil telah trav-eLED sedikit kurang dari 87,324.5
km selama masa pakai baterai. Dalam hal ini, angka tujuh (dan lebih tinggi) tidak pasti.
Konsep angka signifikan, atau digit, telah dikembangkan untuk secara resmi menunjuk
keandalan nilai numerik. The signifikan digit nomor adalah mereka yang dapat digunakan
dengan keyakinan. Mereka sesuai dengan jumlah digit tertentu ditambah satu estimasi digit.
Sebagai contoh, speedometer dan odometer pada Gambar. 3.1 pembacaan hasil tiga dan tujuh
angka signifikan, masing-masing. Untuk speedometer, dua digit tertentu
48. Hal ini konvensional untuk mengatur diperkirakan digit pada satu-setengah dari divisi
skala terkecil pada perangkat pengukuran. Dengan demikian speedometer membaca akan
terdiri dari tiga tokoh signifi-tidak bisa: 48,5. Dalam cara yang sama, odometer akan
menghasilkan tujuh signifikan angka pembacaan 87,324.45.
Meskipun biasanya prosedur sederhana untuk memastikan angka signifikan dari
nomor, beberapa kasus dapat menyebabkan kebingungan. Misalnya, angka nol tidak
selalu tokoh signifi-tidak bisa karena mereka mungkin diperlukan hanya untuk mencari
titik desimal. Angka-angka 0.00001845, 0.0001845, dan 0.001845 semua memiliki empat
angka penting. Demikian pula, ketika nol tertinggal digunakan dalam jumlah besar, tidak
jelas berapa banyak, jika ada, dari nol adalah signifikan. Sebagai contoh, pada nilai
nominal jumlah 45.300 mungkin memiliki tiga, empat, atau lima
signifikan digit, tergantung pada apakah angka nol yang dikenal dengan keyakinan.
ketidakpastian tersebut dapat diatasi dengan menggunakan notasi ilmiah, di mana 4.53 ×
4 4 4
10 , 4.530 × 10 , 4,5300 × 10 menandakan bahwa jumlah ini diketahui tiga, empat, dan
lima angka signifikan, masing-masing.
Konsep angka signifikan memiliki dua implikasi penting bagi penelitian kami
metode numerik:
1. Seperti yang diperkenalkan dalam masalah penerjun jatuh, metode numerik menghasilkan
hasil perkiraan. Kita harus, karena itu, mengembangkan kriteria untuk menentukan
seberapa yakin kita berada dalam hasil perkiraan kami. Salah satu cara untuk melakukan
ini adalah dalam hal angka signifikan. Sebagai contoh, kita mungkin memutuskan bahwa
pendekatan kami dapat diterima jika itu adalah benar untuk empat signifikan
angka. √
2. Meskipun jumlah seperti π, E, atau 7 mewakili jumlah tertentu, mereka tidak bisa
diungkapkan dengan tepat oleh sejumlah digit. Sebagai contoh,
π = 3.141592653589793238462643. . .
GAMBAR 3.2
Sebuah contoh dari keahlian menembak menggambarkan konsep akurasi dan presisi. (A) yang tidak
akurat dan tidak tepat; (B) yang akurat dan tepat; (C) tidak akurat dan tepat; (D) akurat dan tepat.
akurasi meningkat
meningkatkan presisi
(Sebuah) (B)
(C) (D)
56 Perkiraan DAN KESALAHAN ROUND-OFF
desain teknik. Dalam buku ini, kita akan menggunakan error istilah kolektif untuk mewakili
kedua ketidaktelitian dan ketidaktepatan dari prediksi kami. Dengan konsep ini sebagai latar
belakang, kita sekarang dapat membahas faktor-faktor yang berkontribusi terhadap kesalahan
perhitungan numerik.
εt = 100% = 10%
Dengan demikian, meskipun kedua pengukuran memiliki kesalahan dari 1 cm, kesalahan
relatif untuk keling jauh lebih besar. Kami akan menyimpulkan bahwa kita telah
melakukan pekerjaan yang memadai mengukur jembatan, sedangkan perkiraan kami
untuk rivet meninggalkan sesuatu yang diinginkan.
Perhatikan bahwa untuk pers. (3.2) dan (3.3), E danεyang subscript dengan di untuk
menandakan bahwa kesalahan adalah normal untuk nilai sebenarnya. Pada Contoh 3.1, kita
diberikan dengan nilai ini. Bagaimana-pernah, dalam situasi yang sebenarnya informasi
tersebut jarang tersedia. Untuk metode numerik, nilai sebenarnya akan diketahui hanya ketika
kita berurusan dengan fungsi yang dapat diselesaikan secara analitis. Seperti biasanya akan
terjadi ketika kita menyelidiki perilaku teoritis teknik tertentu untuk sistem yang sederhana.
Namun, dalam aplikasi dunia nyata, kita akan jelas tidak tahu jawaban yang benar apriori.
Untuk situasi ini, alternatif adalah untuk menormalkan kesalahan menggunakan estimasi
terbaik yang tersedia dari nilai sebenarnya, yaitu, untuk pendekatan itu sendiri, seperti dalam
kesalahan
εSebu perkiraan
ah = perkiraan 100% (3.4)
dimana subscript menandakan bahwa kesalahan adalah normal untuk nilai perkiraan.
Perhatikan juga bahwa untuk aplikasi dunia nyata, Persamaan. (3.2) tidak dapat digunakan
untuk menghitung jangka kesalahan untuk Eq. (3.4). Salah satu tantangan metode numerik
untuk menentukan perkiraan kesalahan dengan tidak adanya pengetahuan tentang nilai
sebenarnya. Sebagai contoh, metode numerik tertentu menggunakan pendekatan iteratif untuk
menghitung jawaban. Dalam pendekatan seperti itu, perkiraan sekarang ini dibuat atas dasar
pendekatan sebelumnya. Proses ini dilakukan berulang-, menduduki, atau iteratif, untuk
berturut-turut menghitung (kami berharap) perkiraan yang lebih baik dan lebih baik. Untuk
kasus seperti ini, kesalahan ini sering diperkirakan sebagai perbedaan antara perkiraan
sebelumnya dan saat ini. Dengan demikian, kesalahan persen relatif ditentukan menurut
nol, yang juga dapat menyebabkan kesalahan negatif. Seringkali, ketika melakukan
perhitungan, kita mungkin tidak peduli dengan tanda kesalahan, tapi kami tertarik apakah
nilai absolut persen lebih rendah dari toleransi persen sudah ditentukanεs. Oleh karena
itu, sering berguna untuk menggunakan nilai absolut dari pers. (3.2) melalui (3,5). Untuk
kasus tersebut, compu-tasi diulang sampai
2-n
εs = (0.5 ×10 )% (3.7)
CONTOH 3.2 Perkiraan kesalahan untuk Metode Iteratif
Pernyataan masalah. Dalam matematika, fungsi sering dapat diwakili oleh tak terbatas
seri. Misalnya, fungsi eksponensial dapat dihitung dengan menggunakan
2 3 n
x x x
x
e = 1+ x + 2 + 3! + · + n! (E3.2.1)
Dengan demikian, karena lebih banyak istilah ditambahkan dalam urutan, pendekatan menjadi
x
perkiraan yang lebih baik dan lebih baik dari nilai sebenarnya dari e . Persamaan (E3.2.1)
disebut ekspansi seri Maclaurin.
x
Dimulai dengan versi yang paling sederhana, e = 1, tambahkan hal satu per satu
0,5
untuk memperkirakan e . Setelah masing-masing istilah baru ditambahkan, menghitung
persen kesalahan relatif benar dan perkiraan dengan pers. (3.3) dan (3.5), masing-masing.
0,5
Perhatikan bahwa nilai sebenarnya adalah e =1,648721. . . . Tambahkan istilah sampai
nilai absolut dari perkiraan kesalahan perkiraanεSebuah jatuh di bawah kriteria kesalahan
prespeci-fied εs sesuai dengan tiga angka signifikan.
Larutan. Pertama, Eq. (3.7) dapat digunakan untuk menentukan kriteria kesalahan yang
menjamin Hasilnya adalah benar untuk setidaknya tiga angka penting:
2-3
εs = (0.5 ×10 )% =0.05%
Dengan demikian, kita akan menambahkan istilah untuk seri sampai εSebuah turun di
bawah tingkat ini.
Perkiraan pertama adalah hanya sama dengan Persamaan. (E3.2.1) dengan istilah tunggal.
Dengan demikian, perkiraan pertama adalah sama dengan 1. Perkiraan kedua ini kemudian
dihasilkan dengan menambahkan istilah kedua, seperti di
x
e = 1+ x
atau untuk x = 0,5,
0.5
e = 1+ 0.5= 1.5
Ini merupakan persen kesalahan relatif sejati [Eq. (3.3)]
1.648.721 - 1.5
εt = 100% = 9.02%
nol, yang juga dapat menyebabkan kesalahan negatif. Seringkali, ketika melakukan
perhitungan, kita mungkin tidak peduli dengan tanda kesalahan, tapi kami tertarik apakah
nilai absolut persen lebih rendah dari toleransi persen sudah ditentukanεs. Oleh karena
itu, sering berguna untuk menggunakan nilai absolut dari pers. (3.2) melalui (3,5). Untuk
kasus tersebut, compu-tasi diulang sampai
2-n
εs = (0.5 ×10 )% (3.7)
CONTOH 3.2 Perkiraan kesalahan untuk Metode Iteratif
Pernyataan masalah. Dalam matematika, fungsi sering dapat diwakili oleh tak terbatas
seri. Misalnya, fungsi eksponensial dapat dihitung dengan menggunakan
2 3 n
x x x
x
e = 1+ x + 2 + 3! + · + n! (E3.2.1)
Dengan demikian, karena lebih banyak istilah ditambahkan dalam urutan, pendekatan menjadi
x
perkiraan yang lebih baik dan lebih baik dari nilai sebenarnya dari e . Persamaan (E3.2.1)
disebut ekspansi seri Maclaurin.
x
Dimulai dengan versi yang paling sederhana, e = 1, tambahkan hal satu per satu
0,5
untuk memperkirakan e . Setelah masing-masing istilah baru ditambahkan, menghitung
persen kesalahan relatif benar dan perkiraan dengan pers. (3.3) dan (3.5), masing-masing.
0,5
Perhatikan bahwa nilai sebenarnya adalah e =1,648721. . . . Tambahkan istilah sampai
nilai absolut dari perkiraan kesalahan perkiraanεSebuah jatuh di bawah kriteria kesalahan
prespeci-fied εs sesuai dengan tiga angka signifikan.
Larutan. Pertama, Eq. (3.7) dapat digunakan untuk menentukan kriteria kesalahan yang
menjamin Hasilnya adalah benar untuk setidaknya tiga angka penting:
2-3
εs = (0.5 ×10 )% =0.05%
Dengan demikian, kita akan menambahkan istilah untuk seri sampai εSebuah turun di
bawah tingkat ini.
Perkiraan pertama adalah hanya sama dengan Persamaan. (E3.2.1) dengan istilah tunggal.
Dengan demikian, perkiraan pertama adalah sama dengan 1. Perkiraan kedua ini kemudian
dihasilkan dengan menambahkan istilah kedua, seperti di
x
e = 1+ x
atau untuk x = 0,5,
0.5
e = 1+ 0.5= 1.5
Ini merupakan persen kesalahan relatif sejati [Eq. (3.3)]
1.648.721 - 1.5
εt = 100% = 9.02%
3.3 DEFINISI ERROR 59
Persamaan (3.5) dapat digunakan untuk menentukan perkiraan perkiraan kesalahan,
seperti dalam
Sebu
ah = 1.5 =
ε 1.5 - 1 100% 33.3%
Karena εSebuah tidak kurang dari nilai yang dibutuhkan εs , Kami akan terus perhitungan
2
dengan menambahkan istilah lain, x /2 !, dan mengulangi kesalahan kalkulasi. Proses
dilanjutkan sampaiεSebuah <εs. Seluruh perhitungan dapat diringkas sebagai
εSebuah
Syarat Hasil εt (%) (%)
1 1 39,3
2 1,5 9.02 33.3
3 1,625 1,44 7,69
4 1,645833333 0,175 1,27
5 1,648437500 0,0172 0,158
6 1,648697917 0,00142 0,0158
Dengan demikian, setelah enam istilah disertakan, kesalahan perkiraan turun di bawah εs =
0.05% dan perhitungan dihentikan. Namun, perhatikan bahwa, daripada tiga angka penting,
hasilnya adalah akurat untuk lima! Hal ini karena, untuk kasus ini, baik pers. (3,5) dan (3,7)
adalah con-servative. Artinya, mereka memastikan bahwa hasilnya adalah setidaknya sebaik
mereka tentukan. Meskipun, seperti yang dibahas dalam Bab. 6, hal ini tidak selalu terjadi
untuk Eq. (3,5), memang benar sebagian besar waktu.
GAMBAR 3.3
Pseudocode untuk perhitungan berulang generik.
kemudian diuji. Jika kedua adalah palsu, loop mengulangi. Jika salah benar, loop berakhir
dan solusi akhir dikirim kembali ke panggilan fungsi. Contoh berikut menggambarkan
bagaimana algoritma generik dapat diterapkan untuk perhitungan berulang tertentu.
val =
2,718281826198493
ea =
9.216155641522974e-007
= iter
12
3.3 DEFINISI ERROR 61
Kita bisa melihat bahwa setelah 12 iterasi, kita memperoleh hasil dari 2,7182818
-7
dengan approxi-mate error estimasi = 9,2162 10 %. Hasilnya dapat diverifikasi dengan
menggunakan built-inexp fungsi untuk langsung menghitung nilai yang tepat dan benar
persen kesalahan relatif,
trueval =
2,718281828459046
Seperti halnya dengan Contoh 3.2, kita memperoleh hasil yang diinginkan bahwa
kesalahan yang benar adalah kurang dari kesalahan perkiraan.
(A) VBA / Excel dan (b) fungsi MATLAB berdasarkan pseudocode dari Gambar. 3.3.
Dengan definisi sebelumnya sebagai latar belakang, kita sekarang dapat melanjutkan
ke dua jenis kesalahan yang berhubungan langsung dengan metode numerik: kesalahan
round-off dan kesalahan pemotongan.
62 Perkiraan DAN KESALAHAN ROUND-OFF
4 3 2 1 0
10 10 10 10 10
8 6 4 0 9
93 1= 9
03 10 = 0
43 100 = 400
(Se
bua
h) 6 3 1.000 = 6.000
8 3 10.000 = 80.000
86.409
7 6 5 4 3 2 1 0
2 2 2 2 2 2 2 2
1 0 1 0 1 1 0 1
13 1 = 1
03 2 = 0
13 4 = 4
13 8 = 8
0 3 16 = 0
1 3 32 = 32
(B) 0 3 64 = 0
1 3 128 = 128
173
GAMBAR 3.5
Bagaimana (a) desimal (basis 10) dan (b) biner (basis 2) sistem kerja. Dalam (b),
bilangan biner 10.101.101 setara dengan angka desimal 173.
1000000010101101
Jumlah
Tanda
GAMBAR 3.6
Representasi dari bilangan bulat desimal -173 pada komputer 16-bit dengan
menggunakan metode besarnya ditandatangani.
bit sisanya digunakan untuk menyimpan nomor. Sebagai contoh, nilai integer dari-173
akan disimpan pada komputer 16-bit, seperti pada Gambar. 3.6.
Larutan. Dari 16 bit, bit pertama memegang tanda. Sisa 15 bit dapat memegang nomor
bi-nary dari 0 sampai 111111111111111. Batas atas dapat dikonversi ke integer desimal,
seperti dalam
14 13 1 0
(1 ×2 ) + (1 ×2 ) + · + (1 ×2 ) + (1 ×2 )
yang sama dengan 32.767 (perhatikan bahwa ungkapan ini dapat hanya dievaluasi
15
sebagai 2 -1). Dengan demikian, kata komputer 16-bit dapat menyimpan bilangan bulat
desimal mulai dari-32.767 untuk 32.767. Selain itu, karena nol sudah didefinisikan
sebagai 0000000000000000, itu berlebihan untuk menggunakan nomor
1000000000000000 untuk menentukan Oleh karena itu, biasanya digunakan untuk
mewakili angka negatif tambahan “minus nol.”:-32.768, dan kisaran adalah dari -32.768
untuk 32.767.
GAMBAR 3.7
cara di mana angka floating-point disimpan dalam sebuah kata.
Tertanda
eksponen
mantissa
Tanda
3,4 KESALAHAN ROUND-OFF 65
Perhatikan bahwa mantissa biasanya dinormalisasi jika sudah nol digit. Misalnya,
kuantitas 1/34 =0,029411765. . . disimpan dalam floating-point dasar-10 sys-tem yang
memungkinkan hanya empat tempat desimal untuk disimpan. Dengan demikian, 1/34 akan
disimpan sebagai
0
0.0294 × 10
Namun, dalam proses melakukan hal ini, dimasukkannya berguna nol di sebelah kanan
pasukan desimal kita untuk menjatuhkan angka 1 di tempat desimal kelima. Jumlah
tersebut bisa normal-terwujud untuk menghapus terkemuka nol dengan mengalikan
mantissa dengan 10 dan menurunkan expo-nen oleh 1 untuk memberikan
-1
0.2941 × 10
Dengan demikian, kita mempertahankan angka yang signifikan tambahan ketika nomor
disimpan.
Konsekuensi dari normalisasi adalah bahwa nilai absolut dari m terbatas. Itu adalah,
1
b ≤m<1 (3.8)
di mana b =dasar. Sebagai contoh, untuk sistem basis-10, m akan berkisar antara 0,1 dan
1, dan untuk sistem dasar-2, antara 0,5 dan 1.
Floating-point representasi memungkinkan kedua fraksi dan jumlah yang sangat
besar untuk diekspresikan pada komputer. Namun, ia memiliki beberapa kelemahan.
Misalnya, mengapung-ing-point nomor mengambil lebih banyak ruang dan memakan
waktu lebih lama untuk diproses daripada angka integer. Lebih penting lagi,
bagaimanapun, penggunaan memperkenalkan sumber kesalahan karena mantissa
memegang hanya jumlah terbatas angka signifikan. Dengan demikian, kesalahan round-
off diperkenalkan.
GAMBAR 3.8
Terkecil yang mungkin positif angka floating-point dari Contoh 3.5.
1 0
2 2 2-1 2-2 2-3
0 1 1 1 1 0 0
Besarnya
tanda tanda
mantissa
jumlah eksponen
Besarnya
eksponen
66 Perkiraan DAN KESALAHAN ROUND-OFF
Larutan. Sekecil mungkin angka positif digambarkan pada Gambar. 3.8. Awal 0 di-
dicates bahwa kuantitas positif. 1 di tempat kedua menunjuk bahwa eksponen memiliki
tanda negatif. 1 di tempat ketiga dan keempat memberikan nilai maksimal kepada
eksponen
1 0
1×2 +1×2 =3
Oleh karena itu, eksponen akan -3. Akhirnya, mantissa ditentukan oleh 100 di tiga tempat
terakhir, yang sesuai dengan
-1 -2 -3
1 × 2 + 0 × 2 + 0 × 2 = 0.5
Meskipun mantissa yang lebih kecil adalah mungkin (misalnya, 000, 001, 010, 011), nilai 100
digunakan karena batas yang dikenakan oleh normalisasi [Eq. (3.8)]. Dengan demikian,
-3
kemungkinan jumlah pos-itive terkecil untuk sistem ini adalah+0,5 × 2 , Yang sama dengan
0,0625 dalam sistem basis-10. Angka-angka tertinggi berikutnya dikembangkan dengan
meningkatkan mantissa, seperti dalam
-1 -2 -3 -3
0111101 = (1 × 2 + 0 × 2 + 1 × 2 ) × 2 = (0.078.125)10
-1 -2 -3 -3
0111110 = (1 × 2 + 1 × 2 + 0 × 2 ) × 2 = (0.093.750)10
-1 -2 -3 -3
0111111 = (1 × 2 + 1 × 2 + 1 × 2 ) × 2 = (0.109.375)10
Perhatikan bahwa dasar-10 setara ditempatkan secara merata dengan selang waktu
0,015625.
Pada titik ini, untuk terus meningkatkan, kita harus mengurangi eksponen ke 10,
yang memberikan nilai
1 0
1×2 +0×2 =2
mantissa menurun kembali ke nilai terkecil dari 100. Oleh karena itu, nomor berikutnya
adalah
-1 -2 -3 -2
0110100 = (1 × 2 + 0 × 2 + 0 × 2 ) × 2 = (0.125000)10
Ini masih merupakan kesenjangan 0.125000 - 0.109375 =0,015625. Namun, sekarang ketika
nomor yang lebih tinggi dihasilkan dengan meningkatkan mantissa, kesenjangan yang
diperpanjang ke 0,03125,
-1 -2 -3 -2
0110101 = (1 × 2 + 0 × 2 + 1 × 2 ) × 2 = (0.156.250)10
-1 -2 -3 -2
0110110 = (1 × 2 + 1 × 2 + 0 × 2 ) × 2 = (0.187.500)10
-1 -2 -3 -2
0110111 = (1 × 2 + 1 × 2 + 1 × 2 ) × 2 = (0.218.750)10
Pola ini diulang setiap kuantitas yang lebih besar diformulasikan sampai jumlah
maksimum tercapai,
-1 -2 -3 3
0011111 = (1 × 2 + 1 × 2 + 1 × 2 ) × 2 = (7)10
Jumlah set terakhir digambarkan secara grafis pada Gambar. 3.9.
memotong pembulatan
x - Dx x - Dx x + Dx
Dx Dx/ 2 Dx/ 2
7
0 Meluap
Underflow “lubang”
nol
GAMBAR 3.9
Sistem nomor hipotetis dikembangkan pada Contoh 3.5. Setiap nilai ditunjukkan
dengan tanda centang. Hanya bilangan positif yang akan ditampilkan. Set identik juga
akan memperluas ke arah negatif.
Gambar. 3.9, memotong berarti bahwa setiap kuantitas yang berada dalam selang
waktu panjang x akan disimpan sebagai kuantitas di ujung bawah dari interval.
Dengan demikian, kesalahan atas menuju memotong adalah x. Selain itu, bias
diperkenalkan karena semua kesalahan yang positif. Kekurangan memotong yang
disebabkan fakta bahwa istilah yang lebih tinggi dalam representasi desimal lengkap
tidak berdampak pada versi singkat. Misalnya, dalam contoh kamiπ, Angka dibuang
pertama adalah 6. Jadi, digit dipertahankan terakhir harus dibulatkan untuk
menghasilkan 3,141593. pembulatan seperti mengurangi kesalahan
U t = -0.00000035. . .
Akibatnya, pembulatan menghasilkan kesalahan absolut lebih rendah dari memotong.
Perhatikan bahwa untuk sistem nomor dasar-2 pada Gambar. 3.9, pembulatan berarti
bahwa setiap kuantitas jatuh dalam sebuah di-terval panjang x akan direpresentasikan
sebagai jumlah yang diijinkan terdekat. Dengan demikian, kesalahan atas menuju
pembulatan adalah x/2. Selain itu, ada bias diperkenalkan karena beberapa kesalahan yang
positif dan beberapa negatif. Beberapa komputer mempekerjakan pembulatan. Namun, ini
menambah overhead komputasi, dan, akibatnya, banyak mesin menggunakan memotong
sederhana. Pendekatan ini dibenarkan dalam anggapan bahwa jumlah angka signifikan
cukup besar yang mengakibatkan error round-off biasanya diabaikan.
• Interval antara Numbers, x, Meningkatkan sebagai Bilangan Tumbuh di Magnitude. Ini
adalah karakteristik ini, tentu saja, yang memungkinkan floating-point representasi untuk
melestarikan signifikan digit. Namun, itu juga berarti bahwa mengkuantisasi kesalahan
akan sebanding dengan besarnya jumlah yang diwakili. Untuk normalisasi floating-point
num-bers, proporsionalitas ini dapat dinyatakan, untuk kasus-kasus di mana memotong
digunakan, seperti
| x| (3.9)
x
| | ≤
dan, untuk kasus-kasus di mana pembulatan digunakan, seperti
| x| (3.10)
x ≤ 2
| |
di mana disebut sebagai epsilon mesin, yang dapat dihitung sebagai
b1-t (3.11)
=
di mana b adalah bilangan basis dan t adalah jumlah angka signifikan di mantissa.
Perhatikan bahwa ketidaksetaraan dalam pers. (3.9) dan (3.10) menandakan bahwa ini
adalah batas kesalahan.
Artinya, mereka menentukan kasus-kasus terburuk.
relatif terbesar
kesalahan
GAMBAR 3.10
Kesalahan quantizing terbesar akan terjadi karena nilai-nilai jatuh tepat di bawah batas
atas yang pertama dari serangkaian interval equispaced.
Akibatnya, kesalahan kuantisasi relatif harus dibatasi oleh 0,25 untuk mencacah.
Kesalahan relatif terbesar harus terjadi bagi mereka jumlah yang jatuh tepat di bawah
batas atas interval pertama antara nomor equispaced berturut-turut (Gbr. 3.10). Angka-
angka yang jatuh di interval yang lebih tinggi berhasil akan memiliki nilai yang sama dari
x tetapi nilai yang lebih besar dari x dan, karenanya, akan memiliki kesalahan relatif lebih
rendah. Contoh dari kesalahan maksimum akan menjadi nilai jatuh tepat di bawah batas
atas interval antara (0.125000)10 dan (0.156250)10. Untuk kasus ini, kesalahan akan
kurang dari
0.03.125 = 0.25
0.125000
Dengan demikian, kesalahan adalah seperti yang diperkirakan oleh Persamaan. (3.9).
Dengan ini mengakui, masih ada kasus-kasus di mana kesalahan round-off menjadi
penting. Untuk alasan ini kebanyakan komputer memungkinkan spesifikasi presisi
diperpanjang. Yang paling umum ini adalah ganda presisi, di mana jumlah kata yang
digunakan untuk menyimpan angka floating-point dua kali lipat. Ini menyediakan sekitar
-308 308
15 sampai 16 digit desimal presisi dan jangkauan sekitar 10 10 .
Dalam banyak kasus, penggunaan jumlah presisi ganda dapat sangat mengurangi dampak
dari kesalahan round-off. Namun, harga yang dibayar untuk obat tersebut dalam bahwa
mereka juga memerlukan lebih banyak memori dan waktu pelaksanaan. Perbedaan waktu
eksekusi untuk perhitungan kecil mungkin tampak tidak signifikan. Namun, seperti program-
program anda menjadi lebih besar dan lebih rumit, waktu eksekusi menambahkan bisa
menjadi cukup besar dan memiliki dampak negatif pada ef-fectiveness Anda sebagai pemecah
masalah. Oleh karena itu, presisi diperpanjang tidak boleh digunakan frivo-lously. Sebaliknya,
harus selektif dipekerjakan di mana itu akan menghasilkan manfaat yang maksimal dengan
biaya paling tidak dalam hal waktu eksekusi. Pada bagian berikut, kita akan melihat lebih
dekat bagaimana kesalahan round-off mempengaruhi perhitungan,
Sebelum melanjutkan, perlu dicatat bahwa beberapa perangkat lunak paket-usia yang
umum digunakan (misalnya, Excel, Mathcad) secara rutin menggunakan presisi ganda untuk
mewakili jumlah numerik. Dengan demikian, para pengembang paket ini memutuskan bahwa
mengurangi kesalahan round-off akan didahulukan dari pada kehilangan kecepatan yang
dikeluarkan dengan menggunakan presisi diperpanjang. Lainnya, seperti perangkat lunak
MATLAB, memungkinkan Anda untuk menggunakan presisi diperpanjang, jika Anda
inginkan.
Perhatikan bahwa jenis kesalahan diilustrasikan oleh contoh sebelumnya agak atipikal dalam
bahwa semua kesalahan dalam operasi berulang adalah tanda yang sama. Dalam kebanyakan kasus
kesalahan dari tanda alternatif perhitungan panjang secara acak dan, dengan demikian, sering
membatalkan. Namun, ada juga kasus di mana kesalahan tersebut tidak membatalkan tetapi, pada
kenyataannya, menyebabkan hasil akhir palsu. Bagian berikut ini dimaksudkan untuk memberikan
wawasan cara di mana ini dapat terjadi.
Menambahkan Besar dan Nomor Kecil. Misalkan kita menambahkan sejumlah kecil,
0,0010, ke sejumlah besar, 4000, menggunakan komputer hipotetis dengan mantissa 4-
digit dan eksponen 1-digit. Kami mengubah jumlah yang lebih kecil sehingga eksponen
sesuai dengan yang lebih besar,
4
0,4000 · 104
0.0000001 · 10
4
0.4000001 · 10
3,4 KESALAHAN ROUND-OFF 73
4
yang cincang ke 0,4000 · 10 . Dengan demikian, kita juga belum dilakukan penambahan!
Jenis kesalahan ini dapat terjadi dalam perhitungan seri terbatas. Istilah awal dalam
seri tersebut sering relatif besar dibandingkan dengan istilah nanti. Dengan demikian,
setelah beberapa hal telah ditambahkan, kita berada dalam situasi menambahkan jumlah
kecil untuk jumlah besar.
Salah satu cara untuk mengurangi jenis kesalahan adalah untuk jumlah seri secara
terbalik agar-yang, di naik daripada urutan. Dengan cara ini, setiap istilah baru akan
besarnya sebanding dengan jumlah akumulasi (lihat Prob. 3,5).
Pembatalan subtraktif. Istilah ini mengacu pada babak-off diinduksi ketika
mengurangkan dua angka floating-point hampir sama.
Salah satu contoh umum di mana ini dapat terjadi melibatkan menemukan akar
persamaan kuadrat atau parabola dengan rumus kuadrat,
√
2
x1 -b ± b - 4ac (3.12)
x2 = 2a
2
Untuk kasus di mana b 4ac, perbedaan dalam pembilang bisa sangat kecil. Dalam kasus
tersebut, presisi ganda dapat mengurangi masalah. Selain itu, formulasi alternatif dapat
digunakan untuk meminimalkan pembatalan subtraktif,
x1 -2c (3.13)
x = √ 2
2 b ± b - 4ac
Sebuah ilustrasi dari masalah dan penggunaan rumus ini alternatif disediakan dalam
contoh berikut.
'Presisi ganda:
(b)= 1: bb = 3000,001: cc = 3
dd = Sqr (bb * bb - 4 * aa * cc)
x11 = (-bb + dd) / (2 * aa)
x22 = (-bb - dd) / (2 * aa)
Perhatikan bahwa, seperti dalam contoh di atas, ada saat di mana pembatalan
subtraktif dapat dielakkan dengan menggunakan transformasi. Namun, satu-satunya obat
umum adalah dengan menggunakan presisi diperpanjang.
Mengolesi. Mengolesi terjadi jika persyaratan individu dalam penjumlahan yang lebih
besar dari penjumlahan itu sendiri. Seperti dalam contoh berikut, satu kasus di mana ini
terjadi adalah di se-luka dari tanda-tanda campuran.
x
CONTOH 3.9 Evaluasi e menggunakan Tak Terbatas Series
x
Pernyataan masalah. Fungsi eksponensial y = e diberikan oleh seri terbatas
x2 x3
v =1+x+ + +·
23!
Evaluasi fungsi ini untuk x = 10 dan x = -10, dan menjadi perhatian untuk masalah error
round-off.
Larutan. Gambar 3.14a memberikan program Excel / VBA yang menggunakan seri
x
terbatas untuk mengevaluasi e . Variabel i adalah jumlah istilah dalam seri, istilah nilai
76 Perkiraan DAN KESALAHAN ROUND-OFF
jumlahnya jauh lebih besar daripada hasil akhir dari penjumlahan. Selanjutnya, tidak
seperti kasus sebelumnya, istilah individu bervariasi dalam tanda. Dengan demikian, pada
dasarnya kita menambah dan mengurangi jumlah besar (masing-masing dengan beberapa
kesalahan kecil) dan menempatkan signifikansi besar pada differences- yaitu, pembatalan
subtraktif. Dengan demikian, kita dapat melihat bahwa penyebab di balik contoh ini
mengolesi adalah, pada kenyataannya, pembatalan subtraktif. Untuk kasus seperti itu
adalah tepat untuk mencari beberapa strategi komputasi lainnya. Misalnya, orang
10 -1 10
mungkin mencoba untuk menghitung y= e sebagai y = (e ) . Selain reformulasi
tersebut, satu-satunya jalan umum presisi diperpanjang.
Produk batin. Seperti harus jelas dari bagian terakhir, beberapa seri terbatas yang partic-
ularly rawan kesalahan round-off. Untungnya, perhitungan seri tidak salah satu operasi
yang lebih umum dalam metode numerik. Sebuah manipulasi jauh lebih di mana-mana
adalah perhitungan produk batin, seperti dalam
n
xsaya ysaya = x1 y1 + x2 y2 + · + xn yn
+ =1
Operasi ini sangat umum, terutama dalam pemecahan simultan linear persamaan alge-
braic. penjumlahan tersebut rawan kesalahan round-off. Akibatnya, sering diinginkan
untuk menghitung penjumlahan tersebut dalam presisi diperpanjang.
Meskipun bagian sebelumnya harus menyediakan aturan praktis untuk mengurangi
kesalahan round-off, mereka tidak menyediakan cara langsung di luar trial and error
untuk benar-benar mengetahui pengaruh kesalahan tersebut pada suatu perhitungan.
Dalam Chap. 4, kami akan memperkenalkan seri Taylor, yang akan memberikan
pendekatan matematika untuk memperkirakan efek ini.
MASALAH
menghitung f(n) untuk n = 10.000 dengan menghitung jumlah
3.1 Mengkonversi berikut nomor basis-2 untuk dasar-10: (Sebuah) dari i= 1 sampai 10.000. Kemudian ulangi perhitungan tetapi
1011001, secara terbalik agar-yang, dari
49.110,00101 dan (C) 0,01011 2. = 10.000-1 menggunakan kelipatan -1. Dalam setiap
3.2 Mengkonversi berikut dasar-8 angka untuk mendasarkan 10: kasus, menghitung benar persen kesalahan relatif. Menjelaskan
71.563 dan hasil.
3.14.
3.3 Menulis program Anda sendiri berdasarkan Gambar. 3.11 dan
menggunakannya untuk menentukan mesin komputer Anda
epsilon.
3.4 Dengan cara yang sama dengan yang di Gambar. 3.11,
menulis sebuah program singkat untuk menentukan jumlah
terkecil, xmin, Digunakan pada komputer Anda akan
menggunakan bersama dengan buku ini. Perhatikan bahwa
komputer Anda tidak akan dapat diandalkan membedakan antara
nol dan kuantitas yang lebih kecil dari nomor ini.
3,5 Seri terbatas
n
1
f (n) =
4
saya =1 saya
4
konvergen pada nilai f (n) = π /90 sebagai n mendekati tak
terhingga. Menulis sebuah program dalam presisi tunggal untuk
-5
3.6 Evaluasi e menggunakan dua pendekatan
x2
e-x =1-x+ - x3 + ·
2 3!
dan
1 1
-x
e = x
e = x
2
x
3
1+x+ 2 + 3! +·
-3
dan bandingkan dengan nilai sebenarnya dari 6.737.947 × 10 .
Gunakan 20 hal untuk mengevaluasi setiap seri dan menghitung
kesalahan relatif benar dan perkiraan sebagai istilah ditambahkan.
2
3.7 Turunan dari f(x) = 1/ (1 - 3x ) diberikan oleh
6x
2 2
(1 -3x )
Apakah Anda berharap untuk memiliki kesulitan mengevaluasi
fungsi ini di x = 0.577? Cobalah menggunakan 3 dan 4 digit
aritmatika dengan memotong.3.8 (Sebuah) Mengevaluasi
polinomial
3 2
y = x - 7x + 8x- 0.35
MASALAH 77
4.1 TAYLOR SERIES 85
pada x = 1.37. Gunakan 3-digit aritmatika dengan memotong. Mengevaluasi persen kesalahan relatif.
π Ulangi (Sebuah) tapi mengungkapkan y sebagai
(b) = ((x - 7)x + 8)x - 0.35
Mengevaluasi kesalahan dan membandingkan dengan bagian (Sebuah).
3.9 Hitung random access memory (RAM) dalam megabyte diperlukan untuk menyimpan array multidimensi yang 20 × 40 ×120. Array ini adalah
10
presisi ganda, dan masing-masing nilai memerlukan kata 64-bit. Ingat bahwa kata 64-bit= 8 byte dan 1 kilobyte = 2 bytes. Asumsikan bahwa
indeks dimulai pada 1.
3.10 Menentukan jumlah istilah yang diperlukan untuk cos perkiraan x 8 angka signifikan menggunakan pendekatan deret Maclaurin
2 4 6 8
x x x x
cos x = 1 - 2 +4! - 6! + 8! - ·
Hitung perkiraan menggunakan nilai x = 0.3π. Menulis sebuah program untuk menentukan hasil Anda.
4.1 TAYLOR SERIES 86
3.11 Gunakan 5-digit aritmatika dengan memotong untuk menentukan akar mengikuti persamaan dengan pers. (3.12) dan (3.13)
2
x - 5000.002x+ 10
Menghitung persen kesalahan relatif untuk hasil Anda.
3.12 Bagaimana mesin epsilon digunakan untuk merumuskan menghentikan kriteria εsuntuk program Anda? Memberikan contoh.
3.13 The “membagi dan rata-rata” metode, metode lama-waktu untuk ap-proximating akar kuadrat dari setiap nomor positif, bisa untuk-mulated
sebagai
(c) = x + Sebuah/x 2
Menulis fungsi yang terstruktur dengan baik untuk menerapkan algoritma ini didasarkan pada algoritma yang diuraikan dalam Gambar. 3.3.
Meskipun, seperti yang dinyatakan dalam bagian sebelumnya, orde rendah derivatif biasanya account untuk
bagian yang lebih besar dari sisa dari istilah tingkat tinggi, hasil ini masih tidak tepat karena istilah kedua dan
tingkat tinggi diabaikan. Ini “inexactness” tersirat dengan simbol kesetaraan perkiraan (~) digunakan dalam
Persamaan. (4.9). =
Penyederhanaan alternatif yang mengubah pendekatan ke dalam sebuah kesetaraan didasarkan pada
wawasan grafis. Seperti pada Gambar. 4.3, turunan rata-nilai teorema menyatakan bahwa jika fungsi f (x) dan
turunan pertama yang kontinu pada interval dari xi ke xi + 1, maka ada exists setidaknya satu titik pada
fungsi yang memiliki kemiringan, ditunjuk oleh fj (ξ), yang sejajar dengan garis yang menghubungkan f (xi)
dan f (xi + 1). Parameter ξ menandai x nilai di mana kemiringan ini terjadi (Gambar. 4.3). Sebuah ilustrasi
fisik dari teorema ini adalah bahwa, jika Anda bepergian antara dua titik dengan kecepatan rata-rata, akan ada
setidaknya satu saat selama perjalanan ketika Anda akan bergerak pada saat itu kecepatan rata-rata.
Dengan memberlakukan teorema ini sederhana untuk menyadari bahwa, seperti yang diilustrasikan pada Gambar.
4.3, lereng
f j(Ξ) adalah sama dengan kenaikan R0 dibagi dengan jangka h, atau
R0
f j(Ξ) h =
yang dapat disusun kembali untuk memberikan
R0 = f j(ξ )h (4.10)
Dengan demikian, kami telah diturunkan versi zero-order dari Persamaan. (4.8). Versi yang lebih tinggi-
order hanyalah perpanjangan logis dari penalaran digunakan untuk menurunkan persamaan. (4.10). Versi
pertama-order
f jj(ξ ) 2 (4.11)
R1 = H
2!
GAMBAR 4.3
penggambaran grafis dari rata-nilai teorema derivatif.
f (X)
Slope = f '(( )
Slope = R0 R0
h
xsaya ( xsaya 1 x
Untuk kasus ini, nilai ξ sesuai dengan nilai x sesuai dengan turunan kedua yang membuat Persamaan. (4.11)
tepat. versi yang lebih tinggi-order yang sama dapat dikembangkan dari Persamaan. (4.8).
Menggunakan Seri Taylor untuk Perkiraan Kesalahan pemotongan
Meskipun seri Taylor akan sangat berguna dalam memperkirakan kesalahan pemotongan melalui-buku
ini, hal itu mungkin tidak jelas bagi Anda bagaimana ekspansi sebenarnya dapat diterapkan untuk nu-
metode merical. Bahkan, kami sudah melakukannya dalam contoh kita tentang penerjun jatuh. Ingat bahwa
tujuan dari kedua Contoh 1.1 dan 1.2 adalah untuk memprediksi kecepatan sebagai fungsi waktu. Artinya,
kami tertarik dalam menentukan v (t). Sebagaimana ditentukan oleh Persamaan. (4,5), v (t) dapat diperluas
dalam serangkaian Taylor:
vjj(Ti)
v (t say ) = v (t) + v (t say - t s) +
j
say - t ) 2+ ··· + R n (4.12)
a 1 ) (T a1 a 2! a1
s s (t s
a a a
Sekarang mari kita memotong seri setelah jangka turunan pertama:
z ˛ ¸ s z ˛ ¸ s
Pertama -Hai rDEr Trun c atio n
approximationerror
Bagian pertama dari Persamaan. (4.14) adalah persis hubungan yang sama yang digunakan untuk mendekati
turunan dalam Contoh 1.2 [Eq. (1.11)]. Namun, karena pendekatan deret Taylor, kita sekarang memperoleh
perkiraan kesalahan pemotongan terkait dengan tion yang mendekati ini dari turunan. Menggunakan pers.
(4.6) dan (4.14) hasil
vjj(Ξ) = (ti1 - ti) (4.15)
ti +t1+i 2!
atau
R1
= O(ti1 - ti) (4.16)
ti 1 - ti
Dengan demikian, estimasi [Eq derivatif. (1.11) atau bagian pertama dari Persamaan. (4.14)] memiliki
kesalahan tion trunca- order ti + 1 ti. Dengan kata lain, kesalahan pendekatan derivatif kami harus
-
proporsional dengan ukuran langkah. Akibatnya, jika kita membagi dua ukuran langkah, kita akan
mengharapkan untuk membagi dua kesalahan derivatif.
CONTOH 4.3 Pengaruh Non-linear dan Langkah Ukuran pada Pernyataan Taylor Series
Pendekatan Masalah. Gambar 4.4 adalah plot dari fungsi
f (x) = xm (E4.3.1)
==
untuk m 1, 2, 3, dan 4 selama rentang dari x 1 ke 2. Perhatikan bahwa untuk m 1=fungsi ini linear,
dan dengan meningkatnya m, lebih kelengkungan atau non-linear diperkenalkan ke dalam fungsi .
f (X)
15
10
0
1 2 x
GAMBAR 4.4
Plot fungsi f (X) = xm untuk=m 1, 2, 3, dan 4. Perhatikan bahwa fungsi
menjadi lebih nonlinear sebagai m meningkat.
Mempekerjakan orde pertama deret Taylor untuk perkiraan fungsi ini untuk berbagai nilai
eksponen m dan ukuran langkah h.
Larutan. Persamaan (E4.3.1) dapat didekati dengan orde pertama seri ekspansi Taylor,
seperti dalam
f (xi 1 ) = f(Xi) + Mxm-1h
s (E4.3.2)
a
yang memiliki sisa satu
R1 = 0
Sisanya adalah nol karena turunan kedua dan lebih tinggi dari fungsi linear adalah nol.
Dengan demikian, seperti yang diharapkan, pertama-order Taylor ekspansi seri sempurna
ketika fungsi berbaring di bawah- adalah linear.
m 2, nilai aktual adalah f (2) 2 2 4.=orde pertama deret Taylor yang mendekati
Untuk ==
tion adalah
f (2) = 1 + 2 (1) = 3
dan
R1 = 2 (1)22 + 0 + 0 + · = 1
Dengan demikian, karena fungsi adalah parabola, hasil pendekatan garis lurus dalam
crepancy dis. Perhatikan bahwa sisanya ditentukan persis.
Untuk m = 3, nilai aktual adalah f (2) = 23 = 8. pendekatan deret Taylor adalah
f (2) = 1 + 3 (1) 2 (1) = 4
dan
R1 = 6 (1) 6
2 2 + (1)
6 3 + 0 + 0 + ··· = 4
Sekali lagi, ada perbedaan yang dapat ditentukan secara pasti dari seri Taylor. Untuk
m = 4, nilai aktual adalah f (2) = 24 = 16. pendekatan deret Taylor adalah
f (2) = 1 + 4 (1) 3 (1) = 5
dan
R1 = 12 (1)
2 2+
24
(1)
6 3 + 2424(1) 4 + 0 + 0 + ··· = 11
Atas dasar empat kasus ini, kita mengamati bahwa R1 meningkat sebagai fungsi
menjadi lebih nonlinear. Selanjutnya, R1 menyumbang persis untuk perbedaan tersebut.
Hal ini karena Persamaan. (E4.3.1) adalah monomial sederhana dengan jumlah terbatas
derivatif. Hal ini memungkinkan penentuan plete com- dari seri sisa Taylor.
Berikutnya, kita akan memeriksa Persamaan. (E4.3.2) untuk kasus m = 4 dan
mengamati bagaimana perubahan R1 sebagai ukuran langkah h bervariasi. Untuk m = 4,
Persamaan. (E4.3.2) adalah
3
f (x + h) = f(X) + 4x
s h
a
Jika x = 1, f (1) = 1 dan persamaan ini dapat dinyatakan sebagai
f (1 + h) = 1 + 4h
dengan sisa
R1 = 6h2 + 4h3 + h4
R1
10
0,1
|Lereng| = 2
0.01
0,001
1 0,1 0,01 h
GAMBAR 4.5
Log-log plot sisa R1 dari orde pertama deret Taylor dari fungsi f (x) x 4 versus
ukuran
= langkah h. Sebuah garis dengan kemiringan 2 juga ditampilkan untuk
menunjukkan bahwa sebagai h menurun, kesalahan menjadi sebanding dengan
h2.
4
MEJA 4.2 Perbandingan nilai yang tepat dari fungsi f (x) = x dengan orde
pertama seri Taylor pendekatan. Kedua fungsi dan pendekatan yang
dievaluasi pada x + h, di mana x = 1.
Pesanan pertama
h Benar Perkiraan R1
1 16 5 11
0,5 5,0625 3 2,0625
0.25 2.441406 2 0.441406
0.125 1.601807 1,5 0.101807
0,0625 1.274429 1,25 0.024429
0,03125 1.130982 1,125 0.005982
0.015625 1.063980 1,0625 0.001480
Hal ini mengarah pada kesimpulan bahwa perbedaan tersebut akan berkurang h
berkurang. Juga, pada nilai-nilai ficiently kecil suf- h, kesalahan harus menjadi sebanding
dengan h2. Artinya, sebagai h dibelah dua, kesalahan akan dipotong. Perilaku ini
dikonfirmasi oleh Tabel 4.2 dan Gambar. 4.5.
Dengan demikian, kami menyimpulkan bahwa kesalahan dari orde pertama deret Taylor
menurun sebagai m pendekatan 1 dan sebagai h menurun. Secara intuitif, ini berarti bahwa
seri Taylor
menjadi lebih akurat ketika fungsi kita mendekati menjadi lebih seperti garis lurus selama interval bunga
Diferensiasi numerik
Persamaan (4.14) diberi label formal dalam numerik metode-itu disebut perbedaan dibagi
terbatas. Hal ini dapat direpresentasikan secara umum sebagai
j f (xi1 ) - f(xi )
(x ) =
fO(x + -x) (4.17)
s
a xsaya 1 - xsaya saya +1 saya
at
au Dari saya
f j(x ) = + O(h) (4.18)
s
h sebagai perbedaan maju pertama dan h disebut ukuran langkah, yaitu,
mana O afi disebut
panjang interval di mana pendekatan yang dibuat. Hal ini disebut sebagai “maju”
perbedaan karena menggunakan data pada saya+ dan saya 1 untuk memperkirakan turunan
(Gambar. 4.6a). Seluruh jangka O f / h disebut sebagai perbedaan dibagi terbatas pertama.
Perbedaan ini ke depan dibagi adalah salah satu dari banyak yang dapat
dikembangkan dari seri Taylor untuk derivatif perkiraan numerik. Misalnya, mundur dan
berpusat perkiraan perbedaan turunan pertama dapat dikembangkan dengan cara yang
sama dengan derivasi dari Persamaan. (4.14). Mantan memanfaatkan nilai-nilai di xi-1
dan xi (Gambar. 4.6b), sedangkan yang terakhir menggunakan nilai-nilai yang sama spasi
sekitar titik di mana turunan adalah es- timated (Gambar. 4.6c). perkiraan yang lebih
akurat dari turunan pertama dapat dikembangkan dengan memasukkan tingkat tinggi dari
segi seri Taylor. Akhirnya, semua versi di atas juga dapat dikembangkan untuk derivatif
kedua, ketiga, dan lebih tinggi. Bagian berikut memberikan ringkasan singkat yang
menggambarkan bagaimana beberapa kasus-kasus ini berasal.
Mundur Perbedaan Pendekatan dari Derivatif Pertama. Seri Taylor bisa diperluas
ke belakang untuk menghitung nilai sebelumnya atas dasar nilai sekarang, seperti dalam
(xsaya )
f (x say ) = f(x ) - fj(x ) h + f jj h2 - · · · (4.19)
a s s
a a 2!
Truncating persamaan ini setelah turunan pertama dan menata ulang
hasil
f (xsaya ) - f (xi-1) ∇ f1 (4.20)
f j(x)s ~= =
a h h
di mana kesalahan adalah O∇(h), dan fi disebut sebagai perbedaan mundur pertama. Lihat
Gambar. 4.6b untuk representasi grafis.
3.4 ROUND-OFF KESALAHAN 75
(a) Program
(b) Evaluasi e10
Option Explicit Sub
fig0314 ()
Istilah Dim Sebagai Single, uji Sebagai
Single Dim sum Sebagai Single, x
As Single Dim i As Integer
i = 0: Istilah = 1 #: sum = 1 #:. test = 0
# Sheets ( "sheet1") Pilih Range
( "b1") Pilih.
x = ActiveCell.Value Range.. ( "a3: c1003")
ClearContents Range ( "a3") Pilih
Melakukan
Jika sum = test Kemudian Exit
Do ActiveCell.Value = i
ActiveCell.Offset (0, 1) (c) Evaluasi e10
.Select ActiveCell.Value =
jangka ActiveCell.Offset (0, 1)
.Select ActiveCell.Value = sum
ActiveCell.Offset (1, -2 )
.Select i = i + 1
test = sum
Istilah = x ^ i / _
Application.WorksheetFunction.Fact
(i)
sum = sum +
jangka Simpul
ActiveCell.Offset (0, 1) .Select
ActiveCell.Value = "value Exact ="
ActiveCell.Offset (0, 1) .Select
ActiveCell.Value = Exp (x)
end Sub
GAMBAR 3.14
(Sebuah) Sebuah program Excel / VBA untuk mengevaluasi e x menggunakan seri terbatas. (b) Evaluasi ex.
(c) Evaluasi e-x.
Istilah saat ini ditambahkan ke seri, dan jumlah adalah nilai akumulatif dari seri. Tes
mampu variabel- adalah nilai akumulatif sebelumnya dari seri sebelum menambahkan
istilah. Serial ini dihentikan saat komputer tidak dapat mendeteksi perbedaan antara tes
dan sum.
Gambar 3.14b menunjukkan hasil menjalankan program = untuk x 10. Perhatikan
bahwa hal ini benar-benar memuaskan. Hasil akhir yang dicapai dalam 31 hal dengan seri
identik dengan nilai fungsi perpustakaan dalam waktu tujuh angka signifikan.
Gambar 3.14c menunjukkan hasil yang=sama - untuk x 10. Namun, untuk kasus ini,
hasil perhitungan seri bahkan tidak tanda sama dengan hasil yang benar. Sebagai soal
fakta, hasil negatif terbuka untuk pertanyaan serius karena mantan tidak pernah bisa
kurang dari nol. Masalahnya di sini adalah disebabkan oleh kesalahan round-off.
Perhatikan bahwa banyak istilah yang membentuk
4.1 TAYLOR SERIES 91
f (X)
xsaya xsaya1 x
(Sebuah)
f (X)
xsaya -1 xsaya x
(B)
f (X)
2h
xsaya -1 xsaya1 x
(C)
GAMBAR 4.6
penggambaran grafis dari (Sebuah) Depan, (b) Mundur, dan (c) Berpusat perkiraan terbatas-dibagi-
perbedaan turunan pertama.
Berpusat Perbedaan Pendekatan dari Derivatif Pertama. Cara ketiga untuk kira-
kawin turunan pertama adalah untuk mengurangi Persamaan. (4,19) dari ekspansi ke
depan Taylor seri:
(xsaya ) 2 + ·
f (x ) = f(x ) + fj(x ) h + f jj h ·· (4.21)
saya +1 saya
2!
untuk menghasilkan saya
j 2 f (3)(xsaya ) 3
f j(Xi) =
f (xi1) - f(xi-1) f (3)(Xi)
- ···
atau 2h 2
- h
6
(x saya 1 ) - f(x saya -1 )
f j(x ) = f - O(h2) (4.22)
s
a 2h
Persamaan (4.22) perbedaan representasi berpusat dari turunan pertama. Perhatikan
bahwa kesalahan pemotongan adalah dari urutan h2 kontras dengan maju dan mundur
perkiraan yang dari urutan h. Akibatnya, analisis deret Taylor menghasilkan
pembentukan in praktis bahwa perbedaan berpusat adalah representasi yang lebih akurat
dari turunan (Gambar. 4.6c). Sebagai contoh, jika kita membagi dua ukuran langkah
menggunakan perbedaan maju atau mundur, kami akan sekitar membagi dua kesalahan
pemotongan, sedangkan untuk perbedaan pusat, kesalahan akan dipotong.
CONTOH 4.4 Finite-Terbagi-Perbedaan Aproksimasi Derivatif
Pernyataan masalah. Gunakan maju dan perkiraan perbedaan mundur dari O (h) dan
perbedaan pendekatan berpusat dari O (h2) untuk memperkirakan turunan pertama
f (x) = -0.1x 4 - 0.15x 3 - 0.5x 2 - 0.25x + 1.2
di x == =
0,5 menggunakan ukuran langkah h 0,5. Ulangi perhitungan menggunakan h 0,25.
Perhatikan bahwa derivatif dapat dihitung langsung sebagai
Dengan demikian, seperti turunan kedua adalah turunan dari derivatif, kedua dibagi
perbedaan pendekatan perbedaan dari dua perbedaan dibagi pertama.
Kita akan kembali ke topik diferensiasi numerik di Chap. 23. Kami telah intro-
diproduksi Anda dengan topik pada titik ini karena merupakan contoh yang sangat baik
mengapa seri Taylor adalah penting dalam metode numerik. Selain itu, beberapa dari
rumus diperkenalkan pada bagian ini akan dipekerjakan sebelum Chap. 23.
ERROR PROPAGATION
Tujuan dari bagian ini adalah untuk mempelajari bagaimana kesalahan dalam nomor
dapat menyebarkan melalui fungsi ematical math-. Sebagai contoh, jika kita kalikan dua
angka yang memiliki kesalahan, kami ingin memperkirakan kesalahan dalam produk
tersebut.
Menjatuhkan kedua dan tingkat tinggi persyaratan dan menata ulang hasil
f (x) - f (x~) ~= fj(x~) (x - x~)
4.2 ERROR 95
PROPAGATION
f (X)
Benar kesalahan
| f'(X)|Kapak
perkiraan kesalahan
GAMBAR 4.7 x x x
penggambaran grafis dari Kapak
kelas satu kesalahan
propagasi order.
at
au
(4.25)
H A I f (x~) = | f
j
(x~)|HAIx~
mana Of (x ) f (x) f (X) menunjukkan perkiraan kesalahan fungsi dan Ox
~ = | -~ |~ =
| xx
- ~menunjukkan
| perkiraan kesalahan x. Persamaan (4.25) menyediakan kemampuan
untuk mendekati kesalahan di f (x) diberikan turunan dari fungsi dan perkiraan kesalahan
dalam variabel independen. Gambar 4.7 adalah ilustrasi grafis dari operasi.
125. Bahkan, jika x sebenarnya 2,49, fungsi bisa dievaluasi sebagai 15,4382, dan jika x adalah 2,51, itu akan menjadi 15,8132. Untuk kasus ini, analis
Fungsi Lebih dari Satu Variabel
Pendekatan di atas dapat digeneralisasi untuk fungsi yang bergantung pada lebih dari satu variabel
independen. Hal ini dicapai dengan versi multivariabel dari seri Taylor. Sebagai contoh, jika kita
memiliki fungsi dari dua variabel independen u dan v, seri Taylor dapat ditulis sebagai
∂f ∂f
f(u i ,vi ) = f(ui ,vi ) + i − ui ) + i −v)
+1 +1 (u ∂ +1 ∂v +1
u (v
Σ i
1 ∂ f2
∂ f
2
2
+
2! 2
(ui+1 − +2 (ui+1 − ui)(v i+1 − vi)
∂u
ui) ∂u∂v
∂2 f 2Σ
+ 2
(vi+1 −
vi)∂v + ··· (4.26)
di mana semua derivatif parsial dievaluasi pada titik dasar i. Jika hal semua orde kedua dan lebih tinggi
dijatuhkan, Persamaan. (4.26) dapat diselesaikan untuk
.∂f. .∂
O f(u˜, v˜). = . Ou˜ +
. ∂v
f. ∂u
Ov˜
di mana Ou dan ov perkiraan kesalahan dalam u dan v masing-masing.
~~ =
Untuk variabel n independen x 1, x 2,. .~~~~ . , Xn memiliki kesalahan Ox 1, Ox 2,. . . , Oxn, para
pengikut melenguh hubungan umum berlaku: . ~
.∂f. .∂f.
O f(x˜ , x˜ , . . . , x˜ ) ∼ =
∂f . + + · · · + (4.27)
Ox˜ Ox˜ Ox˜
n
1 2 n
. ∂x . 1 . ∂x . 2 . ∂x .
1 2 n
F˜ L˜ 4
. . ˜
∂I
Oy(F , L, E, I ) = OF + OL + OE + OI
8E˜ I˜ 2E˜ I˜ 8E˜ 2 I˜ 8E˜ I˜2
Mengganti nilai yang sesuai memberi
oy = 0.006561 + 0,002187 + 0,001094 + 0,00164 = 0,0
720 (8,97) 4
ymin = 8 (7.55 × 109)0.000505 = 0.152818
dan
780 (9.03) 4
ymax = 8 (7,45 × 109)0.000495 = 0.175790
Dengan demikian, perkiraan orde pertama yang cukup dekat denga
1,7279 (40,86)
= -11.2
-6.314
Dengan demikian, fungsi ini sakit-AC. Untuk x~ = π / 2 + 0.01 (π / 2), situasinya bahkan
lebih buruk:
1,5865 (4053)
Nomor Kondisi = = -101
-63.66
Untuk kasus ini, penyebab utama dari pendingin sakit tampaknya menjadi turunan. Ini masuk akal karena di sekitar π / 2, tangen mendekati kedua t
log kesalahan
log ukuran langkah
GAMBAR 4.8
Sebuah gambaran grafis dari trade-off antara putaran-off and error pemotongan bahwa
kadang-kadang datang ke dalam bermain dalam perjalanan metode numerik. Titik yang
menurun ditunjukkan, di mana kesalahan round-off mulai meniadakan manfaat
pengurangan langkah-size.
Jadi, jika dua nilai fungsi dalam pembilang dari pendekatan terbatas-perbedaan tidak
memiliki kesalahan round-off, satu-satunya kesalahan adalah karena pemotongan.
Namun, karena kita menggunakan komputer digital, nilai-nilai fungsi yang meliputi
kesalahan round-off seperti pada
f (xi -1) = f ~ (xi-1) + ei-1
f (xi 1) = f ~ (xi1) + ei +1
dimana f~ ini adalah nilai-nilai fungsi bulat dan e adalah yang terkait round-off Rors eh.
Mensubstitusi nilai-nilai ini ke dalam Persamaan. (4.29) memberikan
f j(Xi) =
f~(xi1) - f~(xi- esaya 1 - f (3)(Ξ) 2
1) esaya -1 - h
+ 6
2h 2h
. j f~(xi1) - f~(xi-1) . h2 M
ε
Jumlah error =. f (xi) -
2h .≤ h+ (4.30)
6
Sebuah ukuran langkah yang optimal dapat ditentukan dengan membedakan Persamaan.
(4.30), menetapkan hasilnya sama dengan nol dan memecahkan untuk
.
hmemilih 3 (4.31)
= M
3ε
Hasilnya seperti yang diharapkan. Pada awalnya, round-off adalah minimal dan perkiraan
didominasi oleh kesalahan pemotongan. Oleh karena itu, seperti dalam Persamaan.
(4.30), total kesalahan tetes dengan faktor 100 setiap
= kali kita membagi langkah dengan
10. Namun, mulai dari h 0,0001, kita melihat kesalahan round-off mulai menyelinap
masuk
= dan mengikis tingkat di mana kesalahan berkurang. Sebuah kesalahan minimum
dicapai pada h 10-6. Di luar titik ini, meningkat kesalahan seperti mendominasi round-
off.
Karena kita berhadapan dengan fungsi mudah terdiferensialkan, kami juga dapat
menyelidiki apakah hasil ini konsisten dengan Persamaan. (4.31). Pertama, kita bisa
memperkirakan M dengan mengevaluasi turunan ketiga fungsi sebagai
M = | f 3 (0,5) | = | -2,4 (0,5) - 0,9 |
= 2.1
102 pemotongan KESALAHAN DAN TAYLOR SERIES
10-2
Kesalahan
10-4
10-6
10-8
10-10
10-12
10-1010-8 10-6 10-4 10-2 10-0
ukuran langkah
GAMBAR 4.9
Plot kesalahan ukuran langkah dibandingkan.
emiliki presisi sekitar 15 sampai 16 basis-10 digit, perkiraan kasar dari batas atas round-off akan menjadi sekitar e = 0,5 × 10 -16. Mensubstitusi nilai
.
3 3 (0. 5 × 10)
- 16
hmemilih = = 4 3. × 10-6
2.1
yang ada di urutan yang sama sebagai hasil dari 1 × 10 -6 diperoleh dengan program komputer kita.
Meskipun sumber-sumber berikut kesalahan tidak terhubung secara langsung dengan sebagian besar
metode merical nu- dalam buku ini, mereka kadang-kadang dapat memiliki dampak yang besar pada
keberhasilan dari upaya pemodelan. Dengan demikian, mereka harus selalu diingat ketika menerapkan
memakai teknik numerik dalam konteks masalah di dunia nyata.
blunder
Kita semua akrab dengan kesalahan kotor, atau kesalahan. Pada tahun-tahun awal komputer, erro- hasil
numerik neous bisa kadang-kadang dikaitkan dengan kerusakan dari komputer itu sendiri. Hari ini,
sumber kesalahan ini sangat tidak mungkin, dan yang paling blunder harus dikaitkan dengan
ketidaksempurnaan manusia.
Blunder dapat terjadi pada setiap tahap proses pemodelan matematika dan dapat con- upeti kepada
semua komponen lain dari kesalahan. Mereka dapat dihindari hanya dengan pengetahuan tentang
prinsip-prinsip dasar dan dengan perawatan yang Anda mendekati dan desain tion solu- Anda untuk
masalah.
Blunder biasanya diabaikan dalam diskusi metode numerik. Ini tidak diragukan lagi karena fakta
bahwa, coba seperti yang kita dapat, kesalahan adalah sampai batas tertentu tidak dapat dihindari.
Namun, kami percaya bahwa ada sejumlah cara di mana terjadinya mereka dapat diminimalkan. Di
104 pemotongan KESALAHAN DAN TAYLOR SERIES
khususnya, kebiasaan pemrograman yang baik yang diuraikan dalam Bab. 2 sangat
berguna untuk mengurangi kesalahan pemrograman. Selain itu, ada cara biasanya
sederhana untuk memeriksa apakah metode numerik tertentu bekerja dengan benar.
Sepanjang buku ini, kita membahas cara-cara untuk memeriksa hasil perhitungan
numerik.
Kesalahan formulasi
Perumusan, atau model, kesalahan berhubungan dengan bias yang dapat dianggap berasal
dari model kal matematis tidak lengkap. Contoh dari kesalahan formulasi diabaikan
adalah kenyataan bahwa hukum kedua Newton tidak memperhitungkan efek relativistik.
Ini tidak mengurangi kecukupan solusi dalam Contoh 1.1 karena kesalahan ini minimal
pada waktu dan skala ruang As- sociated dengan masalah penerjun jatuh.
Namun, anggaplah bahwa hambatan udara tidak berbanding lurus jatuh kecepatan,
seperti dalam Persamaan. (1,7), tetapi merupakan fungsi dari kuadrat kecepatan. Jika ini
terjadi, baik kal analyti- dan solusi numerik diperoleh di Chap ini. 1 akan keliru karena
kesalahan lation formu-. pertimbangan lebih lanjut dari kesalahan formulasi termasuk
dalam beberapa aplikasi ing engineering di sisa buku. Anda harus menyadari masalah ini
dan menyadari bahwa, jika Anda bekerja dengan model tidak direncanakan, tidak ada
metode numerik akan memberikan hasil yang memadai.
Data Ketidakpastian
Kesalahan kadang-kadang masuk ke dalam analisis karena ketidakpastian dalam data
fisik atas mana model didasarkan. Sebagai contoh, misalkan kita ingin menguji model
penerjun jatuh dengan memiliki make diulang melompat individu dan kemudian
mengukur nya ity veloc- setelah interval waktu yang ditentukan. Ketidakpastian akan
diragukan lagi dikaitkan dengan pengukuran ini, karena penerjun akan jatuh lebih cepat
selama beberapa melompat dari selama ers oth-. Kesalahan ini dapat menunjukkan kedua
ketidaktelitian dan ketidaktepatan. Jika instrumen kami diterapkan secara konsisten
meremehkan atau melebih-lebihkan kecepatan, kita berhadapan dengan akurat, atau bias,
perangkat. Di sisi lain, jika pengukuran secara acak tinggi dan rendah, kita berhadapan
dengan pertanyaan presisi.
kesalahan pengukuran dapat diukur dengan meringkas data dengan satu atau lebih
dengan baik statistik yang dipilih yang menyampaikan informasi sebanyak mungkin
mengenai istics karakter-spesifik data. Ini statistik deskriptif yang paling sering dipilih
untuk mewakili (1) lokasi pusat distribusi data dan (2) tingkat penyebaran data. Dengan
demikian, mereka menyediakan ukuran dari bias dan ketidaktepatan, masing-masing.
Kami akan kembali ke topik mencirikan ketidakpastian data dalam Bagian Lima.
Meskipun Anda harus menyadari kesalahan, kesalahan formulasi, dan data pasti,
metode numerik yang digunakan untuk model bangunan dapat dipelajari, untuk sebagian
besar, inde- secara independen dari kesalahan ini. Oleh karena itu, untuk sebagian besar
buku ini, kita akan menganggap bahwa kita tidak membuat kesalahan kotor, kami
memiliki model suara, dan kita berhadapan dengan perubahan bentuk bebas dari
kesalahan. Dengan kondisi tersebut, kita dapat mempelajari kesalahan numerik tanpa
rumit faktor.
MASALAH 105
MASALAH
4.1The Maclaurin ekspansi seri untuk cos x adalah
4.8 Hukum Stefan-Boltzmann dapat digunakan untuk
2 4 6 8
cos x = 1-2 +x4! - 6!x + 8! x- ··· x memperkirakan tingkat radiasi energi H dari permukaan, seperti
pada
= cos x 1, tambahkan
Dimulai dengan versi yang paling sederhana,
hal satu per satu untuk memperkirakan cos (π / 3). Setelah H = Aeσ T 4
masing-masing istilah baru ditambahkan, menghitung persen di mana H adalah dalam watt, A=luas permukaan (m 2), e=
kesalahan relatif benar dan perkiraan. Menggunakan kalkulator emisivitas yang mencirikan sifat-sifat memancarkan dari permukaan
saku Anda untuk menentukan nilai sebenarnya. Tambahkan istilah (dimen- sionless), σ=konstan universal yang disebut Stefan-
sampai nilai absolut dari estimasi kesalahan perkiraan turun di -8 -2 -4
Boltzmann konstan (5,67 10 W m K ), Dan T=mutlak tempera-
bawah sebuah rion kesalahan crite- sesuai dengan dua angka
penting. ture (K). Tentukan kesalahan H untuk pelat baja dengan A=0,15 m 2.
e =0,90, dan T=650 ±20. Bandingkan hasil Anda dengan kesalahan
4.2 Lakukan perhitungan yang sama seperti di Prob. 4.1, tetapi
yang tepat. Ulangi perhitungan tetapi dengan T=650±40.
menggunakan ekspansi seri Maclaurin untuk dosa x untuk
Menafsirkan hasil Anda.
memperkirakan dosa (π / 3).
4.9 Ulangi Prob. 4.8 tetapi untuk sebuah bola tembaga dengan
jari-jari = 0,15 ± 0,01 m, e = 0,90 ± 0,05, dan T = 550 ± 20.
x3 x5 x7
sin x=x− + − +….
3! 5 ! 7 !
4.3 Berikut seri terbatas dapat digunakan untuk perkiraan e x : untuk memperkirakan turunan kedua dari fungsi diperiksa di
x x2 x3 xn Prob. 4.5. Per- membentuk evaluasi pada x=2
e =1+ x + + +…+ menggunakan ukuran langkah h 0,25 dan 0,125.
2! 3 ! n! Bandingkan perkiraan Anda dengan nilai sebenarnya dari
turunan kedua. Menginterpretasikan hasil Anda atas dasar
a. Buktikan bahwa ekspansi seri Maclaurin ini adalah kasus jangka sisa ekspansi deret Taylor.
khusus dari Taylor ekspansi seri [(Persamaan. (4.7)]
dengan xi = 0 dan h = x.
4.10 Ingat bahwa kecepatan dari penerjun jatuh dapat com- puted
-x
b. Menggunakan seri Taylor untuk memperkirakan f (x) = e berdasarkan [Eq. (1.10)]
di xi + 1 = 1 untuk xi = 0.2. Mempekerjakan nol, pertama, gm
kedua, dan ketiga diskusi dan hitung | εt | untuk setiap v ( t )= ¿
kasus.
c
4.4 Gunakan nol melalui keempat-order ekspansi deret Gunakan analisis kesalahan orde pertama untuk
Taylor untuk pra- dict f (2,5) untuk f (x)=ln x menggunakan memperkirakan kesalahan v di t=6, jika g=9,8 dan m=50
titik dasar di x=1. Hitung persen kesalahan relatif εt untuk tetapi c=12.5±1.5.
Ulangi Prob. 4.10 dengan g=9,8, t=6, c=12.5±1.5, dan m=50±2.
setiap pendekatan. Diskusikan arti dari hasil.
4.12Evaluasi. dan interpretasikan kondisi nomor berikut:
4.5 Gunakan nol melalui orde ketiga Taylor ekspansi seri
untuk memprediksi f (3) untuk a. f x = |x−1|+ 1 for x = 1.00001
( √)
b. f ( x )=e−x for x = 10
f (x) = 25x 3 - 6x 2 + 7x – 88
2
menggunakan titik dasar di x=1. Hitunglah benar persen kesalahan relative √
c. f ( x )= 1+ x −x for x = 300
εt untuk masing-masing pendekatan.
d. f ( x )=
e− x −1 for x = 0.001
4.6 Gunakan maju dan perkiraan perbedaan mundur dari
2
x
O (h) dan perbedaan pendekatan berpusat dari O (h ) untuk
sin x
memperkirakan turunan pertama fungsi diperiksa di Prob. e. f ( x )= for x = 1.0001π
4.5. Mengevaluasi turunan di x=2 menggunakan ukuran 1+cosx
langkah h= 0,2. Bandingkan hasil Anda dengan nilaiMempekerjakan ide dari Sec. 4.2, memperoleh hubungan dari Tabel
sebenarnya dari turunan. Menginterpretasikan hasil Anda 4.3.
atas dasar jangka sisa ekspansi deret Taylor. =
4.14 Buktikan Persamaan itu. (4.4) adalah tepat untuk semua nilai x jika f
4.7 Gunakan perbedaan pendekatan berpusat dari O (h2) 2
(x)=ax +bx+c.
4.15 Rumus Manning untuk saluran persegi panjang dapat
ditulis sebagai
( BH )5 /3
Q= √S
n(2+ BH )2/3
di mana Q= aliran (m3/ S), n=a koefisien kekasaran, B=lebar (m),
H=kedalaman (m), dan S= kemiringan. Anda menerapkan
formula ini untuk sungai di mana Anda tahu bahwa lebar=20 m
dan kedalaman=0,3 m. Sayangnya, Anda tahu kekasaran dan
kemiringan hanya presisi ±10%. Artinya, Anda tahu bahwa ness
kasar-sekitar 0,03 dengan kisaran 0,027-0,033 dan lereng adalah
0,0003 dengan kisaran ,00027-,00033. Gunakan orde pertama
106 pemotongan KESALAHAN DAN TAYL
OR SERIES
berdasarkan built-
iter in fungsi kosinus).
asi,
dan
EPILOG: PART ONE
PT1.4PERDAGANGAN-OFF
metode numerik yang ilmiah dalam arti bahwa mereka mewakili teknik sistematis untuk memecahkan
masalah matematika. Namun, ada tingkat tertentu seni, ment penghakiman subjektif, dan kompromi
terkait dengan penggunaan yang efektif dalam praktek rekayasa. Untuk setiap masalah, Anda mungkin
akan dihadapkan dengan beberapa metode numerik alternatif dan berbagai jenis komputer. Dengan
demikian, keanggunan dan efisiensi pendekatan yang berbeda untuk masalah ini sangat individualistis
dan berkorelasi dengan kemampuan Anda untuk memilih dengan bijak diantara pilihan. Sayangnya,
karena dengan proses intuitif, faktor-faktor yang mempengaruhi pilihan ini sulit untuk berkomunikasi.
Hanya dengan pengalaman dapat keterampilan ini sepenuhnya dipahami dan diasah. Namun, karena
keterampilan ini memainkan peran penting dalam pemikiran diimple- efektif metode, kami telah
menyertakan bagian ini sebagai pengantar beberapa trade-off yang harus Anda pertimbangkan ketika
memilih metode numerik dan alat untuk menerapkan metode ini. Diharapkan bahwa diskusi yang
berikut akan mempengaruhi orientasi Anda ketika mendekati materi berikutnya. Juga, diharapkan
bahwa Anda akan merujuk kembali ke bahan ini ketika Anda dihadapkan dengan pilihan dan trade-off
dalam sisa buku.
1. Mengetik Masalah Matematika. . Seperti digambarkan sebelumnya dalam Gambar PT1.2,
beberapa jenis masalah matematika yang dibahas dalam buku ini:
(a) Akar persamaan.
(b) Sistem simultan linear persamaan aljabar.
(c) Optimasi.
(d) Kurva pas.
(e) Integrasi numerik.
(f) ) persamaan diferensial biasa.
(g) persamaan diferensial parsial.
Kamu mungkin akan diperkenalkan pada aspek diterapkan metode numerik dengan con- fronting
masalah di salah satu daerah di atas. metode numerik akan diperlukan karena masalah tidak dapat
diselesaikan secara efisien dengan menggunakan teknik analisis. Anda harus menyadari fakta
bahwa aktivitas profesional Anda akhirnya akan melibatkan masalah di semua daerah di atas.
Dengan demikian, studi tentang metode numerik dan pemilihan peralatan perhitungan otomatis
harus, minimal, pertimbangkan tipe dasar masalah. masalah yang lebih lanjut dapat membutuhkan
kemampuan daerah penanganan seperti pendekatan fungsional, persamaan integral, dll daerah ini
biasanya menuntut daya komputasi yang lebih besar atau metode canggih tidak tercakup dalam
teks ini. referensi lain seperti Carnahan, Luther, dan Wilkes (1969); Hamming (1973); Ralston dan
Rabinowitz (1978); Beban dan Faires (2005); dan Moler (2004) harus berkonsultasi untuk
masalah di luar ruang lingkup buku ini. Selain itu, pada akhir setiap bagian dari teks ini, kami
menyertakan ringkasan singkat dan
107
108 EPILOG: PART ONE
referensi untuk metode canggih untuk menyediakan Anda dengan jalan untuk mengejar studi lebih
lanjut dari metode numerik.
2. Mengetik, Ketersediaan, Precision, Biaya, dan Kecepatan Komputer. Kamu mungkin
memiliki pilihan untuk bekerja dengan berbagai alat perhitungan. Ini berkisar dari
kalkulator saku ke komputer mainframe besar. Tentu saja, salah satu alat dapat
digunakan untuk mengimplementasikan metode numerik (termasuk kertas sederhana
dan pensil). Hal ini biasanya bukan pertanyaan tentang kemampuan utama melainkan
biaya, kemudahan, kecepatan, kehandalan, pengulangan, dan presisi. Meskipun
masing-masing alat akan terus memiliki utilitas, kemajuan pesat baru-baru dalam
kinerja komputer pribadi telah memiliki dampak yang besar pada profesi rekayasa.
Kami berharap revolusi ini akan menyebar sebagai perbaikan teknologi terus karena
komputer pribadi menawarkan kompromi yang sangat baik dalam kenyamanan, biaya,
presisi, kecepatan, dan kapasitas penyimpanan. Selain itu, mereka dapat segera
diterapkan untuk sebagian besar masalah teknik praktis.
3. Program Biaya Pengembangan vs Software Biaya vs Run-Time Cost. Setelah jenis
masalah matematika yang harus dipecahkan telah diidentifikasi dan sistem komputer
telah dipilih, adalah tepat untuk mempertimbangkan software dan run-time biaya.
pengembangan perangkat lunak mungkin merupakan upaya besar dalam proyek-
proyek rekayasa banyak dan karena itu mungkin biaya yang signifikan. Dalam hal ini,
sangat penting bahwa Anda harus sangat akrab dengan aspek teoritis dan praktis dari
metode numerik yang relevan. Selain itu, Anda harus akrab dengan perangkat lunak
dikembangkan secara profesional. software murah tersedia secara luas untuk
menerapkan metode numerik yang dapat dengan mudah disesuaikan dengan berbagai
luas masalah.
4. Karakteristik Metode numerik. Ketika perangkat keras komputer dan perangkat lunak
biaya yang tinggi, atau jika ketersediaan komputer terbatas (misalnya, pada beberapa
sistem timeshare), membayar untuk hati-hati memilih metode numerik sesuai situasi. Di
sisi lain, jika masalahnya masih di eksplorasi panggung dan komputer akses dan biaya
tidak masalah, mungkin tepat bagi Anda untuk memilih metode numerik yang selalu
bekerja tetapi mungkin bukan yang paling efisien secara komputasi. Metode numerik
yang tersedia untuk memecahkan setiap jenis tertentu dari masalah melibatkan jenis off
perdagangan-baru saja dibahas dan lain-lain:
(a) Jumlah tebakan awal atau Poin Mulai. Beberapa metode numerik untuk
menemukan akar persamaan atau memecahkan persamaan diferensial meminta
user untuk spec- ify tebakan awal atau titik awal. metode sederhana biasanya
membutuhkan satu nilai, sedangkan metode rumit mungkin membutuhkan lebih
dari satu nilai. Keuntungan dari metode rumit yang efisien secara komputasi dapat
diimbangi dengan kebutuhan untuk beberapa titik awal. Anda harus menggunakan
pengalaman dan penilaian untuk menilai trade-off untuk setiap masalah tertentu.
(b) Tingkat Konvergensi. metode numerik tertentu berkumpul lebih cepat daripada
yang lain. Namun, konvergensi yang cepat ini mungkin memerlukan tebakan awal
lebih halus dan pemrograman yang lebih kompleks daripada metode dengan
konvergensi lambat. Sekali lagi, Anda harus menggunakan penilaian Anda dalam
memilih metode. Lebih cepat tidak selalu lebih baik.
(c) Stabilitas. Beberapa metode numerik untuk menemukan akar persamaan atau
solusi untuk sistem persamaan linear mungkin menyimpang daripada berkumpul di
jawaban yang benar untuk masalah-masalah tertentu. Mengapa Anda akan
mentolerir kemungkinan ini ketika dihadapkan dengan desain atau perencanaan
masalah? Jawabannya adalah bahwa metode ini mungkin sangat efisien ketika
mereka bekerja. Dengan demikian, trade-off lagi muncul. Anda harus memutuskan
apakah Anda
PT1.4 PERDAGANGAN-OFF 109
Persyaratan masalah membenarkan upaya yang diperlukan untuk menerapkan metode yang
mungkin tidak selalu konvergen.
(d) Akurasi dan presisi. Beberapa metode numerik hanya lebih akurat atau tepat
daripada yang lain. Contoh yang baik adalah berbagai persamaan yang tersedia
untuk integrasi ical numer-. Biasanya, kinerja metode-akurasi rendah dapat
ditingkatkan dengan mengurangi ukuran langkah atau meningkatkan jumlah aplikasi
selama suatu interval tertentu. Apakah lebih baik menggunakan metode-akurasi
rendah dengan ukuran langkah kecil atau metode akurasi tinggi dengan ukuran
langkah besar? Pertanyaan ini harus diatasi pada kasus per kasus secara taking
mempertimbangkan faktor-faktor tambahan seperti biaya dan kemudahan
pemrograman. Selain itu, Anda juga harus peduli dengan kesalahan round-off saat
Anda menggunakan beberapa aplikasi dari metode-akurasi rendah dan ketika jumlah
perhitungan menjadi besar. Berikut jumlah angka signifikan ditangani oleh komputer
mungkin menjadi faktor penentu.
(e) Luasnya Aplikasi. Beberapa metode numerik dapat diterapkan hanya kelas terbatas
masalah atau masalah yang memenuhi pembatasan matematika tertentu. metode
lain tidak terpengaruh oleh keterbatasan tersebut. Anda harus mengevaluasi apakah
itu sepadan dengan usaha Anda untuk mengembangkan program-program yang
menggunakan teknik yang appropri- makan hanya sejumlah masalah. Fakta bahwa
teknik tersebut dapat digunakan secara luas menunjukkan bahwa mereka memiliki
kelebihan yang akan sering lebih besar daripada keuntungan dis mereka. Jelas,
trade-off yang terjadi.
(f) Persyaratan khusus. Beberapa teknik numerik berusaha untuk meningkatkan akurasi
dan tingkat konvergensi menggunakan informasi tambahan atau khusus. Sebuah
contoh akan menggunakan nilai estimasi atau teoritis kesalahan untuk meningkatkan
akurasi. Namun, perbaikan ini umumnya tidak dicapai tanpa beberapa nience
inconve- dalam hal menambahkan biaya komputasi atau peningkatan kompleksitas
program yang.
(g) Pemrograman Upaya yang disyaratkan. Upaya untuk meningkatkan tingkat
konvergensi, stabilitas, dan akurasi bisa kreatif dan cerdik. Ketika perbaikan dapat
dilakukan tanpa meningkatkan kompleksitas pemrograman, mereka dapat dianggap
elegan dan mungkin akan menemukan segera digunakan dalam profesi rekayasa.
Namun, jika mereka membutuhkan program yang lebih rumit, Anda lagi dihadapkan
dengan uation trade-off sit yang mungkin atau mungkin tidak mendukung metode
baru.
Hal ini jelas bahwa pembahasan di atas mengenai pilihan metode numerik mengurangi ke
salah satu biaya dan akurasi. Biaya adalah mereka yang terlibat dengan waktu komputer dan
pengembangan program. akurasi yang tepat adalah pertanyaan dari ment penghakiman
profesional dan etika.
5. Perilaku Matematika Fungsi, Persamaan, atau Data. Dalam memilih metode tertentu
numerik, jenis komputer, dan jenis perangkat lunak, Anda harus mempertimbangkan
kompleksitas fungsi Anda, persamaan, atau data. persamaan sederhana dan data mulus
mungkin tepat ditangani oleh algoritma numerik sederhana dan komputer murah.
sebaliknya adalah benar untuk persamaan rumit dan data menunjukkan diskontinuitas.
6. Kemudahan Aplikasi (User-Friendly?). Beberapa metode numerik mudah untuk
menerapkan; orang lain sulit. Hal ini mungkin menjadi pertimbangan ketika memilih salah
satu metode di atas yang lain. Ide yang sama ini berlaku untuk keputusan mengenai
biaya pengembangan program terhadap perangkat lunak dikembangkan secara
profesional. Mungkin diperlukan upaya untuk mengkonversi
110 EPILOG: PART ONE
program sulit untuk salah satu yang user-friendly. Cara untuk melakukan ini diperkenalkan
di Bab. 2 dan diuraikan dalam buku ini.
7. Pemeliharaan. Program untuk memecahkan masalah teknik membutuhkan
perawatan karena selama aplikasi, kesulitan selalu terjadi. Pemeliharaan mungkin
memerlukan mengubah kode program atau memperluas dokumentasi. program
sederhana dan rithms algo- numerik lebih sederhana untuk mempertahankan.
Bab-bab yang mengikuti melibatkan pengembangan berbagai jenis metode numerik untuk
berbagai jenis masalah matematika. Beberapa metode alternatif akan diberikan dalam setiap
bab. berbagai metode ini (bukan metode tunggal yang dipilih oleh penulis) disajikan karena
tidak ada metode “terbaik” tunggal. Tidak ada metode yang terbaik karena ada banyak trade-
off yang harus diperhatikan ketika menerapkan metode untuk masalah praktis. Sebuah meja
yang menyoroti trade-off yang terlibat dalam setiap metode akan ditemukan pada akhir
setiap bagian dari buku tersebut. Tabel ini harus membantu Anda dalam memilih prosedur
numerik yang sesuai untuk konteks masalah khusus Anda.
1
Buku yang direferensikan hanya penulis di sini; bibliografi lengkap akan ditemukan di belakang teks ini.