Files
lammps/lib/colvars/README

84 lines
3.3 KiB
Plaintext
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

## Collective variables module (Colvars)
A software module for molecular simulation and analysis that provides a
high-performance implementation of sampling algorithms defined on a reduced
space of continuously differentiable functions (aka collective variables).
The module itself implements a variety of functions and algorithms, including
free-energy estimators based on thermodynamic forces, non-equilibrium work and
probability distributions.
## Documentation
For a brief description see:
https://colvars.github.io/
https://github.com/Colvars/colvars/
For the reference manual see:
http://colvars.github.io/colvars-refman-lammps
A PDF copy is also at:
doc/PDF/colvars-refman-lammps.pdf
Also available is a Doxygen-based developer documentation:
http://colvars.github.io/doxygen/html/
The reference article is:
G. Fiorin, M. L. Klein, and J. Hénin,
Molecular Physics 111, 3345 (2013).
https://doi.org/10.1080/00268976.2013.813594
## Requirements
The Colvars library can be built for the most part with all major versions of
the C++ language.
A few of the most recent features require C++11 support, which is also required
by LAMMPS, so no additional notes are needed.
## How to build (CMake)
This is the recommended build recipe: no additional settings are normally
needed besides "-D PKG_COLVARS=yes".
Linking to the Lepton library, which is also used by the LEPTON LAMMPS package,
is enabled automatically. Optionally, support for Lepton within Colvars may
be manually controlled with theCMake setting "-D COLVARS_LEPTON=yes|no".
## How to build (traditional make)
Before building LAMMPS, one must build the Colvars library in lib/colvars
and the Lepton library in lib/lepton. For building Lepton please see the
README.md file in the lib/lepton folder.
Building the Colvars library can be done manually in the respective
folders by using or adapting one of the provided Makefiles: for example,
Makefile.g++ for the GNU compiler.
In general, it is safer to use build setting consistent with the rest of
LAMMPS. This is best carried out from the LAMMPS src directory using a
command like these, which simply invoke the lib/colvars/Install.py script
with the specified args:
make lib-colvars # print help message
make lib-colvars args="-m serial" # build with GNU g++ compiler (settings as with "make serial")
make lib-colvars args="-m mpi" # build with default MPI compiler (settings as with "make mpi")
make lib-colvars args="-m g++-debug" # build with GNU g++ compiler and colvars debugging enabled :pre
The "machine" argument of the "-m" flag is used to find a Makefile.machine to
use as build recipe. If it does not already exist in lib/colvars, it will be
auto-generated by using compiler flags consistent with those parsed from the
core LAMMPS makefiles.
Optional flags may be specified as environment variables:
COLVARS_DEBUG=yes make lib-colvars args="-m machine" # Build with debug code (much slower)
COLVARS_LEPTON=no make lib-colvars args="-m machine" # Build without Lepton (included otherwise)
The build should produce two files: the library lib/colvars/libcolvars.a
(which also includes Lepton objects if enabled) and the specification file
lib/colvars/Makefile.lammps. The latter is auto-generated, and normally does
not need to be edited.