Pengertian
Persamaan Tak Linier
Persamaan
yx
LINIER
y exp( x)
NON-LINIER
Contoh
Persamaan Kuadrat
x2 4x 3 0
Persamaan Polinomial
x 4 6 x3 7 x 2 6 x 8 0
ln(1 x 2 ) 2 exp( x 2 ) 0
Contoh
H N
o
0
Tout
out
To
Termodinamika
Persamaan gas nyata/kubik,
Kesetimbangan reaksi kimia,
out
P ,i
dT N
Tin
in
in
P ,i
To
RT
a
P
2
V b V
(1
T
C p dT
G0o H 0o H 0o 1 T C p
ln K
dT
0
RT0
RT T T0 R
R
T
T0
o
j z jF F
F (1 q ) 0
j
j 1
Persamaan kubik tersebut diusulkan oleh Johannes Diderik van der Waals (1873), Fisikawan Belanda, peraih nobel Fisika pada tahun 1910.
Persamaan Underwood pada distilasi multikomponen
(2
Klasifikasi
Persamaan Tak Linier
Klasifikasi
Persamaan Tunggal
Persamaan
Serentak / Sistem
Persamaan
Contoh
f ( x) 0
f 1 x1 , x 2 ,..., x N 0
f 2 x1 , x 2 ,..., x N 0
...
f N x1 , x 2 ,..., x N 0
Keunggulan
Sederhana.
Pasti
Konvergen.
Kelemahan
Tebakan
f(x)
f(a1)
a1
f(b1)
x*
b1
f(x)
f(a1)
f(m)
a1
m x*
f(b1)
ab
m
2
b1
f(x)
f(a2)
a2 x*
f(b1)
b1
m=(a+b)/2
x*=(a+b)/2
mulai
Nyatakan:
f(x), tol
Periksa nilai:
f(m)
masukan:
a dan b
Periksa nilai:
f(a), f(b)
f(a)*f(m)>0
ya
tidak
a=m
f(a)=f(m)
tidak
f(a)*f(b)<0
tidak
b=m
f(b)=f(m)
|(a-b)/a|<tol
ya
1
Selesai
ya
2
bisection.m
Pemrograman MATLAB
function x = bisection(fungsi,a,b,tol,varargin) ;
% BISECTION pencarian akar persamaan nonlinier
% dengan metode penyetengahan interval/bisection
% masukan dua buah tebakan awal
%@ oleh Teguh Kurniawan, 12 April 2006
%Departemen Teknik Kimia UNTIRTA
% Pengenalan argumen
if nargin < 4 | isempty(tol)
tol=1e-6;
end
if nargin < 3
error('masukan dua buah tebakan')
end
if (length(a)&length(b)) > 1
error('argumen yang kedua haruslah bil. skalar')
end
bisection.m (lanjutan)
Pemrograman MATLAB
fun.m
dinolkan
function y = fun(x)
y=x^2-4*x+3;
Metode Newton-Raphson
Keunggulan
Hanya
Kelemahan
Kekonvergenan
f(x)
f(x0)
f ( xn )
xn 1 xn
f '( xn )
x0
x*
f(x)
f(x0)
f ( xn )
xn 1 xn
f '( xn )
f(x1)
x0
x1
x*
f ( x0 )
x1 x0
f '( x0 )
f(x)
f(x0)
f ( xn )
xn 1 xn
f '( xn )
f(x1)
f(x2)
x0
x1
x2 x*
f ( x1 )
x2 x1
f '( x1 )
Algoritma Newton-Raphson
1
|(x-x0)/x|>tol
mulai
masukan:
f(x),x0, tol
Nyatakan:
x = x0
x0 = x + 1
1
tidak
ya
Nyatakan:
x0 = x
Hitung nilai:
f(x0) dan f(x0)
Hitung nilai:
x=x0-f(x)/f(x0)
Tampilkan:
X* = x
Selesai
NewtonRaphson.m
Pemrograman MATLAB
function x = NewtonRaphson(fungsi,x0,tol,varargin)
%Mencari penol fungsi tak linier dengan
%metode Newton-Raphson
% NewtonRaphson('FUN',X0) Mencari penol fungsi tak linier
% dengan metode Newton-Raphson.
% m-file FUN.m. X0 adalah tebakan mula.
% NewtonRaphson('FUN',X0,TOL) Menggunakan TOL untuk
% batasan iterasi. Kosongkan nilai TOL jika hendak
% menggunakan nilai yg telah ditetapkan dalam program.
% NewtonRaphson('FUN',X0,TOL,P1,P2,...) P1,P2 dst adlh
% variabel tambahan untuk fungsi FUN(X,P1,P2,...).
%@ oleh Teguh Kurniawan, 22 April 2006
%Departemen Teknik Kimia UNTIRTA
NewtonRaphson.m (lanjutan)
Pemrograman MATLAB
%Pengenalan argumen
if nargin < 3 | isempty(tol)
tol = 1e-6;
end
if tol == 0
tol = 1e-6;
end
if length(x0) > 1 | ~isfinite(x0)
error('argumen elemen kedua haruslah bil. skalar')
end
itermax = 100;
iter = 0;
x = x0;
x0 = x + 1;
NewtonRaphson.m (lanjutan)
Pemrograman
MATLAB
Keunggulan
1.
2.
fzero.m
1.
Kelemahan
1.
1.
2.
RT
a
P
2
V b V
Transformasi ke
dalam bentuk umum
pers.polinomial
Keterangan :
27 R 2Tc 2
1 RTc
a
dan b
64 Pc
8 Pc
PV 3 ( Pb RT )V 2 aV ab 0
kasus3.m
Pemrograman MATLAB
clear
clc
% Masukan kondisi operasi
P = input('masukan tekanan, Pa = ');
T = input('masukan temperatur, K = ');
R = 8314 ;
%J/(kmol.K)
Pc = 37.96e5; %Pa
Tc = 425.1;
%K
% Hitung konstanta a & b
a = (27/64)*R^2*Tc^2/Pc;
b = (1/8)*R*Tc/Pc;
% Definisikan koefisien polinomial
VdW=[P, -(P*b + R*T), a, -a*b];
vol = roots(VdW);
%liter/mol
% Tampilkan volume spesifik n-butana
fprintf('\nVolume spesifik n-butana,(liter/mol)=%5.4f', vol)
15.04
Cp 0.716 4.257 E T
T
6
kJ
kg.K
KapPns.m
Pemrograman MATLAB
function f = KapPns(T,cp)
%Persamaan tak linier yang akan dinolkan
f = cp - 0.716 + 4257e-6*T - 15.04/T^0.5;
kasus4.m
Pemrograman MATLAB
clear
clc
cp = input('masukan kapasitas panas,kJ/kg.K = ');
T = fzero(@(T) KapPns(T,cp),100)
>> kasus4
masukan harga kapasitas panas,kJ/kg.K = 1
T=
189.7597
Tugas 4
Menyelesaikan persamaan tak linier tunggal dengan menggunakan subrutin
MATLAB
Tekanan uap n-butana pada temperatur 350 K adalah 9.4573 bar. Volume molar
uap jenuh dan cair jenuh n-butana pada kondisi tersebut dapat dihitung dengan
menggunakan persamaan kubik Redlich-Kwong-Soave sebagai berikut:
RT
a
V b V (V b)
Z 3 Z 2 ( A B B 2 ) Z AB 0
Dengan:
Z
a
aP
A 2 2
RT
PV
RT
2
2
C
0.4278 R T ;
PC
0.0867 RTC ;
b
PC
bP
RT
T ;
1 S 1
TC
molar uap jenuh dan cair jenuh n-butana pada kondisi itu !!.
Newton
f ( x1 , x2 ) 0
f ( x1 , x2 ) 0
Metode Newton
f1 (1)
x | x
1
f 2 (1)
x | x
1
f1 (1)
|x
x2
1(1)
f 2 (1) (1)
2
|x
x2
J f
x
( n 1)
(n)
f 1(1)
f 2(1)
Faktor relaksasi
0< rho <1
Biasanya = 0.5
Newton.m
Pemrograman MATLAB
Newton.m (lanjutan)
Pemrograman MATLAB
Newton.m (lanjutan)
Pemrograman MATLAB
Newton.m (lanjutan)
Pemrograman MATLAB
Newton.m (lanjutan)
Pemrograman MATLAB
fsolve
Aplikasi fsolve
Kasus 5
Reaksi reformasi kukus berlangsung menurut rangkaian
reaksi kesetimbangan berikut:
Jawaban :
Jawaban : (lanjutan)
Substitui fraksi mol kesetimbangan pada konstanta
kesetimbangan sehingga dihasilkan :
e1 e2 3e1 e2
2 e1 8 e1 e2 10 2e1
K1
e2 3e1 e2
K2
e1 e2 8 e1 e2
KsT.m
Pemrograman MATLAB
function y = KsT(e,K1,K2)
%Sistem Pers.tak linier yang akan dinolkan
y = [(e(1)-e(2))*(3*e(1)-e(2))^3 /((2-e(1))*(8-e(1)
- e(2))*(10+2*e(1))^2) - K1
e(2)*(3*e(1)+e(2)) / ((e(1)-e(2))*(8-e(1)-e(2))) - K2];
kasus5.m
Pemrograman MATLAB
clear
clc
K1 = input(Masukan konstanta kst. reaksi 1 = ');
K2 = input(Masukan konstanta kst. reaksi 2 = ');
%Pencari nol fungsi KsT.m
e = fsolve(@(e) KsT(e,K1,K2),[1 0.5])
0.6920
Tugas 5
Menyelesaikan sistem persamaan tak linier dengan menggunakan subrutin MATLAB
Suatu reaksi elementer A
B + C berlangsung dalam sebuah reaktor tangki berpengaduk
kontinu. Laju umpan murni A, 12 mol/s pada temperatur 25 oC. Reaksi bersifat eksotermik,
untuk itu digunakan air pendingin bertemperatur 50 oC untuk menyerap kalor yang dibebaskan
reaksi. Asumsi konstanta kapasitas panas sama baik di sisi reaktan maupun produk, neraca
energi untuk sistem ini dirumuskan sebagai berikut:
k
1 k
Dengan adalah waktu tinggal dalam sekon, dan k adalah laju reaksi spesifik dalam s -1
dihitung dengan menggunakan persamaan Arrhenius: