MÉTODOS NUMÉRICOS

Transcripción

MÉTODOS NUMÉRICOS
Nombres y apellidos de los miembros del grupo:
MÉTODOS NUMÉRICOS - E.T.S.I.I.
TRABAJO DE LA ASIGNATURA - CURSO 2004-2005
Realizar un programa en MATLAB que resuelva un sistema de ecuaciones
no simétrico mediante algoritmos iterativos basados en métodos de la ecuación
normal. El trabajo debe considerar los siguientes aspectos y requisitos:
a. Algoritmo del CGNR.
b. Algoritmo del CGNE.
c. Algoritmo del LSQR.
d. Representación gráfica de la curva de convergencia.
e. Presentación de manual de usuario del programa.
f. Presentación de ejemplos.
Algoritmo CGNR
Aproximación inicial x0 . r0 = b − Ax0 , p0 = AT r0
Mientras k rj−1
k / k r0 k≥ ε (j = 1, 2, 3, ...), hacer
AT rj , AT rj
;
αj = Apj , Apj
xj+1 = xj + αj pj
rj+1 = rj − αj Apj
T
A rj+1 , AT rj+1
βj =
hAT rj , AT rj i
pj+1 = AT rj+1 + βj pj
Fin
Algoritmo CGNE
Aproximación inicial x0 . r0 = b − Ax0 , p0 = AT r0
Mientras k rj−1 k / k r0 k≥ ε (j = 1, 2, 3, ...), hacer
hrj , rj i
αj =
;
hpj , pj i
xj+1 = xj + αj pj
rj+1 = rj − αj Apj
hrj+1 , rj+1 i
βj =
hrj , rj i
pj+1 = AT rj+1 + βj pj
Fin
Algoritmo LSQR
Aproximación inicial x0 . r0 = b − Ax0 ;
β1 = kz
0 k, u1 = r0 /β1 ;
α1 = AT u1 , v1 = AT u1 /α1 , w1 = v1 ,
φ1 = β1 , ρ1 = α1
Mientras φj / kr0 k ≥ ε (j = 1, 2, 3, ...), hacer
βj+1 = kAvj − αj uj k
Avj − αj uj
uj+1 =
βj+1
αj+1 = AT uj+1 − βj+1 vj AT uj+1 − βj+1 vj
vj+1 =
αj+1
1
2
2
ρj = ρj + βj+1 2
ρj
cj =
ρj
βj+1
sj =
ρj
θj+1 = sj αj+1
ρj+1 = −cj αj+1
φj = cj φj
φj+1 = sj φj
φj
xj = xj−1 +
wj
ρ
j
θj+1
wj+1 = vj+1 −
wj
ρj
Fin

Documentos relacionados