AMROC's hierarchical data structures implement GridFunction and GridHierarchy classes that are much more general and allow a more efficient adoption than those of the original DAGH package. This generality required a complete rewriting of parts of the codes, particular GridFunction, GridDataBlock and GridHierarchy. Various useful features like different refinement factors on each level, multiple periodic boundary conditions, a restart from memory for automatic time-step algorithms based on the CFL-condition and a restart feature for a different number of computing nodes have been added additionally.
Further, deprecated coding solutions, like the utilization of preprocessor commands instead of C++ partial templatization or the avoidance of the Standard Template library for dynamic list handling, have been eliminated completely. A a consequence, the only dimension-specific code is now in the specialized GridData< Type, 1 >, GridData< Type, 2 >, GridData< Type, 3 > classes. A Vector class is provided to allow vector-valued GridFunctions with cache-coherent storage of the entire vector of state that is particular advantageous for explicit methods.