Blockstructured Adaptive Mesh Refinement in object-oriented C++
In AMR-methods three main abstraction levels can be identified. At the top level, the specific application is formulated. AMROC relies on standardized interface-objects to application specific components like initial and boundary conditions or numerical integration routines and AMROC's interface to Clawpack provides this standardized connection to the Clawpack-routines in Fortran. Defining a new AMROC-Clawpack-application does therefore not require any knowledge of AMR. AMROC's interface to Clawpack is a straight-forward incorporation of Fortran-funtions into C++ and should be an appropriate example how other discretizations could be used within AMROC.
Object-oriented design of the parallel AMR algorithm
The mere AMR-solver and its components for grid generation, error estimation, interpolation and flux correction make up the second level which is called the AMROC level. AMROC naturally utilizes methods of the base level defined by the DAGH package, which supplies the necessary hierarchical data structures. The DAGH level is divided into the preparation of elementary functionality for single grid patches and the implementation of various lists that store these patches hierarchically.
The documentation for the different layers of the framework has been automatically generated with doxygen.
Quickstart Users Guide Programmers Reference Installation Examples Download
AMROC Main Home Contact
last update: 6/1/04