• Tidak ada hasil yang ditemukan

Turunan Numerik-rinaldi munir

N/A
N/A
ester

Academic year: 2023

Membagikan "Turunan Numerik-rinaldi munir"

Copied!
43
0
0

Teks penuh

(1)

Turunan Numerik

Bahan Kuliah IF4058 Topik Khusus Informatika I

Oleh; Rinaldi Munir (IF-STEI ITB)

(2)

Definisi Turunan (derivatif)

• Bila persamaan fungsi f(x) diberikan secara eksplisit, maka kita dapat menentukan fungsi turunannya, f '(x), f "(x), ..., f (n+1) (x), lalu menggunakannya untuk menghitung nilai turunan fungsi di x = t.

f '(x) =

0 lim

h

( ) ( )

h

x f h

x

f + −

menggunakannya untuk menghitung nilai turunan fungsi di x = t.

• Tetapi jika fungsi f(x) tidak diketahui secara eksplisit, tetapi kita hanya memiliki beberapa titik data saja. Pada kasus seperti ini kita tidak dapat menemukan nilai turunan fungsi secara analitik.

• Sebaliknya, pada kasus lain, meskipun f(x) diketahui secara eksplisit

tetapi bentuknya rumit sehingga menentukan fungsi turunannya

merupakan pekerjaan yang tidak mangkus

(3)

Persoalan Turunan Numerik

• Persoalan turunan numerik ialah menentukan

hampiran nilai turunan fungsi f yang diberikan dalam bentuk tabel.

• Tiga pendekatan dalam menghitung turunan numerik:

1. Hampiran selisih maju

2. Hampiran selisih mundur

3. Hampiran selisih pusat

(4)

1. Hampiran Selisih Maju (forward difference approximation)

f '(x 0 ) = ( ) ( )

h

x f h

x

f 0 + − 0

= h

f f 10

y

x

0

x

1

x

-1

x

y = f(x)

h y

0

y

1

(5)

2. Hampiran selisih-mundur (backward difference approximation)

f '(x 0 ) = ( ) ( )

h

h x

f x

f 00

= h

f f 01

y

x

1

x

0

x

-1

y

0

y

-1

x y = f(x)

h

(6)

3. Hampiran selisih-pusat (central difference approximation)

f '(x 0 ) = ( ) ( )

h

h x

f h

x f

2

0

0 + − −

=

h f f

2

1

1 − −

y y

0

y = f(x)

x

-1

x

0

x

-1

y

0

y

-1

y = f(x)

2h

(7)

• Rumus-rumus turunan numerik untuk ketiga

pendekatan tersebut dapat diturunkan dengan dua cara, yaitu:

1. Dengan bantuan deret Taylor

2. Dengan hampiran polinom interpolasi

• Kedua cara tersebut menghasilkan rumus yang sama.

(8)

Penurunan Rumus dengan Deret Taylor

(a) Hampiran selisih-maju

Uraikan f(x

i+1

) di sekitar x

i

: f(x

i+1

) = f(x

i

) + ( )

! 1

1

i

i

x

x

+

f '(x

i

) + ( )

! 2

2

1

i

i

x

x

+

f "(x

i

) + ...

f

i+1

= f

i

+ hf

i

' + h 2 /2 f

i

" + .. . hf

i

' = f

i+1

- f

i

- h 2 /2 f

i

" + ...

f

i

' =

h f f

i+1

i

- h/2 f

i

"

f

i

' =

h f f

i+1

i

+ O(h)

yang dalam hal ini, O(h) = h/2 f "(t), x

i

< t < x

i+1

(9)

Untuk nilai-nilai f di x 0 dan x 1 persamaan rumusnya menjadi:

) (

' 1 0

0 O h

h f

f f − +

=

yang dalam hal ini O(h) = h/2 f "(t), x i < t < x i+1 .

(10)

(b) Hampiran selisih-mundur

Uraikan f(x

i-1

) di sekitar x

i

: f(x

i-1

) = f(x

i

) + ( )

! 1

1 i

i

x

x

+

f '(x

i

) + ( )

! 2

2

1 i

i

x

x

+

f "(x

i

) + ...

f

i-1

= f

i

- hf

i

' + h

2

/2 f

i

" + ...

hf

i

' = f

i

- f

i-1

+ h

2

/2 f

i

" + ...

f

i

' =

h f f

i

i1

- h/2 f

i

" + ...

f

i

' =

h f f

i

i1

+ O(h),

yang dalam hal ini, O(h) = - h/2 f "(t), x

