Warning
This is the documentation for the development version of DTK. There may be significant differences from the latest stable release. Please follow this link if you are looking for DTK 3.0
Installation¶
This section provide guidelines for installing DataTransferKit and its TPLs.
Install third-party libraries¶
The following third party libraries (TPLs) are used by DTK:
Packages | Dependency | Version |
---|---|---|
Boost | Required | 1.61.0 |
BLAS/LAPACK | Required | N/A |
MPI | Required | N/A |
Trilinos | Required | 12.X |
The dependencies of DataTransferKit may be built using Spack package manager. You need to install the following packages:
$ spack install openblas
$ spack install boost
$ spack install mpi
$ spack install trilinos
Once installed, the module files for the packages must be loaded into the environment by doing
$ spack load openblas
$ spack load boost
$ spack load openmpi
$ spack load trilinos
DTK submodules¶
DTK uses submodules for some of its dependencies. There are two ways to
initialize the dependencies. The easiest way is to pass the --recursive
option to the git clone
command which will automatically initialize and
update submodulesin the DataTransferKit repository.
An alternative way to initialize submodules is to manually run the following commands:
$ git submodule init
$ git submodule update
The current dependencies are:
ArborX repository (required)
The ArborX repository is a geometric search library used in DTK.
DTKData repository (optional) The DTKData repository contains mesh files used in DTK examples.
Building DTK¶
DTK is configured and built using TriBITS.
Create a do-configure
script such as:
EXTRA_ARGS=$@
cmake \
-D CMAKE_BUILD_TYPE=Release \
-D TPL_ENABLE_MPI=ON \
-D TPL_ENABLE_BLAS=ON \
-D TPL_ENABLE_LAPACK=ON \
-D TPL_ENABLE_Boost=ON \
-D Trilinos_ENABLE_EXPLICIT_INSTANTIATION=ON \
-D Tpetra_INST_INT_LONG_LONG=OFF \
-D Trilinos_ENABLE_ALL_OPTIONAL_PACKAGES=OFF \
-D Trilinos_EXTRA_REPOSITORIES="DataTransferKit" \
-D Trilinos_ENABLE_DataTransferKit=ON \
-D DataTransferKit_ENABLE_DBC=ON \
-D DataTransferKit_ENABLE_TESTS=ON \
-D DataTransferKit_ENABLE_EXAMPLES=ON \
$EXTRA_ARGS \
$TRILINOS_DIR
and run it from your build directory:
$ mkdir build && cd build
$ ../do-configure
More install scripts can be found in scripts/
.
Note
The above do-configure
script may get outdated. You can always refer to
scripts/docker_cmake
which is used in the Jenkins CI builds and
therefore is required to be always up-to-date.
Build this documentation¶
Building documentation requires sphinx.
(Re)configure with -D DataTransferKit_ENABLE_ReadTheDocs=ON
and run:
$ make docs
Open the index.html
in the directory DataTransferKit/docs/html
.
Generate Doxygen documentation¶
Configure with -D DataTransferKit_ENABLE_Doxygen=ON
and run:
$ make doxygen
Checkout DataTransferKit/docs/doxygen/html/index.html
.