sponge.function.calc_distance_pbc
- sponge.function.calc_distance_pbc(position_a: Tensor, position_b: Tensor, pbc_box: Tensor = None, keepdims: bool = False)[源代码]
在有周期性边界条件的情况下计算位置A和B之间的距离,需要转化为同一个 pbc_box 内坐标计算 A 和B 的距离
- 参数:
position_a (Tensor) - 位置A的坐标,shape为 \((..., D)\),D是模拟系统的空间维度, 一般为3。
position_b (Tensor) - 位置B的坐标,shape为 \((..., D)\)。
pbc_box (Tensor) - 周期性盒子,shape为 \((D)\) 或 \((B, D)\),B是Batch size。
keepdims (bool) - 设置为
True
的时候,最后一个维度会保留,默认值False
。
- 返回:
Tensor。A和B之间的距离。shape为 \((...)\) 或 \((..., 1)\)。
- 支持平台:
Ascend
GPU