Installation of AlmaBTE code on desktop or workstation computer

Image credit: almaBTE website

Installation of AlmaBTE on ubuntu

AlmaBTE installation requires boost library and hdf5 library.

Installation of Boost Library:

The Boost 1.64 version does not work with almaBTE when used with mpi option.

I have installed boost 1.62 version with the following procedure:

In the boost folder:

./bootstrap.sh --with-libraries=all --prefix=/usr/local

echo "using mpi : mpic++ ; " >> project-config.jam

./b2 headers

sudo ./b2 -j install | tee install.log

Installation of HDF5 library (version 1.8.19)

In the HDF5 folder

./configure --prefix=/usr/local --enable-fortran \ --enable-cxx FC=/usr/bin/gfortran CC=/usr/bin/gcc CXX=/usr/bin/g++

make

sudo make install

make check

Installation of almaBTE

(Note: the newest version of cmake is recommended)

In the almaBTE folder,

mkdir build

cd build

cmake ..

[if cmake is unable to find boost libraries, then use the following ]

cmake .. -DBOOST_INCLUDEDIR=/home/user/almabte/boost_1_62_0/include \ -DBOOST_ROOT=/home/user/almabte/boost_1_62_0

make all

make test

The output of cmake .. should look like :

ravindra@mimus:~/Codes/almabte-v1.2/build$ cmake ..
-- The CXX compiler identification is GNU 5.4.0
-- The C compiler identification is GNU 5.4.0
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Looking for a Fortran compiler
-- Looking for a Fortran compiler - /usr/bin/f95
-- The Fortran compiler identification is GNU 5.4.0
-- Check for working Fortran compiler: /usr/bin/f95
-- Check for working Fortran compiler: /usr/bin/f95  -- works
-- Detecting Fortran compiler ABI info
-- Detecting Fortran compiler ABI info - done
-- Checking whether /usr/bin/f95 supports Fortran 90
-- Checking whether /usr/bin/f95 supports Fortran 90 -- yes
-- Detecting Fortran/C Interface
-- Detecting Fortran/C Interface - Found GLOBAL and MODULE mangling
-- Verifying Fortran/C Compiler Compatibility
-- Verifying Fortran/C Compiler Compatibility - Success
-- Verifying Fortran/CXX Compiler Compatibility
-- Verifying Fortran/CXX Compiler Compatibility - Success
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - not found
-- Check if compiler accepts -pthread
-- Check if compiler accepts -pthread - yes
-- Found Threads: TRUE
-- Looking for C++ include sys/types.h
-- Looking for C++ include sys/types.h - found
-- Looking for C++ include stdint.h
-- Looking for C++ include stdint.h - found
-- Looking for C++ include stddef.h
-- Looking for C++ include stddef.h - found
-- Check size of std::size_t
-- Check size of std::size_t - done
-- Check size of unsigned short
-- Check size of unsigned short - done
-- Check size of unsigned int
-- Check size of unsigned int - done
-- Check size of unsigned long
-- Check size of unsigned long - done
-- Check size of unsigned long long
-- Check size of unsigned long long - done
std::size_t is unsigned long
-- Found MPI_C: /home/ravindra/Codes/openmpi-2.0.1/build/lib/libmpi.so
-- Found MPI_CXX: /home/ravindra/Codes/openmpi-2.0.1/build/lib/libmpi.so
-- Found MPI_Fortran: /home/ravindra/Codes/openmpi-2.0.1/build/lib/libmpi_usempif08.so;
                      /home/ravindra/Codes/openmpi-2.0.1/build/lib/libmpi_usempi_ignore_tkr.so;
                      /home/ravindra/Codes/openmpi-2.0.1/build/lib/libmpi_mpifh.so;
                      /home/ravindra/Codes/openmpi-2.0.1/build/lib/libmpi.so
-- Boost version: 1.62.0
-- Found the following Boost libraries:
--   system
--   filesystem
--   mpi
--   serialization
--   log
--   date_time
--   log_setup
--   thread
--   regex
--   chrono
--   atomic
-- HDF5: Using hdf5 compiler wrapper to determine C configuration
-- HDF5: Using hdf5 compiler wrapper to determine CXX configuration
-- Found HDF5: /usr/local/lib/libhdf5_cpp.so;
               /usr/local/lib/libhdf5.so;
               /usr/lib/x86_64-linux-gnu/libz.so;
               /usr/lib/x86_64-linux-gnu/libdl.so;
               /usr/lib/x86_64-linux-gnu/libm.so found components:  C CXX
-- Found PythonInterp: /usr/bin/python (found version "2.7.12")
-- Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE)
CMake Warning at CMakeLists.txt:171 (message):
  Doxygen not found, documentation cannot be generated


-- Configuring done
-- Generating done
-- Build files have been written to: /home/ravindra/Codes/almabte-v1.2/build

