mindspore.ops.LJForceWithPMEDirectForce

class mindspore.ops.LJForceWithPMEDirectForce(atom_numbers, cutoff, pme_beta)[source]

Calculate the Lennard-Jones force and PME direct force together.

The calculation formula of Lennard-Jones part is the same as operator LJForce(), and the PME direct part is within PME method.

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
  • atom_numbers (int32) – the number of atoms, n.

  • cutoff_square (float32) – the square value of cutoff.

  • pme_beta (float32) – PME beta parameter, same as operator PMEReciprocalForce().

Inputs:
  • uint_crd (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,)\).

  • scaler (Tensor) - The scale factor between real space coordinate and its unsigned int value. The data type is float32 and the shape is \((3,)\).

  • nl_numbers - (Tensor) - The each atom. The data type is int32 and the shape is \((n,)\).

  • nl_serial - (Tensor) - The neighbor list of each atom, the max number is 800. The data type is int32 and the shape is \((n, 800)\).

  • d_LJ_A (Tensor) - The Lennard-Jones A coefficient of each kind of atom pair. q is the number of atom pair. The data type is float32 and the shape is \((q,)\).

  • d_LJ_B (Tensor) - The Lennard-Jones B coefficient of each kind of atom pair. q is the number of atom pair. 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)\).

Supported Platforms:

GPU