i-1

< t < x

i

(11)

Untuk nilai-nilai f di x

0

dan x

-1

persamaan rumusnya menjadi:

) (

'

0 1

0

O h

h f

f f − +

=

yang dalam hal ini, O(h) = - h/2 f "(t), x

i+1

< t < x

i

.

(12)

(a) Hampiran selisih-pusat

Kurangkan persamaan (P.7.4) dengan persamaan (P.7.6):

f

i+1

- f

i-1

= 2hf

i

' + h

3

/3 f

i

"' + ...

2hf

i

' = f

i+1

- f

i-1

- h

3

/3 f

i

"' + ...

f

i

' =

h f f

i i

2

1

1 −

+

- h

2

/6 f

i

"' + ...

f

i

' =

h f f

i i

2

1

1 −

+

+ O(h

2

), h

2

yang dalam hal ini, O(h

2

) = - h

2

/6 f "'(t), x

i-1

< t < x

i+1

Untuk nilai-nilai f di x

-1

dan x

1

persamaan rumusnya menjadi:

) 2 (

'

1 1

O h

2

h f

f

o

f − +

=

yang dalam hal ini, O(h

2

) = - h/6 f "'(t), x

i-1

< t < x

i+1

.

(13)

Rumus untuk Turunan Kedua, f ’’(x), dengan Bantuan Deret Taylor

(a) Hampiran selisih-pusat

Tambahkan persamaan (P.7.4) dengan persamaan (P.7.6) di atas : f

i+1

+ f

i-1

= 2 f

i

+ h

2

f

i

" + h

4

/12 f

i

(4)

+ ...

f

i+1i+1

- 2f

ii

+ f

i-1 i-1

= h

2

f

ii

" + h

4

/12 f

ii (4)

f

i

" =

1

2

2 1

h

f f

f

i+

i

+

i

- h

2

/12 f

i (4)

Jadi,

f

i

" =

2

1

1

2

h

f f

f

i+

i

+

i

+ O(h

2

),

yang dalam hal ini, O(h

2

) = - h

2

/12 f

(4)

(t), x

i-1

< t < x

i+1

(14)

Untuk nilai-nilai f di x -1 , x 0 , dan x 1 persamaan rumusnya menjadi:

f 0 " =

2

1 0

1 2

h

f f

f − +

+ O(h 2 )

yang dalam hal ini O(h 2 ) = - h 2 /12 f (4) (t), x i-1 < t < x i+1 .

(15)

(b) Hampiran selisih-mundur

Dengan cara yang sama seperti (a) di atas, diperoleh : f

i

" =

2 1

2 2

h

f f

f

i

i

+

i

+ O(h),

yang dalam hal ini O(h) = h f "(t), x

i-2

< t < x

i

Untuk nilai-nilai f di x -2 , x -1 , dan x 0 persamaan rumusnya : )

2 (

"

2

0 1

2

0 O h

h

f f

f f − + +

=

,

yang dalam hal ini, O(h) = h f "(t) , x

i-2

< t < x

i

(16)

(c) Hampiran selisih-maju

Dengan cara yang sama seperti di atas, diperoleh : f

i

" =

2 1

2 2

h

f f

f

i+

i+

+

i

+ O(h),

yang dalam hal ini, O(h) = - h f "(t), x

i

< t < x

i+2

yang dalam hal ini, O(h) = - h f "(t), x

i

< t < x

i+2

Untuk nilai-nilai f di x 0 , x 1 , dan x 2 persamaan rumusnya : ),

2 (

"

2

0 1

2

0 O h

h

f f

f f − + +

=

yang dalam hal ini, O(h) = - h f "(t), x 1 < t < x

i+2

.

(17)

Penurunan Rumus Turunan Numerik dengan Polinom Interpolasi

• Polinom Newton-Gregory:

f (x) ≈ p n (x) = f 0 +

! 1

f 0

s∆ + s(s-1)

! 2

0 2 f

∆ + s(s-1)(s-2)

! 3

0 3 f

∆ +

f 0

n

s(s-1)(s-2)...(s- n+1)

!

0

n

f

= F(s)

yang dalam hal ini, s = (x-x 0 )/h.

(18)

f (x) ≈ p n (x) = f 0 +

! 1

f 0

s∆ + s(s-1)

! 2

0 2 f

∆ + s(s-1)(s-2)

! 3

0 3 f

∆ +

s(s-1)(s -2)...(s- n+1)

!

0

n

n f

= F(s)

yang dalam hal ini, s = (x-x )/h.

yang dalam hal ini, s = (x-x 0 )/h.

(19)

(a) Hampiran selisih-maju

- bila digunakan titik-titik x

0

dan x

1

: f '(x

0

) = 1/h (∆f

0

) =

