Pada bab ini dibahas solusi dari persamaan non linear yang banyak dijumpai dalam formulasi kasus -kasus fisika , yaitu pencarian akar persamaan (finding roots). Disajikan beberapa metode yang biasa digunakan, dan inti pembahasan terletak pada implementasi 3 (tiga) metode komputasi numerik, yaitu metode Bisection, metode Newton Raphson dan metode Secant, didalam menangani berbagai kasus yang disertakan.
A. SASARAN UMUM Sasaran umum dari perkuliahan ini adalah memberikan pe mahaman kepada mahasiswa mengenai proses penyelesaian kasus fisika dalam formulasi persamaan non linear secara komputasi numerik, dan memberikan keleluasaan wawasan tentang beberapa metode dari sekian banyak metode yang bisa diimplementasikan.
B. SASARAN KHUSUS Setelah perkuliahan selesai dilaksanakan, mahasiswa diharapkan mampu: 1. Memformulasikan fenomena fisis dalam bentuk persamaan non linear ke dalam formula iteratif komputasi numerik. 2. Menyebutkan beberapa metode komputasi numerik dalam kasus finding roots 3. Menjelaskan proses iterasi dari bracketing methods dan open methods. 4. Menjelaskan perilaku metode Bisection, Newton Raphson dan Secant sesuai dengan karakter persamaan non linear yang ditangani. 5. Mengembangkan pemahaman dengan menggunakan karakteristik metode-metode komputasi numerik yang lain. 6. Meng-implementasikan metode komputasi numerik untuk persamaan non linear dalam program komputer.
30
Telah dikenal beberapa metode nonkomputer di dalam menyelesaikan akarakar secara aljabar dan non-aljabar. Untuk kasus non-aljabar ada persamaan transendental didalamnya mengandung bentuk-bentuk trigonometri, eksponensial, logaritma, dan persamaan campuran yang mengandung polinom dan transendental . Dalam beberapa kasus, akar-akar bisa ditentukan dengan metode langsung. Contoh yang paling sederhana seperti pada persamaan linear ax + b=0 (dimana a dan b adalah konstanta dan a 0), maka akar tunggal dari persamaan, xo=b/a. Persamaan kuadrat ax2 + bx + c=0 dalam keadaan tertentu bisa diselesaikan dengan formula kuadratik:
x1 , 2 =
b b 2 4 ac
2a
(2.1)
Rumus-rumus yang memberikan nilai eksak dari penyelesaian secara eksplisit hanya ada untuk kasus-kasus yang sangat sederhana. Fungsi yang cukup sederhana seperti f(x) = e-x x sudah tidak bisa diselesaikan secara analitik . Dalam hal ini satusatunya alternatif adalah menggunakan solusi pendekatan (approximate solution) Salah satu metode untuk menentukan solusi pendekatan adalah menggambar fungsi dan menentukan nilai x dimana f(x)=0 , seperti terlihat pada contoh 2.1.
Contoh 2.1
Gunakan pendekatan grafik untuk menentukan koefisien tarik (drag coeffisient) c yang diperlukan sebuah parasut bermassa m=68,1 kg sehingga kecepatannya 40 m/dtk setelah terjun bebas selama t=10 detik. Catatan: percepatan gravitasi 9,8 m/dtk. Solusi Kecepatan parasut yang diturunkan dari Hukum Newton II (diberikan oleh persamaan 1.7 pada Bab 1) adalah:
v(t ) = gm c (1 e ( c /
m)t
Dapat kita lihat bahwa tidak seperti kecepatan parasut secara eksplisit dapat diisolasi pada satu sisi dan sebagai fungsi waktu. dalam kasus ini koefisien drag adalah
fisika-komputasi
31
implisit. Kasus ini bisa diselesaikan dengan metode numerik mengurangi variabel takbebas v pada kedua sisi persamaan, sehingga:
f (c ) = gm c (1 e( c /
m )t
dengan cara
) v
(2.2)
Nilai c yang membuat f(c)=0 , selanjutnya disebut akar persamaan, yang juga representasi dari koefisien drag sebagai solusi dari kasus. Dengan memasukkan parameter t=10, g=9,8, v=40 dan m=68,1 f (c ) =
f (c ) =
9 ,8 (68 ,1) c
667 , 38 c
(1 e( c /
68 ,1 ) 10
) 40 atau (2.3)
(1 e ( c /
68 ,1 )10
) 40
Variasi nilai c yang disubtitusi pada persamaan memberikan hasil f(c) pada tabel sebelah kiri. Kurva melintasi sumbu c antara 12 dan 16. dan dari kelengkungan grafik memberikan estimasi akar 14,75. t,dt 4 8 12 16 20 f(c) 34,115 17,653 6,067 2,269 8,401
f(x) 40
20 Akar
0 10
12
20 c
Dengan subtitusi 14,75 pada persamaan (2. 3), validitas estimasi grafik bisa diuji:
f (14 ,75 ) = v= 667 , 38 14 ,75 (1 e(14 ,75
/ 68 ,1 )10
) 40 = 0 , 059
dan
9 ,8 (68 ,1 ) 14 ,75
(1 e(14 ,75
/ 68 ,1 ) 10
) = 40 , 059 m / dtk
fisika-komputasi
32
Metode grafik ini tidak cukup teliti ( precision). Cara yang lain adalah melakukan trial and error. Teknik ini terdiri dari sebuah nilai coba x dan dievaluasi apakah f(x)=0 . jika tidak, dimasukkan nilai coba yang lain dan f(x) dievaluasi kembali untuk menentukan apakah nilai yang baru memberikan estimasi akar yang lebih baik. Proses akan berulang sampai sebuah nilai coba memberikan hasil f(x)=0 . Metode seperti itu jelas tidak sistematis, tidak efisien dan tidak memadai untuk aktivitas saintis. Metode pendekatan yang paling tepat adalah metode -metode iterasi numerik. Metode iterasi numerik adalah metode yang memberikan pilihan suatu x0 sebagai tebakan awal dan secara beruntun menghitung barisan x0,x1,x2 , secara rekursif dari relasi berbentuk xn +1 = g( xn ) (n=0,1,2,) (2.4)
dengan g didefinisikan dalam selang yang memuat x dan rentang g terletak dalam 0 selang tersebut. Jadi secara beruntun dihit ung x1=g(x0), x2=g(x1), x3 =g(2). Metode iterasi sangat penting untuk beragam masalah dalam analisa numerik, dengan kelebihan umumnya tidak sangat terpengaruh oleh merambatnya kesalahan pembulatan.
Contoh 2.2
Buatlah program sederhana menggunakan BASIC u ntuk mencari akar positif dari fungsi f(x) = x2 5, dengan nilai tebakan awal x=1, lebar langkah 0,5 dan toleransi 106. Nilai sebenarnya 5 =2,236068 Solusi Program BASIC 5 10 15 20 25 30 35 40 45 50 55 60 65 Def Fnf(x)=x*x5 Tolx=1.E06 x=1: FOld=Fnf(x): dx=.5 Iter%=0 While Abs(dx)>Tolx Iter%=Iter%+1 x=x+dx Print Iter%,x,Sqr(5)x If FungsiOld*Fnf(x)>0 Then Goto 60 x=xdx: dx=dx/2 Wend fisika-komputasi
33
70 Stop Running program memberikan hasil sebagai berikut: Iterasi ke-n 1 2 3 4 . . 13 14 . . 32 33 Kesalahan (Error) 1.5 0.7360679774997897 2 0.2360679774997897 2.5 0.2639320225002103 2.25 1.39320225002103E002 . . . . 2.2421875 6.119522500210304E003 2.23828125 2.2132725002103036E003 . . . . 2.236066818237305 1.159262485008914E006 2.236068725585938 7.480861478035856E007 Nilai x
kesalahan 106 dengan presisi jawaban yang bagus. Berikut ini adalah metode -metode yang populer digunakan untuk menyelesaikan masalah finding roots terutama pada kasus persamaan non linear f(x)=0 secara komputasi numerik: a. Bagidua (Bisection) (initial Guesses:2,Convergence Rate:Slow, Stability:Always, Accuracy:Good, Breadth of Application:Real Roots, Programming Effort:Easy) Posisi Palsu (False Position) Titik Tetap ( Fixed Point Iteration) NewtonRaphson (initial Guesses:1,Convergence Rate:Fast, Stability:Possibly Divergent, Accuracy:Good, Breadth of Application:General, Programming Effort:Easy, Requires evaluation of f(x)) Modifikasi Newton Raphson Tali Busur (Secant) (initial Guesses:2,Convergence Rate:Medium to Fast, Stability:Possibly Divergent, Accuracy:Good, Breadth of Application:General, Programming Effort:Easy, Initial guesses do not have to bracket the root Modifikasi Talibusur (Secant Modified) Mller Bairstow fisika-komputasi
b. c. d.
e. f.
g. h. i.
34
Metode analisa numerik diatas, memiliki karakteristik terapan (metode a dan b untuk akar-akar real, metode b sampai g untuk general aplikasi, dan metode h dan i untuk akar-akar polinomial). Di sini hanya akan diimplementasikan satu atau beberapa metode yang dipilih, dengan pertimbangan yang disertakan pada item metode, sebagai dasar untuk menangani kasus-kasus fisika pada bab-bab selanjutnya. Metode Grafik dengan contoh 2.1 dan metode Bagidua adalah termasuk metode mengurung (bracketing methods), sedangkan metode Newton Raphson dan metode Secant termasuk metode terbuka (open methods).
(2.5)
dan sekurang-kurangnya ada satu akar pada interval itu. Berikut langkah-langkah komputasi aktual dengan metode bagidua: Langkah 1: Tentukan nilai awal xl yang lebih rendah dan xu yang lebih tinggi, sehingga fungsi berubah tanda melalui interval. Ini bisa dicek dengan menghitung f ( x l )f ( x u ) < 0 . Estimasikan akar xr, yang ditentukan oleh:
xr = xl + xu 2
Langk ah 2:
Langkah 3: Lakukan evaluasi berikut untuk menentukan interval akar: (a) Jika f ( x l )f ( x r ) < 0 berarti akar pada sub-interval bawah(xl,xr), kemudian set xu =x r dan kembali lakukan langkah 2 (b) Jika f ( x l )f ( x r ) > 0 berarti akar pada sub-interval atas(xu ,xr), kemudian set xl=xr dan kembali lakukan langkah 2 (c) Jika f ( x l )f ( x r ) = 0 akarnya adalah xr, perhitungan dihentikan. Dengan metode ini ditentukan titik tengah interval, dan interval akan dibagi menjadi dua sub-interval, yang salah satunya pasti mengandung akar. Berikutnya yang ditinjau adalah sub-interval yang mengandung akar. Proses diulangi dengan membagi sub-interval tersebut dan memeriksa separo sub-interval mana yang fisika-komputasi
35
mengandung akar. Pembagiduaan sub-sub interval ini dilanjutkan sampai lebar interval yang ditinjau cukup kecil. Kriteria penghentian komputasi dan kesalahan estimasi pendekatan, adalah bijaksana untuk selalu disertakan didalam setiap kasus pencarian akar. Kesalahan relatif e r cukup representatif untuk kasus dimana nilai akar sebenarnya telah diketahui. Pada situasi aktual biasanya nilai akar sebenarnya tidak diketahui, sehingga diperlukan kesalahan relatif pendekatan, era , yaitu:
e ra = xr
baru
x lama r
x baru r
100 %
Contoh 2.3
Dengan menggunakan metode bisection (Bagidua) : [a] Selesaikan problem pada contoh 2.1. [b] Tentukan akarnya sampai kesalahan pendekatan dibawah 0,5%. Solusi [a] Langkah pertama dalam metode bagidua, memberi dua nilai awal dari nilai yang tidak diketahui yaitu koefisien drag (c), sehingga f(c) memberikan tanda yang berbeda. dari gambar 2.1 dapat dilihat bahwa fungsi berubah tanda antara nilai 12 dan 16. Sehingga, iterasi pertama: xr = 12 + 16 2 estimasi awal akar x r yang merupakan titik tengah interval:
14,7802). f (12 ) f (14 ) = 6 ,067 (1,569 ) = 9,517 > 0 ,konsekuensinya akar berada pada interval 14 dan 16. selanjutnya iterasi kedua: titik tengah dari sub-interval antara 14 dan 16:
xr = 14 + 16 2
mendapatkan estimasi: f (14 ) f (15 ) = 6, 067 (0 , 425 ) = 0 , 666 < 0 . Jadi akar berada diantara 14 dan 15. Iterasi ketiga :
xr = 14 + 15 2
Metode ini bisa terus berulang sampai hasilnya cukup akurat. fisika-komputasi
36
[b] kriteria penghentian es adalah 0,5%. Hasil untuk iterasi pertama kedua adalah 14 dan 15, maka
e ra = 15 14 14 100 % = 6 ,667 %
iterasi selengkapnya adalah sebagai berikut: iterasi 1 2 3 4 5 6 xl 12 14 14 14,5 14,75 14,75 xu 16 16 15 15 15 14,875 xr 14 15 14,5 14,75 14,875 14,8125 era(%) 6,667 3,448 1,695 0,840 0,422 ex(%) 5,279 1,487 1,896 0,204 0,641 0,219
dari 6 iterasi akhirnya era<es=0,5% dan komputasi dihentikan. Algoritma Bisection Untuk mengimplementasi kasus mencari akar persamaan dengan menggunakan metode bisection ke dalam pemrograman komputer, dapat digunakan algoritma dalam format pseudocode dibawah.
FUNCTION Bisect(xl,xu,es,imax,xr,iter,era) iter=0 DO xrlama=xr xr=(xl+xu)/2 iter=iter+1 IF xr 0 THEN era=ABS((xrxrlama)/xr)*100 END IF test=f(xl)*f(xr) IF test<0 THEN xu=xr ELSE IF test>0 THEN xl=xr ELSE era=0 END IF IF era<es OR iter END DO Bisect=xr END Bisect imax EXIT
Algoritma in i tidak user friendly , tetapi tidak sulit bagi yang sudah mengenal bahasa pemrograman. Fungsi pada algoritma ini didefinisikan sendiri oleh user untuk membuat lokasi akar dan evaluasi fungsi telah dirancang lebih efisien. fisika-komputasi
37
ini
bisa
diturunkan
dari
pada gambar
deret 2.2, x
Taylor).
f(x i) 0 f(x i+1) 0
turunan adalah
terhadap
dengan
kemiringan:
xi+3 xi+2 f ' ( x) =
(2.6) ulang
xi+1 xi x i+1
xi
Dan
bisa
dituliskan
(2.7)
Contoh 2.4
Carilah akar positif dari fungsi f(x) = x2 5 pada contoh soal 2.2, dengan nilai tebakan awal x=1, Nilai sebenarnya 5 =2,236068. Gunakan metode Newton Raphson !
Solusi :
fisika-komputasi
38
Turunan pertama dari fungsi f(x) = x2 5 adalah f(x)=2x, subtitusikan pada persamaan (2.7) menjadi:
x i +1 = x i x i2 5 2xi
Dimulai dari nilai tebakan awal x=1, hitungan iteras i menggunakan Microsoft Excel memberikan data seperti pada gambar 2.3.
Terlihat metode Newton Raphson hanya memerlukan 6 iterasi untuk mendapatkan nilai pendekatan numerik yang tepat dengan nilai sebenarnya pada ketelitian 106, dibanding dengan pencarian akar pada contoh soal 2.2.
Contoh 2.5
Gunakan metode Newton Raphson untuk mencari estimasi akar dari fungsi transendental f(x) = e x x, dengan nilai tebakan awal x=0 Solusi : Turunan pertama didapatkan: f(x) = ex 1, sehingga persamaan (2.7) menjadi:
x i +1 = x i e xi x
e x 1
i
Dimulai dari nilai tebakan awal x=0, iterasi persamaan memberikan hasil:
fisika-komputasi
39
i 0 1 2 3 4
Pengecekan hasil menggunakan software Numerical Methods Electronic Toolkit (terlihat pada gambar 2.4) memberikan hasil yaitu 0,5671433 dalam 7 angka desimal, dengan tole ransi kesalahan sampai 108, yang dicapai dengan jumlah iterasi yang cukup besar yaitu 35, lebih lambat konvergensinya dibanding dengan metode Newton Raphson.
Gambar 2.4 Pencarian akar transendental dengan Numerical Methods Toolkit. Tidak dijelaskan metode yang dipakai tetapi berdasarkan jumlah input parameter nilai coba (low guess & high guess) adalah karakteristik metode talibusur (Secant) yang akan dijelaskan berikutnya . fisika-komputasi
40
Metode
Newton
Raphson
secara
umum
direkomendasikan
karena
kesederhanaannya, konvergensinya yang sangat cepat dan efisien dibanding metode lainnya. Tetapi ada pada situasi tertentu, seperti kasus khusus akar-akar ganda dialamati lebih lambat. misalnya menentukan akar positif dari fungsi f(x)=x101, dengan nilai tebakan awal x=0,5. Pada iterasi awal memberikan hasil yang cukup jauh 51,65; 46,485; dan seterusnya dengan nilai yang simultan turun dengan lambat, konvergensi sampai nilai sebenarnya 1. Algoritma Newton Raphson Pencaria n akar persamaan dengan metode Newton Raphson dengan pemrograman komputer, dapat mengacu pada algoritma pseudocode dibawah.
FUNCTION NewtonR( x0, es, imax, iter, era) xr=x0 iter=0 DO xrlama=xr xr=xrf(xr)/f(xr) iter=iter+1 IF xr 0 THEN era=ABS((xrxrlama)/xr)*100 END IF IF era<es OR iter imax EXIT END DO NewtonR =xr END NewtonR
Bagaimanapun program harus dimodifikasi untuk menghitung turunan pertama dari fungsi. Hal ini menjadi lebih sederhana dengan menyisipkan fungsi turunan yang didefinisikan oleh user sendiri.
41
f ' ( x) = f ' ( x) =
f (x i ) f ( x i 1 ) x i x i 1 f (x i 1 ) f (x i ) x i 1 x i
(forward) atau
(2.8)
(backward)
(2.9)
Jika diambil persamaan (2.8) untuk disubtitusikan pada persamaaan (2.7) persamaan iteratifnya menjadi:
xi + 1 = x i f ( x i )(x i x i 1 ) f ( x i ) f ( x i 1 )
(2.10)
, i=2,3
(2.11) Secara geometri, dalam metode Newton xi+1 merupakan perpotongan sumbu x dengan
f(x i)
garis singgung di xi , sedangkan dalam metode Secant x adalah i+1 perpotongan sumbu x dengan talibusur kurva f(x) yang
f(x i 1) 0
Dapat diperlihatkan metode Secant lebih lambat dibandingkan metode Newton Raphson, tetapi menjadi pilihan bilamana kerja penghitungan suatu nilai f(x) lebih lama daripada kali kerja penghitungan nilai f(x). Algoritmanya serupa dengan metode Newton. Tidak dianjurkan menuliskan skema iterasi pada (2.10) dalam bentuk
x i +1 = x i 1 f ( x i ) x i f ( x i 1 ) f ( x i ) f ( x i 1 )
fisika-komputasi
42
karena bisa jadi menimbulkan kesulitan ketika xn dan xn-1 bernilai hampir sama.
Contoh 2.6
Sebuah peluru bermassa 2 gram ditembakkan vertikal ke udara dan bergerak turun setelah mencapai batas kecepatan. Batas kecepatan ditentukan oleh mg=Ftarik, dimana m=massa dan g =percepatan gravitas i. Persamaan lengkap adalah sebagai berikut:
(2 )(9 , 81 ) 1000
dimana v adalah kecepatan batas, m/det. Suku pertama pada ruas kanan menyatakan gesekan tarik (friction drag), dan suku kedua menyatakan tekanan tarik ( ressure p drag). Tentukan batas kecepatan dengan metode secant. Nilai coba awal v 30 m/det Solusi: Kasus ini didefinisikan sebagai pencarian akar dari y = f (v) =
(2 )(9 , 81 ) 1000
(2.12)
diset vo=30 dan v1=30,1 didasarkan pada nilai coba awal, dimana y0 dan y1 dihitung dengan persamaan (2.12). Iterasi penyelesaian dengan persamaan (2. 11) sebagai berikut:
i 0 1 2 3 4 5 6 vi 30,00000 30,10000 30,15411 38,62414 37,64323 37,73358 37,73458 yn 1,9620001E02 6,8889391E03 6,8452079E03 8,9657493E04 9,0962276E05 9,9465251E07 1,8626451E09
fisika-komputasi
43
dimana P adalah tekanan mutlak, V adalah volume, n adalah jumlah mol, R adalah konstanta gas universal dan T adalah temperatur mutlak. Persamaan ini amat luas penggunaannya dalam aktivitas enginer dan saintis. Persamaan keadaan alternatif untuk gas dinyatakan dalam persamaan
(P + a v2 )(v b) = RT
(2.13)
yang dikenal sebagai persamaan van der Waals, dimana v=V/n adalah molal volume, a dan b adalah konstanta empiris yang tergantung pada sifat gas. Diperlukan keakuratan di dalam memberikan estimasi terhadap molal volume (v) dari karbon dan oksigen untuk sejumlah kombinasi temperatur dan tekanan yang berbeda yaitu tekanan pada 1, 10 dan 100 atm untuk kombinasi temperatur pada 300, 500 dan 700 K, sehingga cocok dalam pemilihan bejana atau tempatnya. Berikut adalah data -data yang diperlukan: R= 0,82054 L atm/(mol K) a= 3,592 b=0,04267 a= 1,360 b=0,03183
oksigen karbon dioksida
Molal volume dari kedua gas dihitung menggunakan hukum gas ideal, dengan n=1. Sebagai contoh jika P=1 atm dan T=300 K,
v= V n
RT P
= 0 , 082054
= 24 ,6162 L / mol
dan perhitungan diulang untuk seluruh kombinasi temperatur dan tekanan. Komputasi molal volume dari persamaan van der Waals bisa di selesaikan dengan baik menggunakan metode numerik untuk mencari akar-akar persamaan, dengan
f (v ) = P +
a ( v b ) RT v2
turunan dari f(v) mudah didapatkan dan implementasi metode Newton Raphson dalam kasus ini sangat tepat dan efisien. Turunan f(v) terhadap v dituliskan
fisika-komputasi
44
f ' (v ) = P
a v2
2 ab v3
(2.14)
metode Newton Raphson untuk menentukan estimasi akar adalah dengan formula iteratif,
v i +1 = v i f (v i ) f '( v i )
ketika menggunakan nilai coba 24,6162, nilai komputasi molal volume dari karbon dioksida pada 300 K dan 1 atm sebesar 24,5126 L/mol. Hasil ini didapat hanya dengan dua iterasi saja dan memiliki kesalahan kurang dari 0,0001 %. Berikut adalah hasil komputasi selengkapnya
Temperatur, K 300 Tekanan, atm 1 10 100 1 10 100 1 10 100 Molal Volume, L/mol Van der Waals Hk. Gas Ideal Karbon dioksida 24,6162 24,5126 2,4616 2,3545 0,2462 0,0705 41,0270 40,9821 4,1027 4,0578 0,4103 0,3663 57,4378 57,4179 5,7438 5,7242 0,5744 0,5575 Van der Waals Oksigen 24,5928 2,4384 0,2264 41,0259 4,1016 0,4116 57,4460 5,7521 0,5842
500 700
Dalam sistem kontrol proses produksi yang berkaitan dengan komputasi terhadap kombinasi temperatur dan tekanan dengan persamaan sistem yang bisa diturunkan, metode Newton Raphson sangat handal dalam hal kecepatan konvergensinya. Dalam evaluasi jutaan akar, pilihan metode menjadi faktor penentu, dan pada esensinya basisnya kontinu dari proses manufaktur sampai final produk. D. SOAL-SOAL (2.1) (2.2) Carilah akar positiv dari x20,9x1,52 pada interval [1,2] menggunakan metode Bisection dengan toleransi 0,001 Dengan menggunakan iterasi, perlihatkan bahwa akar positif yang terkecil dari persamaan x=tan x secara hampiran adalah 4,49 (2.3) (2.4) Gunakan metode Newton Raphson untuk menentukan akar 0,9x2+1,7x+2,5 dengan xo=5 Buatlah program untuk menentukan akar dari soal (2.1) fisika-komputasi dari f(x)=
45
(2.5)
Tentukan kecepatan batas pada contoh 2.6 menggunakan metode bisection dengan toleransi 0,01
D. DAFTAR PUSTAKA Chapra, S.C., and Canale, R.P., Numerical Methods for Engineers, McGraw-Hill, 1998 James, M.L., G.M. Smith, and J.C. Wolford, Applied Numerical Methods for Digital Computations, 3rd ed. Harper & Row, 1985 Koonin, S.E., Computational Physics, Addison-Wesley Inc, 1986 Mathews, J.H., Numerical Methods for Mathematics, Science and Engineering , Prentice -Hall Inc., 1992 McCracken, D. D., Computing for Engineers and Scientists with Fortran 77, Wiley, 1984 Morris,J.L., Computational Methods in Elementary Numerical Analysis, Wiley, 1983 Nakamura, S., Applied Numerical Methods in C , Prentice-Hall Inc. 1993 Wark, K. Jr., Thermodynamics, McGraw-Hill, 1998 Yakowitz, S., and F. Szidarovszky, An Introduction to Numerical Computations, Macmillan, 1986
fisika-komputasi
46