Skip to main content

A python package to analyze Molecular Dynamics (MD) trajectories of amorphous Metal-Organic Frameworks (MOFs).

Project description

aMOF

aMOF is a python package consisting in a collection of tools to analyze Molecular Dynamics (MD) trajectories of amorphous Metal-Organic Frameworks (MOFs).

Functionalities

General-purpose MD toolbox

This package brings together a number of analyses that can be performed on every MD trajectory (not necessarily MOFs), heavily using both other python packages and non-python codes. It can compute the following properties:

  • Radial Distribution Functions (RDF), based on ASAP
  • Bond-Angle Distributions
  • Coordination numbers
  • Mean Squared Displacement (MSD)
  • Elastic constants from cell properties, and mechanical properties from elastic constants by calling ELATE
  • Pore analysis by wrapping Zeo++, reusing code from pysimm
  • Ring statistics by wrapping the RINGS code

The backend for manipulating trajectories is ASE, which are ASE trajectory objects.

Building units identification of aMOFs

A module called coordination allows the identification of the different building blocks of amorphous MOFs with an ad hoc approach per MOF system.

Only ZIF-4 is supported in the current release.

This allows the computation of rings statistics of the metal-ligand network.

This code is designed to be compatible with molsys, and can be used to generate input files in mfpx format.

The detailed algorithm for ZIF-4 is presented in the supporting information of the paper Challenges in Molecular Dynamics of Amorphous ZIFs using Reactive Force Fields.

Installation

Pre-requisites

To use the pore and ring modules, Zeo++ and the RINGS code need to be installed and accessible in the system path.

First download and follow the installation instructions on their respective websites (here for Zeo++ and here for RINGS).

Then for Zeo++, create the following variable on your system:

export ZEOpp_EXEC=/path/to/zeo++-0.3/network

For RINGS, ensure that the rings binary is in your path:

export PATH=$PATH:/path/to/rings/bin

Installation with pip

aMOF can be installed from PyPI:

pip install amof

or directly from source:

git clone https://github.com/coudertlab/amof.git
cd amof
pip install . 

Special care should be taken with Asap, which can only be installed if numpy is already installed and is thus not a default dependency. To solve this, either install asap independently (following their installation guide), or first install numpy then install amof with the rdf extra:

pip install numpy
pip install amof[rdf]

By default, graphical dependencies (used in the plot module) are not installed. To install them use the graphics extra:

pip install amof[graphics]

Installation with conda

Support for installing aMOF with conda is not included at the moment. However, conda can be used to first install all dependencies before installing amof with pip.

conda install -c conda-forge ase=3.20.1 asap3 pandas numpy xarray=0.19.0 dask netCDF4 bottleneck ase asap3 joblib pymatgen hvplot atomman jupyter jupyterlab jupytext matplotlib networkx scipy plotly seaborn cairosvg pyarrow selenium

Documentation

A documentation is can easily be created with pdoc.

Simply run (with pdoc installed):

pdoc --html --output-dir path\to\docs path\to\amof

Usage

Examples

Examples analyses can be found in the examples folder of this repository.

Citation

If you use the python package in published results (paper, conference, etc.), please cite the first paper for which it was developed: Challenges in Molecular Dynamics of Amorphous ZIFs using Reactive Force Fields.

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

amof-1.1.0.tar.gz (740.2 kB view details)

Uploaded Source

Built Distribution

amof-1.1.0-py3-none-any.whl (67.8 kB view details)

Uploaded Python 3

File details

Details for the file amof-1.1.0.tar.gz.

File metadata

  • Download URL: amof-1.1.0.tar.gz
  • Upload date:
  • Size: 740.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-httpx/0.23.0

File hashes

Hashes for amof-1.1.0.tar.gz
Algorithm Hash digest
SHA256 b8256a35f4f8e81d98110898572d6878bbb00160ce9dfb52b416c6bced825852
MD5 a54f45a6ab4d2c5c51468ecb41b4b6ab
BLAKE2b-256 6209cff0a7c77e9c58de46c21bb52b00cfc21ab0ae3a34382f204b820b571450

See more details on using hashes here.

File details

Details for the file amof-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: amof-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 67.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-httpx/0.23.0

File hashes

Hashes for amof-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1c92a88d3e766293456b156b11789169f06ac12c6d34ac03c811686e7cfd9f6f
MD5 d78c7339d2cb58817a87f3dbc324de27
BLAKE2b-256 867719fec4ca1c2bd8fdd2ca1a0119d04b3fd3186f503a3ae18170b6d5b5567e

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