h f f

1

0

- bila digunakan titik-titik x

0

, x

1

, dan x

2

: f '(x

0

) = 1/h (∆f

0

+ (s- 1/2) ∆

2

f

0

) untuk titik x

0

s = (x

0

- x

0

)/h = 0, sehingga

f '(x

0

) = 1/h (∆f

0

- 1/2∆

2

f

0

)

= 1/h (∆f

0

- 1/2(∆f

1

- ∆f

0

) )

= 1/h (3/2 ∆f

0

- 1/2 ∆f

1

)

= 1/h (3/2 f

1

- 3/2 f

0

- 1/2 f

2

+ 1/2 f

1

)

= 1/h (-3/2 f

0

+ 2 f

1

- 1/2 f

2

)

( ) h

f f x f

f 2

4 3

'

0

0

+

1

2

=

(20)

(b) Hampiran selisih-mundur

- polinom interpolasi: Newton-Gregory mundur - bila digunakan titik-titik x

0

dan x

-1

:

f '(x

0

) = 1/h ( ∇f

0

) =

h

f

f

0

1

(21)

(c) Hampiran selisih-pusat

- digunakan tiga titik x

0

, x

1

, dan x

2

:

f '(x

0

) = 1/h ( ∆f

0

+ (s - 1/2) ∆

2

f

0

)

untuk titik x

1

s = (x

1

- x

0

)/h = h/h = 1, sehingga f '(x

1

) = 1/h ( ∆f

0

+ 1/2 ∆

2

f

0

)

= 1/h ( ∆f

0

+ 1/2( ∆f

1

- ∆f

0

) )

= 1/h (1/2 ∆f + 1/2 ∆f )

= 1/h (1/2 ∆f

0

+ 1/2 ∆f

1

)

= 1/2h ( f

1

- f

0

+ f

2

- f

1

)

=

h f f

2

0 2

untuk titik x

-1

, x

0

, dan x

1

:

f '(x

0

) =

h f f

2

1 1

(22)

Rumus untuk Turunan Kedua, f "(x), dengan Polinom Interpolasi

Turunan kedua f adalah

2

2

dx f

d = ds

d

 

dx df

dx ds

= 1/h (0 + ∆ 2 f 0 + (s - 1) ∆ 3 f 0 ) . 1/h

= 1/h 2 (∆ 2 f 0 + ( s - 1) ∆ 3 f 0 )

(23)

Misalkan untuk hampiran selisih-pusat, titik-titik yang digunakan x 0 , x 1 , dan x 2 : - pada titik x 1 s = (x 1 - x 0 )/h = h/h = 1, sehingga

f "(x 1 ) = 1/h 2 ( ∆ 2 f 0 + (1 - 1) ∆ 3 f 0 )

= 1/h 2 ( ∆ 2 f 0 )

= 1/h 2 ( ∆f 1 - ∆f 0 )

= 1/h 2 ( f - f + f + f )

= 1/h 2 ( f 2 - f 1 + f 1 + f 0 )

= 1/h 2 ( f 0 - 2f 1 + f 2 ) - untuk titik x -1 , x 0 , dan x 1 :

2

1 0

