The Data Transfer Kit (DTK) is a software component designed to provide parallel services for mesh and geometry searching and data transfer for arbitrary physics components. In many physics applications, the concept of mesh and geometry is used to subdivide the physical domain into a discrete representation to facilitate the solution of the model problems that describe it. Additionally, the concept of the field is used to apply degrees of freedom to the mesh or geometry as a means of function discretization. With the increased development efforts in multiphysics simulation, adaptive mesh simulations, and other multiple mesh/geometry problems, generating parallel topology maps for transferring fields and other data between meshes is a common operation. DTK is being developed to provide a suite of concrete algorithm implementations for these services.
User and developer documentation is provided by Doxygen here. A domain model document can be found here for a more formal description.
Bug reporting and issue tracking are provided by GitHub. Please report all bugs here by creating a new issue.
The current Trilinos state is required to build DTK. You can check out this git public repository here
DTK can be configured for both serial and parallel builds. For parallel builds, an MPI implementation is also required. Both OpenMPI and MPICH have been tested.
The DataTransferKit uses the TriBITS build system distributed with Trilinos with a required dependency on CMake. Sample CMake configure scripts can be found here for various systems. The CTest harness is used for testing.
Several examples are provided for using the DataTransferKit for parallel search and transfer operations. See the example directory.
The following people have made substantial contributions to the development of DataTransferKit: