{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Welcome to the LiPyphilic tutorials!" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**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](https://www.mdanalysis.org/), and makes use of [NumPy](https://numpy.org/) and [SciPy](https://www.scipy.org/) for efficient computation.\n", "\n", "The analysis tools are designed with the same interface as those of MDAnalysis - so if you know how to\n", "[use analysis modules in MDAnalysis](https://userguide.mdanalysis.org/stable/examples/quickstart.html#Analysis) then learning **lipyphilic**\n", "will be a breeze." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Why LiPyphilic?\n", "- **Simple to [install](https://lipyphilic.readthedocs.io/en/latest/installation.html)**, fully-tested, and fast!\n", "- **Membrane analysis tools not available in other packages**, such as identifying sterol flip-flop events, calculating domain registration over time, and calculating local lipid compositions.\n", "- **Plotting utilities** to create two-dimensional \"membrane maps\" of properties projected onto the membrane surface, as well as to create two-dimensional PMFs of sterol orientation and height.\n", "- **On-the-fly transformations** to perform \"no-jump\" unwrapping or unwrap a bilayer \n", "- **Interoperabilty with the scientific Python stack**. Analysis tools in LiPyphilic can take NumPy arrays as input and store the reuslts as NumPy arrays, Scipy sparse matrices, or Pandas DataFrames. Most results will be stored in a two-dimensional NumPy array of size ($N_{\\rm lipids}, N_{\\rm frames}$).\n", "\n", "
\n", "
\n", "\n", "
\n", "
\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Tutorial notebooks:\n", "- [Assign lipids to leaflets](2-AssignLeaflets.ipynb): Illustrates basic usage of LiPyphilic, including how to store results for later usage. Also shows how to assign lipids to leaflets, which is required for many other analyses.\n", "\n", "- [Flip-flop rate](3-FlipFlop.ipynb): Shows how to use LiPyphilic to calculate the rate of cholesterol flip-flop, as well as identify the frames at which each flip-flop event begins and ends.\n", "\n", "- [Local lipid environments](4-NeighbourCounts.ipynb): Illustrates how to determine the local lipid environment of each lipid over time, as well as the enrichment/depletion index.\n", "\n", "- [Lipid domains](5-NeighbourClusters.ipynb): Shows how to calculate the largest cluster of specific lipids over time. Examples include finding the largest ganglioside cluster in a neuronal plasma membrane and identifying the largest domain of $L_o$ lipids in a phase separated membrane.\n", "\n", "- [Interleaflet registration](6-Registration.ipynb): This notebook shows how to calculate the interleaflet registration over time. The example shows how to calculate the registration of $L_o$ lipids across leaflets.\n", "\n", "- [Lateral diffusion](7-MSD.ipynb): Illustrates how to perform \"nojump\" trajectory unwrapping with LiPyphilic, then use the unwrapped coordinates to calculate the mean-squared displacement and lateral diffusion coefficient of lipids in a membrane.\n", "\n", "- [Coarse-grained lipid order parameter](8-SCC.ipynb): Shows how to calculate the coarse-grained order parameter, and how to create a two-dimensional proection of these values onto the membrane plane.\n", "\n", "- [Projection plots](9-ProjectionPlot.ipynb): Shows how to create two-dimensional projections of arbitrary lipid properties onto the membrane plane. Examples include projecting local membrane thicknesses calculated using [FATSLiM](http://fatslim.github.io/) onto the membrane plane, and projecting the ordered state ($\\rm L_o$ and $\\rm L_d$) of lipids onto the membrane plane.\n", "\n", "- [Potential of mean force (PMF)](10-PMFs.ipynb): This notebook illustrates how to use LiPyphilic to calculate the height and orientation of sterols in a membrane, and subsequently plot the two-dimensional PMF of sterol height and orientation.\n", "\n", "- [Hidden Markov Models](HiddenMarkovModel.ipynb): Learn how to use the output of LiPyphilic to construct Hidden Markov Models (HMM) with [HMMLearn](https://hmmlearn.readthedocs.io/en/latest/). Here we will create a HMM based on lipid thicknesses to detect $\\rm L_o$ and $\\rm L_d$ lipids in a phase separated membrane. The output from this is can be used as input to other analyses in LiPyphilic, such as calculating [interleaflet registration](6-Registration.ipynb) or [local lipid environments](4-NeighbourCounts.ipynb).\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python [conda env:lpp-tutorials]", "language": "python", "name": "conda-env-lpp-tutorials-py" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.11.4" }, "widgets": { "application/vnd.jupyter.widget-state+json": { "state": {}, "version_major": 2, "version_minor": 0 } } }, "nbformat": 4, "nbformat_minor": 4 }