numeričke metode u modeliranju procesa - unizg.hr · b. zelić: analiza i modeliranje ekoprocesa,...

68
Uvod B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa - linearne jednadžbe - direktne metode - Gaussova eliminacija - Gauss-Jordanova metoda - iterativne metode - Gauss-Seidlova metoda - Jacobijeva metoda - nelinearne jednadžbe - iterativne metode - Jacobijeva nelinearna iteracija - Wegsteinova metoda - Newton-Raphsonova metoda (metoda tangente) - metoda sekante (regula falsi)

Upload: others

Post on 27-Dec-2019

14 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Uvod

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

-  linearne jednadžbe -  direktne metode

-  Gaussova eliminacija -  Gauss-Jordanova metoda

-  iterativne metode -  Gauss-Seidlova metoda -  Jacobijeva metoda

-  nelinearne jednadžbe -  iterativne metode

-  Jacobijeva nelinearna iteracija -  Wegsteinova metoda -  Newton-Raphsonova metoda (metoda tangente) -  metoda sekante (regula falsi)

Page 2: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Uvod

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

-  obične diferencijalne jednadžbe -  analitičke metode -  numeričke metode

-  Taylorova metoda -  Eulerova metoda -  Rungeova metoda (drugog, trećeg i četvrtog stupnja) -  Runge-Kutta metoda

-  parcijalne diferencijalne jednadžbe -  numeričke metode

-  metoda konačnih razlika – potpuna diskretizacija -  metoda linija – djelomična diskretizacija -  kolokacije

Page 3: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

LINEARNE JEDNADŽBE

Page 4: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

A x b⋅ =r r

11 12 13 1 1 1

21 22 23 2 2 2

31 32 33 3 3 3

1 2 3

... ... ...

... ... ... ...

n

n

n

n n n nn n n

a a a a x ba a a a x ba a a a x b

a a a a x b

⎛ ⎞ ⎛ ⎞ ⎛ ⎞⎜ ⎟ ⎜ ⎟ ⎜ ⎟⎜ ⎟ ⎜ ⎟ ⎜ ⎟⎜ ⎟ ⎜ ⎟ ⎜ ⎟⋅ =⎜ ⎟ ⎜ ⎟ ⎜ ⎟⎜ ⎟ ⎜ ⎟ ⎜ ⎟

⎜ ⎟ ⎜ ⎟⎜ ⎟⎝ ⎠ ⎝ ⎠⎝ ⎠

2 3 02 4 53 2

x y zx y zx y z

+ ⋅ − ⋅ =

⋅ − + ⋅ =

⋅ + − =

Gaussova eliminacija

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

Primjer (sustav od tri nezavisne jednadžbe s tri nepoznanice)

Sustav on n-jednadžbi u matričnom obliku

1 2 3 02 1 4 53 1 1 2

xyz

−⎛ ⎞ ⎛ ⎞ ⎛ ⎞⎜ ⎟ ⎜ ⎟ ⎜ ⎟− ⋅ =⎜ ⎟ ⎜ ⎟ ⎜ ⎟⎜ ⎟ ⎜ ⎟ ⎜ ⎟−⎝ ⎠ ⎝ ⎠ ⎝ ⎠

matrica koeficijenata

vektor nepoznanica

vektor rješenja (vektor desne strane)

A

x

b

r

r

Page 5: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

11 12 13 1 1

21 22 23 2 2

31 32 33 3 3

1 2 3

... ... ...

... ...

n

n

n

n n n nn n

a a a a ba a a a ba a a a b

a a a a b

⎛ ⎞⎜ ⎟⎜ ⎟⎜ ⎟⎜ ⎟⎜ ⎟⎜ ⎟⎝ ⎠

Gaussova eliminacija

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

Primjer (sustav od tri nezavisne jednadžbe s tri nepoznanice)

- kreiranje proširene matrice Ab – vektor rješenja se pripisuje kao četvrti stupac matrici koeficijenata

1 2 3 02 1 4 53 1 1 2

−⎛ ⎞⎜ ⎟−⎜ ⎟⎜ ⎟−⎝ ⎠

Page 6: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Gaussova eliminacija

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

Primjer - elemente prvog retka prepisati - elemente drugog retka umanjiti za vrijednost elemenata prvog retka pomnoženog sa 2 - elemente trećeg retka umanjiti za vrijednost elemenata prvog retka pomnoženih sa 3

- na retke proširene matrice primijeniti elementarne transformacije da bi se ispod glavne dijagonale matrice Ab dobile sve nule - elementarne transformacije se ne primjenjuju na stupce, njima je jedino moguće zamijeniti mjesta

1 2 3 0 1 2 3 02 1 4 5 0 5 10 53 1 1 2 0 5 8 2

− −⎛ ⎞ ⎛ ⎞⎜ ⎟ ⎜ ⎟− −⎜ ⎟ ⎜ ⎟⎜ ⎟ ⎜ ⎟− −⎝ ⎠ ⎝ ⎠

:

12 13 1 1

23 2 2

3 3

1 ...0 1 ...0 0 1 ......0 0 0 ... 1

n

n

n

n

a a a ba a b

a b

b

⎛ ⎞⎜ ⎟⎜ ⎟⎜ ⎟⎜ ⎟⎜ ⎟⎜ ⎟⎝ ⎠

Page 7: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Gaussova eliminacija

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

Primjer - elemente prvog i drugog retka prepisati - elemente trećeg retka umanjiti za elemente drugog retka

1 2 3 0 1 2 3 00 5 10 5 0 5 10 50 5 8 2 0 0 2 3

− −⎛ ⎞ ⎛ ⎞⎜ ⎟ ⎜ ⎟− −⎜ ⎟ ⎜ ⎟⎜ ⎟ ⎜ ⎟− − −⎝ ⎠ ⎝ ⎠

:

- prvi redak prepisati - drugi redak podijeliti sa -5 - treći redak podijeliti sa -2

*1 2 3 0 1 2 3 00 5 10 5 0 1 2 10 0 2 3 0 0 1 1,5

