mindspore.ops.DihedralEnergy

class mindspore.ops.DihedralEnergy(dihedral_numbers)[source]

Calculate the potential energy caused by dihedral terms for each 4-atom pair. Assume our system has n atoms and m dihedral terms.

Because there is a large amount of inputs and each of them are related, there is no way to construct Examples using random methods. For details, refer the webpage SPONGE in MindSpore.

Parameters

dihedral_numbers (int32) – the number of dihedral terms m.

Inputs:
  • uint_crd_f (Tensor) - The unsigned int coordinates value of each atom. The data type is uint32 and the shape is \((n, 3)\).

  • scaler_f (Tensor) - The 3-D scale factor between the real space float coordinates and the unsigned int coordinates. The data type is float32 and the shape is \((3,)\).

  • atom_a (Tensor) - The 1st atom index of each dihedral. The data type is int32 and the shape is \((m,)\).

  • atom_b (Tensor) - The 2nd atom index of each dihedral. The data type is int32 and the shape is \((m,)\).

  • atom_c (Tensor) - The 3rd atom index of each dihedral. The data type is int32 and the shape is \((m,)\).

  • atom_d (Tensor) - The 4th atom index of each dihedral. 4 atoms are connected in the form a-b-c-d. The data type is int32 and the shape is \((m,)\).

  • ipn (Tensor) - The period of dihedral angle of each dihedral. The data type is int32 and the shape is \((m,)\).

  • pk (Tensor) - The force constant of each dihedral. The data type is int32 and the shape is \((m,)\).

  • gamc (Tensor) - k*cos(phi_0) of each dihedral. The data type is float32 and the shape is \((m,)\).

  • gams (Tensor) - k*sin(phi_0) of each dihedral. The data type is float32 and the shape is \((m,)\).

  • pn (Tensor) - The floating point form of ipn. The data type is float32 and the shape is \((m,)\).

Outputs:
  • ene (Tensor) - The potential energy for each dihedral term. The data type is float32 and the shape is \((m,)\).

Supported Platforms:

GPU