Anda di halaman 1dari 6

LAPORAN

PRAKTIKUM KOMPUTASI BIOMEDIS

Chapter 10. Richardson Extrapolation: Derivatives

Hari: Senin Tanggal: 29 November Jam ke: 9-10

Oleh:
Pramodya Reksansiwi Rumekso
NIM : 081911733046

Dosen Pembimbing: Fitriyatul Qulub, S.T., M.T.

PROGAM STUDI TEKNIK BIOMEDIS FAKULTAS


SAINS DAN TEKNOLOGIUNIVERSITAS
AIRLANGGA
2021
I. Tujuan
Menentukan turunan numerik menggunakan ekstrapolasi Richardson dan mengetahui kekuatan
dan kelemahannya dibandingkan dengan metode turunan numerik lainnya.
II. Dasar Teori
Ekstrapolasi Richardson merupakan salah satu metode numerik yang digunakan untuk
meningkatkan akurasi dari perhitungan. Tujuan dari ekstrapolasi Richardson adalah menghitung nilai
inetgrasi yang lebih baik dan lebih akurat dibandingkan dengan menggunakan kaidah trapesium dengan
jarak antar titik selebar h, C dan q adalah konstanta yang tidak bergantung pada h. Hal tersebut dapat
dilakukan dengan cara memisalkan D(h) dan D(2h) adalah dua hampiran untuk f ′ (x0) dengan mengambil
titik-titik masing-masing sejarak h dan 2h. Untuk menghitung 𝑓𝑓 ′ (𝑥0 )digunakan rumus hampiran beda-
pusat orde O(h2) :
f1  f1
D(h)   O(h2 )
2h
f f
D(2h)  1 1  O((2h)2 )
2(2h)

Dari persamaan diatas selanjutnya di eliminasi dan substitusikan sehingga didapatkan :


1
𝑓𝑓 ′ (𝑥0) = D(h) + 𝑛 + [ D(h) − D(2h)]
2 −1
Yang dimana n adalah orde galat rumus yang digunakan. Misalnya digunakan rumus hampiran
selisih-pusat orde O(h2) dalam menghitung D(h) dan D(2h), maka n = 2. Selain itu pada perluasan
ekstrapolasi Richardson akan menaikkan orde galat dari O(hn) menjadi O(hn+2).

III. Tugas
Let assume D(2h) and D(4h) are the approximate derivation of 𝑓𝑓 ′ (𝑥0 ) with the interval 2h and
4h using the formula of the order of center-order O(ℎ4). By using the Richardson extrapolation, calculate
the better estimate of 𝑓𝑓 ′ (𝑥0 ):
[𝐷(2ℎ) − 𝐷(4ℎ)]
𝑓𝑓0′ = 𝐷(2ℎ) +
15
Determine the approximate derivation of 𝑓𝑓 ′ (1.2) if the function is 𝑓𝑓(𝑥) = 𝑒 𝑥 in the interval [0.8, 1.6]
with h = 0.1.
IV. Hasil Pengamatan
Script Code
from numpy import*
from sympy import*

def fungsi (x):


y=exp(x)
return y

x=symbols('x')
y=fungsi(x)
turunan=y.diff(x)
f=lambdify(x,turunan)

a=0.8 #batas atas


b=1.6 #batas bawah
h=0.1
xi=[]
while a<b+h:
xi.append(a)
a+=h
print(xi)
n=len(xi)
yi=[]
for i in range (0,n):
y=fungsi(xi[i])
yi.append(y)
print(yi)
number=eval(input("nilai x :"))
print("exact value :",f(number))

for i in range (0,n):


if xi[i]>=number:
urutan = i
break
m=urutan+1
Di=[]

for j in range (0,(n-m)):


h=(xi[urutan])-(xi[urutan-1-j])
h=float('%.1f'%(h))
if h>=0:
if h%0.3!=0:
lap1=(yi[urutan+1+j]-yi[urutan-1-j])/(2*h)
Di.append(lap1)
print("Di :",Di)

p=len(Di)
if p>1:
n=2
Dj=[]
for k in range (0,p-1):
lap2=Di[k]+((Di[k]-Di[k+1])/((2**n)-1))
Dj.append(lap2)
print("Dj :",Dj)

else:
pp=0

