Table of Contents
Interfaces with External Software
Overview
NWChem can be interfaced with external software packages by following the instructions below.
The interface can be set either using a pre-exisiting software package or by downloading and compiling the software from the NWChem makefile infrastructure.
Simint integrals library
To generate the Simint) library and enable the NWChem interface (only for energy and first derivative code), you need to define the following environment variables at compile time:
USE_SIMINT=y(mandatory)SIMINT_MAXAM="Maximum angular momentum" (optional, default is 3, therefore up to f orbitals)
The following set directives are required in the input file to trigger use of Simint
set int:cando_txs f
set int:cando_nw f
OpenBLAS
To build NWChem with the optimized BLAS and Lapack OpenBLAS library, you need to define the following environment variables at compile time:
BUILD_OPENBLAS=1
BLAS_SIZE=8
This procedure requires an internet connection to dowload the OpenBLAS source.
Instead, to use a pre-compiled OpenBLAS library, the BLASOPT, LAPACK_LIB and BLAS_SIZE environment variable need to be set.
ScaLAPACK
To build NWChem with the ScaLAPACK library, you need to define the following environment variables at compile time:
BUILD_SCALAPACK=1
SCALAPACK_SIZE=8
This procedure requires an internet connection to dowload the OpenBLAS source.
Instead, to use a pre-compiled ScaLAPACK library, the SCALAPACK_LIB and SCALAPACK_SIZE environment variable need to be set,
as described in the related Compiling NWChem section
ELPA
To build NWChem with the ELPA eigensolver library, you need first to set the ScaLAPACK settings as described in the previous section and then you need to define the following environment variables at compile time:
BUILD_ELPA=1
This procedure requires an internet connection to dowload the OpenBLAS source.
Instead, to use a pre-compiled ELPA library, the ELPA and ELPA_SIZE environment variable need to be set.
Plumed
The BUILD_PLUMED environment variable installs Plumed and
interfaces it with the qmd module.
This procedure requires an internet connection to dowload the Plumed source.
Instead, if you wish to use an existing Plumed installation, the following environment variables must be set (after having unset BUILD_PLUMED):
USE_PLUMED=1
Requirements:
- The environment variable
PATHshould to point to the location of theplumedcommand andLD_LIBRARY_PATHshould point to the location of the plumed libraries. BLAS_SIZEandSCALAPACK_SIZEmust be equal to 4 (this is not a requirement when usingBUILD_PLUMED)
Libxc
Building NWChem with the libxc DFT library requires
setting the environment variable USE_LIBXC=1.
This procedure requires an internet connection to dowload the Libxc source.
Instead, if you wish to use an existing libxc library, the following environment variables must be set, after having unset USE_LIBXC:
LIBXC_INCLUDElocation of the libxc C header filesLIBXC_MODDIRlocation of the libxc fortran90 module filesLIBXC_LIBlocation of the libxc libraries files
For example, for Debian/Ubuntu systems, the following is needed after having installed the libxc-dev package
unset USE_LIBXC
export LIBXC_LIB=/usr/lib/x86_64-linux-gnu
export LIBXC_INCLUDE=/usr/include
For example, for Fedora systems, the following is needed after having installed the libxc-devel package
unset USE_LIBXC
export LIBXC_LIB=/usr/lib64
export LIBXC_INCLUDE=/usr/include
export LIBXC_MODDIR=/usr/lib64/gfortran/modules
XTB
Building NWChem with the Light-weight tight-binding framework tblite requires
- setting the environment variable
USE_TBLITE=1 - adding
xtbto list ofNWCHEM_MODULES
Example:
make nwchem_config NWCHEM_MODULES='tinyqmpw xtb'
export USE_TBLITE=1
make
NWChem User Documentation
Want to contribute to the NWChem Wiki?
Fork the github wiki repository, modify it and send a pull request.
