Skip to main content

Tools for generalized Langevin equation simulation and analysis

Project description

GLEqPy

Generalized Langevin Equation with Python

This repo contains tools for the simulation of the generalized Langevin equation (GLE) and the calculation of memory/friction kernels.

The GLE is a non-Markovian counterpart to the Langevin equation,

$$ \mathbf{p} = -\frac{d W}{d \mathbf{x}}(t) - \int_0^t \mathbf{K}(t-\tau) \mathbf{p}(\tau) d\tau + \mathbf{R}(t) $$

where $\mathbf{p}$ and $\mathbf{x}$ are the momenta and positions of your system, $W$ is the potential of mean force, $\mathbf{K}$ is the memory kernel (generally a tensor), and $\mathbf{R}$ is a correlated stochastic process.

The figure above compares memory kernels, one that was used as an input for a simulation and others that were extracted by analyzing the data from that simulation.

Pedagogical examples of how to set up, run, and analyze GLE simulations are provided in the examples directory. Examples include toy simulations, GLE for solid dynamics with ASE, and GLE for solution phase dynamics with LAMMPS.

Getting Started

The easiest way to install GLEqPy is by using pip.

pip install gleqpy

The memory analysis tools only require numpy and scipy.

The ase module requires the Atomic Simulation Environment to be installed.

The examples directory contains discusses how to use LAMMPS to run GLE simulations.

Submodules

ase - GLE integrators and helpful forcefields for Atomic Simulation Environment.

examples - Helpful examples.

memory - Functions for calculating memory kernels, and a database for memory kernels calculated from prior simulations.

md - Python based MD code, useful for testing purposes and building toy simulations.

Citing glepy

If you use glepy, please cite:

Farahvash A, Agrawal M, Peterson AA, Willard AP. Modeling Surface Vibrations and Their Role in Molecular Adsorption: A Generalized Langevin Approach. J Chem Theory Comput. 2023 Sep 26;19(18):6452-6460. doi: 10.1021/acs.jctc.3c00473.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

GLEqPy-1.0.3.tar.gz (27.2 kB view details)

Uploaded Source

File details

Details for the file GLEqPy-1.0.3.tar.gz.

File metadata

  • Download URL: GLEqPy-1.0.3.tar.gz
  • Upload date:
  • Size: 27.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.12

File hashes

Hashes for GLEqPy-1.0.3.tar.gz
Algorithm Hash digest
SHA256 8c98424175cf37f760835e2498832ce529528f4e420b82783a3ac04eda15c55c
MD5 5960e7b6ccd9f106fe32a0b0e089f82b
BLAKE2b-256 b9ac5316178c9de56fb5d6f7d2fb8ea690b9a03a9eb1217a9a583cf7414d7e61

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page