This repository contains a standalone implementation of a light-weight ONIOM interface.
The default CMake and meson builds compile a statically linked library (liblwoniom.a) that can be linked in other projects.
The library contains implementations for partitioning of a molecular system into the individual ONIOM fragments, including saturation of bonds with hydrogen linking atoms, and the reconstruction of respective energies, gradients and Hessian matrices.
Adhereing to the eponymous light-weight aspect, no potentials are implemented in the library itself as it is intended for the use in other codes.
A standandalone command line app can be built with the -Dbuild_exe=true option, which offers a demonstration of input file formats and capabilities to test the ONIOM partition.
main.f90 in app/ demonstrates the library's in-code usage.
Make sure you have the following dependencies installed:
- CMake and
make, or meson and ninja build systems - Fortran and C compilers (e.g.,
gfortran/gccorifort/icc)
Follow these steps to build the project:
-
Create a build directory and navigate to it
mkdir _build cd _build -
Export the compilers (here for example
ifort/icc) and depending on your chosen build system set up the build:- generate the build files using CMake:
FC=ifort CC=icc cmake ..
- generate the build files using meson:
FC=ifort CC=icc meson ..
If you wish to build the an app binary, add
-Dbuild_exe=trueto either thecmakeormesonsetup command. - generate the build files using CMake:
-
Depending on your chosen build system, build the project. If you have multiple cores/processors, you can speed up the build process by specifying the number of cores to use with the
-joption. For example, to use 4 cores:- With CMake/
make:make -j4
- With meson/
ninja:ninja -j4
- With CMake/
To clean the build files, simply delete the build directory:
rm -rf _build