1 0

) 2 (

"

h

f f

x f

f − +

=

(24)

Ringkasan Rumus-Rumus Turunan

1. Rumus untuk turunan pertama f

0

' =

h f f

1

0

+ O(h) (selisih-maju)

f

0

' =

h f f

0

1

+ O(h) (selisih-mundur)

f

0

' =

h f f

2

1

1

+ O(h

2

) (selisih-pusat)

f

0

' =

h

f f

f 2

4

3

0

+

1

2

− + O(h

2

) (selisih-maju)

f

0

' =

h

f f

f f

12 8

8

1 1 2

2

+ −

+

+ O(h

4

) (selisih-pusat)

(25)

2. Rumus untuk turunan kedua

f

0

" =

2

1 0

1 2

h

f f

f − +

+ O(h

2

) (selisih-pusat)

f 0 " =

2

0 1

2 2

h

f f

f

+

+ O(h) (selisih-mundur)

f 0 " = f 2 − 2 f 1 + f 0

+ O(h) (selisih-maju)

f 0 " =

2

0 1

2

h + O(h) (selisih-maju)

f 0 " =

h

f f

f f

12

2 5

4 2 1 0

3 + − +

− + O(h 2 ) (selisih-maju)

f

0

" =

2

2 1

0 1

2

12

16 30

16

h

f f

f f

f + − +

+ O(h

4

) (selisih-pusat)

(26)

3. Rumus untuk turunan ketiga

f

0

"' =

3

0 1

2

3

3 3

h

f f

f

f − + −

+ O(h) (selisih-maju)

f

0

"' =

3

2 1

1 2

2 2 2

h

f f

f

f − +

+ O(h

2

) (selisih-pusat)

4. Rumus untuk turunan keempat

f

0(iv)

=

4

0 1

2 3

4

4 6 4

h

f f

f f

f − + − +

+ O(h) (selisih-maju)

f

0(iv)

=

4

2 1

0 1

2

4 6 4

h

f f

f f

f − + −

+

+ O(h

2

) (selisih-pusat)

(27)

Contoh

Diberikan data dalam bentuk tabel sebagai berikut :

x f(x)

1.3 3.669

1.5 4.482

1.7 5.474

1.9 6.686

2.1 8.166

2.3 9.974

2.5 12.182

(a) Hitunglah f '(1.7) dengan rumus hampiran selisih-pusat orde O(h

2

) dan O(h

4

) (b) Hitunglah f '(1.4)dengan rumus hampiran selisih-pusat orde O(h

2

)

(c) Rumus apa yang digunakan untuk menghitung f '(1.3) dan f '(2.5) ?

(28)

Penyelesaian:

(a) Orde O(h

2

):

f

0

' =

h f f

2

1 1 −

Ambil titik-titik x

-1

= 1.5 dan x

1

= 1.9, yang dalam hal ini x

0

= 1.7 terletak di tengah keduanya dengan h = 0.2.

f '(1.7) = 6 . 686 − 4 . 482

= 5.510 (empat angka bena) f '(1.7) =

( ) 0 . 2 2

482 . 4 686 .

6 −

= 5.510 (empat angka bena)

Orde O(h

4

):

f

0

' =

h

f f

f f

12 8

8 1 1 2

2 + − +

(29)

Ambil titik-titik x

-2

= 1.3 dan x

-1

= 1.5 , x

1

= 1.9, dan x

2

= 2.1, yang dalam hal ini x

0

= 1.7 terletak di pertengahannya.

f '(1.7) = ( ) ( )

( 0 . 2 )

12

669 . 3 482 . 4 8 686 . 6 8 166 .

8 + − +

= 5.473 (4 angka bena)

(b) Orde O(h

2

):

(b) Orde O(h ):

Ambil titik-titik x

-1

= 1.3 dan x

1

= 1.5, yang dalam hal ini x

0

= 1.4 terletak di tengahnya dan h = 0.1.

f '(1.4) =

( ) 0 . 1 2

669 . 3 482 .

4 −

= 4.065 (4 angka bena)

(30)

(c) Untuk menghitung f '(1.3) digunakan rumus hampiran selisih-maju, sebab x = 1.3 hanya mempunyai titik-titik sesudahnya (maju), tetapi tidak memiliki titik-titik sebelumnya.

Sebaliknya, untuk menghitung nilai f '(2.5) digunakan rumus hampiran selisih-mundur, sebab x = 2.5 hanya mempunyai titik-titik sebelumnya (mundur).

Hampiran selisih-maju : f

0

' =

h f f

1

0

+ O(h)

f '(1.3) =

2 . 0

669 . 3 482 .

4 −

= 4.065 2

. 0 Hampiran selisih-mundur :

f

0

' =

h f f

0

1

+ O(h) f '(2.5) =

2 . 0

974 . 9 182 .

12 −

= 11.04

(31)

Terapan Turunan Numerik dalam Bidang Pengolahan Citra

• Citra digital dapat disajikan oleh matriks f yang berukuran M

× N dengan bentuk

 

 

 

 

= n

N

f f

f

f f

f

f ...

...

2 22

21

1 12

11

• Tiap elemen matriks adalah bilangan bulat dalam rentang [0..255] untuk citra 8 bit.

 

 

 

=

MN M

M f f

f f

2 ...

1

M M

M

M

(32)

• Salah satu proses yang terdapat dalam pengolahan citra ialah pendeteksian tepi.

• Tepi merupakan feature yang penting pada suatu citra.

• Tepi didefinisikan sebagai perubahan intensitas yang besar dalam jarak yang singkat.

• Perbedaan intensitas inilah yang menampakkan rincian

