bab 3 persamaan tak linier

44
Bab 3 Bab 3 Persamaan Tak Linier Persamaan Tak Linier

Upload: yustinus-selis-toron

Post on 15-Jan-2016

133 views

Category:

Documents


2 download

DESCRIPTION

ihcj

TRANSCRIPT

Page 1: Bab 3 Persamaan Tak Linier

Bab 3 Bab 3 Persamaan Tak LinierPersamaan Tak Linier

Bab 3 Bab 3 Persamaan Tak LinierPersamaan Tak Linier

Page 2: Bab 3 Persamaan Tak Linier

Pengertian Persamaan Tak Linier

Persamaan matematika yang bukan persamaan linier.

y xy

xLINIER

exp( )y xy

xNON-LINIER

Page 3: Bab 3 Persamaan Tak Linier

Contoh Persamaan Tak Linier

Jenis Pers.

Tak LinierContoh

Persamaan Kuadrat

Persamaan Polinomial

Persamaan Transenden

Persamaan Logaritmik

2 4 3 0x x 4 3 26 7 6 8 0x x x x

2sin 2exp( ) 0x x 2 2ln(1 ) 2exp( ) 0x x

Page 4: Bab 3 Persamaan Tak Linier

Persamaan Tak Linier dalam Teknik Kimia

Aplikasi Pers. Tak Linier Contoh

Neraca Massa dan Energi,

Termodinamika

Persamaan gas nyata/kubik,

Kesetimbangan reaksi kimia,

Operasi Teknik Kimia, dll.

(1

2

RT aP

V b V

1) Persamaan kubik tersebut diusulkan oleh Johannes Diderik van der Waals (1873), Fisikawan Belanda, peraih nobel Fisika pada tahun 1910.2) Persamaan Underwood pada distilasi multikomponen

