University of Colorado Multigrid Methods Shijie Zhong Dept. of Physics University of Colorado Boulder, Colorado Workshop for Advancing Numerical Modeling of Mantle Convection and Lithospheric Dynamics July 2008, UC-Davis
Numerical modeling Kd=F A scientific problem Partial differential equations within a domain Discretize PDE using FE, FD, FV, … on a certain grid a matrix equation: Kd=F f=ma
A toy problem: 1-D heat conduction 0 1 x
Discretize with FE x=0 x=1 e
e 1
Kd=F
Iterative Solvers Kd=F A matrix equation: Iterative solvers: memory usage ~ N (# of unknowns in d), # of flops ~ N (e.g., for multigrid solver), suitable for parallel computing.
Jacobi and Gauss-Seidel methods Matrix Equation: Rewrite matrix K: Jacobi method: Start with a guessed solution d(0), then update d iteratively to get d(1), … until residual e=||Kd(n)-F|| is less than some tolerance. Gauss-Seidel method:
Jacobi method
Gauss-Seidel Method
The idea behind multigrid Gauss-Seidel
A road map
A road map continued but reversed
Different cycles W-cycle V-cycle n n-1 1
THE method for elliptic equations (i.e., “diffusion” like problems)
Execution Time vs Grid Size N for Multi-grid Solvers in Citcom t ~ N-1 FMG: Zhong et al. 2000 MG: Moresi and Solomatov, 1995