Un metodo subspaziale di Krylov può essere usato come più fluido per multigrid?


15

Per quanto ne so, i solutori multigrid usano levigatori iterativi come Jacobi, Gauss-Seidel e SOR per smorzare l'errore a varie frequenze. È possibile utilizzare un metodo subspaziale di Krylov (come gradiente coniugato, GMRES, ecc.)? Non penso che siano classificati come "lisciatori", ma possono essere usati per approssimare la soluzione a griglia grossa. Possiamo aspettarci di vedere un'analoga convergenza con la soluzione come faremmo con un metodo multigrid standard? O dipende dal problema?

Risposte:


18

Sì, puoi, ma i metodi di Krylov generalmente non hanno grandi proprietà leviganti. Questo perché mirano all'intero spettro in modo adattivo che minimizza la norma residua o adeguata dell'errore. Ciò includerà generalmente alcune modalità a bassa frequenza (lunghezze d'onda lunghe) che le griglie grossolane avrebbero gestito bene. I smoothers di Krylov rendono anche il ciclo multigrid non lineare, quindi se il multigrid viene utilizzato come precondizionatore per un metodo Krylov esterno, il metodo esterno dovrebbe essere "flessibile" (ad esempio GCR o FGMRES).

L'uso dei rasoi Krylov aumenta anche notevolmente il numero di prodotti a punti che devono essere calcolati, il che diventa un notevole collo di bottiglia in parallelo. Tuttavia, anche con queste proprietà poco attraenti, i leviganti Krylov sono talvolta utili, specialmente per problemi difficili in cui non sono disponibili buoni operatori di interpolazione.

Un'alternativa più popolare è l'uso di leviganti polinomiali (di solito Chebyshev). Questi metodi hanno come target una parte specifica dello spettro. Per i PDE ellittici simmetrici (dove l'operatore discreto è definito simmetrico positivo o quasi), è comune stimare il massimo autovalore di D - 1 A dove D - 1 è il precondizionatore Jacobi a blocchi di punti per A e indirizzare un intervallo come ( 0,1 λ max , 1,1 λ max ) . Gli smoothers polinomiali non hanno riduzioni e sono operazioni lineari (per qualsiasi grado polinomiale scelto, di solito scelto traλmaxD-1UND-1UN(0.1λmax,1.1λmax) e forse 5 ). Di solito alcune iterazioni (diciamo da 5 a 10 ) di GMRES o CG vengono utilizzate per stimare λ max , quindi l'utente non deve calcolarle da solo. La stima di λ max è anche usata da alcuni metodi algebrici multigrid per scegliere strategie di grossolana.15510λmaxλmax

Adams, Brezina, Hu e Tuminaro (2003) sono un bel documento sulle prestazioni parallele e algoritmiche dei rasoi polinomiali. Si noti che i leviganti polinomiali tendono ad essere meno efficaci (e / o difficili da formulare) per problemi non simmetrici, nel qual caso si vorrà probabilmente usare Gauss-Seidel o schemi di rilassamento più sofisticati (blocco / distribuiti).


Puoi suggerire una buona risorsa su leviganti polinomiali e / o krylov? In realtà non ne ho mai sentito parlare :)
Paul

@JedBrown: Intendi "ellittico" nel senso della PDE o della forma bilineare (cioè intendi che tutti gli autovalori dell'operatore o del simbolo principale sono positivi?)? Sto assumendo quest'ultimo dato che stai parlando di Jacobi punto-blocco.
Jack Poulson,

Paolo ho aggiunto un riferimento. @Jack A rigor di termini, l'operatore discreto dovrebbe essere SPD, ma in pratica i metodi tendono a funzionare fintanto che lo spettro non è distribuito troppo male.
Jed Brown,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.