− −⎛ ⎞ ⎛ ⎞⎜ ⎟ ⎜ ⎟− − −⎜ ⎟ ⎜ ⎟⎜ ⎟ ⎜ ⎟− −⎝ ⎠ ⎝ ⎠

:

Page 8: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Gaussova eliminacija

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

Primjer - iz trećeg reda matrice 1 ⋅ z = 1,5

- iz n-tog reda 1 ⋅ ann = bn

Primjer - uvrštavanjem vrijednosti z = 1,5 u drugi red matrice 1 ⋅ y – 2 ⋅ z = -1 slijedi y = -1 + 3 = 2 - uvrštavanjem vrijednosti y = 2 i z = 1,5 u prvi red matrice 1 ⋅ x + 2 ⋅ y – 3 ⋅ z = 0 slijedi x = 0 – 4 + 4,5 = 0,5

- uvrštavanjem ann u n-1 red dobiva se an-1n-1 ….

1 2 3 00 1 2 10 0 1 1,5

−⎛ ⎞⎜ ⎟− −⎜ ⎟⎜ ⎟⎝ ⎠

Page 9: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Gauss-Jordanova metoda

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

Primjer - treći red pomnožiti sa 2 i dodati drugom redu - treći red pomnožiti sa 3 i dodati prvom redu

- elementarne transformacije provedene kod Gaussove metode eliminacije* proširuju se sve dok se članovi glavne dijagonale matrice nisu jedinice, a ostali elementi ispod i iza dijagonale ne poprime vrijednost nule

1

2

3

1 0 0 ... 00 1 0 ... 00 0 1 ... 0...0 0 0 ... 1 n

bbb

b

⎛ ⎞⎜ ⎟⎜ ⎟⎜ ⎟⎜ ⎟⎜ ⎟⎜ ⎟⎝ ⎠

*1 2 3 0 1 2 0 4,50 1 2 1 0 1 0 20 0 1 1,5 0 0 1 1,5

−⎛ ⎞ ⎛ ⎞⎜ ⎟ ⎜ ⎟− −⎜ ⎟ ⎜ ⎟⎜ ⎟ ⎜ ⎟⎝ ⎠ ⎝ ⎠

:

Page 10: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Gauss-Jordanova metoda

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

Primjer - drugi red pomnožiti sa - 2 i dodati prvom redu

1 2 0 4,5 1 0 0 0,50 1 0 2 0 1 0 20 0 1 1,5 0 0 1 1,5

⎛ ⎞ ⎛ ⎞⎜ ⎟ ⎜ ⎟⎜ ⎟ ⎜ ⎟⎜ ⎟ ⎜ ⎟⎝ ⎠ ⎝ ⎠

:

- kako su elementi glavne dijagonale jedinice, a elementi iznad i ispod dijagonale nule, rješenje je moguće očitati direktno iz matrice - x = 0,5; y = 2, z = 1,5

Page 11: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Gauss-Seidlova metoda

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

- zapis sustava n-linearnih jednadžbi u eksplicitnom obliku ( )

( )

( )

( )

1 1 12 2 13 3 111

2 2 21 1 23 3 222

3 3 31 1 32 2 333

1 1 2 2 , 1 1

1 ...

1 ...

1 ...

...1 ...

n n

n n

n n

n n n n n n nnn

x b a x a x a xa

x b a x a x a xa

x b a x a x a xa

x b a x a x a xa − −

= ⋅ − ⋅ − ⋅ − − ⋅

= ⋅ − ⋅ − ⋅ − − ⋅

= ⋅ − ⋅ − ⋅ − − ⋅

= ⋅ − ⋅ − ⋅ − − ⋅

11 12 13 1 1 1

21 22 23 2 2 2

31 32 33 3 3 3

1 2 3

... ... ...

... ... ... ...

n

n

n

n n n nn n n

a a a a x ba a a a x ba a a a x b

a a a a x b

⎛ ⎞ ⎛ ⎞ ⎛ ⎞⎜ ⎟ ⎜ ⎟ ⎜ ⎟⎜ ⎟ ⎜ ⎟ ⎜ ⎟⎜ ⎟ ⎜ ⎟ ⎜ ⎟⋅ =⎜ ⎟ ⎜ ⎟ ⎜ ⎟⎜ ⎟ ⎜ ⎟ ⎜ ⎟

⎜ ⎟ ⎜ ⎟⎜ ⎟⎝ ⎠ ⎝ ⎠⎝ ⎠

Sustav on n-jednadžbi u matričnom obliku

Page 12: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Gauss-Seidlova metoda

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

- pretpostavka za prvi korak, k, x1= x2 = x3 = … = xn = 0 - u idućem koraku, k+1

( )

( )

( )

( )

1 2 3

2 1 3

3 1 2

1 2 1

11 12 13 1

11

1 12 21 23 2

22

1 1 13 31 32 3

33

1 1 1 11 2 , 1

1 ...

1 ...

1 ...

...1 ...

n

n

n

n n

k k k kn

k k k kn

k k k kn

k k k kn n n n n

nn

x b a x a x a xa

x b a x a x a xa

x b a x a x a xa

x b a x a x a xa −

+

+ +

+ + +

+ + + +−

= ⋅ − ⋅ − ⋅ − − ⋅

= ⋅ − ⋅ − ⋅ − − ⋅

= ⋅ − ⋅ − ⋅ − − ⋅

= ⋅ − ⋅ − ⋅ − − ⋅

- u općenitom obliku 1

1 1

1 1

1 , za 1,...,j j

i nk k ki i ij ij

j j ix b a x a x i n

aii

−+ +

= = +

⎛ ⎞= ⋅ − ⋅ − ⋅ =⎜ ⎟

⎝ ⎠∑ ∑

Page 13: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Gauss-Seidlova metoda

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

Primjer 2 3 0

2 4 53 2

x y zx y zx y z

+ ⋅ − ⋅ =

⋅ − + ⋅ =

⋅ + − =

2 32 4 53 2

x y zy x zz x y

= − ⋅ + ⋅

