mindspore.ops.LJEnergy
- class mindspore.ops.LJEnergy(*args, **kwargs)[source]
Calculate the Van der Waals interaction energy described by Lennard-Jones potential for each atom. Assume the number of atoms is n, and the number of Lennard-Jones types for all atoms is P, which means there will be q = P*(P+1)/2 types of possible Lennard-Jones interactions for all kinds of atom pairs.
\[dr = (x_a-x_b, y_a-y_b, z_a-z_b)\]\[E = A/|dr|^{12} - B/|dr|^{6}\]- Agrs:
atom_numbers(int32): the number of atoms, n. cutoff_square(float32): the square value of cutoff.
- Inputs:
uint_crd (Tensor, uint32) - [n, 3], the unsigned int coordinate value of each atom.
LJtype (Tensor, int32) - [n,], the Lennard-Jones type of each atom.
charge (Tensor, float32) - [n,], the charge carried by each atom.
scaler (Tensor, float32) - [3,], the scale factor between real space coordinate and its unsigned int value.
nl_numbers - (Tensor, int32) - [n,], the each atom.
nl_serial - (Tensor, int32) - [n, 800], the neighbor list of each atom, the max number is 800.
d_LJ_A (Tensor, float32) - [q,], the Lennard-Jones A coefficient of each kind of atom pair. q is the number of atom pair.
d_LJ_B (Tensor, float32) - [q,], the Lennard-Jones B coefficient of each kind of atom pair. q is the number of atom pair.
- Outputs:
d_LJ_energy_atom (Tensor, float32) - [n,], the Lennard-Jones potential energy of each atom.
d_LJ_energy_sum (float32), the sum of Lennard-Jones potential energy of each atom.
- Supported Platforms:
GPU