MÉTODOS NUMÉRICOS

Anuncio
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 biortogonalización usando cuasi-mı́nimo residuo. El trabajo debe considerar los siguientes
aspectos y requisitos:
a. Algoritmo del QMR.
b. Algoritmo del TFQMR.
c. Algoritmo del QMRCGSTAB.
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 QMR
Aproximación inicial x0 . r0 = b − Ax0 ;
ρ1 =k r0 k y ; v1 = r0 /ρ1 ;
Elegir w1 tal que k w1 k= 1;
p0 = q0 = d0 = 0;
c0 = 0 = √
ξ1 = 1; ν0 = 0; η0 = −1;
Mientras j + 1 |ηj−1 | / kr0 k ≥ ε(j = 1, 2, ...), hacer:
δj = hvj , wj i,
pj = vj − (ξj δj /j−1 ) pj−1 ;
qj = wj − (ρjδj /j−1 ) qj−1 ,
j = Apj , qj ;
βj = j /δj ;
bj+1 = Apj − βj vj , ρj+1 = kb
v
vj+1 k;
b j+1 = AT qj − βj wj , ξj+1 = kw
b j+1 k;
w
ρj c2j
1
ρj+1
, ηj = −ηj−1
, cj = q
;
νj =
cj−1 |βj |
βj c2j−1
1 + ν2
j
2
Fin
dj = ηj pj + (νj−1 cj ) dj−1 ;
xj = xj−1 + dj ;
bj+1 /ρj+1 ;
vj+1 = v
b j+1 /ξj+1 ;
wj+1 = w
Algoritmo TFQMR
Aproximación inicial x0 . ;
w1 = y1 = r0 = b − Ax0 , v0 = Ay1 , d0 = 0;
τ0 = kr0 k, ϑ0 = 0, η0 = 0;
Elegir e
r0 tal
r0 i =
6 0
√ que ρ0 = hr0 , e
Mientras k + 1τk−1 / kr0 k ≥ ε(k = 1, 2, ...), hacer:
(a) σk−1 = hvk−1 , e
r0 i, αk−1 = ρk−1 /σk−1 ;
y2k = y2k−1 − αk−1 vk−1 ;
(b) Para m = 2k − 1,2k hacer:
wm+1 = wm − αk−1 Aym ;
kwm+1 k
1
ϑm =
, cm = p
;
τm−1
1 + ϑ2m
τm = τm−1 ϑm cm , ηm = c2m αk−1 ;
ϑ2 ηm−1
dm = ym + m−1
dm−1 ;
αk−1
xm = xm−1 + ηm dm ;
Si xm converge: Fin
ρk
(c) ρk = hw2k+1 , e
r0 i, βk =
;
ρk−1
y2k+1 = w2k+1 + βk y2k ;
vk = Ay2k+1 + βk (Ay2k + βk vk−1 )
Fin
Algoritmo QMRCGSTAB
Aproximación inicial x0 . ;
r0 = b − Ax0 ;
Elegir e
r0 tal que hr0 , e
r0 i =
6 0
p0 = v0 = d0 = 0;
ρ0 = α0 =√ω0 = 1; τ = kr0 k, θ0 = 0, η0 = 0;
τ | / kr0 k ≥ ε(j = 1, 2, ...), hacer:
Mientras j + 1 |e
ρj = hrj−1 , e
r0 i; βj = (ρj αj−1 ) /ρj−1 ωj−1 ;
pj = rj−1 + βj (pj−1 − ωj vj−1 );
vj = Apj ;
ρj
;
αj =
hvj , e
r0 i
sj = rj−1 − αj vj ;
Primera cuasi-minimización
1
θej = ksj k /τ ; c = q
; τe = τ θej c;
1 + θe2
j
ηej = c2 αj ;
2
θj−1
ηj−1
dj−1 ;
αj
ej ;
ej = xj−1 + ηej d
x
tj = Asj ;
hsj , tj i
;
ωj =
htj , tj i
rj = sj − ωj tj ;
Segunda cuasi-minimización
1
θj = krj k /τ ; c = q
; τ = τe θj c;
1 + θj2
e j = pj +
d
ηj = c2 ωj ;
θej2 ηej
ej ;
d
ωj
ej + ηj dj ;
xj = x
dj = sj +
Fin
Documentos relacionados
Descargar