METODE BEDA
HINGGA
Salah satu
cara utk menyelesaikan persamaan differential adalah dengan menggunakan metode
beda hingga atau yg lbh dikenal dgn finite difference method. Metode ini
menggunakan pendekatan ekspansi Taylor di titik acuannya (x). Ada tiga jenis
beda (difference) yg bisa kita gunakan utk mencari nilai f(x+∆x). Ketiga jenis
beda ini disebut forward difference, backward difference, dan central
difference. Supaya gak lupa, penurunannya saya berikan di sini.
1. Forward difference
Untuk forward
difference, kita ingin mencari nilai suatu fungsi jika independent variablenya
digeser ke depan (makanya namanya forward difference) sebesar ∆x. Sederhananya,
jika kita tahu f(x), maka berapakah f(x+∆x)? Ekspansi Taylor dituliskan sbb:
Secara umum, symbol ∂f/∂x*∆x
menunjukkan kemiringan (gradient) nilai fungsi f pada f(x) jika x digeser
sebesar ∆x. Sementara symbol ∂2f/∂x2 menunjukkan
lengkungan (curvature) dari titik f(x) tsb jika x digeser sebesar ∆x.
Oleh karena nilai setelah term pertama
di atas tidak signifikan dibandingkan dgn term kedua, maka bisa kita bilang
klo:
Hubungan di atas menunjukkan
kemiringan (gradient) dari fungsi tsb sebesar ∆x ke depan (lbh besar dari x).
2. Backward difference
Pertanyaan yg
sama jg kita berikan utk backward difference. Jika kita tahu f(x), maka
berapakah f(x-∆x)? Atau berapakah nilai fungsi tsb jika independent variablenya
digeser ke belakang sebesar ∆x. Ekspansi Taylor dituliskan sbb:
Hubungan terakhir ini menunjukkan
kemiringan (gradient) dari fungsi tsb sebesar ∆x ke belakang (lbh kecil dari
x).
3. Central difference
Jenis bedar
ketiga adalah beda tengah, di mana kita akan mencari kemiringan dari fungsi tsb
dgn menggunakan perbedaan nilai fungsinya dari beda depan dan beda belakang.
Secara matematis, beda tengah adalah penjumlahan dari beda depan dan beda
belakang.
4. Second order derivation
Setelah
pendekatan orde satu bisa kita turunkan spt di atas, skrg kita bisa menurunkan
persamaan utk pendekatan orde dua. Penurunan di bawah ini saya mulai dari
mengambil persamaan orde satu dari beda depan (forward difference) yg
mengandung penurunan orde dua (second order differential). Fungsi ∂2f/∂x2
saya keluarkan, dan persamaan utk ∂f/∂x nya saya ambil dari pendekatan
beda belakang (backward difference).
Dengan adanya dua pendekatan (orde
satu dan orde dua) ini, kita bisa bekerja dgn contoh berikut:
Penyelesaian analitiknya adalah sbb:
Kondisi batas yg kita ketahui adalah
sbb:
u pada r = 2 atau u(2) = 0.008
u(6.5) = 0.003
Yg ditanyakan adalah berapa nilai u di
antara kedua nilai batas di atas.
Dengan metode beda hingga ini, kita
akan membuat node2. Katakanlah kita buat 4 node. Node yg pertama adalah saat u(2),
dan node yg keempat adalah u(6.5). 4 node yg kita pilih terdiri atas 3 rentang,
yakni rentang node 1-2, rentang node 2-3, dan rentang node 3-4. Jarak rentang
tsb adalah (6.5-2)/3 = 1.5. Maka, node 2 adalah 2+1.5 = 3.5. Node 3 adalah
3.5+1.5 =5. Yg skrg ingin kita ketahui tentunya adalah nilai u pada saat r =
3.5 atau u(3.5) dan u(5).
Utk yg pertama ini, kita akan gunakan
pendekatan beda maju utk orde satu. Dengan memasukkan pendekatan yg udah kita
turunkan ke persamaan diferensial di atas, kita dapat:
Persamaan ini kita utak-atik utk
mendapatkan penyelesaian utk ui, sehingga kita bisa menyusun
persamaan utk u2 dan u3. Sementara u1 dan u4
sudah kita ketahui sebagai kondisi batas. Klo saya selesaikan di excel, akan
didapat sbb:
Perbandingan hasil pendekatan ini
dengan hasil analitiknya menghasilkan error sebesar 6.66% utk u2
atau u(3.5) dan error sebesar 5.12% utk u3 atau u(5).
Jika saya gunakan beda tengah utk
pendekatan orde satu, akan diperoleh hasil sbb:
Hasil perhitungan dgn pendekatan beda
tengah ternyata lbh akurat drpd pendekatan beda maju (dan jg drpd beda mundur).
Error utk u(3.5) menjadi 2.43% dan error utk u(5) menjadi 1.68%.
Jika saya menggunakan node yg lbh
banyak, dalam artian saya melakukan perhitungan yg lbh detail, dengan 8 node
misalnya. Dan tetap menggunakan beda tengah, akan didapat hasil sbb:
Spt yg diharapkan klo hasil
perhitungan dgn node yg semakin banyak atau perhitungan semakin detail, maka
hasilnya akan mendekati hasil analitiknya. Error yg diperoleh utk setiap r di
atas semuanya di bawah 0.5%.











No comments:
Post a Comment