pp=len(Dj)
if pp>1:
n=4
Dk=[]
for k in range (0,pp-1):
lap3=Dj[k]+((Dj[k]-Dj[k+1])/((2**n)-1))
Dk.append(lap3)
print("Dk :",Dk)
print("Richardson Derivative :",Dk)
er=abs(f(number)-Dk[0])
print("Error :",er)

else:
if pp!=0:
print("Richardson Derivative :",Dj)
err=abs(f(number)-Dj[0])
print("Error :",err)
else:
print("Richardson Derivative :",Di)
error=abs(f(number)-Di[0])
print("Error :",error)

Hasil

V. Pembahasan dan Analisa


Pada praktikum dengan topik “Richardson Extrapolation: Derivatives” memiliki tujuan
menentukan turunan numerik menggunakan ekstrapolasi Richarson dan mengetahui kekuatan dan
kelemahannya dibandingkan dengan metode turunan numerik. Pengerjaan praktikum dalam bentuk
penyelesaian tugas.Pertama- tama yang perlu dilakukan adalah mengimport library dan mendefinisikan
fungsi 𝑓𝑓(𝑥) untik melakukan perhitungan. Selanjutnya dilakukan Penginisialisasian nilai x dan y (𝑓𝑓(𝑥))
yang terdapat dalam soal dimana nilai y didapat dari pemanggilan fungsi yang dihitunf tiap x. Lalu,
memasukkan nilai-nilai h = 0,1 dan nilai interval yaitu 0,8 utnuk batas atas dan 1.6 untuk batas bawah.
Kemudian dilakukan pencarian nilai central pertama dengan menggunakan jarak h, 2h, dan 4h yang akan
menghasilkan nilai pada lapisan atau orde pertama dan lapisan atau orde kedua. Pada program ini juga akan
dilakukan kalkulasi terhadap besar error yang dihasilkan.
Persamaan yang digunakan pada program ini adalah 𝑓𝑓(𝑥) = 𝑒𝑥 yang akan dicari nilai turunanya
dengan interval yang diketahu adalah 0,8 hingga 1,6 dan nilai h yang diketahui sebesar 0,01. Pada
program ini dilakukan evaluasi pada titik 1.2 sehingga digunakan ekspansi hingga 3 layer/lapisan. Pada
lapisan pertama digunakan for j dengan penambahan if h>0: dan if h%0.3!=0 untuk menampilakn nilai
Di. Kemudian untuk lapisan kedua digunakan penambahan if p>1: lalu memamsukan nilai n-nya serta
penambahan for k untuk mendapatkan nilai Dj.
Lalu, untuk lapisan ketiga digunakan penambahan if lalu else pp = 0, pp = len (Dj) dan pp>1
kemudian memasukkan nilai n serta penambahan for k untuk mendapatkan nilai Dk. Sedangkan untuk
mendapatlan nilai Richardson Derivate dilakukan pemasukkan Dk, tetapi apabila nilai pp tidak sama
dengan 0 (if pp!=0) maka nilai Richardson Derivate dihasilkan dengan memasukkan Dj. Pada if pp!=0
pada bagian Dj tersebut, ditambahkan else lagi kemudian diprint sehinnga didpat nilai Richardson
Derivate dengan memasukkan Di. Sehingga didapat hasil turunan dari fungsi diatas dengan metode
ekstrapolasi Richardson adalah sebesar 3.32011696501992 dengan error sebesar 4.22833763558117e-
8

VI. Kesimpulan
Dari praktikum di atas maka dapat disimpulkan bahwa kelebihan ekstrapolasi Richardson adalah
dapat memperkecil nilai error yang ada dimana didapat hasil error pada praktikum ini sebesar
4.22833763558117e-8 dengan h yang digunakan adalah 0,1. Apabila h yang digunakan semakin kecil
maka error yang didapat akan semakin kecil juga

VII. Daftar Pustaka


Aswin, Muhammad. 2019. Penggunaan Metode Aswin Pada Integrasi Numerik. Sumatera Utara :
Universitas Sumatera Utara
King M.R. and Mody N.A. 2010. Numerical and Statistical Method for Bioengineering.
New York: Cambridge University Press
Nirsal. 2014. Penggunaan Ekstrapolasi Untuk Menyelesaikan Fungsi Integral Tentu. Sulawesi Selatan:
Universitas Cokroaminoto Palopo

Anda mungkin juga menyukai