mindspore.ops.Dihedral14ForceWithAtomEnergyVirial

class mindspore.ops.Dihedral14ForceWithAtomEnergyVirial(nb14_numbers, atom_numbers)[source]

Calculate the Lennard-Jones and Coulumb energy correction and force correction for each necessary dihedral 1,4 terms together and add them to the total force and potential energy for each atom.

The calculation formula of force correction is the same as operator Dihedral14LJForceWithDirectCF, and the energy correction part is the same as operator Dihedral14LJEnergy and Dihedral14CFEnergy.

Warning

This is an experimental prototype that is subject to change and/or deletion.

Parameters
  • nb14_numbers (int32) – the number of necessary dihedral 1,4 terms m.

  • atom_numbers (int32) – the number of atoms n.

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

  • LJtype (Tensor) - The Lennard-Jones type of each atom. The data type is int32 and the shape is \((n,)\).

  • charge (Tensor) - The charge carried by each atom. The data type is float32 and the shape is \((n,)\).

  • boxlength (Tensor) - The length of molecular simulation box in 3 dimensions. The data type is float32 and the shape is \((3,)\).

  • a_14 (Tensor) - The first atom index of each dihedral 1,4 term. The data type is int32 and the shape is \((m,)\).

  • b_14 (Tensor) - The second atom index of each dihedral 1,4 term. The data type is int32 and the shape is \((m,)\).

  • lj_scale_factor (Tensor) - The scale factor for the Lennard-Jones part of force correction of each dihedral 1,4 term.

  • cf_scale_factor (Tensor) - The scale factor for the Coulomb force. The data type is float32 and the shape is \((m,)\).

  • LJ_type_A (Tensor) - The A parameter in Lennard-Jones scheme of each atom pair type. The number of atom pair is q. The data type is float32 and the shape is \((q,)\).

  • LJ_type_B (Tensor) - The B parameter in Lennard-Jones shceme of each atom pair type. The number of atom pair is q. The data type is float32 and the shape is \((q,)\).

Outputs:
  • frc (Tensor) - The force felt by each atom. The data type is float32 and the shape is \((n, 3)\).

  • atom_energy (Tensor) - The accumulated potential energy for each atom. The data type is float32 and the shape is \((n, )\).

  • atom_virial (Tensor) - The accumulated potential virial for each atom. The data type is float32 and the shape is \((n, )\).

Supported Platforms:

GPU