= ⋅ + ⋅ −

= ⋅ + −

- izračunati vrijednost x1 pomoću prve jednadžbe za y = z = 0

1 2 0 3 0 0x = − ⋅ + ⋅ =

- izračunati vrijednost y1 iz druge jednadžbe pomoću x1 i z = 0

1 2 0 4 0 5 5y = ⋅ + ⋅ − = −

- izračunati vrijednost z1 iz druge jednadžbe pomoću x1 i y1

( )1 3 0 1 5 2 7z = ⋅ + ⋅ − − = −

Page 14: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Gauss-Seidlova metoda

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

- izračunati vrijednost x2 pomoću prve jednadžbe za y1 i z1

( ) ( )2 2 5 3 7 11x = − ⋅ − + ⋅ − = −- izračunati vrijednost y2 iz druge jednadžbe pomoću x2 i z1

( ) ( )2 2 11 4 7 5 55y = ⋅ − + ⋅ − − = −- izračunati vrijednost z2 iz druge jednadžbe pomoću x2 i y2

( ) ( )2 3 11 1 55 2 90z = ⋅ − + ⋅ − − = −- za k = 10

OPREZ SUSTAV MORA KONVERGIRATI RJEŠENJU!

k x y z 0 0 0

1 0 -5 -7 2 -11 -55 -90 3 -160 -685 -1167 4 -2131 -8935 -15330 5 -28120 -117565 -201927 6 -370651 -1549015 -2660970 7 -4884880 -2E+07 -3.5E+07 8 -6.4E+07 -2.7E+08 -4.6E+08 9 -8.5E+08 -3.5E+09 -6.1E+09

10 -1.1E+10 -4.7E+10 -8E+10

Page 15: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Gauss-Seidlova metoda

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

2 3 02 4 53 2

x y zx y zx y z

+ ⋅ − ⋅ =

⋅ − + ⋅ =

⋅ + − =

1 1 23 3 31 32 2

1 1 52 4 4

x y z

y x z

z x y

= − ⋅ + ⋅ +

= − ⋅ + ⋅

= ⋅ + +

k x y z 0 0 0

1 0.666667 -0.33333 0.833333 2 1.055556 0.722222 0.902778 3 0.726852 0.990741 1.134259 4 0.714506 1.344136 1.228781 5 0.628215 1.529064 1.318158 6 0.596365 1.679055 1.371581 7 0.564175 1.775284 1.411733 8 0.545483 1.844859 1.438473 9 0.531205 1.892107 1.457424

10 0.521772 1.92525 1.470426

- za k = 10 (analitička rješenja, x = 0,5, y = 2, z = 1,5)

Page 16: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Jacobijeva metoda (iteracija)

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

- zapis sustava n-linearnih jednadžbi u eksplicitnom obliku ( )

( )

( )

( )

1 1 12 2 13 3 111

2 2 21 1 23 3 222

3 3 31 1 32 2 333

1 1 2 2 , 1 1

1 ...

1 ...

1 ...

...1 ...

n n

n n

n n

n n n n n n nnn

x b a x a x a xa

x b a x a x a xa

x b a x a x a xa

x b a x a x a xa − −

= ⋅ − ⋅ − ⋅ − − ⋅

= ⋅ − ⋅ − ⋅ − − ⋅

= ⋅ − ⋅ − ⋅ − − ⋅

= ⋅ − ⋅ − ⋅ − − ⋅

11 12 13 1 1 1

21 22 23 2 2 2

31 32 33 3 3 3

1 2 3

... ... ...

... ... ... ...

n

n

n

n n n nn n n

a a a a x ba a a a x ba a a a x b

a a a a x b

⎛ ⎞ ⎛ ⎞ ⎛ ⎞⎜ ⎟ ⎜ ⎟ ⎜ ⎟⎜ ⎟ ⎜ ⎟ ⎜ ⎟⎜ ⎟ ⎜ ⎟ ⎜ ⎟⋅ =⎜ ⎟ ⎜ ⎟ ⎜ ⎟⎜ ⎟ ⎜ ⎟ ⎜ ⎟

⎜ ⎟ ⎜ ⎟⎜ ⎟⎝ ⎠ ⎝ ⎠⎝ ⎠

Sustav on n-jednadžbi u matričnom obliku

Page 17: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Jacobijeva metoda (iteracija)

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

- pretpostavka za prvi korak, k, x1= x2 = x3 = … = xn = 0 - u idućem koraku, k+1

( )

( )

( )

( )

1 2 3

2 1 3

3 1 2

1 2 1

11 12 13 1

11

12 21 23 2

22

1 13 31 32 3

33

11 2 , 1

1 ...

1 ...

1 ...

...1 ...

n

n

n

n n

k k k kn

k k k kn

k k k kn

k k k kn n n n n

nn

x b a x a x a xa

x b a x a x a xa

x b a x a x a xa

x b a x a x a xa −

+

+

+ +

+−

= ⋅ − ⋅ − ⋅ − − ⋅

= ⋅ − ⋅ − ⋅ − − ⋅

= ⋅ − ⋅ − ⋅ − − ⋅

= ⋅ − ⋅ − ⋅ − − ⋅

- u općenitom obliku

1 1 , za 1,...,j

nk ki i ij

j ix b a x i n

aii+

⎛ ⎞= ⋅ − ⋅ =⎜ ⎟

⎝ ⎠∑

Page 18: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Jacobijeva metoda (iteracija)

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

Primjer 2 3 0

2 4 53 2

x y zx y zx y z

+ ⋅ − ⋅ =

⋅ − + ⋅ =

⋅ + − =

2 32 4 53 2

x y zy x zz x y

= − ⋅ + ⋅

= ⋅ + ⋅ −

= ⋅ + −

- izračunati vrijednost x1 pomoću prve jednadžbe za y = z = 0

1 2 0 3 0 0x = − ⋅ + ⋅ =

- izračunati vrijednost y1 iz druge jednadžbe pomoću x = z = 0

1 2 0 4 0 5 5y = ⋅ + ⋅ − = −

