Membrane Curvature
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.
Metadata
Release files for membrane-curvature 1.1.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| membrane_curvature-1.1.2.tar.gz | 4.2 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| membrane_curvature-1.1.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 8.5 MB
Release files / membrane_curvature-1.1.2.tar.gz
| Download URL | membrane_curvature-1.1.2.tar.gz |
|---|---|
| Size | 4.2 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
6b5775e53a69689d222b373353909bcd2625ef4a1090a1b5c34ca14943d8516b
|
|
BLAKE2b-256 checksum How to use checksums |
945389268f2afff180c0b2a7a96f1931aa89062b20b71e94b36a9a35e1246f13
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 25, 2026.
Transparency logRelease files / membrane_curvature-1.1.2-py3-none-any.whl
| Download URL | membrane_curvature-1.1.2-py3-none-any.whl |
|---|---|
| Size | 4.2 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
887d70d73e26f0bcc9c5593b677f949b6fdecade97e49380a0d95b3610b6004f
|
|
BLAKE2b-256 checksum How to use checksums |
1980e78523d3b999c83af47bbcdea1c7faa46572c91e530c26c90bd4707992ed
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 25, 2026.
Transparency log