13. 库函数 MDAnalysis.lib
MDAnalysis.lib
包含独立于特定MDAnalysis框架的代码,例如用于距离的快速计算器或简单的日志记录支持。模块不依赖MDAnalysis中的其他代码,但在 MDAnalysis.lib
本身(也可能在 MDAnalysis.exceptions
),因此可以很容易地进口到其他地方。
13.1. 概述
MDAnalysis.lib.distances
包含许多高性能的数学函数。他们中的大多数都有关键词 后端 它允许用户选择序列(单线程)代码 (backend="serial
)或使用并行化版本(例如 backend="OpenMP"
用于OpenMP并行性)。
MDAnalysis.lib.transformations
包含大量用于操作坐标数据的矩阵运算。
MDAnalysis.lib.qcprot
包含通过最小化RMSD实现叠加的快速实现。
MDAnalysis.lib.util
包含各种文件和字符串实用程序函数,而数学函数位于 MDAnalysis.lib.mdamath
。
许多模块都与查找邻居有关。 MDAnalysis.lib.NeighborSearch
包含使用MDAnalysis对象执行邻居搜索的高级类。 MDAnalysis.lib.nsgrid
包含网格邻居搜索的快速实现,而 MDAnalysis.lib.pkdtree
使用KDTrees(带有周期图像)进行邻居搜索。中的一些函数 MDAnalysis.lib.distances
使用这两种算法中的任何一种来加快距离计算。
13.2. 模块列表
- 13.2.1. 快速距离数组计算
MDAnalysis.lib.distances
- 13.2.2. 用于的低级模块
MDAnalysis.lib.distances
- 13.2.3. MDAnalysis的邻居搜索包装器
MDAnalysis.lib.NeighborSearch
- 13.2.4. 邻居搜索库
MDAnalysis.lib.nsgrid
- 13.2.5. 周期KDTree
MDAnalysis.lib.pkdtree
- 13.2.6. 设置日志记录
MDAnalysis.lib.log
- 13.2.7. 数学辅助函数
MDAnalysis.lib.mdamath
- 13.2.8. 齐次变换矩阵和四元数
MDAnalysis.lib.transformations
- 13.2.9. 快速QCP RMSD结构对准
MDAnalysis.lib.qcprot
- 13.2.10. 助手函数
MDAnalysis.lib.util
- 13.2.11. 关联实用程序
MDAnalysis.lib.correlations
- 13.2.12. 自相关函数
- 13.2.13. 间歇函数
- 13.2.14. 可选只读I/O类
MDAnalysis.lib.picklable_file_io
13.3. 低级文件格式
中的模块 MDAnalysis.lib.formats
包含以某种方式访问各种文件格式的代码 独立于其他MDAnalysis功能 (即,它们不使用来自 MDAnalysis.core
或 MDAnalysis.topology
)。此低级代码用于 MDAnalysis.coordinates
模块,但也可以由其他基于Python的项目重复使用。
13.4. Libmd分析
这个 __init__.pxd
文件放入 MDAnalysis.lib.libmdanalysis
提供了一个单一的位置来 cimport
MDAnalysis的公共Cython头。建议仅对高级开发人员执行此操作。
例如,假设我们正在编写一个Cython扩展模块 MDAnalysis.lib
我们想要创建一个函数来创建一个 MDAnalysis.coordinates.timestep.Timestep
from MDAnalysis.lib.libmdanalysis cimport timestep
# or we could use the relative cimport
# from .libmdanalysis cimport timestep
cdef timestep.Timestep make_timestep(int natoms):
cdef timestep.Timestep ts = timestep.Timestep(natoms)
return ts
目前公开为公共Cython头的模块有:
有关更多详细信息,请咨询来源 MDAnalysis.lib.libmdanalysis.__init__.pxd