SlideShare ist ein Scribd-Unternehmen logo
1 von 33
Métodos iterativos para sistemas lineales Programación numérica
Normas de vectores y matrices Una norma vectorial en R n  es una función ||  ·  ||, de R n  en R con las siguientes propiedades: (i) ||  x  ||    0 para todo  x     R n . (ii) ||  x  || = 0 si y solo si  x  = (0,0,...,0) t      0 . (iii) ||   x  || = |  ||  x  || para todo       R y  x     R n . (iv) ||  x  +  y  ||    ||  x  || + ||  y  || para todo  x ,  y     R n .
Vector en R n El vector Se denotará por:  x  =( x 1 ,  x 2 , ..., x n ) t
Norma  l 2  y  l  La norma  l 2  o norma euclidiana se define como La norma  l   se define como x 1 x 2 (1,0) (0,-1) (0,1) (-1,0) Los vectores en R 2  con la norma l 2  menos 1 se encuentran dentro de esta figura. x 1 x 2 (1,0) (0,-1) (0,1) (-1,0) Los vectores en R 2  con la norme l   menos 1 se encuentran dentro de esta figura.
Distancias Si  x  =( x 1 ,  x 2 , ..., x n ) t  y  y  =( y 1 ,  y 2 , ..., y n ) t  son vectores en R n  las distancias  l 2  y  l    éntre  x  y  y  están definidas por
Ejemplo 3.3330x 1  + 15920x 2   – 10.333x 3  = 15913 2.2220x 1  + 16.710x 2  + 9.6120x 3  = 28.544 1.5611x 1  + 5.1791x 2  + 1.6852x 3  = 8.4254 Solución:  x  = (1.0000,1.0000,1.0000) t Con Gauss:  x’  = (1.2001,0.99991,0.92538) t || x  –  x’ ||   = 0.2001 || x  –  x’ || 2  = 0.21356
Convergencia Se dice que una sucesión  de vectores en R n  converge a  x  respecto a la norma || . || si dado cualquier    > 0, existe un entero  N (  ) tal que ||  x ( k )  –  x || <    para todo k     N (  ) La sucesión { x ( k ) } converge a x respecto a || . ||   si y solo si Para cada  k  = 1, 2, ...,  n . Para todo x    R n , ||x||      ||x|| 2      n ||x|| 
Norma matricial Una norma matricial sobre el conjunto de todas las matrices  n  x  n  es una función ||  ·  ||, definida en ese conjunto y que satisface para todas las matrices  A ,  B  de  n  x  n  y todos los números   : (i) ||  A  ||    0 (ii) ||  A  || = 0 si y solo si  A  es 0 . (iii) ||   A  || = |  ||  A  || (iv) ||  A   +  B  ||    ||  A  || + ||  B  || (v) ||  AB  ||    ||  A  || ||  B  || Una distancia entre A y B es ||  A      B  ||
Norma matricial  l 2  y  l  Norma  l  Norma  l 2
Cálculo de la norma  l  Norma  l   se calcula con
Cálculo de la norma  l 2 Norma  l 2  se calcula con Donde    es el  radio espectral  de  A t A . El radio espectral es el máximo de los valores de propios de la matriz, calculadas con la ecuación
Ejemplo O –  3  + 14  2  – 42   = 0 Resolviendo se encuentra  || A || 2  = 3.16
Normas en Octave norm  ( a, p ) Computa la norm p de la matriz  a . Si no hay segundo argumento, se supone p = 2.  Si  a  es una matriz:  p  = 1 norma 1, la suma de la columna mayor de los valores absolutos de a.  p  = 2 El mayor valor singular de  a .  p  = Inf norma Infinita, la suma del renglón de los valores absolutos de  a .  p  = &quot;fro&quot; la norm Frobenius de  a , sqrt (sum (diag ( a ' *  a ))).
Métodos iterativos Un método de solución de A x  =  b Comienza con una aproximación  x (0)  y genera la sucesión de vectores { x (k) }  k = 0 ..   Los métodos iterativos se utilizan para sistemas de un gran número de ecuaciones con un alto porcentaje de elementos cero.
Método de solución El sistema  A x  =  b  se escribe de la forma x  =  T x  +  c Donde  T  es una matriz fija y un vector  c . La sucesión de vectores se genera calculando   x (k)  =  T  x (k–1)  +  c
Ejemplo E1: 10x 1  - x 2  + 2x 3   = 6 E2:  -x 1 + 11x 2  – x 3  + 3x 4  = 25 E3: 2x 1  - x 2  + 10x 3  -  x 4  = -11 E4:  3x 2  -  x 3  + 8x 4  = 15 Despejando  x i  de la ecuación  i : x 1  =  1/10x 2  – 1/5x 3   + 3/5 x 2  = 1/11x 1   + 1/11x 3  – 3/11x 4  + 25/11 x 3  =-1/5x 1  + 1/10x 2   +  1/10x 4  –11/10 x 4  =  - 3/8x 2  +  1/8x 3   +15/8
 
Tarea 32 Resuelva con Excel los siguientes sistemas usando el método iterativo de Jacobi.  3x 1  - x 2  + x 3   = 1           10 x 1  - x 2            = 0  3x 1  +6x 2 +2x 3    =0                 -x 1  +10x 2  - 2x 3  = 7 3x 1  +3x 2 +7x 3    = 4                      - 2x 2  +10x 3  = 6 10 x 1  + 5 x 2                 = 6               4x 1  + x 2  - x 3  + x 4  =  -2  5 x 1  + 10 x 2  -  4 x 3        = 25                  x 1  + x 2  - x 3  x 4  =  -1        - 4 x 2  +  8 x 3   - x 4  = -11             -x 1  - x 2  + 5x 3  + x 4  =  0                   -   x 3 + 5x 4  = -11              x 1  - x 2  + x 3  +3 x 4  =  1
Método iterativo de Jacobi Se resuelve la i-ésima ecuación para  x i : Siempre que  a ii     0
Método iterativo de Jacobi Escribimos la matriz del sistema como A =  D - L - U
Método iterativo de Jacobi A x  =  b ( D – L – U ) x  =  b D x  = ( L + U ) x  +  b x  =  D -1 ( L + U ) x  +  D -1 b x (k)  =  D -1 ( L + U ) x  (k-1)   +  D -1 b   k = 1, 2, ... x (k)  =  T j x  (k-1)   +  c j
Código en matlab function [x,J,c] = jacobi(A,b,n,z) %  n -- número de iteraciones %  z -- vector inicial(default 0) %  x -- solución final %  J -- matriz de Jacobi %  c -- vector de Jacobi if nargin <=3, z=0*b; end D = diag(diag(A)); J = DD - A); c = D; x=z; for k = 1:n x = J*x + c; fprintf(1,'%3d  ',k) fprintf(1,'%5.4f  ',x') fprintf(1,'') end
Método iterativo de Jacobi Entrada: número de ecuaciones, elementos  a ij , los elementos  b i , X0 los valores iniciales de  x , Tol la tolerancia, el número de iteraciones N. Salida: la solución aproximada, o el mensaje de que no hay solución. 1. k = 1 2. Mientras k <= N hacer pasos 3-9 3.  Para i = 1 hasta N 4. 5.  Si || x  –  x0 || < TOL 6.  Regresar (x1, x2, ..., xn) y parar 7.  k = k +1 8.  Para j = 1 hasta N 9.  X0j = xj 10. Salida(“no se encontro solución”)
Método de Jacobi en Matlab function y = jacobi(a,b,x0,tol,maxi) [n muda] = size(a); k = 1; x = x0; while k<=maxi for i=1:n suma = 0; for j=1:n if i~=j suma = suma - a(i,j)*x(j); end end x(i) = (suma+b(i))/a(i,i); end if norm(x-x0)<tol y = x; return end k = k + 1; x0 = x; end fprintf('No se  encontró solución')
Ejemplo de corrida >> a=[10,-1,2,0;-1,11,-1,3;2,-1,10,-1;0,3,-1,8]; >> b = [6,25,-11,15]‘; >> jacobi(a,b,[0,0,0,0],1e-3,20) ans = 1.0001  2.0000  -1.0000  1.0000 >>  E1: 10x 1  - x 2  + 2x 3   = 6 E2:  -x 1 + 11x 2  – x 3  + 3x 4  = 25 E3: 2x 1  - x 2  + 10x 3  -  x 4  = -11 E4:  3x 2  -  x 3  + 8x 4  = 15
Método iterativo de Gauss-Seidel En el paso k se utilizan las  x i   ya calculadas. Excepto por esta fórmula, el algoritmo es el mismo que el de Jacobi.
Gauss-Seidel en Matlav function [x,G,c] = gsmp(A,b,n,z) %  n -- número de iteraciones %  z -- vector inicial (default 0) %  x -- iteración final %  G -- matriz Gauss-Seidel %  c -- vector Gauss-Seidel if nargin <=3, z=0*b; end LD = tril(A); G = -LDriu(A,1); c = LD; x=z; for i = 1:n x = G*x + c; fprintf(1,'%3d  ',i) fprintf(1,'%5.5f  ',x') fprintf(1,'') end
Ejemplo a = 4  3  0 3  4  -1 0  -1  4 b = 24 30 -24 gsmp(a,b,7,[1 1 1]') 1  5.25000  3.81250  -5.04688  2  3.14062  3.88281  -5.02930  3  3.08789  3.92676  -5.01831  4  3.05493  3.95422  -5.01144  5  3.03433  3.97139  -5.00715  6  3.02146  3.98212  -5.00447  7  3.01341  3.98882  -5.00279
Métodos de relajación Los métodos de relajación tiene el siguiente esquema. Si 0 < w < 1 se llama subrelajación y se utiliza cuando el método de Gauss-Seidel no converge. Si 1 < w se llama sobrerrelajación y sirve para acelerar la convergencia. Valores típicos de 1.2 a 1.7.
Métodos de relajación En forma matricial ( D  +  wL ) x  = [(1 –  w ) D  –  wU ] x  +  w b x  = ( D  +  wL ) –1  [(1 –  w ) D  –  wU ] x  + ( D  +  wL )  –1  w b
Relajación en Matlab function [x,G,c] = relaj(A,b,n,w,z) %  n -- número de iteraciones %  z -- vector inicial (default 0) %  x -- iteración final %  G -- matriz Gauss-Seidel %  c -- vector Gauss-Seidel %  w -- Coeficiente de relajación if nargin <=3, z=0*b; end D = diag(diag(A)); LD = inv(D+w*tril(A,-1)); G = LD*((1-w)*D-w*triu(A,1)); c = w*LD*b; x=z; for i = 1:n x = (G*x + c); fprintf(1,'%3d  ',i) fprintf(1,'%5.5f  ',x') fprintf(1,'') end
Ejemplo a = 4  3  0 3  4  -1 0  -1  4 b = 24 30 -24 relaj(a,b,7,1.25,[1 1 1]') 1  6.31250  3.51953  -6.65015  2  2.62231  3.95853  -4.60042  3  3.13330  4.01026  -5.09669  4  2.95705  4.00748  -4.97349  5  3.00372  4.00292  -5.00571  6  2.99633  4.00093  -4.99828  7  3.00005  4.00026  -5.00035
Tarea 33 Resuelva los problemas anteriores por Gauss Seidel y relajación en Excel.

Weitere ähnliche Inhalte

Was ist angesagt?

Aplicaciones de la Transformada de Laplace. 3 ejercicios resueltos por Ing. R...
Aplicaciones de la Transformada de Laplace. 3 ejercicios resueltos por Ing. R...Aplicaciones de la Transformada de Laplace. 3 ejercicios resueltos por Ing. R...
Aplicaciones de la Transformada de Laplace. 3 ejercicios resueltos por Ing. R...roscoro
 
Reduccion de orden
Reduccion de ordenReduccion de orden
Reduccion de ordenjackytas7
 
Importancia del cálculo vectorial Mat III
Importancia del cálculo vectorial Mat IIIImportancia del cálculo vectorial Mat III
Importancia del cálculo vectorial Mat IIIAngel Granados
 
Aplicacion de las ecuaciones diferenciales de orden superior
Aplicacion de las ecuaciones diferenciales de orden superiorAplicacion de las ecuaciones diferenciales de orden superior
Aplicacion de las ecuaciones diferenciales de orden superiorIsai Esparza Agustin
 
Integrales de superficie
Integrales de superficieIntegrales de superficie
Integrales de superficieNobu Dragon
 
Método de la regla falsa (o metodo de la falsa posición) SN
Método de la regla falsa (o metodo de la falsa posición) SNMétodo de la regla falsa (o metodo de la falsa posición) SN
Método de la regla falsa (o metodo de la falsa posición) SNTensor
 
Integracion Por Intervalos Desiguales
Integracion Por Intervalos DesigualesIntegracion Por Intervalos Desiguales
Integracion Por Intervalos Desigualesguest51686f8
 
Metodos iterativos
Metodos iterativosMetodos iterativos
Metodos iterativoscyndy
 
Métodos numéricos- Problemario
Métodos numéricos- ProblemarioMétodos numéricos- Problemario
Métodos numéricos- ProblemarioBren MA
 
Ecuaciones diferenciales-orden-superior
Ecuaciones diferenciales-orden-superiorEcuaciones diferenciales-orden-superior
Ecuaciones diferenciales-orden-superiorSabena29
 
ecuaciones diferenciales de variables separables y ecuaciones diferenciales r...
ecuaciones diferenciales de variables separables y ecuaciones diferenciales r...ecuaciones diferenciales de variables separables y ecuaciones diferenciales r...
ecuaciones diferenciales de variables separables y ecuaciones diferenciales r...ÁLGEBRA LINEAL ECUACIONES DIFERENCIALES
 
Ecuaciones diferenciales _parciales
Ecuaciones diferenciales _parcialesEcuaciones diferenciales _parciales
Ecuaciones diferenciales _parcialesJohana lopez
 
Metodo del anulador
Metodo del anuladorMetodo del anulador
Metodo del anuladorMakabronero
 
Cuadratura de gauss
Cuadratura de gaussCuadratura de gauss
Cuadratura de gaussTensor
 
Ecuacion de cauchy euler
Ecuacion de cauchy euler Ecuacion de cauchy euler
Ecuacion de cauchy euler seralb
 
Ecuaciones diferenciales homogeneas
Ecuaciones diferenciales homogeneasEcuaciones diferenciales homogeneas
Ecuaciones diferenciales homogeneasfernandamendozadt
 

Was ist angesagt? (20)

Aplicaciones de la Transformada de Laplace. 3 ejercicios resueltos por Ing. R...
Aplicaciones de la Transformada de Laplace. 3 ejercicios resueltos por Ing. R...Aplicaciones de la Transformada de Laplace. 3 ejercicios resueltos por Ing. R...
Aplicaciones de la Transformada de Laplace. 3 ejercicios resueltos por Ing. R...
 
Reduccion de orden
Reduccion de ordenReduccion de orden
Reduccion de orden
 
Importancia del cálculo vectorial Mat III
Importancia del cálculo vectorial Mat IIIImportancia del cálculo vectorial Mat III
Importancia del cálculo vectorial Mat III
 
Aplicacion de las ecuaciones diferenciales de orden superior
Aplicacion de las ecuaciones diferenciales de orden superiorAplicacion de las ecuaciones diferenciales de orden superior
Aplicacion de las ecuaciones diferenciales de orden superior
 
Integrales de superficie
Integrales de superficieIntegrales de superficie
Integrales de superficie
 
Euler y runge kutta
Euler y runge kuttaEuler y runge kutta
Euler y runge kutta
 
Funciones -Variable compleja
Funciones -Variable complejaFunciones -Variable compleja
Funciones -Variable compleja
 
Método de la regla falsa (o metodo de la falsa posición) SN
Método de la regla falsa (o metodo de la falsa posición) SNMétodo de la regla falsa (o metodo de la falsa posición) SN
Método de la regla falsa (o metodo de la falsa posición) SN
 
Integracion Por Intervalos Desiguales
Integracion Por Intervalos DesigualesIntegracion Por Intervalos Desiguales
Integracion Por Intervalos Desiguales
 
Metodos iterativos
Metodos iterativosMetodos iterativos
Metodos iterativos
 
Métodos numéricos- Problemario
Métodos numéricos- ProblemarioMétodos numéricos- Problemario
Métodos numéricos- Problemario
 
Ecuaciones diferenciales-orden-superior
Ecuaciones diferenciales-orden-superiorEcuaciones diferenciales-orden-superior
Ecuaciones diferenciales-orden-superior
 
ecuaciones diferenciales de variables separables y ecuaciones diferenciales r...
ecuaciones diferenciales de variables separables y ecuaciones diferenciales r...ecuaciones diferenciales de variables separables y ecuaciones diferenciales r...
ecuaciones diferenciales de variables separables y ecuaciones diferenciales r...
 
Ecuaciones diferenciales _parciales
Ecuaciones diferenciales _parcialesEcuaciones diferenciales _parciales
Ecuaciones diferenciales _parciales
 
Metodo del anulador
Metodo del anuladorMetodo del anulador
Metodo del anulador
 
Cuadratura de gauss
Cuadratura de gaussCuadratura de gauss
Cuadratura de gauss
 
La ecuación diferencial de Legendre
La ecuación diferencial de LegendreLa ecuación diferencial de Legendre
La ecuación diferencial de Legendre
 
Ecuacion de cauchy euler
Ecuacion de cauchy euler Ecuacion de cauchy euler
Ecuacion de cauchy euler
 
Ecuaciones diferenciales homogeneas
Ecuaciones diferenciales homogeneasEcuaciones diferenciales homogeneas
Ecuaciones diferenciales homogeneas
 
Métodos numéricos aplicados a la mecanica
Métodos numéricos aplicados a la mecanicaMétodos numéricos aplicados a la mecanica
Métodos numéricos aplicados a la mecanica
 

Ähnlich wie Metodos iterativos

Ähnlich wie Metodos iterativos (20)

Sistema de ed de primer orden
Sistema de ed de primer ordenSistema de ed de primer orden
Sistema de ed de primer orden
 
FUNDAMENTOS MATEMATICOS (I Bimestre Abril Agosto 2011)
FUNDAMENTOS MATEMATICOS (I Bimestre Abril Agosto 2011)FUNDAMENTOS MATEMATICOS (I Bimestre Abril Agosto 2011)
FUNDAMENTOS MATEMATICOS (I Bimestre Abril Agosto 2011)
 
NÚMEROS REALES II
NÚMEROS REALES IINÚMEROS REALES II
NÚMEROS REALES II
 
Digitalizacion
DigitalizacionDigitalizacion
Digitalizacion
 
Clase8 minisem
Clase8 minisemClase8 minisem
Clase8 minisem
 
Herramientas matemáticas
Herramientas matemáticas Herramientas matemáticas
Herramientas matemáticas
 
Formulario de matematicas
Formulario de matematicasFormulario de matematicas
Formulario de matematicas
 
Mr1i 753-2007-2
Mr1i 753-2007-2Mr1i 753-2007-2
Mr1i 753-2007-2
 
Algebra
AlgebraAlgebra
Algebra
 
Algebralineal.docx
Algebralineal.docxAlgebralineal.docx
Algebralineal.docx
 
Matmática básica 1 bm
Matmática básica 1 bmMatmática básica 1 bm
Matmática básica 1 bm
 
Tutoria Algebra I Bimestre 20082
Tutoria Algebra I Bimestre 20082Tutoria Algebra I Bimestre 20082
Tutoria Algebra I Bimestre 20082
 
Sistemas lineales iterativos
Sistemas lineales iterativosSistemas lineales iterativos
Sistemas lineales iterativos
 
Metodo Jacobiano
Metodo JacobianoMetodo Jacobiano
Metodo Jacobiano
 
Metodo Jacobiano
Metodo JacobianoMetodo Jacobiano
Metodo Jacobiano
 
Sesiones de clases mooc
Sesiones de clases moocSesiones de clases mooc
Sesiones de clases mooc
 
Integrales indefinidas mat apli
Integrales indefinidas mat apliIntegrales indefinidas mat apli
Integrales indefinidas mat apli
 
Matematica
Matematica Matematica
Matematica
 
Guia 3 2_s_2015
Guia 3 2_s_2015Guia 3 2_s_2015
Guia 3 2_s_2015
 
4 sel metodos iterativos
4 sel metodos iterativos4 sel metodos iterativos
4 sel metodos iterativos
 

Mehr von fabianchopinto (19)

Taller refuerzo
Taller refuerzoTaller refuerzo
Taller refuerzo
 
Newton
NewtonNewton
Newton
 
Fixedpoint
FixedpointFixedpoint
Fixedpoint
 
Taller ej 1 gauss seidel
Taller ej 1 gauss seidelTaller ej 1 gauss seidel
Taller ej 1 gauss seidel
 
Metodos especiales ejercicio en clase
Metodos especiales ejercicio en claseMetodos especiales ejercicio en clase
Metodos especiales ejercicio en clase
 
Metodos especiales
Metodos especialesMetodos especiales
Metodos especiales
 
Gauss con pivoteo
Gauss con pivoteoGauss con pivoteo
Gauss con pivoteo
 
Curso programación y_métodos_numéricos_linux
Curso programación y_métodos_numéricos_linuxCurso programación y_métodos_numéricos_linux
Curso programación y_métodos_numéricos_linux
 
02 ec no_lineales_v4.128
02 ec no_lineales_v4.12802 ec no_lineales_v4.128
02 ec no_lineales_v4.128
 
T080
T080T080
T080
 
Sny cap7
Sny cap7Sny cap7
Sny cap7
 
Sesion practica i[1]
Sesion practica i[1]Sesion practica i[1]
Sesion practica i[1]
 
Psor
PsorPsor
Psor
 
P46 articulo gcc
P46 articulo gccP46 articulo gcc
P46 articulo gcc
 
Multifasico
MultifasicoMultifasico
Multifasico
 
Multifasico
MultifasicoMultifasico
Multifasico
 
Cavm0 b3x
Cavm0 b3xCavm0 b3x
Cavm0 b3x
 
Capiii
CapiiiCapiii
Capiii
 
189403303
189403303189403303
189403303
 

Metodos iterativos

  • 1. Métodos iterativos para sistemas lineales Programación numérica
  • 2. Normas de vectores y matrices Una norma vectorial en R n es una función || · ||, de R n en R con las siguientes propiedades: (i) || x ||  0 para todo x  R n . (ii) || x || = 0 si y solo si x = (0,0,...,0) t  0 . (iii) ||  x || = |  || x || para todo   R y x  R n . (iv) || x + y ||  || x || + || y || para todo x , y  R n .
  • 3. Vector en R n El vector Se denotará por: x =( x 1 , x 2 , ..., x n ) t
  • 4. Norma l 2 y l  La norma l 2 o norma euclidiana se define como La norma l  se define como x 1 x 2 (1,0) (0,-1) (0,1) (-1,0) Los vectores en R 2 con la norma l 2 menos 1 se encuentran dentro de esta figura. x 1 x 2 (1,0) (0,-1) (0,1) (-1,0) Los vectores en R 2 con la norme l  menos 1 se encuentran dentro de esta figura.
  • 5. Distancias Si x =( x 1 , x 2 , ..., x n ) t y y =( y 1 , y 2 , ..., y n ) t son vectores en R n las distancias l 2 y l  éntre x y y están definidas por
  • 6. Ejemplo 3.3330x 1 + 15920x 2 – 10.333x 3 = 15913 2.2220x 1 + 16.710x 2 + 9.6120x 3 = 28.544 1.5611x 1 + 5.1791x 2 + 1.6852x 3 = 8.4254 Solución: x = (1.0000,1.0000,1.0000) t Con Gauss: x’ = (1.2001,0.99991,0.92538) t || x – x’ ||  = 0.2001 || x – x’ || 2 = 0.21356
  • 7. Convergencia Se dice que una sucesión de vectores en R n converge a x respecto a la norma || . || si dado cualquier  > 0, existe un entero N (  ) tal que || x ( k ) – x || <  para todo k  N (  ) La sucesión { x ( k ) } converge a x respecto a || . ||  si y solo si Para cada k = 1, 2, ..., n . Para todo x  R n , ||x||   ||x|| 2   n ||x|| 
  • 8. Norma matricial Una norma matricial sobre el conjunto de todas las matrices n x n es una función || · ||, definida en ese conjunto y que satisface para todas las matrices A , B de n x n y todos los números  : (i) || A ||  0 (ii) || A || = 0 si y solo si A es 0 . (iii) ||  A || = |  || A || (iv) || A + B ||  || A || + || B || (v) || AB ||  || A || || B || Una distancia entre A y B es || A  B ||
  • 9. Norma matricial l 2 y l  Norma l  Norma l 2
  • 10. Cálculo de la norma l  Norma l  se calcula con
  • 11. Cálculo de la norma l 2 Norma l 2 se calcula con Donde  es el radio espectral de A t A . El radio espectral es el máximo de los valores de propios de la matriz, calculadas con la ecuación
  • 12. Ejemplo O –  3 + 14  2 – 42  = 0 Resolviendo se encuentra || A || 2 = 3.16
  • 13. Normas en Octave norm ( a, p ) Computa la norm p de la matriz a . Si no hay segundo argumento, se supone p = 2. Si a es una matriz: p = 1 norma 1, la suma de la columna mayor de los valores absolutos de a. p = 2 El mayor valor singular de a . p = Inf norma Infinita, la suma del renglón de los valores absolutos de a . p = &quot;fro&quot; la norm Frobenius de a , sqrt (sum (diag ( a ' * a ))).
  • 14. Métodos iterativos Un método de solución de A x = b Comienza con una aproximación x (0) y genera la sucesión de vectores { x (k) } k = 0 ..  Los métodos iterativos se utilizan para sistemas de un gran número de ecuaciones con un alto porcentaje de elementos cero.
  • 15. Método de solución El sistema A x = b se escribe de la forma x = T x + c Donde T es una matriz fija y un vector c . La sucesión de vectores se genera calculando x (k) = T x (k–1) + c
  • 16. Ejemplo E1: 10x 1 - x 2 + 2x 3 = 6 E2: -x 1 + 11x 2 – x 3 + 3x 4 = 25 E3: 2x 1 - x 2 + 10x 3 - x 4 = -11 E4: 3x 2 - x 3 + 8x 4 = 15 Despejando x i de la ecuación i : x 1 = 1/10x 2 – 1/5x 3 + 3/5 x 2 = 1/11x 1 + 1/11x 3 – 3/11x 4 + 25/11 x 3 =-1/5x 1 + 1/10x 2 + 1/10x 4 –11/10 x 4 = - 3/8x 2 + 1/8x 3 +15/8
  • 17.  
  • 18. Tarea 32 Resuelva con Excel los siguientes sistemas usando el método iterativo de Jacobi. 3x 1 - x 2 + x 3   = 1           10 x 1 - x 2            = 0  3x 1 +6x 2 +2x 3    =0                 -x 1 +10x 2 - 2x 3 = 7 3x 1 +3x 2 +7x 3    = 4                     - 2x 2 +10x 3 = 6 10 x 1 + 5 x 2                 = 6               4x 1 + x 2 - x 3 + x 4 =  -2  5 x 1 + 10 x 2 -  4 x 3        = 25                  x 1 + x 2 - x 3 x 4 =  -1        - 4 x 2 +  8 x 3   - x 4 = -11             -x 1 - x 2 + 5x 3 + x 4 =  0                   -   x 3 + 5x 4 = -11              x 1 - x 2 + x 3 +3 x 4 =  1
  • 19. Método iterativo de Jacobi Se resuelve la i-ésima ecuación para x i : Siempre que a ii  0
  • 20. Método iterativo de Jacobi Escribimos la matriz del sistema como A = D - L - U
  • 21. Método iterativo de Jacobi A x = b ( D – L – U ) x = b D x = ( L + U ) x + b x = D -1 ( L + U ) x + D -1 b x (k) = D -1 ( L + U ) x (k-1) + D -1 b k = 1, 2, ... x (k) = T j x (k-1) + c j
  • 22. Código en matlab function [x,J,c] = jacobi(A,b,n,z) % n -- número de iteraciones % z -- vector inicial(default 0) % x -- solución final % J -- matriz de Jacobi % c -- vector de Jacobi if nargin <=3, z=0*b; end D = diag(diag(A)); J = DD - A); c = D; x=z; for k = 1:n x = J*x + c; fprintf(1,'%3d ',k) fprintf(1,'%5.4f ',x') fprintf(1,'') end
  • 23. Método iterativo de Jacobi Entrada: número de ecuaciones, elementos a ij , los elementos b i , X0 los valores iniciales de x , Tol la tolerancia, el número de iteraciones N. Salida: la solución aproximada, o el mensaje de que no hay solución. 1. k = 1 2. Mientras k <= N hacer pasos 3-9 3. Para i = 1 hasta N 4. 5. Si || x – x0 || < TOL 6. Regresar (x1, x2, ..., xn) y parar 7. k = k +1 8. Para j = 1 hasta N 9. X0j = xj 10. Salida(“no se encontro solución”)
  • 24. Método de Jacobi en Matlab function y = jacobi(a,b,x0,tol,maxi) [n muda] = size(a); k = 1; x = x0; while k<=maxi for i=1:n suma = 0; for j=1:n if i~=j suma = suma - a(i,j)*x(j); end end x(i) = (suma+b(i))/a(i,i); end if norm(x-x0)<tol y = x; return end k = k + 1; x0 = x; end fprintf('No se encontró solución')
  • 25. Ejemplo de corrida >> a=[10,-1,2,0;-1,11,-1,3;2,-1,10,-1;0,3,-1,8]; >> b = [6,25,-11,15]‘; >> jacobi(a,b,[0,0,0,0],1e-3,20) ans = 1.0001 2.0000 -1.0000 1.0000 >> E1: 10x 1 - x 2 + 2x 3 = 6 E2: -x 1 + 11x 2 – x 3 + 3x 4 = 25 E3: 2x 1 - x 2 + 10x 3 - x 4 = -11 E4: 3x 2 - x 3 + 8x 4 = 15
  • 26. Método iterativo de Gauss-Seidel En el paso k se utilizan las x i ya calculadas. Excepto por esta fórmula, el algoritmo es el mismo que el de Jacobi.
  • 27. Gauss-Seidel en Matlav function [x,G,c] = gsmp(A,b,n,z) % n -- número de iteraciones % z -- vector inicial (default 0) % x -- iteración final % G -- matriz Gauss-Seidel % c -- vector Gauss-Seidel if nargin <=3, z=0*b; end LD = tril(A); G = -LDriu(A,1); c = LD; x=z; for i = 1:n x = G*x + c; fprintf(1,'%3d ',i) fprintf(1,'%5.5f ',x') fprintf(1,'') end
  • 28. Ejemplo a = 4 3 0 3 4 -1 0 -1 4 b = 24 30 -24 gsmp(a,b,7,[1 1 1]') 1 5.25000 3.81250 -5.04688 2 3.14062 3.88281 -5.02930 3 3.08789 3.92676 -5.01831 4 3.05493 3.95422 -5.01144 5 3.03433 3.97139 -5.00715 6 3.02146 3.98212 -5.00447 7 3.01341 3.98882 -5.00279
  • 29. Métodos de relajación Los métodos de relajación tiene el siguiente esquema. Si 0 < w < 1 se llama subrelajación y se utiliza cuando el método de Gauss-Seidel no converge. Si 1 < w se llama sobrerrelajación y sirve para acelerar la convergencia. Valores típicos de 1.2 a 1.7.
  • 30. Métodos de relajación En forma matricial ( D + wL ) x = [(1 – w ) D – wU ] x + w b x = ( D + wL ) –1 [(1 – w ) D – wU ] x + ( D + wL ) –1 w b
  • 31. Relajación en Matlab function [x,G,c] = relaj(A,b,n,w,z) % n -- número de iteraciones % z -- vector inicial (default 0) % x -- iteración final % G -- matriz Gauss-Seidel % c -- vector Gauss-Seidel % w -- Coeficiente de relajación if nargin <=3, z=0*b; end D = diag(diag(A)); LD = inv(D+w*tril(A,-1)); G = LD*((1-w)*D-w*triu(A,1)); c = w*LD*b; x=z; for i = 1:n x = (G*x + c); fprintf(1,'%3d ',i) fprintf(1,'%5.5f ',x') fprintf(1,'') end
  • 32. Ejemplo a = 4 3 0 3 4 -1 0 -1 4 b = 24 30 -24 relaj(a,b,7,1.25,[1 1 1]') 1 6.31250 3.51953 -6.65015 2 2.62231 3.95853 -4.60042 3 3.13330 4.01026 -5.09669 4 2.95705 4.00748 -4.97349 5 3.00372 4.00292 -5.00571 6 2.99633 4.00093 -4.99828 7 3.00005 4.00026 -5.00035
  • 33. Tarea 33 Resuelva los problemas anteriores por Gauss Seidel y relajación en Excel.