Metodos numericos

Solo disponible en BuenasTareas
  • Páginas : 9 (2037 palabras )
  • Descarga(s) : 0
  • Publicado : 26 de noviembre de 2011
Leer documento completo
Vista previa del texto
INSTITUTO TECNOLÓGICO DE NOGALES

MÉTODOS NUMÉRICOS

UNIDAD 4
“ECUACIONES LINEALES”

INVESTIGACIÓN Y RESUMEN ELABORADO POR:
JOAQUÍN SAUCEDO QUINTERO
No. De control: 09340154

H. NOGALES, SONORA A 10 DE NOVIEMBRE DEL 2011
ÍNDICE

VECTORES Y MATRICES…………………………………………. 3

MÉTODO ITERATIVO………………………………………… 8

MÉTODO DIRECTO……………………………………………… 13

MÉTODO DE SCHOLESKY……………………………………..19

CONCLUSIONES……………………………………………23

BIBLIOGRAFÍA…………………………………………………… 24



4.1 VECTORES Y MATRICES

En la práctica de la ingeniería y ciencias es frecuente tener la necesidad de resolver un sistema de ecuaciones lineales. Estos sistemas aparecen en muy diversos problemas, ya sea como la solución completa de un problema ó al menos como parte de ella. Dada esta necesidad frecuente, serequiere resolverlos en forma eficiente.
Los métodos numéricos que resuelven los sistemas se pueden clasificar en directos e indirectos.
Los métodos directos son aquellos que determinan la solución en un número determinado de pasos.
Los métodos iterativos son aquellos que obtienen la solución aproximándose a ella en un número finito, pero no definido de pasos..
Como los algoritmos de los métodosya están disponibles en la mayoría de los libros de texto sobre la materia, se explicara en la medida de lo posible, detalles de implementación (personales) de los métodos directos(que son mas difíciles de programar).
El lenguaje de programación idóneo para tal fin será matlab 6.0

Antes de empezar con los detalles de implementación de los métodos directos resulta conveniente determinar conque sistema o sistemas vamos a trabajar.
Para los métodos directos se preferirá un sistema cuya matriz de coeficientes sea simétrica y definida positiva; la razón de tal decisión radica es que con este tipo de matrices trabaja el método directo de "Cholesky", a diferencia de Doolittle y Crout.
Puesto que se utilizará un W (factor de relajación) dado :
W = (raíz cuadrada (5)+1)/2 =1.61803398874989aprox.
No será necesario tener un sistema tridiagonal para hallar dicho valor.
Como consecuencia de lo anteriormente expuesto, se utilizará el mismo sistema para los métodos directos e iterativos.
Una matriz A es simétrica si su transpuesta es igual a A.
Es decir: A = [a(i,j)] es simétrica si y solo si [a(i,j)]=[a(j,i)].
Una matriz simétrica A es positiva definida si y solo si loseigenvalores(valores propios) de A son positivos.
Toda matriz simétrica se puede descomponer como:
A = L*Lt (transpuesta)
Para construir de manera fácil la matriz en cuestión, basta con utilizar las siguientes instrucciones en matlab:
>>L=tril(ones(10)); %construye L
>>A=L*L'; %construye L*Lt
>>A%matriz simétrica
A =
1 1 1 1 1 1 1 1 1 1
1 2 2 2 2 2 2 2 2 2
1 2 3 3 3 3 3 3 3 3
1 2 3 4 4 4 4 4 4 41 2 3 4 5 5 5 5 5 5
1 2 3 4 5 6 6 6 6 6
1 2 3 4 5 6 7 7 7 7
1 2 3 4 5 6 7 8 8 8
1 2 3 4 5 6 7 8 9 9
1 2 3 4 5 6 7 8 9 10
Si se quiere comprobar que efectivamente se trata de una matriz positiva definida, basta con teclear:
>>eig(A)%calcula los valores propios de A
Que obtendrá:
ans =
0.2557
0.2738
0.3080
0.3662
0.4652
0.6431
1.0000
1.8730
5.0489
44.7661

Y todos los valorespropios de A son positivos
Para evitar problemas de convergencia en los métodos iterativos es necesario que el esquema convergente quede determinado.
Para el método de Jacobi basta teclear:
>> S=diag(diag(A));%crea la matriz diagonal
>> T=S-A;
>>B=inv(S)*T;
>>eig(B)
Que arroja:
ans =
-6.2572
-0.3709
0.4470
0.7060
0.8199
0.8800
0.9156
0.9386
0.9545
0.9666
Como cada uno de losvalores propios es menor que ("cont) and (resultado) then
resultado:=true
else
resultado:=false;
end;
dominante:=resultado;
end;
procedure calcular (l:lista;var l1:lista1;fila,columna:integer;error:real);
var
cont,i,j:integer;
resultado1,resultado:boolean;
begin
cont:=1;
if (dominante(l,fila,columna)) then
begin
resultado1:=false;
while (not resultado1) do
begin
for i:=1 to fila...
tracking img