University of Stuttgart
This is a collection of files for the solution of scalar linear elliptic PDEs with a standard multigrid method.
Type 'mg_menu' to set up a graphical user interface.
If you do not like GUIs, start with mg_script.
from an initial triangulation, a certain number of uniform refinement steps is performed, and each time a multigrid solve is carried out.
For each solve, the required computing time is calculated and can be compared with the Matlab direct solver. Once an exact solution is available, also the error measured in the Euclidean vector norm is
given out. Moreover, the multigrid can be used as preconditioner for the Matlab pcg routine.
All necessary specifications can be easily changed, like the domain
and PDE description, initial meshwidth, tolerance, smoother, number of smoothing steps and so on.
The PDE specifications need to have the format used by the PDE toolbox. The
geometry description 'g' and the boundary condition description 'b' can
either be the name of a function file (see the Matlab help to pdegeom and
pdebound for g and b, respectively) or matrices (see decsg and assemb,
A weak point in terms of computation time is the SOR-smoother gs. This is not typical for implementations within "normal" programming languages, where a SOR smoother performs almost as fast as a Jacobi smoother. I would be very grateful for any improvements.
multigrid, PDE, solver, finite elements
|File Name: ||multigrid.zip|
|File Size: ||
|File Version: ||1.0|
|Matlab Version: ||6.5 (R13)|