Metodo de jacobi fortran-1 PDF

Title Metodo de jacobi fortran-1
Course Métodos numéricos
Institution Universidad de Córdoba Colombia
Pages 8
File Size 136.5 KB
File Type PDF
Total Downloads 70
Total Views 132

Summary

método de jacobita...


Description

METODOS ITERATIVOS PARA LA SOLUCION DE SISTEMAS LINEALES Oscar Zurita, Alfredo Urango january 2019

´ METODO DE JACOBI Hasta ahora los m´etodos directos e indirectos han tenido problemas con los redondeos y aproximaciones a la soluci´on real. Los m´etodos iterativos representan una alternativa potente para solucionar esta dificultad, puesto que estos se acercan m´as a la soluci´on real esperada a medida que se itera, de manera que la calidad de la aproximaci´ on obtenida depender´a de la cantidad de iteraciones que se ´este dispuesto a efectuar. El planteamiento consiste en suponer un valor inicial y luego usar un m´etodo sistem´atico para obtener una estimaci´on refinada de la soluci´on. El M´ etodo de Jacobi es uno de los m´etodos iterativos m´ as conocidos. Sup´ ongase que se tiene un sistema nxn de la forma AX=b.       

a11 a21 a31 .. .

a12 a22 a23 .. .

a13 a23 a33 ...

......a1n ......a2n ......a3n .. .

an1

an2

an3

.......ann

      ·      

x1 x2 x3 .. . xn





     =      

b1 b2 b3 .. . bn

      

Realizando el producto matricial indicado se obtienen las siguientes ecuaciones lineales: a11 x1 + a12 x2 + a13 x3 + .......... + a1n xn = b1 a21 x1 + a22 x2 + a23 x3 + .......... + a2n xn = b2 a31 x1 + a32 x2 + a33 x3 + .......... + a3n xn = b3 .. .. .. .. .. . . . . . an1 x1 + an2 x2 + an3 x3 .......... + ann xn = bn Si los elementos de la diagonal no son todos cero, la primeras ecuaciones se pueden resolver para x1 , x2 , x3 ,............xn para obtener: x1 = a1 (b1 − (a12 x2 + a13 x3 ...... + a1n xn )) 11 x2 = a1 (b2 − (a21 x2 + a23 x3 ...... + a2n xn )) 22 x3 = a1 (b3 − (a31 x1 + a32 x2 ...... + a3n xn )) 33 .. .. . . xn = a 1 (bn − (an1 x1 + an2 x2 + an3 x3 ......ann−1 xn−1 )) nn En general, para un sistema de ecuaciones lineales de n ecuaciones con n inc´ ognitas, el M´ etodo de Jacobi para encontrar un valor k de una variable x es el siguiente: : xki =

n ∑ 1 aij xk−1 ) (bi − j aii j=1,j=i

El procedimiento consiste en asignar unos valores iniciales a las variables, usualmente se escoge ′′0′′ por simplicidad, de manera que para generar la siguiente iteraci´ on se sustituyen los valores obtenidos en la ecuaci´on siguiente. En la siguiente secci´on se ilustra c´omo la convergencia de ´este m´etodo est´ a dada por: ||Xik−Xk−1 || i ||Xik||

≤ tol

o´ ||b − AX|| < tol

1

Donde tol es la tolerancia preescrita por el usuario.

´ CONVERGENCIA DEL METODO Para determinar si el m´etodo de Jacobi converge hacia una soluci´on. Se eval´ uan las siguientes condiciones de convergencia (Nota: las siguientes van en un ´orden de modo que si se cumple una de las condiciones, comenzando por la primera por supuesto, la evaluaci´on de las siguientes no es necesario realizarlas): 1. La matriz sea estrictamente dominante diagonalmente por filas (E.D.D. por filas), es decir, para todo i desde 1 hasta n que es el tama la matriz A: |aii| ≥

i−1 ∑

|aij | +

j=1

n ∑

|aij |

j=i+1

Es decir, el elemento de la diagonal correspondiente a la fila i debe ser mayor a la suma de los elementos de esa fila i. 2. A partir de la siguiente identidad:

A=D-L-U Donde D corresponde a la matriz formada por los elementos de la diagonal de A (D=diag(a11 , a22 , ..., ann )), L corresponde a la matriz triangular inferior obtenida de la parte triangular estrictamente inferior de A, y U corresponde a la matriz triangular superior obtenida de la parte triangular estrictamente superior de A, se puede deducir la fla vectorial de este mdo: X k = D−1 (L + U )X k−1 + D−1 b De donde BJ (conocida como la matriz de iteraci´on de Jacobi) es D−1 (L + U )

PSEUDOCODIGO ´ DE JACOBI programa METODO mostrar ’INTRODUZCA LOS ELEMENTOS DE LA MATRIZ DE COEFICIENTES A’ hacer i desde 1 hasta n hacer j desde 1 hasta n mostrar Aij leerAij fin del hacer fin del hacer mostrar ’INTRODUZCA EL VECTOR INDEPENDIENTE’ hacer i desde 1 hasta n mostrar Bi leer Bi fin del hacer mostrar ’INTRODUZCA EL NUMERO DE IETRACIONES’ leer ITER mostrar ’INTRODUZCA LA TOLERANCIA’ leer TOL mostrar ’INTRODUZCA LAS CONDIONES INICIALES’ hacer i desde 1 hasta n mostrar Xi0 leer xi0 fin del hacer L=0 hacer mientras(l ≤ ITER) 2

hacer k desde 1 hasta ITER hacer i desde 1 hasta n L=L+1 xik =

n ∑ 1 (bi − aii

aij xk−1 ) j

j=1,j=i

fin del hacer si (||b − AX|| < TOL) mostrar ’LA SOLUCI ´ON DEL SISTEMA ES ’ mostrar XL par´e fin del si fin del hacer fin del mienntras mostrar ’HA EXCEDIDO EL NUMERO DE ITERACIONES, SU SOLUCION ES’ mostrar Xk fin del programa

CODIGO EN FORTRAN PROGRAM METODOJACOBI MPLICIT NONE REAL,DIMENSION(100,100)::A REAL,DIMENSION(100,0:100)::X EAL,DIMENSION(100)::B,P1,P2,C,E INTEGER,PARAMETER::N=3 INTEGER::I,J,K,M,T,Z,ITER,L REAL::SUMA,S,SUMA0,TOL,MAG L=0 WRITE(*,*)’INTRODUZCA LOS ELEMENTOS DE LA MATRI DE COEFICIENTES A’ DO I=1,N DO J=1,N WRITE(*,25)I,J 25 FORMAT(’A(’,I1.1,’,’,I1.1,’)’) READ(*,*)A(I,J) END DO END DO WRITE(*,*)’LA FORMA MATRICIAL DE LA MATRIZ A ES’ WRITE(*,50)((A(I,J),J=1,N),I=1,N) 50 FORMAT((’|’,3(F10.1),’|’)) DO I=1,N P2(I)=0. DO J=1,N IF(I==J) THEN P1(I)=ABS(A(I,J)) ELSE IF (I/=J) THEN P2(I)=P2(I)+ABS(A(I,J)) END IF END DO END DO DO I=1,N IF (P1(I)...


Similar Free PDFs