Lompat ke isi

Metode prediktor–korektor

Dari Wikipedia bahasa Indonesia, ensiklopedia bebas

Metode Prediktor-korektor

metode Trapesium-Euler

Metode-metode yang sudah dibahas pada bagian-bagian sebelumnya yaitu Metode Euler dan Runge-kutta merupakan metode satu langkah untuk menyeleseikan persamaan diferensial biasa.sekarang kita akan membahas metode multi langkah,untuk menghitung yk dengan menggunakan gradien-gradien fj,dengan j < k,yang sudah diperoleh sebelumnya.metode ini tidak dapat dimulai dengan sendirinya karena tergantung pada metode-metode satu langkah seperti metode Euler untuk mendapatkan beberapa gradien awal.

metode prediktor-korektor terdiri atas dua bagian:(1) bagian prediktor,yang memprediksi yk dengan menggunakan gradien-gradien fj (j < k),dan (2)bagian korektor,yang menggunakan suatu rumus integrasi untuk memperbaiki hampiran.

Metode Trapesium-Euler menggunakan metode Euler sebagai algoritma korektor.jika kita gunakan indek pertama untuk menunjukan interval(langkah)dab indek kedua untuk menunjukan urutan hampiran,maka rumus Euler dapat ditulis sebagai

         yk+1,0=yk,* +hfk,*                                              

dengan aturan rumus dan'*' berturut-turut menunjukan hampiran awal dan akhir.pada rumus Euler,yk,* = yk = y(tk),dan fk,* = f(tk,yk).


Sebagai persamaan korektor,aturan trapesium dinyatakan sebagai

      yk+1,j = yk,* + h/2(fk,* + fk+1,j-1)

Dengan j adalah penghitung iterasi proses koreksi dan


        fk+,j-1 = f(tk+1,yk+1,j-1)

persamaan korektor yang digunakan sebanyak yang diperlukan untuk mendapatkan keakuratan yang diinginkan. perhatikan bahwa dengan menggunakan persamaan Euler sebagai nilai awal,yk+,j dapat dihitung untuk j=1,2 ....dengan rumus trapesium.proses koreksi dapat dihentikan setelah iterasi ke-n(ditentukan)atau setelah |yk+1,j+1-yk+1,j|<€,untuk suatu nilai € yang ditentukan.

Algoritma(Metode Trapesium Euler)

menghitung hampiran penyeleseian masalah nilai awal y'=f(t,y)dengan y(t0)=y0 pada [t0,b].
INPUT:n,t0,b,y0,€ dan fungsi f
OUTPUT:(tk,yk),k=1,2,..n
LANGKAH-LANGKAH:
  1. Hitung h=(b-t0)/n
  2. FOR k=1,2,..n
      hitung f-=f(tk-1yk-1)
      hitung tk=tk-1+h,z0=yk-1+h*f-

REPEAT

(a) Hitung z=z0+h/2[f-+f(tk,z0)]

(b) Hitung selisih=z-z0

(c) simpan z0=z

UNTIL|selisih|<€

simpan yk=z0 3. SELESEI