- izračunati vrijednost z1 iz druge jednadžbe pomoću x = y = 0

1 3 0 1 0 2 2z = ⋅ + ⋅ − = −

Page 19: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Jacobijeva metoda (iteracija)

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

- izračunati vrijednost x2 pomoću prve jednadžbe za y1 i z1

( ) ( )1 2 5 3 2 4x = − ⋅ − + ⋅ − =- izračunati vrijednost y2 iz druge jednadžbe pomoću x1 i z1

( )1 2 0 4 2 5 13y = ⋅ + ⋅ − − = −- izračunati vrijednost z2 iz druge jednadžbe pomoću x1 i y1

( )1 3 0 1 5 2 7z = ⋅ + ⋅ − − = −- za k = 10

OPREZ SUSTAV MORA KONVERGIRATI RJEŠENJU!

k x y z 0 0 0

1 0 -5 -2 2 4 -13 -7 3 5 -25 -3 4 41 -7 -12 5 -22 29 114 6 284 407 -39 7 -931 407 1257 8 2957 3161 -2388 9 -13486 -3643 12030

10 43376 21143 -44103

Page 20: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Jacobijeva metoda (iteracija)

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

2 3 02 4 53 2

x y zx y zx y z

+ ⋅ − ⋅ =

⋅ − + ⋅ =

⋅ + − =

1 1 23 3 31 32 2

1 1 52 4 4

x y z

y x z

z x y

= − ⋅ + ⋅ +

= − ⋅ + ⋅

= ⋅ + +

- za k = 10 (analitička rješenja, x = 0,5, y = 2, z = 1,5) k x y z 0 0 0

1 0.666667 0 1.25 2 1.083333 1.541667 0.916667 3 0.458333 0.833333 1.09375 4 0.753472 1.411458 1.229167 5 0.605903 1.467014 1.226128 6 0.586372 1.536241 1.313802 7 0.59252 1.677517 1.340875 8 0.554452 1.715052 1.373119 9 0.552689 1.782453 1.401537

10 0.539695 1.825961 1.419269

Page 21: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

NELINEARNE JEDNADŽBE

Page 22: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

( )0, 0xe x f x− − = =

21 0

0,13532 1

0,87343 2

1 18 19

0,1353

0,8734

0,4175...

- rješenje 0,5671k k

x e x ex e x ex e x e

x x x x

+

= − = =

= − = =

= − = =

= = =

Jacobijeva nelinearna iteracija

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

Primjer x0 = 2

- zadana nelinearna jednadžba

- funkciju izraziti eksplicitno po x xx e−=

- pretpostaviti početnu vrijednost xa i uvrstiti u iterativni oblik funkcije

1kx

kx e−+ =

Page 23: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Jacobijeva nelinearna iteracija

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

- grafičko određivanje rješenja nelinearne jednadžbe

Page 24: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

- vrijednost za x2 odrediti kao presjek pravca y = x i sekante kroz točke (x0, f(x0)) i (x1, f(x1)) na krivulju koja predstavlja funkcija u eksplicitnom obliku, g(x)

- opći oblik Wegsteinove metode

( )0, 0xe x f x− − = =

( ), xx e g x x−= =

Wegsteinova metoda

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

- zadana nelinearna jednadžba

- funkciju izraziti eksplicitno po x

- pretpostaviti početnu vrijednost xa i uvrstiti u Jacobijev iterativni oblik funkcije

1kx

kx e−+ =

( )

( )( )

1

1 02 1

0 0

1 1

0

1

x f xx xx x

x f xx f x

=

−= +

−−

( )( )

11

1 1 1

k kk k

k k

k k

x xx xx f xx f x

−+

− −

−= +

−−

Page 25: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

21 0

0,13532 1

0,87343 2

1 5 6

0,1353

0,6641

0,5751...

- rješenje 0,5671k k

x e x ex e x ex e x e

x x x x

+

= − = =

= − = =

= − = =

= = =

Wegsteinova metoda

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

Primjer x0 = 2

Page 26: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Wegsteinova metoda

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

- grafičko određivanje rješenja nelinearne jednadžbe

Page 27: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

( )( )1 'k

k kk

f xx x

f x+ = −

Newton-Raphsonova metoda (metoda tangente)

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

- implicitno zadana funkcija ili naknadno prevedena u implicitni oblik - opći oblik metode

( )( )

' 1

x

x

f x e x

f x e

= −

= − −

Primjer - zadana nelinearna jednadžba

- opći iterativni oblik za zadanu nelinearnu jednadžbu

1 1

k

k

xk

k k xe xx xe

+ −

−= −

− −

Page 28: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Newton-Raphsonova metoda (metoda tangente)

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

Primjer x0 = 2 0

0

1

1

20

1 0 2

0,35761

2 1 0,3576

1 3 4

22 0,35761 1

0,35760,3576 0,55871 1

... - rješenje 0,5671

x

x

x

x

k k

e x ex xe ee x ex xe e

x x x x

− −

− −

− −

− −

+

− −= − = − =

− − − −

− −= − = − =

− − − −

= = =

Page 29: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Newton-Raphsonova metoda (metoda tangente)

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

- grafičko određivanje rješenja nelinearne jednadžbe

Page 30: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

- Δ - korak iteracije - metoda sekante sporije konvergira od Newton-Raphsonove metode - opći oblik metode

( ) ( ) ( )'f x f x

f x+Δ −

≅Δ

Metoda sekante (regula falsi)

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

- implicitno zadana funkcija ili naknadno prevedena u implicitni oblik - varijacija Newton-Raphsonove metode u kojem je derivacija funkcije zamijenjena izrazom:

( )( )

( )( ) ( )1 '

k kk k k

k k k

f x f xx x x

f x f x f x+ = − = − ⋅Δ+Δ −

( ) xf x e x−= −

Primjer - zadana nelinearna jednadžba

Page 31: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Metoda sekante (regula falsi)

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

Primjer x0 = 2, Δ = 0,001

( ) ( )

( ) ( )

0

0 0

1

