• Home
  • About t8code
  • News
  • Showcase
  • Documentation
  • Contact
  • Download

Exascale ready adaptive mesh refinement for all element shapes!

Don't worry about your mesh data! t8code provides fast mesh and data management with excellent scaling properties and was tested on up to 1 million cores with up to 1.1 trillion elements.

YOUR IMAGINATION IS THE LIMIT

Due to the low and high level functions t8code is straightforward to use, while being highly versatile. Take a look at our showcase for examples!

DIRECT SUPPORT

If you have any questions about t8code, its usage or any ideas, feel free to contact the developers.

Previous Next

About

t8code (spoken as "tetcode") is a C/C++ library to manage parallel adaptive meshes with various element types. t8code uses a collection (a forest) of multiple connected adaptive space-trees in parallel and scales to at least one million MPI ranks and over 1 Trillion mesh elements.

t8code is intended to be used as a thirdparty library for numerical simulation codes or any other applications that require meshes.

Here, you can find a description of the interface, functionality and features of t8code version 1.0.

Key-features

Among other features, t8code offers the following functionalities:

  • Managing distributed adaptive meshes over complex domain geometries
  • Adapting meshes according to user given refinement/coarsening criteria
  • Establishing a 2:1 balance condition
  • (Re-)partitioning/load-balancing a mesh (and associated data) among MPI ranks
  • Managing ghost (halo) elements and data
  • Searching the mesh efficiently
  • Supporting curved meshes

Getting started

Get started using t8code now. We have a collection of Tutorials that help you understand the data structures and algorithms of t8code and how to best connect it to your application. Additionally our large collection of examples demonstrates the features of t8code.

Publications

Johannes Holke, Scalable algorithms for parallel tree-based adaptive mesh refinement with general element types, PhD thesis at University of Bonn, 2018, Full text available
Carsten Burstedde and Johannes Holke, A Tetrahedral Space-Filling Curve for Nonconforming Adaptive Meshes, SIAM Journal on Scientific Computing, 2016, 10.1137/15M1040049
Carsten Burstedde and Johannes Holke, Coarse mesh partitioning for tree-based AMR, SIAM Journal on Scientific Computing, 2017, 10.1137/16M1103518
Johannes Holke and David Knapp and Carsten Burstedde, An Optimized, Parallel Computation of the Ghost Layer for Adaptive Hybrid Forest Meshes, SIAM Journal on Scientific Computing, 2021, 10.1137/20M1383033 Sandro Elsweijer and Johannes Holke and Jan Kleinert and Dirk Reith, Constructing a Volume Geometry Map for Hexahedra with Curved Boundary Geometries, Research note a the International Meshing Roundtable 2022, Research note available

Cite & Acknowledge

If you use t8code in any of your publications, please cite the github repository and [1]. For publications specifically related to

  • the TM index, please cite [2].
  • coarse mesh partitioning, please cite [3].
  • construction and handling of the ghost layer, please cite [4].

t8code-1.0.0 released

Johannes Holke and David Knapp Thu 22 September 2022 Permalink News

We are finally releasing the first major version of t8code, v1.0. t8code is a parallel adaptive mesh management library with support for hybrid meshes. t8code uses the efficient space-filling curve approach to store and manage meshes and extends it to all common element shapes. We have demonstrated its efficiency …

Learn more
1
© 2022 Deutsches Zentrum für Luft- und Raumfahrt e.V.  ⋅ Institute for Software Technology  ⋅ Imprint  ⋅ Privacy  ⋅ Terms of use  ⋅ Accessibility