Iterative Methods Mostly for SPD systems Iterative Linear conjugate gradient and its variants System Solvers for Large, Sparse Matrices minimize through successive line searches CS 176 Spring 2011 CS 176 Spring 2011 1 2 Steepest Descent Steepest Descent Decrease function How much? negative of gradient how much? h h CS 176 Spring 2011 CS 176 Spring 2011 3 4 Steepest Descent Let’s do Better Algorithm Conjugate directions don’t undo earlier gains CS 176 Spring 2011 CS 176 Spring 2011 5 6
Conjugate Gradient Conjugate Gradient Directions A-orthogonal to error Next direction? orthogonal to all others easy update: CS 176 Spring 2011 CS 176 Spring 2011 7 8 Algorithm Iterative Methods What you’ll need What happened to d? (see section 7.3 of Shewchuk) you supply Sweeps given topological datastructure matrix multiply dot product acc. implement matrix multiplies i l i l i li update dot product acc. update stopping criterion: relative residual CS 176 Spring 2011 CS 176 Spring 2011 9 10 Typical Implementation Iterative Methods What lives where? Other issues degrees of freedom at vertices number of iterations proportional to (steepest descent), (CG) need additional variables for solver preconditioning preconditioning matrix entries on edges t i t i d use approximate inverse Matrix multiplies diagonal (Jacobi) iterate over mesh! incomplete Cholesky, mesh is sparse matrix data structure hierarchical,… CS 176 Spring 2011 CS 176 Spring 2011 11 12
Other System Types SPD conjugate gradients Shewchuk, “CG w/o the Agony” non-S PD & non-S non-PD bi-conjugate gradients see Numerical Recipes http://www.nr.com/ (chapter 2.7) CS 176 Spring 2011 13
Recommend
More recommend