4.4.2. 传单识别 MDAnalysis.analysis.leaflet
此模块实现了 LeafletFinder 算法,在中介绍 [Michaud-Agrawal2011]. 它可以识别任意形状和拓扑的双层中的脂质,包括周期性边界条件下的平面和波动双层或囊泡。
人们可以使用这些信息来识别
上半叶和下半叶 平面膜 通过比较
center_of_geometry()
传单组中,或一种植物的外叶和内叶 水泡 通过比较距几何中心的距离的直方图(或可能简单地
radius_of_gyration()
)。
参见中的示例脚本 MDAnalysisCookbook 关于如何使用 LeafletFinder
。该函数 optimize_cutoff()
实现一种(缓慢的)启发式方法来查找LeafletFinder算法的最佳切割点。
4.4.2.1. 算法
建立所有磷酸盐距离<截止日期的图表
找出最大的连通子图
分析对应于传单的第一和第二大图
有关更多详细信息,请参阅 [Michaud-Agrawal2011].
4.4.2.2. 类和函数
- class MDAnalysis.analysis.leaflet.LeafletFinder(universe, select, cutoff=15.0, pbc=False, sparse=None)[源代码]
识别脂类双层的同一叶中的原子。
此类实现了 LeafletFinder 演算法 [Michaud-Agrawal2011].
- 参数:
select (AtomGroup or str) -- 原子组实例或
Universe.select_atoms()
用于定义脂类头部基团的原子的选择字符串,例如宇宙原子.PO4或“名称PO4”或“名称P*”cutoff (float (optional)) -- 头基团-定义原子的距离为 cutoff 角被认为是在同一张传单中 [15.0]
pbc (bool (optional)) -- 考虑周期性边界条件 [
False
]sparse (bool (optional)) --
None
:使用尽可能快的动作;True
:使用缓慢的稀疏矩阵实现(用于大型系统);False
:使用FASTdistance_array()
实施 [None
] 。
示例
图表的组件存储在列表中
LeafletFinder.components
;每个成分中的原子连续编号,从0开始。要获得输入结构中的原子,请使用LeafletFinder.groups()
::u = mda.Universe(PDB) L = LeafletFinder(u, 'name P*') leaflet0 = L.groups(0) leaflet1 = L.groups(1)
残留物可通过标准的MDAnalysis机制获取:
leaflet0.residues
提供一个
ResidueGroup
举个例子。同样,第一张小叶中的所有原子都是::leaflet0.residues.atoms
在 1.0.0 版本发生变更: 变化 selection 关键字至 select
在 2.0.0 版本发生变更: 宇宙关键字不再接受非宇宙参数。请创建一个
Universe
第一。- group(component_index)[源代码]
返回一个
MDAnalysis.core.groups.AtomGroup
为 component_index 。
- groups(component_index=None)[源代码]
返回一个
MDAnalysis.core.groups.AtomGroup
为 component_index 。如果未提供参数,则返回所有单元组的列表。
- MDAnalysis.analysis.leaflet.optimize_cutoff(universe, select, dmin=10.0, dmax=20.0, step=0.5, max_imbalance=0.2, **kwargs)[源代码]
找到最大限度减少断开连接的组数的分界点。
应用启发式方法来寻找最佳群体:
至少两组(假设至少有两份传单)
拒绝以下任何解决方案:
\[{|N_0-N_1|}{|N_0+N_1|}>\mathm{最大不平衡}\]使用 \(N_i\) 为组内脂类的数量 \(i\) 。这种启发式方法选择类脂含量均衡的组。
- 参数:
universe (Universe) --
MDAnalysis.Universe
实例select (AtomGroup or str) -- 用于的原子组或选择字符串
LeafletFinder
dmin (float (optional)) --
dmax (float (optional)) --
step (float (optional)) -- 扫描截止点 dmin 至 dmax 按步长大小 step (以埃为单位)
max_imbalance (float (optional)) -- 平衡启发式的调整参数 [0.2]
kwargs (other keyword arguments) -- 其他论据
LeafletFinder
- 返回:
找到的最佳截止点和组数
- 返回类型:
(cutoff, N)
备注
如果确实找不到适当数量的组,该函数可能会以各种方式失效;应该使其更加健壮。
在 1.0.0 版本发生变更: 变化 selection 关键字至 select