Skip to content
This repository was archived by the owner on May 14, 2025. It is now read-only.

giorginolab/plumed2-pycv

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

The PYCV module for PLUMED 2

Warning

This repository accompanies an early version of PyCV (v1), described in the paper in JOSS. A newer version of PyCV (v2) is now included in plumed's main repository, as a plugin; the new version has the same scope but a slightly different syntax and installation procedure. This repository remains for historical preservation.

Note: this is a fork of the official PLUMED repository. Please see PLUMED's homepage for information on the PLUMED library.

The PYCV module enables PLUMED2 Collective Variables (CVs) and arbitrary functions to be defined and auto-differentiated in the Python language.

Advantages of using PYCV over standard development of CVs in C++ are:

  1. functions may be prototyped in high-level code, using extensive mathematical libraries, and no boilerplate;
  2. just-in-time compilation occurs transparently: there are no compilation and link delays for code changes;
  3. CVs may be automatically differentiated in common cases.

Please see the project's homepage, paper, and regression tests for detailed instructions.

Citation

Giorgino T. PYCV: a PLUMED 2 Module Enabling the Rapid Prototyping of Collective Variables in Python. The Journal of Open Source Software 4(42):1773

DOI plumID:19.075

Last tested with

Software Version
PLUMED 2.8.0
Python 3.7.7 (Homebrew)
Jax 0.2.17
Jaxlib 0.1.69
Numpy 1.19.5

Copyright

PYCV is distributed under the LGPL terms: see COPYRIGHT.

PYCV includes the pybind11 library, distributed under its own license terms (BSD-3).

About

PYCV module for PLUMED2. See the src/pycv directory.

Resources

License

Contributing

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C++ 86.1%
  • Python 3.7%
  • Fortran 1.6%
  • HTML 1.6%
  • Shell 1.4%
  • C 1.3%
  • Other 4.3%