Skip to main content

Analyse MD simulations of lipids with python

Project description

A Python toolkit for the analysis of lipid membrane simulations

lipyphilic is free software licensed under the GNU General Public License v2 or later (GPLv2+)

Overview

lipyphilic is a set of tools for analysing MD simulations of lipid bilayers. It is an object-oriented Python package built directly on top of MDAnalysis, and makes use of NumPy and SciPy for efficient computation. The analysis classes are designed with the same interface as those of MDAnalysis - so if you know how to use analysis modules in MDAnalysis then learning lipyphilic will be a breeze.

Analysis tools in lipyphilic include: identifying sterol flip-flop events, calculating domain registration over time, and calculating local lipid compositions. lipyphilic also has three on-the-fly trajectory transformations to i) fix membranes split across periodic boundaries and ii) perform nojump coordinate unwrapping and iii) convert triclinic coordinates to their orthorhombic representation.

These tools position lipyphilic as complementary to, rather than competing against, existing membrane analysis software such as MemSurfer and FatSlim.

Interactive tutorials

https://mybinder.org/badge_logo.svg

We recommend new users take a look out our interactive tutorials. These will show you how to get the most out of lipyphilic

Basic Usage

Alternatively, check out the Basic Usage example to see how to use lipyphilic, and see the Analysis tools section for detailed information and examples on each tool.

Installation

The easiest way to install lipyphilic along with its dependencies is through Conda:

conda config --add channels conda-forge
conda install lipyphilic

See the installation guide for futher information.

Citing

If you use lipyphilic in your research, please cite our paper:

@article{LiPyphilic2021,
    author = {Smith, Paul and Lorenz, Christian D.},
    title = {LiPyphilic: A Python Toolkit for the Analysis of Lipid Membrane Simulations},
    journal = {Journal of Chemical Theory and Computation},
    year = {2021},
    volume = {17},
    number = {9},
    pages = {5907-5919},
    doi = {10.1021/acs.jctc.1c00447}
}

Please also cite MDAnalysis, on which lipyphilic is built. If you use the Area Per Lipid tool please also cite Freud.

Full documentation

Head to lipyphilic.readthedocs.io, where you will find the full documentation of lipyphilic’s API as well as examples of how to use the analysis tools.

Acknowledgement

The respository structure of lipyphilic is based on the PyLibrary Cookeicutter template.

LiPyphilic CHANGELOG

0.10.0 (2021-12-29)

  • PR89 Delete temporary files created by tests

  • PR88 Use GitHub Actions for running tests rather than Travis.

  • PR#86 Add option to SCC.project_SCC to not unwrap lipids before calculating their center of masses

0.9.0 (2021-09-02)

  • PR#78 Min MDAnalysis version increased to 2.0

0.8.0 (2021-07-31)

  • PR#74 Add the triclinic_to_orthorhombic transformation in order to support analysis of triclinic systems

0.7.0 (2021-07-03)

  • PR#70 Remove support for Python 3.6

  • PR#69 Change MSD lagtimes to be in ns rather than ps. Fix nojump unwrapping for the first frame.

0.6.3 (2021-05-09)

  • PR#60 AssignLeaflets and AssignCurvedLeaflets inherit from shared leaflet analysis base class

  • PR#59 Ensure SCC.weighted_average can handle different sized sn1 and sn2 residue groups.

  • PR#56 Update docs

0.6.2 (2021-04-18)

  • PR#54 Fixed typos in docs

  • PR#53 Improved performance of lipyphilic.lib.flip_flop.FlipFlop

  • PR#52 Improved performance of lipyphilic.lib.neighbours.Neighbours (Fixes #51)

0.6.1 (2021-04-16)

  • PR#49 Add min_diff argument to transformations.center_membrane

  • PR#48 Add MDAnalysis badge to README and fix typos in the docs

  • PR#47 Fixed typos in docs

0.6.0 (2021-03-26)

  • PR#44 Refactor the Registration analysis to have a more useful API

  • PR#43 Add a method for calculating the lipid enrichment/depletion index

  • PR#42 Add a MSD and lateral diffusion analysis, as well as a transformation to perform “nojump” unwrapping.

  • PR#39 Add support for assigning lipids to leaflets of highly curved membranes

0.5.0 (2021-03-16)

  • PR#38 Add a trajectory transformation for unwrapping broken membranes (Fixes #37)

  • PR#36 Add method for projecting areas onto the membrane plane (Fixes #33)

  • PR#35 Added a tool for calculating membrane thickness (Fixes #34)

  • PR#32 ZThickness.average() now returns a new ZThickness object rather than a NumPy array

  • PR#31 SCC.weighted_average() now returns a new SCC object rather than a NumPy array

  • PR#30 Add class for plotting projections of membrane properties onto the xy plane.

  • PR#29 Added plotting of joint probability distributions or PMFs (Fixed #28).

0.4.0 (2021-03-05)

  • PR#26 Added a tool to calculate the thickness of lipids or their tails (Fixes #25)

  • PR#24 Added a tool to calculate the coarse-grained order parameter (Fixes #23)

  • PR#22 Added a tool to calculate orientation of lipids in a bilayer (Fixes #20)

  • PR#21 Added a tool to calculate lipid height in a bilayer (Fixes #19)

  • Better description of analysis tools in the docs

  • Updated installation instructions, including installing via conda-forge

0.3.2 (2021-02-27)

  • Fix typo in requirements

0.3.1 (2021-02-27)

  • Add support for numpy 1.20

0.3.0 (2021-02-26)

  • Fix neighbour calculation for non-sequential residue indices Fixes #11

  • Added a tool to calculate interleaflet registration

0.2.0 (2021-02-23)

  • Improved documentation

  • Add method to count number of each neighbour type

  • Add functionality to find neighbouring lipids

0.1.0 (2021-02-17)

  • Add functionality to find flip-flop events in bilayers

  • Add functionality to calculate area per lipid

  • Add functionality to find assign lipids to leaflets in a bilayer

0.0.0 (2021-02-08)

  • First release on PyPI.

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

lipyphilic-0.10.0.tar.gz (911.1 kB view hashes)

Uploaded Source

Built Distribution

lipyphilic-0.10.0-py3-none-any.whl (111.4 kB view hashes)

Uploaded Python 3

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