Vous êtes sur la page 1sur 4

APLICACIN DEL MTODO DE JACOBI

En una mezcla se hace el balance de materia por componente, y se obtuvo


la siguiente tabla:
Componente
Etanol
Metanol
Agua

Balance de materia
10M1+M2+2M3-3M4=0
4M1+6M2-M3-9M4=0
-2M1+3M2+8M3-51M4=0

Encontrar los posibles valores de M1 M2 M3


Solucin:
Fijando una base de clculo, por ejemplo M 4=1Kg, se obtiene el sistema:

10 M 1 + M 2 +2 M 3 =3
4 M 1 +6 M 23 M 3=9
2 M 1+ 3 M 2 +8 M 3=51

Antes de proceder con la solucin respectiva, se observa que los elementos


ubicados en la diagonal principal cumplen satisfactoriamente con el criterio
de convergencia o diagonal pesada. Las ecuaciones de recurrencia son:
(k )

)
M (k+1
=
1

(k)

3M 2 2 M 3
10
(k )

(k )

94 M 1 M 3
=
6

( k+1 )
2

(k+1 )
3

( k)

(k)

512 M 1 3 M 2
=
8

La primera iteracin

[]

3
10
(1)= 9
M
6
51
8

k =1

es:

[ ]

0,3
(1)= 1,5
M
6,375

k =2 se obtiene sustituyendo al vector

La segunda iteracin

M ( 16)

en

las primeras ecuaciones de recurrencia

M (2)
1 =

3(1,5)2(6,375)
10

M (22)=

94 (0,3)6,375
6

M (2)
3 =

512( 0,3)3(1,5)
8

[ ]

1,125
2= 2,3625
M
5,8875

Las sucesivas se muestra en el cuadro 1. Se dice que despus de trece


iteraciones, con una tolerancia= 0,000007, el vector solucin es:

1,00000
(12)= 2,99998
M
5,00004

Cuadro 1: iteraciones 0 a 6 por el mtodo de Jcobi

Iteraci
n

M0

M1

M2

M3

M4

M5

M6

M1

0,3000
0

M2

1,5000
0
6,3750
0

1,1250
0
2,3625
0
5,8875
0
1,7355
7

1,1137
5
3,2312
5
5,2078
1
1,1031
0

1,0346
9
3,1104
7
4,8848
4
0,3482
9

0,9880
2
3,0239
3
4,9424
0
0,1291
5

0,9908
7
2,9824
1
4,9940
2
0,0663
1

0,9970
5
2,9929
2
5,0088
8
0,0192
2

M3
tolera
ncia

CODIFICACIN DEL PROGRAMA


%Aplicacin del mtodo de Jacobi
clc, clear
A=[10 1 2; 4 6 -3; -2 3 8]
b=[3 9 51]

X0=zeros(1,3)
k=0; Norma=1;
fprintf('k X(1) X(2) X(3) X(4) Norma\n')
while Norma >0.0001
k=k+1;
fprintf('%2d',k)
for i=1:3
suma=0;
for j=1:3
if i~=j
suma=suma+A(i,j)*X0(j);
end
end
X(i)=(b(i)-suma)/A(i,i);
fprintf('%10.4f\n',X(i))
end
Norma=norm(X0-X);
fprintf('%10.4f\n', Norma)
X0=X;
if k>25
disp('No se alcanz la convergencia')
break
end
end

Corremos el programa y obtenemos lo siguiente:

A = 10
6

-3

-2

X0 = 0

b=3

51
0

X(1)

X(2)

X(3)

Norma

0.3000 1.5000

6.3750

6.5560

2 -1.1250

4.4875

5.8875

3.3457

3 -1.3262

5.1938

4.4109

1.6491

4 -1.1016

4.5896

4.0958

0.7175

5 -0.9781

4.2823

4.3785

0.4355

6 -1.0039

4.3413

4.5246

0.1597

7 -1.0391

4.4316

4.4960

0.1010

8 -1.0424

4.4407

4.4534

0.0437

9 -1.0347

4.4216

4.4491

0.0210

10 -1.0320 4.4144 4.4582

0.0119

11 -1.0331 4.4171 4.4616

0.0045

12 -1.0340 4.4195 4.4603

0.0029

13 -1.0340 4.4195 4.4592

0.0011

14 -1.0338 4.4189 4.4592

0.0006

15 -1.0337 4.4188 4.4595

0.0003

16 -1.0338 4.4189 4.4595

0.0001

17 -1.0338 4.4189 4.4595

0.0001

Vous aimerez peut-être aussi