1 1

20

1 0 2 0,001 2

0,35751

2 1 0,3575 0,001 0,3575

1 3 4

22 0,35750,001

0,35750,3575 0,55870,001

... - rješenje 0,5671

x

x x

x

x x

k k

e x ex xe ee e

e x ex xe e e e

x x x x

− −

− +− +Δ −−

− −

− +Δ − +− −

+

− −= − ⋅Δ = − ⋅Δ =

− −−Δ −

− −= − ⋅Δ = − ⋅Δ =

−Δ − − −

= = =

- opći iterativni oblik za zadanu nelinearnu jednadžbu

( )1

k

k k

xk

k k x x

e xx xe e

+ − +Δ −

−= − ⋅Δ

−Δ −

Page 32: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Metoda sekante (regula falsi)

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

- grafičko određivanje rješenja nelinearne jednadžbe

Page 33: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

OBIČNE DIFERENCIJALNE JEDNADŽBE

Page 34: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Analitička metoda – obične diferencijalne jednadžbe

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

- red obične diferencijalne jednadžbe, n - obična diferencijalna jednadžba n-tog reda – sadrži n konstati – n potrebnih rubnih i/ili početnih uvjeta - nemaju sve obične diferencijalne jednadžbe analitička rješenja, ali je sve obične diferencijalne jednadžbe moguće riješiti numeričkim metodama - obična diferencijalna jednadžba 1. reda i zadani početni uvjet

( )2 0 1dy x y ydx

= − ⋅ − = −

( ) 3 2 2xy x e x−= − ⋅ + − ⋅

- opće analitičko rješenje

( ) 2 2xy x C e x−= ⋅ + − ⋅

- analitičko rješenje uz uvažavanje početnog uvjeta

Page 35: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

( )

( ) ( )( ) ( ) ( ) ( ) ( )( ) ( )( ) ( )( ) ( )

0

0 0 0

0

0

0

' 2 0 1

0 0 1

1 ' ' 0 2 2 2 0 1 1

2 '' '' 0 2 ' 2 1 3

3 ''' ''' 0 '' 3

4 '''' '''' 0 ''' 3

dyy x y ydx

k y x y

k y x y x y x y x

k y x y y

k y x y y

k y x y y

= = − ⋅ − = −

= = = −

= = = − ⋅ − = − ⋅ − = − ⋅ − − =

= = = − − = − − = −

= = = − =

= = = − = −

Taylorova metoda – razvoj u Taylorov red

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

- Taylorova formula reda n tražene funkcije oko početne točke x0 = 0

( )( ) ( ) ( )0

00

*!

kn

nk

y xy x h h k R

k=

⋅+ = ⋅ +∑

( ) 2 3 4 41 1 1,5 0,5 0,125y x h h h h R= − + ⋅ − ⋅ + ⋅ − ⋅ +

h – korak, Rn – pogreška aproksimacije

- uvrštavanjem u jednadžbu *

Primjer

Page 36: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Taylorova metoda

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

- usporedba analitičkog i numeričkog rješenja obične diferencijalne jednadžbe za različite redove, n, Taylorove formule

0 1 2-6

-4

-2

0

2

 analitièko  rješenje  Taylorova  metoda  k=1  Taylorova  metoda  k=2  Taylorova  metoda  k=3  Taylorova  metoda  k=4

y

x

( )2 0 1dy x y ydx

= − ⋅ − = −

Page 37: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Domaća zadaća

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

Za običnu diferencijalnu jednadžbu

( )3 0 1dy x ydx

= + = −

čije je analitičko rješenje 2

1 32xy x= − + ⋅ +

grafički usporediti analitičko i numeričko rješenje primjenom Teylorove metode 1., 2., 3. i 4. reda za korak h = 0,1 i područje rješenja 0 ≤ x ≤ 2.

Page 38: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

( )( ) ( )( ) ( )

0

0 0 0

početni uvjet

' ,

' ,

y x

y x f x y

y x f x y

=

=

Eulerova metoda

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

- primjena Taylorove formule 1. reda oko početne točke x0 = 0

( ) ( ) ( ) ( ) 20 0 0 0 0

