Files
lammps/lib/colvars
Giacomo Fiorin f3cf407a21 Collected fixes and updates to Colvars library
This commit includes several fixes to moving restraints; also added is support
for runtime integration of 2D and 3D PMFs from ABF.

Mostly changes to existing member functions, with few additions in classes not
directly accessible by LAMMPS.  Also removed are calls to std::pow(), replaced
by a copy of MathSpecial::powint().

Relevant commits in Colvars repository:

7307b5c 2017-12-14 Doc improvements [Giacomo Fiorin]
7f86f37 2017-12-14 Allow K-changing restraints computing accumulated work; fix staged-k TI estimator [Giacomo Fiorin]
7c1c175 2017-12-14 Fix 1D ABF trying to do pABF [Jérôme Hénin]
b94aa7e 2017-11-16 Unify PMF output for 1D, 2D and 3D in ABF [Jérôme Hénin]
771a88f 2017-11-15 Poisson integration for all BC in 2d and 3d [Jérôme Hénin]
6af4d60 2017-12-01 Print message when issuing cv delete in VMD [Giacomo Fiorin]
4413972 2017-11-30 Check for homogeneous colvar to set it periodic [Jérôme Hénin]
95fe4b2 2017-11-06 Allow abf_integrate to start in bin with 1 sample [Jérôme Hénin]
06eea27 2017-10-23 Shorten a few constructs by using the power function [Giacomo Fiorin]
3165dfb 2017-10-20 Move includes of colvarproxy.h from headers to files [Giacomo Fiorin]
32a867b 2017-10-20 Add optimized powint function from LAMMPS headers [Giacomo Fiorin]
3ad070a 2017-10-20 Remove some unused includes, isolate calls to std::pow() [Giacomo Fiorin]
0aaf540 2017-10-20 Replace all calls to std::pow() where the exponent is not an integer [Giacomo Fiorin]
2018-02-23 08:34:53 -05:00
..
2017-08-10 21:14:40 -04:00
2017-08-07 17:13:01 -04:00
2017-08-07 17:13:01 -04:00
2017-10-09 15:25:43 -04:00

## 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.

For a brief description see:
  http://colvars.github.io/
  https://github.com/colvars/colvars/


## How to build

This directory has source files to build a library that LAMMPS
links against when using the USER-COLVARS package.

This library must be built with a C++ compiler, *before* LAMMPS is built and
*after* packages are configured, so that LAMMPS can link against it.
You can use the provided Makefile.* files or create your own, specific to your
compiler and system.  For example:

  cd src
  make yes-user-colvars
  cd ../lib/colvars
  make -f Makefile.g++

where Makefile.g++ uses the GNU C++ compiler and is a good template to start.

**Optional**: if you use the Install.py script provided in this folder, you
can give the machine name as the '-m' argument.  This can be the suffix of one
of the files from either this folder, or from src/MAKE/MACHINES.
*This is only supported by the Install.py within the lib/colvars folder*.

When you are done building this library, two files should
exist in this directory:

libcolvars.a		the library LAMMPS will link against
Makefile.lammps		settings the LAMMPS Makefile will import

IMPORTANT: You must examine the final Makefile.lammps to insure it is
correct for your system, else the LAMMPS build will likely fail.

If you want to set a debug flag recognized by the library, the
settings in Makefile.common should work.

Note: some Colvars functions use the Lepton mathematical expression parser,
which is here included (no additional steps required).  For more details, see:
  https://simtk.org/projects/lepton


## Documentation

For the reference manual see:
  http://colvars.github.io/colvars-refman-lammps

A copy of the reference manual is also in:
  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. Henin,
  Molecular Physics 111, 3345 (2013).
  http://dx.doi.org/10.1080/00268976.2013.813594


## Updating to the latest version

To recompile LAMMPS with the most recent version of this module, the `master`
branch of this repository from GitHub, or clone it via git:

  git clone https://github.com/colvars/colvars.git

and run the provided `update-colvars-code.sh` script against the unpacked
LAMMPS source tree:

  ./update-colvars-code.sh /path/to/lammps/folder

Please report bugs and request new features at:
https://github.com/colvars/colvars/issues