# 9. Library functions — MDAnalysis.lib¶

MDAnalysis.lib contains code that is independent of the specific MDAnalysis framework, such as fast calculators for distances or simple logging support. Modules do not depend on other code inside MDAnalysis except in MDAnalysis.lib itself (and possibly in MDAnalysis.exceptions) and thus can be easily imported elsewhere.

## 9.1. Overview¶

MDAnalysis.lib.distances contains many high performance maths functions. Most of them have the keyword backend that allows one to either select serial (single threaded) code (backend="serial) or to use parallelized versions (e.g. backend="OpenMP" for OpenMP parallelism).

MDAnalysis.lib.transformations contains a multitude of matrix operations for manipulating coordinate data.

MDAnalysis.lib.qcprot contains a fast implementation of superposition by minimizing the RMSD.

MDAnalysis.lib.util contains various file and string utility functions whereas mathematical functions are to be found in MDAnalysis.lib.mdamath.

MDAnalysis.lib.NeighborSearch contains classes to do neighbor searches with MDAnalysis objects.