Método de gradiente conjugado (para solución SLAE)

El método del gradiente conjugado  es un método numérico para resolver sistemas de ecuaciones algebraicas lineales , es un método iterativo del tipo Krylov .

Planteamiento del problema

Sea dado el sistema de ecuaciones lineales: . Además, la matriz del sistema es una matriz real , que tiene las siguientes propiedades: es decir, es una matriz definida positiva simétrica . Entonces el proceso de resolución de la SLAE se puede representar como una minimización del siguiente funcional:

Detrás está el producto escalar . Minimizando este funcional usando los subespacios de Krylov , obtenemos el algoritmo del método del gradiente conjugado.

Algoritmo

Preparación antes del proceso iterativo
  1. Elegimos una aproximación inicial
-ésima iteración del método [1]
Criterios de parada

Como el funcional a minimizar es cuadrático, el proceso debe dar una respuesta en la tercera iteración, sin embargo, al implementar el método en una computadora , se presenta un error en la representación de los números reales, por lo que se pueden requerir más iteraciones. requerido. También puede evaluar la precisión por la discrepancia relativa y detener el proceso iterativo cuando la discrepancia sea menor que un número dado.

Algoritmo para un sistema precondicionado

Si el sistema precondicionado tiene la forma: , entonces el algoritmo del método para dicho sistema se puede escribir de la siguiente manera:

Preparación antes del proceso iterativo
  1. Elegimos una aproximación inicial
-ésima iteración del método
Después del proceso iterativo
  1. , donde  es la solución aproximada del sistema,  es el número total de iteraciones del método.
Criterios de parada

En este caso, puede utilizar los mismos criterios de parada que para un sistema convencional, pero teniendo en cuenta el preacondicionamiento. Por ejemplo, la discrepancia relativa se calculará como: , sin embargo, también puede utilizar la discrepancia del sistema original, que se calcula de la siguiente manera:

Características y generalizaciones

Como todos los métodos en los subespacios de Krylov, el método de gradiente conjugado de una matriz requiere solo la capacidad de multiplicarlo por un vector, lo que lleva a la capacidad de usar formatos de almacenamiento de matriz especiales (como dispersos) y ahorrar memoria para el almacenamiento de matriz.
El método se usa a menudo para resolver SLAE de elementos finitos.
El método tiene generalizaciones: el método de gradientes biconjugados , para trabajar con matrices no simétricas. Y el método del gradiente complejo conjugado, donde la matriz puede contener números complejos, pero debe cumplir la condición: , es decir, ser una matriz definida positiva autoadjunta.

Notas

  1. Henk A. van der Vorst. Métodos iterativos de Krylov para sistemas lineales grandes. - Prensa de la Universidad de Cambridge, 2003. - 221 p. — ISBN 9780521818285 .