## Contents

- General multidimensional array templates
- List and set templates
- Optimized numerical vector and matrix formats
- Optimized spatial point representation
- Structured, unstructured and staggered grids
- Scalar and vector fields

- Direct and iterative linear solvers
- Multigrid solvers
- Preconditioners
- Convergence monitors
- Non-linear solvers

- Stationary and time-dependent PDEs
- Linear and non-linear PDEs
- Systems of coupled PDEs (multi-physics problems)
- Finite element algorithms
- Mixed finite element algorithms
- Implicit finite difference algorithms
- Explicit finite difference algorithms
- Library of finite elements
- Library of finite difference stencils
- Run time selection of spatial dimension (1, 2 or 3 dimension. General dimension for some algorithms)

- Parallelization of linear algebra operations in PDE applications (presentation)

- Extended I/O, CPU timing, smart pointers
- Result database handling (SimRes database)
- Scripts and makefiles for project management

- Textbook from Springer-Verlag (presentation)
- Complete header file documentation
- Reports and scientific papers (presentation)
- Automatic application manual generation

- Transfinite mapping, super-element and lattice grid preprocessors
- Tools for integration with GeomPack and Triangle
- Adaptive meshing (presentation)
- Interfaces to external preprocessor formats (presentation)

- Interfaces to Matlab, Gnuplot, IRIS Explorer, AVS, Vtk and more
- Filters for mapping of SimRes database to visualization tools

- Menu system interfacing through input file, graphical or command line mode (graphical, an input file)

- Tools for automatic regression testing of applications
- Automatic memory handling
- Debugging tools
- Code transformation programs between Diffpack versions

- Run time selection of all application and library entities, from simple variables to abstract data-types (illustration)
- Batch experiments by sequences of runs configured by the Menu system (example)
- Automatic report generation in LaTeX, ASCII or HTML (example)

- Register user defined entities in Diffpack's entity tables for interoperability with Diffpack.
- Interfacing external modules for interoperation with Diffpack (e.g. elements, solvers, simulators, possibly in other languages)
- Compile time input control for running as slave under external processes

Copyright © inuTech GmbH. All rights reserved. Questions and comments regarding this web site should be directed to diffpack@inutech.de