pada gambar. Tepi memberikan informasi batas-batas

objek dengan lingkungannya atau dengan objek yang

lain, feature untuk mengidentifikasi objek, dan untuk

terapan penapisan citra.

(33)
(34)
(35)

• Salah satu pendekatamyang dipakai dalam pendeteksian sisi adalah dengan kemiringan diferensial (differential gradient).

• Secara matematis perubahan intensitas yang besar dalam jarak yang sangat singkat dapat dipandang sebagai suatu fungsi yang memiliki dipandang sebagai suatu fungsi yang memiliki kemiringan yang besar.

• Pengukuran kemiringan suatu fungsi dilakukan

dengan menghitung turunan pertamanya.

(36)

• Dalam citra digital, pendeteksian tepi dapat dilakukan dengan cara yang mirip, yaitu dengan turunan pertamanya secara

parsial dalam ruang diskrit:

• yang dalam hal ini kedua turunan parsial didefinisikan sebagai

f(x, y) = 

 

y f

x f

/

/ = 

 

y x

f f

D 1 (x) = ( )

x y x f

∂ ,

≈ ( )

x

y x f y

x x

f

+ , ( , )

D 1 ( y) = ( )

y y x f

∂ ,

≈ ( )

y

y x f y

y x f

+ ( , )

,

(37)

Biasanya ∆ x = ∆ y = 1 , sehingga persamaan turunan pertama menjadi:

) , ( )

, 1 ) (

, ) (

1 ( f x y f x y

x y x x f

D = + −

= ∂

) , ( )

1 ,

) ( , ) (

1 ( f x y f x y

y y x y f

D = + −

= ∂

(38)

• Kekuatan tepi pada setiap pixel citra dihitung dengan rumus:

G[f(x,y)] = | f x 2 | + | f y 2 |

• atau dengan rumus

G[f(x,y)] = max ( f 2 | , | f 2 |) G[f(x,y)] = max ( f x 2 | , | f y 2 |)

• Suatu pixel dianggap sebagai pixel sisi jika kekuatan

tepinya di atas nilai ambang (threshold) tertentu.

(39)

• D 1 (x) dan D 1 ( y) merupakan hampiran selisih-maju.

Hampiran lain yang dipakai adalah hampiran selisih- pusat, yaitu:

D 2 (x) = ( )

x y x f

∂ ,

≈ ( )

x

y x x

f y

x x

f

∆ +

2

) , (

,

( + )

D 2 (y) = ( )

y y x f

∂ ,

≈ ( )

y

y y

x f y

y x f

∆ +

2

) ,

(

,

(40)

• Operator lain yang digunakan untuk mendeteksi sisi adalah yang berdasarkan pada operasi turunan

kedua, yang dikenal dengan operator Laplace (Laplacian).

• Operator Laplace mendeteksi lokasi tepi lebih akurat

• Operator Laplace mendeteksi lokasi tepi lebih akurat

khususnya pada tepi yang curam.

(41)

f(x)

f /∂x

2

f /∂x

2

(a) Tepi landai (b) Tepi curam

(42)

• Jika digunakan hampiran selisih-maju, maka operator Laplace diturunkan sebagai berikut:

2

f =

2

2

x f

∂ +

2

2

y f

= D

1

(D

1

(x)) + D

1

( D

1

( y)) =

x

1 D

1

( f(x + ∆x, y) - D

1

( f(x,y)) +

y

1 D

1

( f(x, y + ∆y) –

D

1

( f(x, y)) =

x

1 ( ) ( ) ( ) ( )

 

 

− +

∆ +

∆ +

∆ +

x

y x f y x x f x

y x x f y x x x

f , , , ,

+

y

1 ( ) ( ) ( ) ( )

 

 

− +

∆ +

∆ +

∆ +

y

y x f y y x f y

y y x f y y y x

f , , , ,

= ( ) ( ) ( )

( )

2

, ,

2 ,

2

x

y x f y x x f y

x x

f

+

∆ +

+ +

( ) ( ) ( )

( )

2

, ,

2 2

,

y

y x f y y x f y

y x f

+

∆ +

+

(43)

(a) (b)

(a) citra botol; (b) hasil pendeteksian tepi dengan operator Laplace

Referensi

Dokumen terkait

Students had a positive attitude toward a Tik Tok application as a learning video aid while learning through Tik Tok application used it as an English language

The purpose of this study is to calculate the design flood discharge through synthetic unit hydrograph with Snyder Method, Nakayasu Method and Limantara Method based on rain