''' za između i

2y

y x h y x y x h h x x hξ

ξ+ = + ⋅ + ⋅ +

- kriterij točnosti – mali korak, h

y1

y0

x1 x0

y(x)

h

- Eulerova metoda

( )1 1 1

1

,n n n n

n n

y y h f x yx x h

− − −

= + ⋅

= +

Page 39: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

( )( )

( )( ) ( )( )

0

1 0

1 0

0 0 0 0

0 0

1 0

1 0 0 0

1 1 1 1

0 0

2 1

2 1 1

' 2 1 0,1

01

, 2 1

, 0,10 0,1 0,1

, 1 0,1 0,9

, 2 0, 2 0,9 0,7

, 0,070,1 0,1 0, 2

n

n

dyy x y y hdx

x xy yf x y x y

h f x yx x hy y h f x y

f x y x y

h f x yx x hy y h f x

= = − ⋅ − = − =

= =

= = −

= − ⋅ − =

⋅ =

= + = + =

= + ⋅ = − + = −

= − ⋅ − = − − − =

⋅ =

= + = + =

= + ⋅ ( )( ) ( )( )

1

2 2 2 2

0 0

, 0,9 0,07 0,83

, 2 0, 4 0,83 0, 43

, 0,043...

y

f x y x y

h f x y

= − + = −

= − ⋅ − = − − − =

⋅ =

Eulerova metoda

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

Primjer

Page 40: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Eulerova metoda

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

- usporedba analitičkog i numeričkog rješenja obične diferencijalne jednadžbe za različite korake, h, Eulerove metode

( )2 0 1dy x y ydx

= − ⋅ − = −

0.0 0.5 1.0 1.5 2.0-3.0

-2.5

-2.0

-1.5

-1.0

-0.5

 analitièko  rješenje Eulerova metoda, h = 0,1 Eulerova metoda, h = 0,01

y

x

Page 41: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Rungeova metoda srednje točke

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

- Runge-Kutta metoda drugog stupnja

yn-1 yn

xn xn-1

h/2

( )1 1 1

1/2 1 1

2 1 1/2

1 2

,

2

,2

n n

n n

n n

n n

g f x yhy y g

hg f x y

y y h g

− −

− −

− −

=

= + ⋅

⎛ ⎞= +⎜ ⎟⎝ ⎠

= + ⋅

h/2

nagib = g2

Page 42: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

( ) ( )

( )

0

1 0

1 0

1 0 0 0 0

1 1/2 0 1

2 0 1 1/2 0 1 1/2

1 0 2

' 2 1 0,1

01

, 2 2 0 1 10,11 1 0,95

2 2

, 2 2 0,05 0,95 0,852 2

1 0,1 0,85

n

n

dyy x y y hdx

x xy yg f x y x y

hy y g

h hg f x y x y

y y h g

− −

= = − ⋅ − = − =

= =

= = −

= = − ⋅ − = − ⋅ − − =

= + ⋅ = − + ⋅ = −

⎛ ⎞ ⎛ ⎞= + = − ⋅ + − = − ⋅ − − =⎜ ⎟ ⎜ ⎟⎝ ⎠ ⎝ ⎠

= + ⋅ = − + ⋅ 0,915= −

Rungeova metoda srednje točke

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

Primjer

Page 43: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Rungeova metoda srednje točke

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

- usporedba analitičkog i numeričkog rješenja obične diferencijalne jednadžbe – usporedba Eulerove i Rungeove metode srednje točke za isti korak, h = 0,1

( )2 0 1dy x y ydx

= − ⋅ − = −

0.0 0.5 1.0 1.5 2.0-3.0

-2.5

-2.0

-1.5

-1.0

-0.5

analitièko  rješenje  Eulerova  metoda,  h=0,1  Rungeova  metoda  srednje  toèke,  h=0,1

y

x

Page 44: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Rungeova metoda trećeg stupnja

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

( )

( )

1 1 1

12 1 1

23 1 1

1 1 3

,

,3 3

22 ,3 3

1 34

n n

n n

n n

n n

g h f x y

ghg h f x y

ghg h f x y

y y g g

− −

− −

− −

= ⋅

⎛ ⎞= ⋅ + +⎜ ⎟⎝ ⎠

⋅⋅⎛ ⎞= ⋅ + +⎜ ⎟⎝ ⎠

= + ⋅ + ⋅

( )

( )

( )

1 1 1

12 1 1

3 1 1 1 2

1 1 2 3

,

,2 2, 2

1 26

n n

n n

n n

n n

g h f x y

ghg h f x y

g h f x h y g g

y y g g g

− −

− −

− −

= ⋅

⎛ ⎞= ⋅ + +⎜ ⎟⎝ ⎠

= ⋅ + − + ⋅

= + ⋅ + ⋅ +

- a) - b)

Page 45: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Rungeova metoda četvrtog stupnja

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

( )

( )

( )

1 1 1

12 1 1

23 1 1

4 1 1 3

1 1 2 3 4

,

,2 2

,2 2,

1 2 26

n n

n n

n n

n n

n n

g h f x y

ghg h f x y

ghg h f x y

g h f x h y g

y y g g g g

− −

− −

− −

− −

= ⋅

⎛ ⎞= ⋅ + +⎜ ⎟⎝ ⎠

⎛ ⎞= ⋅ + +⎜ ⎟⎝ ⎠

= ⋅ + +

= + ⋅ + ⋅ + ⋅ +

yn-1 yn

xn xn-1

h

g2

g3

g4

- Runge-Kutta IV

Page 46: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Sustav običnih diferencijalnih jednadžbi

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

Primjer Smanjenje koncentracije otopljenog kisika u rijeci nizvodno od mjesta ispuštanja otpadne vode opterećeno onečišćenjem organskog podrijetla. Mikroorganizmi postupno razgrađuju organsko onečišćenje duž sliva rijeke. Većina mikroorganizama uključenih u razgradnju preferira aerobne uvjete, odnosno njihov učinak ovisan je o koncentraciji otopljenog kisika. Promjena koncentracije organskog onečišćenja i koncentracije otopljenog kisika duž riječnog estuarija može se opisati slijedećim jednadžbama (sustavom običnih diferencijalnih jednadžbi):

BPKBPK

ddc q k ct

= − ⋅

( )OL O,zas. O BPK

ddc k a c c k ct= ⋅ − − ⋅

BPK – biološka potrošnja kisika (mjera koncentracije organskog onečišćenja), O – kisik, c – koncentracija, cO,zas. – koncentracija zasićenja kisikom, t – vrijeme, k – konstanta brine reakcije, q – protok otpadne vode

Page 47: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Sustav običnih diferencijalnih jednadžbi

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

Primjer - početni uvjeti

( )( )

-3BPK BPK,0

-3O O,0

0 7,33 mg dm

0 8,5 mg dm

c t c

c t c

= = =

= = =

- parametri procesa i procesni uvjeti: k = 0,3 h-1, kLa = 0,4 h-1, cO,zas. = 11 mg dm-3, q = 1 kg m-3 h-1, tMAX = 25 h

- Eulerova metoda: h = 0,1

( )( )

( )( ) ( )

BPK, BPK, 1 1 BPK, 1 O, 1

O, O, 1 1 BPK, 1 O, 1

1 BPK, 1 O, 1 BPK, -1

1 BPK, 1 O, 1 L O,zas. O, -1 BPK, -1

, ,

, ,

, ,

, ,

n n n n n

n n n n n

n n n n

n n n n n

c c h f t c c

c c h g t c c

f t c c q k c

g t c c k a c c k c

− − − −

− − − −

− − −

− − −

= + ⋅

= + ⋅

= − ⋅

= ⋅ − − ⋅

Page 48: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Sustav običnih diferencijalnih jednadžbi

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

Primjer

0 5 10 15 20 250

2

4

6

8

10

c [m

g dm

-3]

t [h]

BPK O

Page 49: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

PARCIJALNE DIFERENCIJALNE JEDNADŽBE

Page 50: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Numeričko rješavanje parcijalnih diferencijalnih jednadžbi

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

- definiraju međusobno ovisnost dvaju ili više procesnih veličina - uobičajeno drugog ili višeg stupnja - primjena

- prijenos topline - tok fluida - difuzija tvari

- metoda konačnih razlika - metoda linija

Page 51: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Metoda konačnih razlika

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

- ako je funkcija ux i njena derivacija konačna, kontinuirana i funkcija jedne varijable može biti razvijena u Taylorov red u okolišu točke x

2

2= - potpuna diskretizacija parcijalne diferencijalne jednadžbeu ux y∂ ∂

∂ ∂

( ) ( )2 3

2 3

d d d ...*d 2! d 3! du h u h uu x h u x hx x x

+ = + ⋅ + ⋅ + ⋅ +

( ) ( ) ( )202

x u x h u x hu hx h

+ − −∂≈ +

∂ ⋅

( ) ( )2 3

2 3

d d d ...**d 2! d 3! du h u h uu x h u x hx x x

− = − ⋅ + ⋅ − ⋅ +

- kombinacijom * i ** aproksimacija u centralnoj točki diferencijalne jednadžbe prvog reda

Page 52: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Metoda konačnih razlika

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

( ) ( ) ( )0x u x h u xu hx h

+ −∂≈ +

- iz * unaprijedna aproksimacija

( ) ( ) ( )0x u x u x hu hx h

− −∂≈ +

- iz ** povratna aproksimacija

- h – korak - pogreška aproksimacije u centralnoj točki reda veličine h2, pogreška unaprijedne i povratne aproksimacije reda veličine h

Page 53: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Metoda konačnih razlika

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

- funkcija ux i njena derivacija konačna, kontinuirana i funkcija jedne varijable - kombinacijom * i **

2

2xux

δδ

( ) ( ) ( ) ( )2

22 2

20x u x h u x u x hu h

x hδδ

+ − ⋅ + −≈ +

Page 54: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Metoda konačnih razlika

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

Primjer Vremenska promjena temperature u vrućem štapu. Prijenos topline u štapu definiran je parcijalnom diferencijalnom jednadžbom koja govori o vremenskoj (t) promjeni temperature (T(x,t)) u točki štapa, x, dužine, L = 2 m, pri čemu je 0 ≤ x ≤ L i t ≥ 0. (κ - termalna difuzivnost, uz pretpostavku da su termalna difuzivnost, gustoća i toplinski kapacitet konstantni)

2

2

T Tt x

κ∂ ∂

=∂ ∂

( )( )

100 ;0 10,

100 2 ;1 2x x

t f xx x

⋅ ≤ <⎧⎪= = ⎨

⋅ − ≤ ≤⎪⎩

Početni uvjeti

00; 0; 0

tx Tx L T

= =

= =

Rubni uvjeti

Page 55: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Metoda konačnih razlika

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

( ) ( ) ( )

( ) ( ) ( ) ( )

( ) ( ) ( )

1

21 1

2 2

1 1 12

0, 250,206 - iz uvjeta stabilnosti

, , ,- unaprijedna aproksimacija

, , 2 , ,- centralna aproksimacija

, , ,

i j i j i j

i j i j i j i j

i j i j i j

x ht k

T x t T x t T x tt k

T x t T x t T x t T x tx h

kT x t T x t T x t T xhκ

+

+ −

+ + −

Δ = =

Δ = =

∂ −=

∂ − ⋅ +=

∂⋅ ⎡ ⎤= ⋅ + +⎣ ⎦ ( )

( ) ( ) ( )

2

2

1 11

, 1 2

uz

0,5 ( 0,5 - uvjet stabilnosti) slijedi

, ,,

2

i j

i j i ji j

kth

kh

T x t T x tT x t

κ

κ

+ −

+

⋅⎛ ⎞⋅ − ⋅⎜ ⎟⎝ ⎠

⋅= ≤

+=

Page 56: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Metoda konačnih razlika

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

xi

Ti

0 0,25 0,50 1,00 0,75 1,50 1,25 1,75 2,00

0,206

0

0,618

0,412

0,824

1,030

1,236

1,442 T = 0

rubni uvjeti

T = 0

T = 0

T = 0

T = 0

T = 0

T = 0

T = 0

T = 0

T = 0

T = 0

T = 0

T = 0

T = 0

T = 0 T = 25 T = 50 T = 75 T = 100 T = 75 T = 50 T = 25 T = 0

početni uvjeti

( ) ( ) ( )1 11

, ,,

2i j i j

i j

T x t T x tT x t + −

+

+=

T = 25 T = 50

Page 57: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Metoda konačnih razlika

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

0.40.8

1.21.6

2.0

0

20

40

60

80

100

01

23

45

T [o C]

t [h]x [m]

0.40.8

1.21.6

2.0

0123

45

0

20

40

60

80

100

t [h]

Page 58: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Metoda linija

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

- metoda konačnih razlika – problem uvjet stabilnosti

2

2= - djelomična diskretizacija parcijalne diferencijalne jednadžbeu ux y∂ ∂

∂ ∂

( )21 12

2 0n n n nu u u u hx h

+ −∂ − ⋅ += +

- rješavanje sustava od n-2 običnih diferencijalnih jednadžbi

Page 59: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Metoda linija

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

Primjer Vremenska promjena temperature u vrućem štapu. Prijenos topline u štapu definiran je parcijalnom diferencijalnom jednadžbom koja govori o vremenskoj (t) promjeni temperature (T(x,t)) u točki štapa, x, dužine, L = 2 m, pri čemu je 0 ≤ x ≤ L i t ≥ 0. (κ - termalna difuzivnost, uz pretpostavku da su termalna difuzivnost, gustoća i toplinski kapacitet konstantni)

2

2

T Tt x

κ∂ ∂

=∂ ∂

( )( )

100 ;0 10,

100 2 ;1 2x x

t f xx x

⋅ ≤ <⎧⎪= = ⎨

⋅ − ≤ ≤⎪⎩

Početni uvjeti

00; 0; 0

tx Tx L T

= =

= =

Rubni uvjeti

Page 60: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Metoda linija

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

1 12

0

2 1 012

3 2 122

9 10 9 82

10

0,12

1 100

2dd

2dd...d 2d

0

n n n n

x hT T T Tt hn

TT T TT

t hT T TT

t h

T T T Tt h

T

+ −

Δ = =

∂ − ⋅ +=

∂≤ ≤

= ⎫⎪− ⋅ + ⎪=⎪⎪− ⋅ +⎪=⎬⎪⎪

− ⋅ + ⎪= ⎪⎪

= ⎭

rješavanje sustava običnih diferencijalnih jednadžbi metodom Runge-Kutta IV

Page 61: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Usporedba metode konačnih razlika i metode linija

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

0 1 2 3 4 50

20

40

60

80

100

x = 0,5 m

metoda  konaènih  razlika metoda linija

T [o C

]

t [h]

x = 1,0 m

Page 62: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Metoda linija

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

Primjer U spalionici otpada spaljuje se plinoviti otpad koji sadrži benzen. Koncentracija benzena u ulaznoj struji otpadnog plina je 1 mol dm-3. Brzina strujanja otpadnog plina je 5 m s-1, a dužina peći je 1 m. Peć je oblika cijevi promjera 0,1 m. Pretpostaviti da su gustoća reakcijske smjese, brzina strujanja otpadnog plina i temperatura u peći konstantni. Reakcija oksidacije benzena je prvog reda, a u peći je strujanje idealno u aksijalnom smjeru (nema aksijalne disperzije – čepoliko strujanje). Zadani su sljedeći parametri procesa: A = 2 ⋅1011 s-1, Ea = 225 kJ mol-1, T = 1100 K. Grafički prikazati vremensku promjenu koncentracije benzena po duljini peći, te u stacionarnom stanju izračunati konverziju benzena na izlazu iz peći.

z = L = 1 m

c0 = 1 mol dm-3 c = ? mol dm-3

cn-1 cnn

cn-1 cnn

Page 63: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Metoda linija

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

Bilanca tvari diferencijalnog elementa n cijevnog reaktora

1 1d *d n V n n V n ncV c q c q r Vt

V A z

− −Δ ⋅ = ⋅ − ⋅ + ⋅Δ

Δ = ⋅Δ

cn-1 cnn

cn-1 cnn

množina tvari A unijeta u dif. vremenu u dif. volumen reaktora

množina tvari A iznijeta u dif. vremenu iz dif. volumena reaktora

množina tvari A nastala kemijskom reakcijom u dif. vremenu u dif. volumenu

-

= akumulacija tvari A u dif. vremenu u dif. volumenu

±množina tvari A unijeta u dif. vremenu u dif. volumen reaktora

množina tvari A iznijeta u dif. vremenu iz dif. volumena reaktora

množina tvari A nastala kemijskom reakcijom u dif. vremenu u dif. volumenu

-

= akumulacija tvari A u dif. vremenu u dif. volumenu= akumulacija tvari A u dif. vremenu u dif. volumenu

±

c – koncentracija, V – volumen, qV – protok, r – brzina reakcije, A – površina, z -duljina

Page 64: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Metoda linija

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

Uz pretpostavku konstantne gustoće qVn-1 = qVn = qV i dijeljenjem * sa ΔV:

( )dd

Vn

c qc rt V

Δ ⋅= +

Δ

**Vqc c k ct A z∂ ∂

= − ⋅ − ⋅∂ ∂

-30, 1 mol dmt c= =

k – konstanta brzine reakcije

Uz ΔV = A ⋅ dz, Δc = dc, r = - k ⋅ c (reakcija prvog reda) i konstantan protok slijedi:

Početni uvjet:

Rubni uvjet:

d, 0dcx Lx

= =

Page 65: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Metoda linija

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

Primjenom metode linija uz povratnu aproksimaciju na jednadžbu **:

( ) ( )1 1dd

n n n nn Vn n

c c c cc q k c v k ct A h h

− −− −= − ⋅ + ⋅ = − ⋅ − ⋅

Za h = 0,1 m, i za 1 ≤ n ≤ 9, te uvažavanjem početnih i rubnih uvjeta slijedi:

( )

( )

( )

0

1 011

2 122

9 899

10 9

1

dddd...

dd

cc cc v k c

t hc cc v k c

t h

c cc v k ct h

c c

=

−= − ⋅ − ⋅

−= − ⋅ − ⋅

−= − ⋅ − ⋅

= h - korak

-14 saE

R Tk A e−

⋅= ⋅ =

Page 66: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Metoda linija

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

Rješavanjem sustava običnih diferencijalnih jednadžbi metodom Runge-Kutta IV

0.0 0.2 0.4 0.6 0.8 1.00.0

0.2

0.4

0.6

0.8

1.0

c

[mol

dm

-3]

t [s]

x = 0 x = 0,2 x = 0,4 x = 0,6 x = 0,8 x = 1,0

Page 67: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Metoda linija

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

U stacionarnom stanju jednadžba ** postaje:

0

d ***d V

ctc A k cz q

∂=

= − ⋅ ⋅

Jednadžba *** rješava se metodom Runge-Kutta IV za početni uvjet c = 1 za z = 0

Page 68: numeričke metode u modeliranju procesa - unizg.hr · B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa Primjer - treći red pomnožiti sa 2 i dodati

Metoda linija

B. Zelić: Analiza i modeliranje ekoprocesa, Numeričke metode u modeliranju procesa

Usporedba koncentracija u stacionarnom stanju za različite položaje u peći dobivenih metodom linija (rješavanjem jednadžbe **) i metodom Runge-Kutta IV (rješavanje jednadžbe ***)

0.0 0.2 0.4 0.6 0.8 1.00.0

0.2

0.4

0.6

0.8

1.0

c

[mol

dm

-3]

x [z]

metoda linija metoda  konaènih  razlika