Elsevier Science Home
Computer Physics Communications Program Library
Full text online from Science Direct
Programs in Physics & Physical Chemistry
CPC Home

[Licence| Download | New Version Template] aeom_v1_0.tar.gz(1040 Kbytes)
Manuscript Title: Parallel grid library for rapid and flexible simulation development
Authors: I. Honkonen, S. von Alfthan, A. Sandroos, P. Janhunen, M. Palmroth
Program title: DCCRG
Catalogue identifier: AEOM_v1_0
Distribution format: tar.gz
Journal reference: Comput. Phys. Commun. 184(2013)1297
Programming language: C++.
Computer: PC, Cluster, Supercomputer.
Operating system: POSIX.
Has the code been vectorised or parallelized?: Yes, using MPI. 1 - 32768 cores
RAM: 10 MB - 10 GB per process
Keywords: dccrg, parallel, grid, AMR, MPI, FVM, FEM.
Classification: 4.12, 4.14, 6.5, 19.3, 19.10, 20.

External routines: MPI-2 [1], boost [2], Zoltan [3], sfc++ [4]

Nature of problem:
Grid library supporting arbitrary data in grid cells, parallel adaptive mesh refinement, transparent remote neighbor data updates and load balancing.

Solution method:
The simulation grid is represented by an adjacency list (graph) with vertices stored into a hash table and edges into contiguous arrays. Message Passing Interface standard is used for parallelization. Cell data is given as a template parameter when instantiating the grid.

Logically cartesian grid.

Running time:
Running time depends on the hardware, problem and the solution method. Small problems can be solved in under a minute and very large problems can take weeks. The examples and tests provided with the package take less than about one minute using default options.
In the version of dccrg presented here the speed of adaptive mesh refinement is at most of the order of 106 total created cells per second.

[1] http://www.mpi-forum.org/
[2] http://www.boost.org/
[3] K. Devine, E. Boman, R. Heaphy, B. Hendrickson, C. Vaughan, Zoltan DataManagement Services for Parallel Dynamic Applications, Comput. Sci. Eng. 4 (2002) 90-97 doi:10.1109/5992.988653
[4] https://gitorious.org/sfc++