Metode beda hingga utk menyelesaikan persamaan differensial

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.

Forward difference

Utk 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:

1

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:

2

Hubungan di atas menunjukkan kemiringan (gradient) dari fungsi tsb sebesar ∆x ke depan (lbh besar dari x).

 

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:

3 

Hubungan terakhir ini menunjukkan kemiringan (gradient) dari fungsi tsb sebesar ∆x ke belakang (lbh kecil dari x).

 

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).

5

 

Dengan adanya dua pendekatan (orde satu dan orde dua) ini, kita bisa bekerja dgn contoh berikut:

6

Penyelesaian analitiknya adalah sbb:

7

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:

8, dgn i = node.

 

 

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:

9

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:

10 

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:

11

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%.

2 Comments (+add yours?)

  1. media sanjaya
    Dec 22, 2015 @ 03:34:15

    maaf kk 9,1503*10^-5 dan 0,015634 dari mana ya kak?

    Reply

    • zapthegreat
      Dec 22, 2015 @ 13:56:37

      Itu adalah konstanta yang kita dapat klo kita menyelesaikan persamaan itu secara analitik dengan menggunakan dua batas yang ada (batas atas (r = 6.5) dan batas bawah (r = 2). Saya jg udah lupa gmn cara menurunkannya waktu itu🙂 Mesti baca2 dan latihan2 lagi😀

      Reply

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: