Installation
Obtaning TChem-atm
TChem-atm is open-source code available on GitHub. It can be downloaded (cloned) with the terminal command
git clone https://github.com/PCLAeroParams/TChem-atm
TChem-atm requires the following third-party libraries:
These third-party libraries are submodules in TChem-atm. Thus, we can initialize them (i.e., download and update) using the following command:
git submodule update --init --recursive
Building and installing third-party libraries
The script scripts/tpls_bld.sh
clones, builds, and installs TChem-atm's third-party libraries. To use this script, one must provide compiler and configuration information at the top of the script as follows:
MY_CC=gcc # C++ compiler
MY_CXX=g++ # C++ compiler
MY_FC=gfortran # Fortran compiler
To build/install with CUDA ON
or OFF
, use the flag:
CUDA="ON" # Set to ON/OFF to compile TChem-atm with or without NVIDIA-GPUs support.
Additionally, specify the root directory for installing/building the third-party libraries:
ROOT=/path/to/tchem-atm/.
This script initializes the submodules and installs/builds the third-party libraries in the $ROOT/HOST
or $ROOT/DEVICE
directory, depending on whether CUDA=OFF
or CUDA=ON
is chosen.
Since Kokkos can be installed/built with both CUDA ON
or OFF
, this script installs it in both $ROOT/HOST
and $ROOT/DEVICE
, while the other libraries are installed in $ROOT/HOST
. Therefore, one must run this script using CUDA=OFF
to install all third-party libraries and run it a second time with CUDA=ON
if an NVIDIA GPU is available.
Building and installing TChem-atm and Tines
The script scripts/build_script.sh
builds and installs TChem-atm and Tines. Similarly to the script for third-party libraries, in scripts/build_script.sh
, one must provide the same compiler information and CUDA flag.
In addition, this script adds the option to turn SACADO="ON"
or SACADO="OFF"
to enable or disable the SACADO library's automatic differentiation capability.
The installation path for the third-party libraries is specified by INSTALL_BASE_HOST
, and ROOT=/path/to/tchem-atm
is where TChem-atm and Tines are installed. If CUDA is ON
, libraries will be installed in the ROOT/DEVICE
directory. Otherwise, they will be installed in the ROOT/HOST
directory.