(2

1

(1 ) 0 n

j jF

j j

z FF q

0 0

0 0 0

0

1ln 0

o oT To o op p

T T

C CG H H dTK dT

RT RT T R R T

0 , , 0out inT T

o out out in inP i P i

To To

H N C dT N C

Page 5: Bab 3 Persamaan Tak Linier

Klasifikasi Persamaan Tak Linier

Klasifikasi Contoh

Persamaan Tunggal

Persamaan Serentak / Sistem Persamaan

0,...,,

...

0,...,,

0,...,,

21

212

211

NN

N

N

xxxf

xxxf

xxxf

0)( xf

Page 6: Bab 3 Persamaan Tak Linier

Solusi Persamaan Tunggal

Metode Penyetengahan Interval (bisection) Metode Substitusi Berurut Metode Wegstein Metode Interpolasi Linear Metode Newton-Raphson

NB : Metode yang digarisbawahi akan dibahas lebih lanjut

Page 7: Bab 3 Persamaan Tak Linier

Metode Penyetengahan Interval(Metode Bisection)

Keunggulan Sederhana. Pasti Konvergen.

Kelemahan Tebakan awal [a,b] harus memiliki nilai

f(a)*f(b)<0. Laju konvergensi relatif lebih lambat daripada

metode Newton-Raphson.

Page 8: Bab 3 Persamaan Tak Linier

a1 b1

f(a1)

f(b1)

x*

f(x)

x

Page 9: Bab 3 Persamaan Tak Linier

a1 b1m

f(m)

2

a bm

f(a1)

f(b1)

x*

f(x)

x

Page 10: Bab 3 Persamaan Tak Linier

a2 b1

f(a2)

f(b1)

x*

f(x)

x

Page 11: Bab 3 Persamaan Tak Linier

Algoritma Penyetengahan Interval

mulai

Nyatakan:f(x), tol

Periksa nilai:f(a), f(b)

masukan:a dan b

f(a)*f(b)<0

1

ya

tidak

1

m=(a+b)/2

Periksa nilai:f(m)

f(a)*f(m)>0

a=mf(a)=f(m)

ya

b=mf(b)=f(m)

|(a-b)/a|<tol

tidak

ya

tidak

2

2

x*=(a+b)/2

Selesai

Page 12: Bab 3 Persamaan Tak Linier

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 argumenif nargin < 4 | isempty(tol) tol=1e-6;endif nargin < 3 error('masukan dua buah tebakan')endif (length(a)&length(b)) > 1 error('argumen yang kedua haruslah bil. skalar')end

Page 13: Bab 3 Persamaan Tak Linier

while abs((a - b)/a) > 1e-6 fa = feval(fungsi,a,varargin{:}); fb = feval(fungsi,b,varargin{:}); if fa*fb > 0 error('masukan tebakan a dan b yang berbeda') end m = (a + b)/2; fm = feval(fungsi,m,varargin{:}); if fm*fa > 0; a = m; else b = m; endendx=(a+b)/2;

bisection.m (lanjutan) Pemrograman MATLAB

Page 14: Bab 3 Persamaan Tak Linier

function y = fun(x)

y=x^2-4*x+3;

>>bisection(‘fun’,2,10,1e-6)ans =

3.0000

Eksekusi fungsi kasus1.mMasukan dan hasil di Command Window

fun.m fungsi yang akan dinolkan

Page 15: Bab 3 Persamaan Tak Linier

Metode Newton-Raphson

Keunggulan Hanya butuh satu tebakan awal. Laju konvergensi cepat.

Kelemahan Kekonvergenan adakalanya gagal dicapai.

Page 16: Bab 3 Persamaan Tak Linier

x0

f(x0)

x*

f(x)

x

1

( )

'( )n

n nn

f xx x

f x

Page 17: Bab 3 Persamaan Tak Linier

x0

f(x0)

x1

f(x1)

f(x)

x

01 0

0

( )

'( )

f xx x

f x

1

( )

'( )n

n nn

f xx x

f x

x*

Page 18: Bab 3 Persamaan Tak Linier

x0

f(x0)

x1

f(x1)

x2

f(x)

x

12 1

1

( )

'( )

f xx x

f x

1

( )

'( )n

n nn

f xx x

f x

f(x2)

x*

Page 19: Bab 3 Persamaan Tak Linier

Algoritma Newton-Raphson

mulai

masukan:f(x),x0, tol

Nyatakan:x = x0

x0 = x + 1

1

|(x-x0)/x|>toltidak

1

ya

Selesai

Nyatakan:x0 = x

Hitung nilai:f(x0) dan f’(x0)

Hitung nilai:x=x0-f(x)/f’(x0)

Tampilkan:X* = x

Page 20: Bab 3 Persamaan Tak Linier

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 Pemrograman MATLAB

Page 21: Bab 3 Persamaan Tak Linier

%Pengenalan argumenif nargin < 3 | isempty(tol) tol = 1e-6;endif tol == 0 tol = 1e-6;endif 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

Page 22: Bab 3 Persamaan Tak Linier

while abs((x - x0)/x) > tol & iter <= itermax iter = iter + 1; x0 = x; fx= feval(fungsi,x,varargin{:}); if x ~= 0

dx = x/100; else dx = 1/100; end a = x - dx; fa = feval(fungsi,a,varargin{:}); b = x + dx; fb = feval(fungsi,b,varargin{:}); df= (fb - fa)/(b - a); if df == 0 x = x0 + max(abs(dx),1.1*tol); else x = x0 - fx/df; end end

NewtonRaphson.m (lanjutan) Pemrograman MATLAB

Page 23: Bab 3 Persamaan Tak Linier

Subrutin dalam MATLAB untuk Pers. Tak Linier tunggal

Rutin Keunggulan Kelemahan

roots.m 1. Seluruh akar dapat diketahui dengan hanya sekali menjalankan rutin.

2. Tidak membutuhkan tebakan mula.

1. Hanya untuk pers. kuadrat dan polinomial.

fzero.m 1. Solusi bagi segala jenis pers tak linier.

1. Hanya satu buah akar yang dapat diketahui sekali menjalankan rutin.

2. Membutuhkan tebakan mula.

Page 24: Bab 3 Persamaan Tak Linier

Aplikasi subrutin roots

2

RT aP

V b V

Kasus 3Tekanan uap n-butana pada temperatur 350 K adalah 9.4573 bar.Hitunglah volume molar uap jenuh dan cair jenuh n-butana padaKondisi tersebut dengan menggunakan persamaan gas Van der Waals. (R=8.314j/mol.K ;Tc=425.1 K; Pc=37.96 bar)

Jawaban : Persamaan Van der Waals

3 2( ) 0PV Pb RT V aV ab

2 227 1 dan

64 8c c

c c

R T RTa b

P P

Transformasi ke dalam bentuk umum

pers.polinomial

Keterangan :

Page 25: Bab 3 Persamaan Tak Linier

clearclc% Masukan kondisi operasiP = input('masukan tekanan, Pa = ');T = input('masukan temperatur, K = ');R = 8314 ; %J/(kmol.K)Pc = 37.96e5; %PaTc = 425.1; %K% Hitung konstanta a & ba = (27/64)*R^2*Tc^2/Pc;b = (1/8)*R*Tc/Pc;% Definisikan koefisien polinomialVdW=[P, -(P*b + R*T), a, -a*b];vol = roots(VdW); %liter/mol

% Tampilkan volume spesifik n-butanafprintf('\nVolume spesifik n-butana,(liter/mol)=%5.4f', vol)

kasus3.m Pemrograman MATLAB

Page 26: Bab 3 Persamaan Tak Linier

Eksekusi program kasus3.mMasukan dan hasil di Command Window

>>kasus3masukan tekanan, Pa = 9.4573e5masukan temperatur, K = 350

Volume spesifik n-butana,(liter/mol) = 2.6669Volume spesifik n-butana,(liter/mol) = 0.3354Volume spesifik n-butana,(liter/mol) = 0.1910

Page 27: Bab 3 Persamaan Tak Linier

kasus 4

Diketahui sebuah persamaan kapasitas panas sbb.

Tentukan temperatur pada saat Cp = 1 kJ/kg.K !

(diambil dari “Computational Methods for Process

Simulation”, Ramirez, Butterworths, 1989)

Aplikasi subrutin fzero

6 15.040.716 4.257

.

kJCp E T

kg KT

Page 28: Bab 3 Persamaan Tak Linier

function f = KapPns(T,cp)%Persamaan tak linier yang akan dinolkanf = cp - 0.716 + 4257e-6*T - 15.04/T^0.5;

clear

clc

cp = input('masukan kapasitas panas,kJ/kg.K = ');

T = fzero(@(T) KapPns(T,cp),100)

KapPns.m Pemrograman MATLAB

kasus4.m Pemrograman MATLAB

Page 29: Bab 3 Persamaan Tak Linier

>> kasus4masukan harga kapasitas panas,kJ/kg.K = 1

T =

189.7597

Eksekusi program kasus4.m Masukan dan hasil di Command Window :

Page 30: Bab 3 Persamaan Tak Linier

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:

Dalam bentuk persamaan polinomial menjadi sebagai berikut:

Dengan:

; ; ;

(R=8.314j/mol.K ;Tc=425.1 K; Pc=37.96 bar; ω = 0.1931). Hitunglah volume molar uap jenuh dan cair jenuh n-butana pada kondisi itu !!.

Tugas 4Menyelesaikan persamaan tak linier tunggal dengan menggunakan subrutin MATLAB

2 20.4278 C

C

R Ta

P

0.0867 C

C

RTb

P

2

1 1C

TS

T

( )

RT aP

V b V V b

3 2 2( ) 0Z Z A B B Z AB

PVZ

RT

2 2

aPA

R T

bP

BRT

20.48508 1.55171 0.15613S

Page 31: Bab 3 Persamaan Tak Linier

Solusi Persamaan Serentak

Metode Newton

1 2

1 2

( , ) 0

( , ) 0

f x x

f x x

Page 32: Bab 3 Persamaan Tak Linier

Metode Newton

(1) (1)1 1(1) (1)

1 2 1 1(1) (1)

(1) (1)2 2 2 2

1 2

| |

| |

f fx x

x x f

f f fx x

x x

J f ( 1) ( )n nx x

Faktor relaksasi

Biasanya = 0.50< rho <1

Page 33: Bab 3 Persamaan Tak Linier

function [xnew , iter] = Newton(fnctn,x0,rho,tol,varargin)%NEWTON Solves a set of equations by Newton's method.%% NEWTON('F',X0) finds a zero of the set of equations% described by the M-file F.M. X0 is a vector starting% gueses.% % NEWTON('F',X0,RHO,TOL) uses relaxation factor rho and% tolerance TOL for convergence test.% % NEWTON('F',X0,RHO,TOL,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.

%(c) by N. Mostoufi & A. Constantinides%January 1, 1999

Newton.m Pemrograman MATLAB

Page 34: Bab 3 Persamaan Tak Linier

if nargin < 4 | isempty(tol) tol = 1e-6;endif nargin < 3 | isempty(rho) rho = 1;endx0 = (x0(:).')'; nx = length(x0);x = x0*1.1;xnew = x0;iter = 0;maxiter = 100;

Newton.m (lanjutan) Pemrograman MATLAB

Page 35: Bab 3 Persamaan Tak Linier

% Main iteration loopwhile max(abs(x-xnew)) > tol & iter < maxiter iter = iter + 1; x = xnew; fnk = feval(fnctn,x,varargin{:}); % Set dx for derivation for k = 1:nx if x(k) ~= 0 dx(k) = x(k) / 100; else dx(k) = 1/100; end end

Newton.m (lanjutan) Pemrograman MATLAB

Page 36: Bab 3 Persamaan Tak Linier

% Calculation of the Jacobian matrix a = x; b = x; for k = 1 : nx a(k) = a(k) - dx(k); fa = feval(fnctn,a,varargin{:}); b(k) = b(k) + dx(k);fb = feval(fnctn,b,varargin{:}); jacob(:,k) = (fb - fa) / (b(k) - a(k)); a(k) = a(k) + dx(k); b(k) = b(k) - dx(k); end

Newton.m (lanjutan) Pemrograman MATLAB

Page 37: Bab 3 Persamaan Tak Linier

% Next approximation of the roots if det(jacob) == 0 xnew = x + max([abs(dx), 1.1*tol]); else xnew = x - rho * inv(jacob) * fnk; endend

if iter >= maxiter disp('Warning : Maximum iterations reached.')end

Newton.m (lanjutan) Pemrograman MATLAB

Page 38: Bab 3 Persamaan Tak Linier

fsolve

Subrutin dalam MATLAB untuk Pers. Tak Linier Serentak

Page 39: Bab 3 Persamaan Tak Linier

Aplikasi fsolve

Kasus 5Reaksi reformasi kukus berlangsung menurut rangkaian reaksi kesetimbangan berikut:

Pada suhu 2000 K harga konstanta kesetimbangan untuk masing-masing reaksi adalah 1,930x10-4 dan 5,528. Tentukan komposisi kesetimbangan komponen-komponenapabila Gas umpan berkomposisi 20% CH4(g) dan 80% H2O(g) berada pada kondisi suhu 2000 K dan tekanan 1 atm.

CH4(g) + H2O(g) CO(g) + 3H2(g)

CO(g) + H2O(g) CO2(g) + H2(g)

R-1

R-2

Page 40: Bab 3 Persamaan Tak Linier

Misal ditetapkan: o Basis perhitungan 10 mol gas umpan o e1 : derajat reaksi(degree of reaction) dari reaksi pertama o e2 : derajat reaksi(degree of reaction) dari reaksi kedua

Fraksi mol kesetimbangan setiap komponen dapat dinyatakan sebagai berikut:

1

21CO e210

eeY

1

21H e210

ee3Y

2

1

21OH e210

ee8Y

2

1

2CO e210

eY

2

1

1CH e210

e2Y

4

Persamaan konstanta kesetimbangan dinyatakan sebagai berikut:

OHCH

23HCO

1

24

2

YY

PYYK

OHCO

HCO2

2

2

YY

YYK

Jawaban :

Page 41: Bab 3 Persamaan Tak Linier

Jawaban : (lanjutan)

3

1 2 1 212

1 1 2 1

3

2 8 10 2

e e e eK

e e e e

2 1 22

1 2 1 2

3

8

e e eK

e e e e

Substitui fraksi mol kesetimbangan pada konstanta kesetimbangan sehingga dihasilkan :

Page 42: Bab 3 Persamaan Tak Linier

function y = KsT(e,K1,K2)%Sistem Pers.tak linier yang akan dinolkany = [(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];

clearclcK1 = input(‘Masukan konstanta kst. reaksi 1 = ');K2 = input(‘Masukan konstanta kst. reaksi 2 = ');

%Pencari nol fungsi KsT.me = fsolve(@(e) KsT(e,K1,K2),[1 0.5])

KsT.m Pemrograman MATLAB

kasus5.m Pemrograman MATLAB

Page 43: Bab 3 Persamaan Tak Linier

>>kasus5Masukan harga konstanta kst. reaksi 1 = 1.93e-4Masukan harga konstanta kst. reaksi 2 = 5.528Optimization terminated: first-order optimality is less

than options.TolFun.

e =

0.7480 0.6920

Eksekusi program kasus5.m Masukan dan hasil di Command Window :

Page 44: Bab 3 Persamaan Tak Linier

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:

FA0 = laju molar umpan, mol/s.X = konversi∆HR = Kalor reaksi, J/(mol.K)CP,A = kapasitas panas A, J/(mol.K)T = temperatur reaktor, oCT0 = temperatur referensi, 25 oCTa = temperatur air pendingin, oCU = koefisien pindah panas total, W/(m2.K)A = luas pindah panas, m2

Untuk reaksi orde pertama konversi dirumuskan sebagai berikut:

Dengan τadalah waktu tinggal dalam sekon, dan k adalah laju reaksi spesifik dalam s -1 dihitung dengan menggunakan persamaan Arrhenius:

Hitunglah harga temperatur reaktor dan konversinya!. (∆HR=-1500 kJ/mol; τ=10 s; CP,A = 4500 J/(mol.K); UA/FA0 =700 W.s/(mol.K).

, 0( ) ( )Ao R Ao P A aF X H F C T T UA T T

1

kX

k

650exp[ 3800 /( 273)]k T

Tugas 5Menyelesaikan sistem persamaan tak linier dengan menggunakan subrutin MATLAB