Skip to main content

MDAnalysis tool to calculate membrane curvature from MD simulations.

Project description

Membrane Curvature

Powered by MDAnalysis GitHub Actions Status codecov docs PyPI

MembraneCurvature is an MDAnalysis tool to calculate membrane curvature from Molecular Dynamics simulations.

Interested in becoming a maintainer? We welcome your passion and expertise to help shape and grow this open-source project! Please contact estefania@ojeda-e.com for more details.

Features

With MembraneCurvature you can:

  • Calculate mean and Gaussian curvature from MD simulations.
  • Derive 2D curvature profiles.
  • Live a happier life.

Installation

The main dependency in MembraneCurvature is MDAnalysis. You can find instructions to install the latest stable version of MDAnalysis via conda in the UserGuide.

MembraneCurvature is available via pip:

pip install membrane-curvature

To install from source:

git clone https://github.com/MDAnalysis/membrane-curvature.git
cd membrane-curvature
conda env create -f devtools/conda-envs/environment.yaml
conda activate membrane-curvature
python setup.py install

Some of the examples included in the MembraneCurvature documentation use test cases from MDAnalysisTests. To install the unit tests via conda:

conda install -c conda-forge MDAnalysisTests

or via pip:

pip install --upgrade MDAnalysisTests

Usage

This is a quick example on how to run MembraneCurvature:

import MDAnalysis as mda
from membrane_curvature.base import MembraneCurvature
from MDAnalysis.tests.datafiles import Martini_membrane_gro

universe = mda.Universe(Martini_membrane_gro)

curvature_upper_leaflet = MembraneCurvature(universe,
                                            select='resid 1-225 and name PO4',
                                            n_x_bins=8,
                                            n_y_bins=8,
                                            wrap=True).run()

# extract mean curvature
mean_upper_leaflet = curvature_upper_leaflet.results.z_surface

# extract mean curvature
mean_upper_leaflet = curvature_upper_leaflet.results.mean

# extract Gaussian
gaussian_upper_leaflet = curvature_upper_leaflet.results.gaussian

In this example, we use the PO4 beads in the upper leaflet as reference to derive a surface and calculate its respective mean and Gaussian curvature.

You can find more examples on how to run MembraneCurvature in the Usage page. To plot results from MembraneCurvature please check the Visualization page.

Documentation

To help you get the most out MembraneCurvature, we have documentation available where you can find:

  • The standard API documentation.
  • Quick examples of how to run Membrane Curvature in the Usage page.
  • Detailed explanation of the Algorithm implemented in MembraneCurvature.
  • Examples on how to plot the results obtained from MembraneCurvature in the Visualization page.

License

Source code included in this project is available in the GitHub repository https://github.com/MDAnalysis/membrane-curvature under the GNU Public License v3 , version 3 (see LICENSE).

MembraneCurvature was developed as a Google Summer of Code 2021 project with MDAnalysis and it is linked to a Code of Conduct.

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

membrane_curvature-1.1.2.tar.gz (4.2 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

membrane_curvature-1.1.2-py3-none-any.whl (4.2 MB view details)

Uploaded Python 3

File details

Details for the file membrane_curvature-1.1.2.tar.gz.

File metadata

  • Download URL: membrane_curvature-1.1.2.tar.gz
  • Upload date:
  • Size: 4.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for membrane_curvature-1.1.2.tar.gz
Algorithm Hash digest
SHA256 6b5775e53a69689d222b373353909bcd2625ef4a1090a1b5c34ca14943d8516b
MD5 ad1b3421ab28fa1f1e858bceb8b01b9a
BLAKE2b-256 945389268f2afff180c0b2a7a96f1931aa89062b20b71e94b36a9a35e1246f13

See more details on using hashes here.

Provenance

The following attestation bundles were made for membrane_curvature-1.1.2.tar.gz:

Publisher: deploy.yaml on MDAnalysis/membrane-curvature

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file membrane_curvature-1.1.2-py3-none-any.whl.

File metadata

File hashes

Hashes for membrane_curvature-1.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 887d70d73e26f0bcc9c5593b677f949b6fdecade97e49380a0d95b3610b6004f
MD5 ec4c41a6beb145e062094201f145173c
BLAKE2b-256 1980e78523d3b999c83af47bbcdea1c7faa46572c91e530c26c90bd4707992ed

See more details on using hashes here.

Provenance

The following attestation bundles were made for membrane_curvature-1.1.2-py3-none-any.whl:

Publisher: deploy.yaml on MDAnalysis/membrane-curvature

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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