Está en la página 1de 22

PRQ404 – PROGRAMACION Y METODOS NUMERICOS

TEMA 4.- SISTEMAS DE


ECUACIONES LINEALES Y NO
LINEALES - PARTE 1

Ing. M.Sc. Roberto Parra Zeballos


SISTEMAS DE ECUACIONES LINEALES
Ec.1
Ec.2
.
.
.
.
Ec.n

DEFINICIONES
REPRESENTACION EN FORMA MATRICIAL
RANGO DE UNA MATRIZ
 ó A= [c1, c2, …, c3]
El rango de una matriz es el número máximo de
vectores fila ó vectores columna linealmente
independientes (rango (A)).
En matlab: rank (A).
Sea Anxn, si rango (A) = n entonces lo n vectores fila (ó
columna) son linealmente independientes  la matriz
es no singular, por lo tanto tiene inversa.
Existencia y Unicidad de Soluciones
Para el sistema Ax = b. Au = matriz aumentada.
Si rango(A) ≠rango(Au) sistema inconsistente  no
existe solución.
Si rango(A) =rango(Au) sistema consistente.
Si rango(A) = n  sistema tiene solución única.
Si rango(A) < n  sistema tiene infinitas soluciones.
METODOS DE RESOLUCION
1. METODOS DIRECTOS
INVERSA DE MATRIZ
GAUSS
GAUSS CON PIVOTEO
FACTORIZACION LU
2. METODOS ITERATIVOS
- JACOBI
- GAUSS-SEIDEL
- SOBRERELAJACION (SOR)
METODO DE LA MATRIZ INVERSA
Para resolver un sistema de
ecuaciones lineales:
A X = B  X = A-1 * B

x1 + x2 + 2x3 = 1
2x1 + x2 + 5x3 = 2
x1 + x2+ x3 = 3
>> A=[1 1 2; 2 1 5; 1 1 1]
A=
1 1 2
2 1 5
1 1 1
>> B=[1 2 3]
B=
1 2 3
>> B = B'
B=
1
2
3

>> X = inv (A) * B


X=
7
-2
-2
METODO DE GAUSS

2x + 3y + z = 1
3x – 2y – 4z = -3
5x – y – z = 4

Z=2
Y + 11/13 z = 9/13  y + 11/13*(2) =9/13  y = -1
X + 3/2 y + ½ z = ½  x + 3/2 * (-1) + ½ * (2) = 1  x = 1
MÉTODO DE GAUSS
1

2

function X = GAUSS(A,B)

%--------------------------------------------------------------------------

3 x1 - 0.1 x2 - 0.2 x3 = 7.85
% Este programa resuelve un sistema lineal AX=B, usando la técnica de

% Eliminación Gaussiana sin tomar en cuenta el pivoteo. 0.1 x1 + 7 x2 - 0.3 x3 = -19.3

%-------------------------------------------------------------------------- 0.3 x1 - 0.2 x2 + 10 x3 = 71.3

% ENTRADAS

% A : Matriz nxn

% B : Vector nx1

% SALIDAS >> A = [3 -0.1 -0.2; 0.1 7 -0.3; 0.3 -0.2 10]

% X : Vector solución A=

%------------------------------------------------------------- 3.0000 -0.1000 -0.2000

[n n] = size(A); 0.1000 7.0000 -0.3000

%A = [A,B']; 0.3000 -0.2000 10.0000

X = zeros(n,1);
>> B= [7.85 -19.3 71.3]

for k = 1:n-1;
 for i = k+1:n;
B=
 7.8500 -19.3000 71.3000
 if A(i,i)==0, break, end >> B =B'
 factor = A(i,k)/A(k,k); B=
 for j=k+1:n; 7.8500
 A(i,j) = A(i,j) - factor*A(k,j); -19.3000
 end
71.3000
 B(i)=B(i)-factor*B(k);
 end
>> X = GAUSS (A, B)

end X=

X(n)=B(n)/A(n,n); 2.9993

for i=n-1:-1:1; -2.5004
 Suma = B(i); 6.9900
 for j=i+1: n; >> EC1=3*X(1)-0.1*X(2) -0.2*X(3)
 Suma = Suma - A(i,j)*X(j); EC1 =
 end
 X(i)=Suma/A(i,i);
7.8500

end
ARCHIVO: GAUSS.m
SISTEMAS MAL ACONDICIONADOS
Una forma con la cual un sistema de ecuaciones puede estar mal
condicionado es cuando dos o más de las ecuaciones son casi
idénticas. Obviamente aún es peor cuando las dos son idénticas. En
tales casos, se pierde un grado de libertad y se daría un caso imposible
de n – 1 ecuaciones con n incógnitas. Tales casos podrían no ser
obvios, en particular cuando se enfrenta con grandes sistemas de
ecuaciones. En consecuencia, sería útil tener una forma de detectar la
singularidad de manera automática.

La respuesta a este problema está claramente dada por el hecho de que


el determinante de un sistema singular es cero. Esta idea, a su vez,
puede relacionarse con la eliminación gaussiana reconociendo que
después del paso de eliminación, el determinante se evalúa como el
producto de los elementos de la diagonal.
003)
Ejemplos (cont.)

667

00 %
= 0.0003
98

/0.0003

0 = 0.01 %
PIVOTEO PARCIAL: Los renglones se pueden intercambiar de
manera que el elemento más grande sea el elemento pivote.
big = elemento pivote actual
P = su número de renglón

El primer ciclo FOR identifica la línea


que tiene el mayor valor.

El segundo ciclo FOR intercambia el


renglón del pivote original con el del
elemento más grande, de tal forma que
el último sea el nuevo renglón pivote.

La segunda instrucción IF/THEN


intercambia físicamente los renglones.
ELIMINACION DE GAUSS CON PIVOTEO PARCIAL
El programa tiene módulos para las tres operaciones principales
del algoritmo de eliminación gaussiana: eliminación hacia
adelante, sustitución hacia atrás y pivoteo.
CONTINUARA …..

También podría gustarte