sponge.function.calc_angle_pbc

查看源文件
sponge.function.calc_angle_pbc(position_a: Tensor, position_b: Tensor, position_c: Tensor, pbc_box: Tensor, keepdims: bool = False)[源代码]

计算周期性边界条件下三个空间位点A,B,C所形成的角度 ABC。输入A,B,C三点坐标与pbc_box,返回夹角 ABC 大小。

根据周期性边界条件下A,B,C三点坐标计算向量 BABC 的坐标,再计算两向量间夹角。

最后返回 BA 向量与 BC 向量间夹角。

参数:
  • position_a (Tensor) - 位置a,shape为 (B,...,D) ,数据类型为float。其中B为Batch size,D为模拟系统的维度, 一般为3。

  • position_b (Tensor) - 位置b,shape为 (B,...,D) ,数据类型为float。

  • position_c (Tensor) - 位置c,shape为 (B,...,D) ,数据类型为float。

  • pbc_box (Tensor) - PBC box,shape为 (B,D) ,数据类型为float。

  • keepdims (bool) - 如果设置为True,则在结果中,最后一个轴将保留为大小为1的维度。默认值: False

返回:

Tensor。计算所得角。shape为 (B,...,1) ,数据类型为float。

支持平台:

Ascend GPU