Académique Documents
Professionnel Documents
Culture Documents
TABLA DE CONTENIDOS
Contenido
TABLA DE CONTENIDOS......................................................................................................................2
8)RESUELVA EL SISTEMA, HACIENDO USO DEL MÉTODO DE ELIMINACIÓN DE GAUSS:.....................3
12. DISEÑE UN ALGORITMO Y PROGRAMA EN MATLAB QUE PERMITA CALCULAR E IMPRIMIR UNA
MATRIZ TRIANGULAR SUPERIOR........................................................................................................7
13) DISEÑE UN ALGORITMO Y PROGRMA PARA RESOLVER EL SISTEMA DE ECUACIONES POR EL
METODO JACOBI................................................................................................................................7
14)DISEÑE UN PROGRAMA Y ALGORITMO PARA SISTEMA DE ECUACIONES LINEALES CON GAUSS
SEIDEL................................................................................................................................................8
16) PARA LOS SIGUIENTES EJERCICIOS DADOS:..................................................................................9
Pregunta 15 :DADO EL SIGUIENTE SISTEMA DE ECUACIONES..........................................................14
i)Método de Jacobi con precisión de 10^(-3)...............................................................................14
ii) método de gausseidel con precisión de 10^(-6)......................................................................16
16) Para los siguientes ejercicios dados............................................................................................16
i.-METODO ITERATIVO DE JACOBI.................................................................................................16
ii.-METDOD DE GAUSS SEIDEL......................................................................................................17
I.- METDO ITERATIVO JACOBIANO................................................................................................18
ii.-METODO ITERATIVO DE GAUSS SEIDEL.....................................................................................19
i.- METODO ITERATIVO JACOBIANO..............................................................................................19
II.- METODO GAUSS SEIDEL..........................................................................................................20
17._ USE EL PROGRAMA QUE HAS HECHO EN LOS EJERCCIOS 13 Y 14 Y VUELVA A RESOLVER LOS
EJERCICIOS DELO NÚMERO 16 Y COMPARE SUS RESPUESTAS..........................................................21
18. DETERMINE LA INTENSIDAD DE CORRIENTE EN CADA RAMA DEL CIRCUITO QUE SE MUESTRA
EN LA FIGURA Y LAS CORRIENTES DE MALLA...................................................................................25
24) SEA EL SISTEMA DE ECUACIONES...............................................................................................26
pregunta 25:RESOLVER ELSIGUIENTE SISTEMA DE ECUACINES UTILIZANDO EL METODO DE GAUSS-
SEIDEL..............................................................................................................................................28
27.CONSIDERAR EL SISTEMA POCO DENSO DE ECUACIONES:..........................................................28
28. DADO EL SIGUIENTE SISTEMA DE ECUACIONES..........................................................................30
METODOS NUMERICOS SEGUNDA ENTREGA DE EJERCICIOS
−1.41 X +2 Y =1
X −1.41Y + Z=1
22Y −1.41 Z=1
i)Parcial
function X=eliminGauss(A,B)
[n n]=size(A);
A=[A';B']'
X=zeros(n,1);
for p=1:n
for k=[1:p-1;p+1:n];
m =-A(k,p)/A(p,p);
A(k,:)=A(k,:)+m*A(p,:)
end
end
X=A(:,n+1)./diag(A)
Solución
>> A=[-1.41 2 0; 1 -1.41 1;0 22 -1.41]
A=
-1.4100 2.0000 0
1.0000 -1.4100 1.0000
0 22.0000 -1.4100
>> B=[1;1;1]
B=
1
1
1
>> X=eliminGauss(A,B)
A=
A=
P á g i n a 2 | 30
METODOS NUMERICOS SEGUNDA ENTREGA DE EJERCICIOS
A=
A=
1.0e+03 *
A=
1.0e+03 *
-0.0014 0 0 0.0007
0 0.0000 0.0010 0.0017
0 0 -2.6081 -4.4545
A=
1.0e+03 *
-0.0014 0 0 0.0007
0 0.0000 0 0.0000
0 0 -2.6081 -4.4545
X=
-0.4895
0.1549
1.7079
ii)Parcial
%datos:
%A: es una matriz de coeficientes y términos independientes(matriz
%ampliada)
%n:numero de ecuaciones
%m:numero de columnas
P á g i n a 3 | 30
METODOS NUMERICOS SEGUNDA ENTREGA DE EJERCICIOS
n=length(A);
m=size(A)
m=m(1,1);
for k=1:n-1
for i=1:n-1
if abs(i-k)>0
f=-A(i,k)/A(k,k)
for j=k:n
A(i,j)=f*A(k,j)+A(i,j);
end
end
end
g=A(k,k);
for j=k:n
A(k,j)=A(k,j)/g;
end
for i=1:m
B(i,1)=A(i,n);
end
X=B;
end
SOLUCION:
>> C=[-1.41 2 0; 1 -1.41 1; 0 22 -1.41]
C=
-1.4100 2.0000 0
1.0000 -1.4100 1.0000
0 22.0000 -1.4100
1
1
1
>> A=[C D]
A=
>> X=EcuaGaussJordan(A)
m=
3 4
P á g i n a 4 | 30
METODOS NUMERICOS SEGUNDA ENTREGA DE EJERCICIOS
f=
0.7092
f=
f=
168.0672
f=
-2.6067e+03
f=
0.0644
f=
0.0454
X=
-0.4895
0.1549
1.7079
ejemplo:
P á g i n a 5 | 30
METODOS NUMERICOS SEGUNDA ENTREGA DE EJERCICIOS
>> matriz11
programa determinante de una matriz
digite la matriz A=
[2 3 4;5 4 8;1 5 2]
ans =
2 3 4
5 4 8
1 5 2
la determinante de la matriz es:
14.0000
ejemplo:
>> matriz12
digite la matriz A=
[2 3;4 5]
2 3
0 -1
corr=norm(x-x0,inf);
normest=corr/corr0;
if normest>=1 & iter>=2
error('norma de la matriz de iteración > 1')
end
errest=normest/(1-normest)*corr;
end
Ejemplo: Resuelva Ax(0)=b, con una aproximación inicial x(0)=[0 0 0]'
>> [x,iter]=jac(A,b,x,tol,maxit)
iter =
13
x=
0.6763
0.1799
-0.0216
iter =
13
P á g i n a 7 | 30
METODOS NUMERICOS SEGUNDA ENTREGA DE EJERCICIOS
x=zeros(size(B));%vector inicial
Cj=inv(L+D)*B;
z=[];
for i=1:MAXITE
xn=Tj*x+Cj;
err=norm(xn-x,2);
z=[z;xn' err];
x=xn;
if err<TOL
break
end
end
numite=i;
EJEMPLO:
>> A=[5.462 0.008406;0.01235 -2.387]
A=
5.4620 0.0084
0.0124 -2.3870
>> B=[10.85;1.37]
B=
10.8500
1.3700
>> [z,x,numite]=gaussSeidel(A,B,0.00001,6)
z=
x=
1.9856
-0.5842
numite =
P á g i n a 8 | 30
METODOS NUMERICOS SEGUNDA ENTREGA DE EJERCICIOS
4 x − y=15
x−5 y=9
i.-METODO ITERATIVO DE JACOBI
>> A=[4 -1;1 5]
A=
4 -1
1 5
>> B=[15;9]
B=
15
9
>> [z,x,numite]=jacobi(A,B,0.000001,10)
z=
x=
4.0000
1.0000
numite =
10
ii.-METDOD DE GAUSS SEIDEL
>> [z,x,numite]=gaussSeidel(A,B,0.00001,10)
z=
P á g i n a 9 | 30
METODOS NUMERICOS SEGUNDA ENTREGA DE EJERCICIOS
x=
3.1429
2.4286
numite =
6
b)
5 X−Y + Z=10
2 X +8 Y −Z=3
−X +Y +4 Z=3
I.- METDO ITERATIVO JACOBIANO
>> A=[5 -1 1;2 8 -1;-1 1 4]
A=
5 -1 1
2 8 -1
-1 1 4
>> B=[10;3;3]
B=
10
3
3
>> [z,x,numite]=jacobi(A,B,0.0000001,12)
z=
P á g i n a 10 | 30
METODOS NUMERICOS SEGUNDA ENTREGA DE EJERCICIOS
x=
1.7802
0.0769
1.1758
numite =
12
ii.-METODO ITERATIVO DE GAUSS SEIDEL
>> [z,x,numite]=gaussSeidel(A,B,0.00001,7)
z=
x=
1.9333
0.8000
0.4667
numite =
6
c)
4 x + y −z=13
x−5 y−z=−8
2 x − y−6 z=−2
i.- METODO ITERATIVO JACOBIANO
>> A=[4 1 -1;1 -5 -1;2 -1 -6]
P á g i n a 11 | 30
METODOS NUMERICOS SEGUNDA ENTREGA DE EJERCICIOS
A=
4 1 -1
1 -5 -1
2 -1 -6
>> B=[13;-8;-2]
B=
13
-8
-2
>> [z,x,numite]=jacobi(A,B,0.00001,15)
z=
x=
3.0000
2.0000
1.0000
numite =
10
II.- METODO GAUSS SEIDEL
>> [z,x,numite]=gaussSeidel(A,B,0.00000001,15)
z=
P á g i n a 12 | 30
METODOS NUMERICOS SEGUNDA ENTREGA DE EJERCICIOS
x=
3.6195
0.7257
-0.7522
numite =
11
A =
6 1 0 1 1 2
P á g i n a 13 | 30
METODOS NUMERICOS SEGUNDA ENTREGA DE EJERCICIOS
1 6 1 1 0 2
0 2 6 1 0 2
2 1 0 5 0 1
0 1 2 1 6 1
1 1 0 1 1 5
>> B=[5;4;5;8;7;6]
B =
z =
x =
P á g i n a 14 | 30
METODOS NUMERICOS SEGUNDA ENTREGA DE EJERCICIOS
0.0563
-0.0713
0.1543
1.1664
0.5144
0.5516
numite = 6
z =
x =
5.1588
4.9994
5.1604
5.7145
5.5483
5.4842
numite =6
P á g i n a 15 | 30
METODOS NUMERICOS SEGUNDA ENTREGA DE EJERCICIOS
A=
4 -1
1 5
>> B=[15;9]
B=
15
9
>> [z,x,numite]=jacobi(A,B,0.000001,10)
z=
x=
4.0000
1.0000
numite =
10
ii.-METDOD DE GAUSS SEIDEL
>> [z,x,numite]=gaussSeidel(A,B,0.00001,10)
z=
P á g i n a 16 | 30
METODOS NUMERICOS SEGUNDA ENTREGA DE EJERCICIOS
x=
3.1429
2.4286
numite =
6
b)
5 X−Y + Z=10
2 X +8 Y −Z=3
−X +Y +4 Z=3
I.- METDO ITERATIVO JACOBIANO
>> A=[5 -1 1;2 8 -1;-1 1 4]
A=
5 -1 1
2 8 -1
-1 1 4
>> B=[10;3;3]
B=
10
3
3
>> [z,x,numite]=jacobi(A,B,0.0000001,12)
z=
P á g i n a 17 | 30
METODOS NUMERICOS SEGUNDA ENTREGA DE EJERCICIOS
x=
1.7802
0.0769
1.1758
numite =
12
ii.-METODO ITERATIVO DE GAUSS SEIDEL
>> [z,x,numite]=gaussSeidel(A,B,0.00001,7)
z=
x=
1.9333
0.8000
0.4667
numite =
6
c)
4 x + y −z=13
x−5 y−z=−8
2 x − y−6 z=−2
i.- METODO ITERATIVO JACOBIANO
>> A=[4 1 -1;1 -5 -1;2 -1 -6]
A=
4 1 -1
P á g i n a 18 | 30
METODOS NUMERICOS SEGUNDA ENTREGA DE EJERCICIOS
1 -5 -1
2 -1 -6
>> B=[13;-8;-2]
B=
13
-8
-2
>> [z,x,numite]=jacobi(A,B,0.00001,15)
z=
x=
3.0000
2.0000
1.0000
numite =
10
II.- METODO GAUSS SEIDEL
>> [z,x,numite]=gaussSeidel(A,B,0.00000001,15)
z=
P á g i n a 19 | 30
METODOS NUMERICOS SEGUNDA ENTREGA DE EJERCICIOS
x=
3.6195
0.7257
-0.7522
numite =
11
x+5y = 9
solución
function [z,x,numite]=gaussSeidel(A,B,TOL,MAXITE)
D=diag(diag(A));
L=D-tril(A);
U=D-triu(A);
Tj=-inv(L+D)*U;
x=zeros(size(B));
Cj=inv(L+D)*B;
z=[];
for i=1:MAXITE
xn=Tj*x+Cj;
err=norm(xn-x,2);
z=[z;xn' err];
x=xn;
if err<TOL
break
end
end
numite=i;
P á g i n a 20 | 30
METODOS NUMERICOS SEGUNDA ENTREGA DE EJERCICIOS
A =
4 -1
1 5
>> B=[15;9]
B =
15
9
>> [z,x,numite]=gaussSeidel(A,B,0.00001,5)
z =
x =
3.1429
2.4286
numite =
b) 5x-y+z=10
2x+8y-z=3
-x+y+4z=3
Solución
function [z,x,numite]=gaussSeidel(A,B,TOL,MAXITE)
D=diag(diag(A));
L=D-tril(A);
U=D-triu(A);
Tj=-inv(L+D)*U;
x=zeros(size(B));
Cj=inv(L+D)*B;
z=[];
P á g i n a 21 | 30
METODOS NUMERICOS SEGUNDA ENTREGA DE EJERCICIOS
for i=1:MAXITE
xn=Tj*x+Cj;
err=norm(xn-x,2);
z=[z;xn' err];
x=xn;
if err<TOL
break
end
end
numite=i;
A =
5 -1 1
2 8 -1
-1 1 4
>> B=[10;3;3]
B =
10
3
3
>> [z,x,numite]=gaussSeidel(A,B,0.0001,4)
z =
x =
1.9333
0.8000
0.4667
numite =
4
c) 4x+y-z = 13
x-5y-z = -8
2x-y-6z = -2
Solución
function [z,x,numite]=gaussSeidel(A,B,TOL,MAXITE)
P á g i n a 22 | 30
METODOS NUMERICOS SEGUNDA ENTREGA DE EJERCICIOS
D=diag(diag(A));
L=D-tril(A);
U=D-triu(A);
Tj=-inv(L+D)*U;
x=zeros(size(B));
Cj=inv(L+D)*B;
z=[];
for i=1:MAXITE
xn=Tj*x+Cj;
err=norm(xn-x,2);
z=[z;xn' err];
x=xn;
if err<TOL
break
end
end
numite=i;
A =
4 1 -1
1 -5 -1
2 -1 -6
>> B=[13;-8;-2]
B =
13
-8
-2
>> [z,x,numite]=gaussSeidel(A,B,0.000001,7)
z =
x =
3.6195
0.7257
-0.7522
P á g i n a 23 | 30
METODOS NUMERICOS SEGUNDA ENTREGA DE EJERCICIOS
numite =
Ecuaciones de intensidad
Solución
function [z,x,numite]=gaussSeidel(A,B,TOL,MAXITE)
D=diag(diag(A));
L=D-tril(A);
U=D-triu(A);
Tj=-inv(L+D)*U;
x=zeros(size(B));
Cj=inv(L+D)*B;
z=[];
for i=1:MAXITE
xn=Tj*x+Cj;
err=norm(xn-x,2);
z=[z;xn' err];
x=xn;
P á g i n a 24 | 30
METODOS NUMERICOS SEGUNDA ENTREGA DE EJERCICIOS
if err<TOL
break
end
end
numite=i;
[ ]{ }{ }
0.01235 −2.387 ∗ x 1 = 1.37
5.462 0.008406 x 2 10.85
Programa:
function [z,x,numite]=jacobi(A,B,TOL,MAXITE)
D=diag(diag(A));
L=D-tril(A);
U=D-triu(A);
Tj=inv(D)*(L+U);
x=zeros(size(B));%vector inicial
Cj=inv(D)*B;
z=[];
for i=1:MAXITE
xn=Tj*x+Cj;
err=norm(xn-x,2);
z=[z;xn' err];
x=xn;
if err<TOL
break
end
end
numite=i;
a) Resolver por el método de Jacobi. Efectuar las modificaciones
necesarias para garantizar la convergencia. Trabajar con 5 cifras
de precisión
solución:
A=
5.4620 0.0084
0.0124 -2.3870
>> B=[10.85;1.37]
B=
P á g i n a 25 | 30
METODOS NUMERICOS SEGUNDA ENTREGA DE EJERCICIOS
10.8500
1.3700
>> [z,x,numite]=jacobi(A,B,0.00001,6)
z=
x=
1.9873
-0.5637
numite =
4
A =
6 1 -3
1 6 3
-3 3 10
>> B=[30;15;-15]
B =
30
15
-15
>> [z,x,numite]=gaussSeidel(A,B,0.00001,6)
z =
x =
6.8077
2.1928
-2.8845
A =
10 2 6
1 10 4
2 -7 -10
>> B=[28;7;-17]
B =
28
7
-17
>> [z,x,numite]=gaussSeidel(A,B,0.02,3)
z =
2.8000 0.9800 1.8260 3.4835
4.0916 1.8396 2.1694 1.5890
4.4695 2.0147 2.2164 0.4192
x =
4.4695
2.0147
2.2164
numite =3
-a+2b-c =1
-b+2c-d =1
-c+2d=1
Solucion gauss
P á g i n a 27 | 30
METODOS NUMERICOS SEGUNDA ENTREGA DE EJERCICIOS
function [z,x,numite]=gaussSeidel(A,B,TOL,MAXITE)
D=diag(diag(A));
L=D-tril(A);
U=D-triu(A);
Tj=-inv(L+D)*U;
x=zeros(size(B));
Cj=inv(L+D)*B;
z=[];
for i=1:MAXITE
xn=Tj*x+Cj;
err=norm(xn-x,2);
z=[z;xn' err];
x=xn;
if err<TOL
break
end
end
numite=i;
A =
2 -1 0 0
-1 2 -1 0
0 -1 2 -1
0 0 -1 2
>> B=[1;1;1;1]
B =
1
1
1
1
>> [z,x,numite]=gaussSeidel(A,B,0.00001,6)
z =
x =
P á g i n a 28 | 30
METODOS NUMERICOS SEGUNDA ENTREGA DE EJERCICIOS
0.4131
0.1829
0.2139
0.3931
numite =
6
0.745X1+0X2-1.290X3=0.740
0.875X1-2.540X2+0.247X3=3.39
Solución
function [z,x,numite]=gaussSeidel(A,B,TOL,MAXITE)
D=diag(diag(A));
L=D-tril(A);
U=D-triu(A);
Tj=-inv(L+D)*U;
x=zeros(size(B));
Cj=inv(L+D)*B;
z=[];
for i=1:MAXITE
xn=Tj*x+Cj;
err=norm(xn-x,2);
z=[z;xn' err];
x=xn;
if err<TOL
break
end
end
numite=i;
A =
>> B=[2.3;0.74;3.39]
B =
2.3000
P á g i n a 29 | 30
METODOS NUMERICOS SEGUNDA ENTREGA DE EJERCICIOS
0.7400
3.3900
>> [z,x,numite]=gaussSeidel(A,B,0.0001,4)
z =
x =
1.0046
-0.9879
0.0065
numite =
P á g i n a 30 | 30