https://github.com/mdanalysis/membrane-curvature
MDAnalysis tool to calculate membrane curvature.
https://github.com/mdanalysis/membrane-curvature
mdanalysis molecular-dynamics-simulation python trajectory-analysis
Last synced: about 1 month ago
JSON representation
MDAnalysis tool to calculate membrane curvature.
- Host: GitHub
- URL: https://github.com/mdanalysis/membrane-curvature
- Owner: MDAnalysis
- License: gpl-3.0
- Created: 2021-05-26T19:45:01.000Z (about 5 years ago)
- Default Branch: main
- Last Pushed: 2024-08-20T13:19:35.000Z (almost 2 years ago)
- Last Synced: 2025-02-11T07:23:53.011Z (over 1 year ago)
- Topics: mdanalysis, molecular-dynamics-simulation, python, trajectory-analysis
- Language: Python
- Homepage: https://membrane-curvature.readthedocs.io/
- Size: 42.3 MB
- Stars: 31
- Watchers: 10
- Forks: 7
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.rst
- Contributing: .github/CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Citation: CITATION.cff
- Authors: AUTHORS
Awesome Lists containing this project
README
Membrane Curvature
==============================
[](https://www.mdanalysis.org)
[](https://github.com/MDAnalysis/membrane-curvature/actions?query=workflow%3ACI)
[](https://codecov.io/gh/MDAnalysis/membrane-curvature/branch/main)
[](https://membrane-curvature.readthedocs.io/en/latest/)


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:
```Python
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][GSoC]
project with [MDAnalysis] and it is linked to a [Code of Conduct][code_of_conduct].
[GSoC]: https://summerofcode.withgoogle.com/
[MDAnalysis]: https://www.mdanalysis.org
[NumPy]: https://numpy.org
[SciPy]: https://www.scipy.org
[code_of_conduct]: https://www.mdanalysis.org/conduct/
[Usage]: https://membrane-curvature.readthedocs.io/en/latest/source/pages/Usage.html
[License]: https://github.com/MDAnalysis/membrane-curvature/blob/main/LICENSE
[documentation]: https://membrane-curvature.readthedocs.io/en/latest/index.html#
[Visualization]: https://membrane-curvature.readthedocs.io/en/latest/source/pages/Visualization.html
[Algorithm]: https://membrane-curvature.readthedocs.io/en/latest/source/pages/Algorithm.html
[API]: https://membrane-curvature.readthedocs.io/en/latest/api/membrane_curvature.html
[MDAnalysisTests]: https://github.com/MDAnalysis/mdanalysis/wiki/UnitTests
[UserGuide]: https://userguide.mdanalysis.org/2.0.0-dev0/installation.html