8.6.5. 展开/展开变换 MDAnalysis.transformations.wrap

在单元格中包装/展开给定原子组的原子。 wrap() 将原子平移回单元格。 unwrap() 平移每个分子的原子,这样带子就不会在图像上分裂。

class MDAnalysis.transformations.wrap.wrap(ag, compound='atoms', max_threads=None, parallelizable=True)[源代码]

将给定原子组的内容移回单位单元格。**

+-----------+          +-----------+
|           |          |           |
|         3 | 6        | 6       3 |
|         ! | !        | !       ! |
|       1-2-|-5-8  ->  |-5-8   1-2-|
|         ! | !        | !       ! |
|         4 | 7        | 7       4 |
|           |          |           |
+-----------+          +-----------+

示例

ag = u.atoms
transform = mda.transformations.wrap(ag)
u.trajectory.add_transformations(transform)
参数:
  • ag (Atomgroup) -- 单胞中包裹的原子基团

  • compound ({'atoms', 'group', 'residues', 'segments', 'fragments'}, optional) -- 在转移过程中将保持在一起的群体。

备注

在指定 compound ,平移是基于每个化合物来计算的。同样的平移适用于该化合物中的所有原子,这意味着它不会被位移打破。然而,这可能意味着不是所有化合物的原子都在单胞内,而是化合物的中心在单胞内。

返回类型:

MDAnalysis.coordinates.timestep.Timestep

在 2.0.0 版本发生变更: 转换已从函数/闭包更改为具有 __call__

在 2.0.0 版本发生变更: 转换已更改为从基类继承,以限制线程并检查它是否可用于并行分析。

参数:
  • max_threads (int, optional) -- 可以使用最大线程数。默认值为 None ,表示默认设置或外部设置。

  • parallelizable (bool, optional) -- 检查这是否可以用于拆分-应用-合并并行分析方法。默认值为 True

class MDAnalysis.transformations.wrap.unwrap(ag, max_threads=None, parallelizable=True)[源代码]

移动原子组中的所有原子,这样键就不会在图像上分裂

原子位置被就地修改。

当原子被填充到初级单胞中,导致分子中间断裂时,这种功能最有用,然后分子出现在单胞的两边。这对于计算分子的质心等操作是有问题的。**

+-----------+     +-----------+
|           |     |           |
| 6       3 |     |         3 | 6
| !       ! |     |         ! | !
|-5-8   1-2-| ->  |       1-2-|-5-8
| !       ! |     |         ! | !
| 7       4 |     |         4 | 7
|           |     |           |
+-----------+     +-----------+

示例

ag = u.atoms
transform = mda.transformations.unwrap(ag)
u.trajectory.add_transformations(transform)
参数:

atomgroup (AtomGroup) -- 这个 MDAnalysis.core.groups.AtomGroup 一起工作。这个位置被适当地修改了。

返回类型:

MDAnalysis.coordinates.timestep.Timestep

在 2.0.0 版本发生变更: 转换已从函数/闭包更改为具有 __call__

在 2.0.0 版本发生变更: 转换已更改为从基类继承,以限制线程并检查它是否可用于并行分析。

参数:
  • max_threads (int, optional) -- 可以使用最大线程数。默认值为 None ,表示默认设置或外部设置。

  • parallelizable (bool, optional) -- 检查这是否可以用于拆分-应用-合并并行分析方法。默认值为 True