Gauss-Seidel, SOR en la práctica?

8

Cuando aprendí sobre SOR, se dio principalmente como uno de los primeros ejemplos de métodos iterativos, y luego los métodos iterativos que terminaría usando serían los métodos del subespacio de Krylov.

¿Alguno de los métodos iterativos como Gauss-Seidel y SOR se ha usado alguna vez en la práctica? ¿Conoces algún paquete real que los use "en serio", para algo más que fines de demostración?

Kirill
fuente

Respuestas:

10

Sí, pero no como solucionadores independientes para sistemas lineales de ecuaciones. En la actualidad , se usan como suavizadores en multirredes o como preacondicionadores en los métodos de krylov .

Paul
fuente
Gracias por la respuesta; ¿conoces paquetes de software específicos que los usen así?
Kirill
Muchos paquetes los implementan. Entre ellos, he encontrado que PETSC es bastante fácil de usar para principiantes.
Paul
También es posible que desee consultar PyAMG si es un usuario de Python.
Daniel Shapero
6

Paul ya dio la respuesta corta (que todos los paquetes de PDE y álgebra lineal implementan estos métodos, pero que con mayor frecuencia se usan solo como suavizadores en métodos de cuadrícula múltiple). La respuesta larga se puede encontrar en las conferencias 34-38 aquí: http://www.math.tamu.edu/~bangerth/videos.html

Wolfgang Bangerth
fuente
Wolfgang, sobre ese tema, ¿cómo cuantificas lo que hace que sea el mejor para los métodos de múltiples cuadrículas? Ciertamente es viable utilizar SOR / GS, o métodos RK explícitos, o métodos Krylov para realizar la misma tarea.
Aurelius
No es trivial dar una respuesta teórica a esto. En la práctica, las personas comparan los números de iteración externa para alcanzar una tolerancia dada para diferentes suavizadores, o mejor incluso el tiempo de ejecución.
Wolfgang Bangerth