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