The output of make test should look like:

ravindra@mimus:~/Codes/almabte-v1.2/build$ make test
Running tests...
Test project /home/ravindra/Codes/almabte-v1.2/build
      Start  1: metatest
 1/35 Test  #1: metatest .........................   Passed    0.01 sec
      Start  2: poscar_test
 2/35 Test  #2: poscar_test ......................   Passed    0.03 sec
      Start  3: force_constants_test
 3/35 Test  #3: force_constants_test .............   Passed    0.11 sec
      Start  4: born_test
 4/35 Test  #4: born_test ........................   Passed    0.01 sec
      Start  5: mass_test
 5/35 Test  #5: mass_test ........................   Passed    0.01 sec
      Start  6: vc_test
 6/35 Test  #6: vc_test ..........................   Passed    0.25 sec
      Start  7: dynamical_matrix_test
 7/35 Test  #7: dynamical_matrix_test ............   Passed    0.21 sec
      Start  8: symmetry_test
 8/35 Test  #8: symmetry_test ....................   Passed    0.03 sec
      Start  9: mpi_test
 9/35 Test  #9: mpi_test .........................   Passed    0.22 sec
      Start 10: qpoint_grid_test
10/35 Test #10: qpoint_grid_test .................   Passed    0.35 sec
      Start 11: cv_test
11/35 Test #11: cv_test ..........................   Passed    0.28 sec
      Start 12: kappa_sg_test
12/35 Test #12: kappa_sg_test ....................   Passed    1.58 sec
      Start 13: processes_test
13/35 Test #13: processes_test ...................   Passed   22.12 sec
      Start 14: p3_test
14/35 Test #14: p3_test ..........................   Passed    3.57 sec
      Start 15: force_constants_3rd_test
15/35 Test #15: force_constants_3rd_test .........   Passed    0.04 sec
      Start 16: conductivity_test
16/35 Test #16: conductivity_test ................   Passed  103.12 sec
      Start 17: beyondRTA_test
17/35 Test #17: beyondRTA_test ...................   Passed   76.02 sec
      Start 18: proc_serialization_test
18/35 Test #18: proc_serialization_test ..........   Passed    3.49 sec
      Start 19: hdf5_write_test
19/35 Test #19: hdf5_write_test ..................   Passed  104.48 sec
      Start 20: hdf5_scattering_test
20/35 Test #20: hdf5_scattering_test .............   Passed    1.15 sec
      Start 21: hdf5_read_test
21/35 Test #21: hdf5_read_test ...................   Passed    2.35 sec
      Start 22: isotopic_scattering_test
22/35 Test #22: isotopic_scattering_test .........   Passed  107.46 sec
      Start 23: green1d_test
23/35 Test #23: green1d_test .....................   Passed    1.01 sec
      Start 24: analytic1D_basicprop_test
24/35 Test #24: analytic1D_basicprop_test ........   Passed    7.23 sec
      Start 25: analytic1D_psi_test
25/35 Test #25: analytic1D_psi_test ..............   Passed    5.31 sec
      Start 26: analytic1D_SPR-FL_test
26/35 Test #26: analytic1D_SPR-FL_test ...........   Passed    1.78 sec
      Start 27: analytic1D_SPR_test
27/35 Test #27: analytic1D_SPR_test ..............   Passed   19.47 sec
      Start 28: analytic1D_MSD_test
28/35 Test #28: analytic1D_MSD_test ..............   Passed    1.81 sec
      Start 29: superlattice_builder_test
29/35 Test #29: superlattice_builder_test ........   Passed  151.73 sec
      Start 30: kappa_Tsweep_test
30/35 Test #30: kappa_Tsweep_test ................   Passed    6.13 sec
      Start 31: cumulativecurves_test
31/35 Test #31: cumulativecurves_test ............   Passed    2.88 sec
      Start 32: kappa_crossplanefilms_test
32/35 Test #32: kappa_crossplanefilms_test .......   Passed    2.79 sec
      Start 33: kappa_inplanefilms_test
33/35 Test #33: kappa_inplanefilms_test ..........   Passed    2.37 sec
      Start 34: transient_analytic1d_test
34/35 Test #34: transient_analytic1d_test ........   Passed    2.70 sec
      Start 35: steady_montecarlo1d_test
35/35 Test #35: steady_montecarlo1d_test .........   Passed   31.85 sec

100% tests passed, 0 tests failed out of 35

Total Test time (real) = 663.97 sec
Ravindra Shinde
Ravindra Shinde
Research Scientist

I am a theoretical and computational condensed matter physicist and quantum chemist. I have around 10 years of research experience, with 6 years in scientific code development. I have authored 16 research articles, 1 book, and peer-reviewed 25 manuscripts.



Next
Previous