mindspore.ops.PMEEnergy
- class mindspore.ops.PMEEnergy(atom_numbers, excluded_numbers, beta, fftx, ffty, fftz, box_length_0, box_length_1, box_length_2)[source]
Calculate the Coulumb energy of the system using 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.
\[E = sum_{ij} q_iq_j/r_{ij}\]- Parameters
atom_numbers (int32) – the number of atoms, n.
excluded_numbers (int32) – the length of excluded list, E.
beta (float32) – the PME beta parameter, determined by the non-bond cutoff value and simulation precision tolerance.
fftx (int32) – the number of points for Fourier transform in dimension X.
ffty (int32) – the number of points for Fourier transform in dimension Y.
fftz (int32) – the number of points for Fourier transform in dimension Z.
box_length_0 (float32) – the value of boxlength idx 0
box_length_1 (float32) – the value of boxlength idx 1
box_length_2 (float32) – the value of boxlength idx 2
- Inputs:
uint_crd (Tensor) - The unsigned int coordinates value of each atom. The data type is uint32 and the shape is \((n, 3)\)
charge (Tensor) - The charge carried by each atom. The data type is float32 and the shape is \((n,)\)
nl_numbers - (Tensor) - The each atom. The data type is int32 and the shape is \((n, 3)\)
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)\)
scaler (Tensor) - The scale factor between real space coordinates and its unsigned int value. The data type is float32 and the shape is \((3,)\)
excluded_list_start (Tensor) - The start excluded index in excluded list for each atom. The data type is int32 and the shape is \((n,)\)
excluded_list (Tensor) - The contiguous join of excluded list of each atom. E is the number of excluded atoms. The data type is int32 and the shape is \((E,)\)
excluded_atom_numbers (Tensor) - The number of atom excluded in excluded list for each atom. The data type is int32 and the shape is \((n,)\)
- Outputs:
reciprocal_ene (Tensor) - The reciprocal term of PME energy. The data type is float32 and the the shape is \((1,)\).
self_ene (Tensor) - The self term of PME energy. The data type is float32 and the the shape is \((1,)\).
direct_ene (Tensor) - The direct term of PME energy. The data type is float32 and the the shape is \((1,)\).
correction_ene (Tensor) - The correction term of PME energy. The data type is float32 and the the shape is \((1,)\).
- Supported Platforms:
GPU