Anda di halaman 1dari 38

PENYELESAIAN PERSAMAAN

TAK LINIER
TK2106 Komputasi Proses
Contoh
Persamaan Keadaan
Persamaan Redlich-Kwong-Soave
( )
( )
dan konstan dan spesifik untuk jenis gas tertentu.
RT a
P
V b V V b
f T
a b
o
o
=
+
=
( )
3 2 2
0 Z Z A B B Z AB + =
2 2
, ,
PV aP bP
Z A B
RT R T RT
o
= = =
Permasalahan:
Mencari harga volum spesifik dari gas pada P dan T tertentu.
TK2106 Komputasi Teknik Kimia 2
Persamaan tak linier sering kali disusun-ulang
menjadi persamaan berikut:


Permasalahan dalam sebuah persamaan tak-linier
adalah mencari harga x yang menyebabkan f(x) =
0, sehingga menyelesaikan persamaan tak linier
sering disebut sebagai pencarian:
Pe-nol fungsi, atau
Akar persamaan.
0 ) ( = x f
Persamaan Tak-Linier Tunggal
TK2106 Komputasi Teknik Kimia 3
Contoh persamaan tak linier tunggal:
2
6 2
2
6 0
10 2 20 0
ln( ) 2 10 0
1
2 0
sin( ) 0
x
x
x
x x
x x
e
x
e x x
=
+ =
+ =
+ =
=
TK2106 Komputasi Teknik Kimia 4
Menentukan harga x
*
atau nilai penol f(x).
Mencari akar(-akar) persamaan.
0
f(x)
x
(x*,0)
TK2106 Komputasi Teknik Kimia 5
Karakteristik umum metoda iteratif untuk
menyelesaikan persamaan tak-linier dengan
metoda itaratif:
Bermula dari tebakan awal
Direka tebakan berikutnya
x
1
, x
2
, , x
j

Yang bersifat:
*
lim x x
j
j
=

TK2106 Komputasi Teknik Kimia 6
Kriteria Penghentian Iterasi
1 . 0
1
1
< <
s

+
+
XTOL
XTOL
x
x x
j
j j
c
1.
c adalah epsilon mesin
FTOL f
j
s
+1
2.
FTOL harus kecil. Misalnya XTOL
2
, 10
-6
.
TK2106 Komputasi Teknik Kimia 7
Kriteria Penghentian Iterasi
3. Jika jumlah iterasi telah lebih besar dari
iterasi maksimum yang diijinkan.
Misalnya: 100; 1000
Untuk mencegah komputer bekerja terus
menerus.
TK2106 Komputasi Teknik Kimia 8
Metoda Iteratif Penyelesaian
Persamaan Tak Linier
Metoda Penyetengahan Interval
Metoda Newton-Raphson
Metoda Newton (untuk sistem persamaan tak
linier)
Metoda Substitusi Berurut
TK2106 Komputasi Teknik Kimia 9
Metoda
Penyetengahan Interval
Interval halving method
Bisection method
Algoritma Bolzano

Tangguh
Lambat
TK2106 Komputasi Teknik Kimia 10
x
L
x
R

F(x
L
)
F(x
R
)
(x*,0)
TK2106 Komputasi Teknik Kimia 11
x
L
x
R
x
M

F(x
M
)
2
L R
M
x x
x
+
=
TK2106 Komputasi Teknik Kimia 12
x
L
x
R

F(x
L
)
TK2106 Komputasi Teknik Kimia 13
ALGORITMA
1. Definisikan: f(x), XTOL
2. Masukkan: x
R
, x
L

3. Evaluasi: F
L
, F
R

4. Hitung: x
M
= (x
R
+ x
L
)/2
5. Evaluasi F
M

6. Jika F
M
= 0, stop, x
*
= x
M

7. Jika (F
M
*F
R
) < 0
x
L
= x
M

F
L
= F
M

else
x
R
= x
M

F
R
= F
M
7. Jika abs((x
R
x
L
)/x
R
) > XTOL kembali ke 4
8. Hitung x
*
= (x
R
+ x
L
)/2
9. Selesai
TK2106 Komputasi Teknik Kimia 14
Contoh
Cari akar persamaan tak linier berikut:
0001 , 0
1 , 3
8 , 2
0 10 ) (
2
=
=
=
= =
XTOL
x
x
x e x f
R
L
x
TK2106 Komputasi Teknik Kimia 15
Step by step calculation
j xL xR FL FR xM FM FM*FR Xtest
0 2.8000 3.1000 -1.3954 2.5880 2.9500 0.4035 1.0441 0.09677
1 2.8000 2.9500 -1.3954 0.4035 2.8750 -0.5402 -0.2179 0.05085
2 2.8750 2.9500 -0.5402 0.4035 2.9125 -0.0799 -0.0322 0.02542
3 2.9125 2.9500 -0.0799 0.4035 2.9313 0.1588 0.0641 0.01271
4 2.9125 2.9313 -0.0799 0.1588 2.9219 0.0387 0.0062 0.00640
5 2.9125 2.9219 -0.0799 0.0387 2.9172 -0.0208 -0.0008 0.00321
6 2.9172 2.9219 -0.0208 0.0387 2.9195 0.0089 0.0003 0.00160
7 2.9172 2.9195 -0.0208 0.0089 2.9184 -0.0059 -0.0001 0.00080
8 2.9184 2.9195 -0.0059 0.0089 2.9189 0.0015 0.0000 0.00040
9 2.9184 2.9189 -0.0059 0.0015 2.9187 -0.0022 0.0000 0.00020
10 2.9187 2.9189 -0.0022 0.0015 2.9188 -0.0003 0.0000 0.00010
TK2106 Komputasi Teknik Kimia 16
Tugas 3
Buat sebuah rutin metode Penyetengahan
Interval dengan MATLAB
Masukkan:
F(x) = x
2
2 = 0
x
L
= 1, x
R
= 2
Keluaran:
x*
Kumpulkan minggu depan jam 12.00 ke:
Kelas 01 : makertia@che.itb.ac.id
Kelas 02 : rp@che.itb.ac.id
Subject: TK2105 Tugas3
TK2106 Komputasi Teknik Kimia 17
METODE
NEWTON - RAPHSON
TK 2105 Komputasi Proses
x
0

f(x
0
)
x
1

f(x
1
)
x
2

o
f(x)
x
(x*,0)
Formula Iterasi Newton
Formulasi Newton-Raphson diturunkan sbb:
( )
( )
( )
( )
1
1
1 2
2 1
1
1
'
' tan
x f
x f
x x
x x
x f
x f
=

= = o
'
1
j
j
j j
f
f
x x =
+
Algoritma Metoda Newton-Raphson
1. Definisikan f(x), f(x), XTOL, FTOL
2. Masukkan tebakan awal x0
3. Evaluasi x1 = x0 f(x0)/f(x0)
4. Jika |(x1-x0)/x1| > XTOL dan |f(x1)| > FTOL
x0 = x1, kembali ke langkah 3
5. else
x* = x1
6. Selesai
Keunggulan dan Kekurangan Metoda
Newton-Raphson
Keunggulan
Formulasi iterasi sederhana.
Cepat.
Hanya memerlukan sebuah
tebakan awal.
Kekurangan
Memerlukan perhitungan
turunan pertama fungsi f(x).
Kadang kala mengalami
divergensi.
Turunan Fungsi
Sering kali turunan pertama sebuah fungsi
dievaluasi secara numerik:
Turunan Fungsi
Turunan pertama fungsi sering kali dievaluasi
secara numerik:
Harga h harus cukup kecil:
- terlalu besar: penghampiran tidak teliti.
- terlalu kecil: kesalahan pembulatan oleh komputer, tidak teliti.
( )
1 1
2 2
k
h x c c = +
( )
( ) ( ) | | x f h x f
h x
x f
+ =
|
.
|

\
|
c
c 1
KEGAGALAN METODE NEWTON
x
f
x
j+1
=x
j
f `(x)=
x
f
f`(x)=0
x
j
x
f
x
j
x
j+2
x
j+1
Divergen!!
Vicious Cycle!!
x
j
x
j+1

adalah factor peredaman langkah (damping factor, relaxation
factor, step size parameter)
0 < 1
Harga diperkecil jika divergensi ditengarai akan terjadi.
Jika harga telah sangat kecil, maka proses pencarian akar
persamaan gagal, dan iterasi harus dihentikan.
j
j
j j
f
f
x x
`
1
=
+
Untuk menghindari kegagalan yang mungkin
terjadi, maka formulasi ietarsi Newton-Raphson
sering dimodifikasi menjadi:
Jika: |f(x
j+1
)| |f(x
j
)|
harga diperkecil

f
j
/f
j

(=)
f
j
/f
j

(=1)
x
j

x
j+1
,=
x
f(x)
Modifikasi Metoda Newton-Raphson
a. =1
b. x
j+1
=x
j
- f
j
/f`
j
c. Evaluasi f
j+1
=f(x
j+1
)
d. Jika |f
j+1
|> |f
j
|
pasang = /2 dan kembali ke b

(batasi harga agar jangan terlalu kecil!!)

Newton-Raphson
function x = NR(FunFcn,x0,tol,trace,varargin)
%NR Finds a zero of a function by the Newton-Raphson method.
%
% NR('F',X0) finds a zero of the function described by the
% M-file F.M. X0 is a starting guess.
%
% NR('F',X0,TOL,TRACE) uses tolerance TOL for convergence
% test. TRACE=1 shows the calculation steps numerically and
% TRACE=2 shows the calculation steps both numerically and
% graphically.
%
% NR('F',X0,TOL,TRACE,P1,P2,...) allows for additional
% arguments which are passed to the function F(X,P1,P2,...).
% Pass an empty matrix for TOL or TRACE to use the default
% value.
%
% See also FZERO, ROOTS, XGX, LI

% (c) N. Mostoufi & A. Constantinides
% January 1, 1999
x = x0;
x0 = x + 1;
itermax = 100;

% Main iteration loop
while abs(x - x0) > tol & iter <= itermax
iter = iter + 1;
x0 = x;

% Set dx for differentiation
if x ~= 0
dx = x/100;
else
dx = 1/100;
end

% Differentiation
a = x - dx; fa = feval(FunFcn,a,varargin{:});
b = x + dx; fb = feval(FunFcn,b,varargin{:});
df = (fb - fa)/(b - a);

% Next approximation of the root
if df == 0
x = x0 + max(abs(dx),1.1*tol);
else
x = x0 - fnk/df;
end
end
METODA ITERASI
TITIK TETAP
TK 2105 Komputasi Proses
Metoda Iterasi Titik Tetap
Persamaan: x = g(x)
Dalam teknologi proses, persoalan
penyelesaian sistem persamaan ini sering
dijumpai.
Neraca massa & energi.
Simultaneous solution strategy.

Iterasi Titik Tetap (Substitusi Berurut)
y
x
y = g(x)
x
*

x
j+1
= g(x
j
)
Contoh Permasalahan
( )
( )
5
4
) (
0
5
4
2
1
2
+
= =
=
+
+
j
j j
x
x g x
x
x
Step-by-step caculation
j 1 2 3 4 5 6 7 8
xi 0.0000 0.8000 0.9280 0.9722 0.9890 0.9956 0.9983 0.9993
g(xi) 0.8000 0.9280 0.9722 0.9890 0.9956 0.9983 0.9993 0.9997
Kriteria penghentian iterasi:
ITRMAX
XTOL
x
x x
j
j j
Iterasi
1
1
>
s

+
+
Substitusi Berurut
Sederhana
Sering gagal (tidak konvergen).
( ) ( )
3
1 2 x x g x = =
j 1 2 3 4 5 6 7 8
xj 0.5000 0.2500 0.8438 0.0076 1.9546 -1.7396 41.1248 -1.29E+05
g(xj) 0.2500 0.8438 0.0076 1.9546 -1.7396 41.1248 -1.29E+05 4.31E+15

Anda mungkin juga menyukai