≡ Home Sponsors Tutorials Free Software Bibliography Preprints Books Newsletters Conferences Proceedings

Bunner Code

Description

A public domain, parallel processor replacement Fortran-77 code for Mudpack written by Bernard Bunner. It requires both MPI and the C preprocessor. This code features staggered grids, rectangular domains, constant mesh spacing in 2 or 3 dimensions, V or W cycling, full weighting for the restriction and bilinear interpolation for the correction, either vertex-centered or cell-centered operations, and periodic, Neumann, or Dirichlet boundary conditions.

mgd2 is a parallel 2D multigrid program which solves the non-separable Poisson equation:

(A(x,y)ux)x + (A(x,y)uy)y = f(x,y)
on a staggered grid. The rectangular domain has a constant grid step in both directions and is decomposed into rectangular subdomains. In discretized form, this equation can be written as

[A(i+.5,j)(u(i+1,j)-u(i,j)) - A(i-.5,j)(u(i,j)-u(i-1,j))](dx)-2 +
[A(i,j+.5)(u(i,j+1)-u(i,j)) - A(i,j-.5)(u(i,j)-u(i,j-1))](dy)-2 =
f(i,j

mgd3 is a parallel 3D multigrid program which solves the non-separable Poisson equation:

(A(x,y,z)ux)x + (A(x,y,z)uy)y + (A(x,y,z)uz)z = f(x,y,z)
on a staggered grid. The rectangular domain has a constant grid step in both directions and is decomposed into rectangular subdomains. In discretized form, this equation can be written as

[A(i+.5,j,k)(u(i+1,j,k)-u(i,j,k)) - A(i-.5,j,k)(u(i,j,k)-u(i-1,j,k))](dx)-2 +
[A(i,j+.5,k)(u(i,j+1,k)-u(i,j,k)) - A(i,j-.5,k)(u(i,j,k)-u(i,j-1,k))](dy)-2 +
[A(i,j,k+.5)(u(i,j,k+1)-u(i,j,k)) - A(i,j,k-.5)(u(i,j,k)-u(i,j,k-1))](dz)-2 =
f(i,j,k)

Archive Contents

There are many files in bunner.tgz or bunner.zip:

bunner:
drwxr-xr-x  1020 Jan 10  1998 mgd2/
drwxr-xr-x  1054 Jan 10  1998 mgd3/

bunner/mgd2:
total 352
-rwxr-xr-x   1691 Jan 10  1998 Makefile*
-rwxr-xr-x  12935 Jan 10  1998 README*
-rwxr-xr-x    823 Jan 10  1998 compdir.inc*
-rwxr-xr-x    925 Jan 10  1998 decomp.F*
-rwxr-xr-x   1255 Jan 10  1998 gerr.F*
-rwxr-xr-x   1013 Jan 10  1998 ginit.F*
-rwxr-xr-x   1192 Jan 10  1998 grid1_type.F*
-rwxr-xr-x   1545 Jan 10  1998 gscale.F*
-rwxr-xr-x   4366 Jan 10  1998 gxch1cor.F*
-rwxr-xr-x   4536 Jan 10  1998 gxch1lin.F*
-rwxr-xr-x   8356 Jan 10  1998 main.F*
-rwxr-xr-x   1706 Jan 10  1998 mgdbdry.F*
-rwxr-xr-x   4774 Jan 10  1998 mgdcor.F*
-rwxr-xr-x   1600 Jan 10  1998 mgdend.F*
-rwxr-xr-x   1678 Jan 10  1998 mgderr.F*
-rwxr-xr-x  17789 Jan 10  1998 mgdinit.F*
-rwxr-xr-x   7095 Jan 10  1998 mgdkcyc.F*
-rwxr-xr-x   2141 Jan 10  1998 mgdpfpde.F*
-rwxr-xr-x   2863 Jan 10  1998 mgdphpde.F*
-rwxr-xr-x   1759 Jan 10  1998 mgdppde.F*
-rwxr-xr-x   2232 Jan 10  1998 mgdrelax.F*
-rwxr-xr-x   4494 Jan 10  1998 mgdrestr.F*
-rwxr-xr-x   1936 Jan 10  1998 mgdrpde.F*
-rwxr-xr-x    912 Jan 10  1998 mgdrsetf.F*
-rwxr-xr-x   1821 Jan 10  1998 mgdrtrsf.F*
-rwxr-xr-x    971 Jan 10  1998 mgdsetf.F*
-rwxr-xr-x   9819 Jan 10  1998 mgdsolver.F*
-rwxr-xr-x     39 Jan 10  1998 run*

bunner/mgd3:
total 440
-rwxr-xr-x   1668 Jan 10  1998 Makefile*
-rwxr-xr-x  14407 Jan 10  1998 README*
-rwxr-xr-x   2580 Jan 10  1998 compdir.inc*
-rwxr-xr-x    925 Jan 10  1998 decomp.F*
-rwxr-xr-x   1552 Jan 10  1998 gerr.F*
-rwxr-xr-x   1364 Jan 10  1998 ginit.F*
-rwxr-xr-x   2721 Jan 10  1998 grid1_type.F*
-rwxr-xr-x   2171 Jan 10  1998 gscale.F*
-rwxr-xr-x  10334 Jan 10  1998 gxch1cor.F*
-rwxr-xr-x  14661 Jan 10  1998 gxch1lin.F*
-rwxr-xr-x   8740 Jan 10  1998 gxch1pla.F*
-rwxr-xr-x  13056 Jan 10  1998 main.F*
-rwxr-xr-x   2474 Jan 10  1998 mgdbdry.F*
-rwxr-xr-x  13980 Jan 10  1998 mgdcor.F*
-rwxr-xr-x   1408 Jan 10  1998 mgdend.F*
-rwxr-xr-x   1998 Jan 10  1998 mgderr.F*
-rwxr-xr-x  19406 Jan 10  1998 mgdinit.F*
-rwxr-xr-x   7690 Jan 10  1998 mgdkcyc.F*
-rwxr-xr-x   1979 Jan 10  1998 mgdpfpde.F*
-rwxr-xr-x   5050 Jan 10  1998 mgdphpde.F*
-rwxr-xr-x   1999 Jan 10  1998 mgdppde.F*
-rwxr-xr-x   3085 Jan 10  1998 mgdrelax.F*
-rwxr-xr-x   8817 Jan 10  1998 mgdrestr.F*
-rwxr-xr-x   1667 Jan 10  1998 mgdrpde.F*
-rwxr-xr-x    971 Jan 10  1998 mgdrsetf.F*
-rwxr-xr-x   2308 Jan 10  1998 mgdrtrsf.F*
-rwxr-xr-x   1119 Jan 10  1998 mgdsetf.F*
-rwxr-xr-x  11478 Jan 10  1998 mgdsolver.F*
-rwxr-xr-x     40 Jan 10  1998 run*

Cheers,
Craig C. Douglas

Last modified: