Lipid APL

Classes

lipyds.analysis.apl.lipid_area(headgroup_coordinate: Union[int, float, complex, str, bytes, numpy.generic, Sequence[Union[int, float, complex, str, bytes, numpy.generic]], Sequence[Sequence[Any]], numpy.typing._array_like._SupportsArray], neighbor_coordinates: Union[int, float, complex, str, bytes, numpy.generic, Sequence[Union[int, float, complex, str, bytes, numpy.generic]], Sequence[Sequence[Any]], numpy.typing._array_like._SupportsArray], other_coordinates: Optional[Union[int, float, complex, str, bytes, numpy.generic, Sequence[Union[int, float, complex, str, bytes, numpy.generic]], Sequence[Sequence[Any]], numpy.typing._array_like._SupportsArray]] = None, box: Optional[Union[int, float, complex, str, bytes, numpy.generic, Sequence[Union[int, float, complex, str, bytes, numpy.generic]], Sequence[Sequence[Any]], numpy.typing._array_like._SupportsArray]] = None, plot: bool = False)float[source]

Calculate the area of a lipid by projecting it onto a plane with neighboring coordinates and creating a Voronoi diagram.

Parameters
  • headgroup_coordinate (numpy.ndarray) – Coordinate array of shape (3,) or (n, 3) of the central lipid

  • neighbor_coordinates (numpy.ndarray) – Coordinate array of shape (n, 3) of neighboring lipids to the central lipid. These coordinates are used to construct the plane of best fit.

  • other_coordinates (numpy.ndarray (optional)) – Coordinate array of shape (n, 3) of neighboring atoms to the central lipid. These coordinates are not used to construct the plane of best fit, but are projected onto it.

  • box (numpy.ndarray (optional)) – Box of minimum cell, used for unwrapping coordinates.

  • plot (bool (optional)) – Whether to plot the resulting Voronoi diagram.

Returns

area – Area of the central lipid

Return type

float

Raises

ValueError – If a Voronoi cell cannot be constructed for the central lipid, usually because too few neighboring lipids have been given.

class lipyds.analysis.apl.AreaPerLipid(universe: Union[MDAnalysis.core.groups.AtomGroup, MDAnalysis.core.universe.Universe], cutoff: float = 50, cutoff_other: Optional[float] = 15, select_other: Optional[str] = 'protein', max_neighbors: int = 100, **kwargs)[source]

Calculate the area of each lipid by projecting it onto a plane with neighboring coordinates and creating a Voronoi diagram.

Parameters
  • universe (AtomGroup or Universe) – Universe or AtomGroup to operate on.

  • select (str (optional)) – A Universe.select_atoms() selection string for atoms that define the lipid head groups, e.g. “name PO4” or “name P*”

  • select_other (str (optional)) – A Universe.select_atoms() selection string for atoms that should be incorporated in the area calculation but that you do not want to calculat areas for.

  • cutoff (float (optional)) – Cutoff distance (ångström) to look for neighbors

  • cutoff_other (float (optional)) – Cutoff distance (ångström) to look for neighbors in the other selection. This is generally shorter than cutoff – e.g. you may look for only lipid headgroups in select, but all protein atoms in select_other.

  • max_neighbors (int (optional)) – Maximum neighbors to consider for area calculation. Past 40 the area tends to converge, and the lower the number of neighbors, the more efficient the calculation.

  • **kwargs – Passed to LeafletAnalysisBase