Function DP_DeepPotModelDeviComputeNListf2

Function Documentation

void DP_DeepPotModelDeviComputeNListf2(DP_DeepPotModelDevi *dp, const int nframes, const int natoms, const float *coord, const int *atype, const float *cell, const int nghost, const DP_Nlist *nlist, const int ago, const float *fparam, const float *aparam, double *energy, float *force, float *virial, float *atomic_energy, float *atomic_virial)

Evaluate the energy, force and virial by using a DP model deviation with neighbor list. (float version)

Version

2

Warning

The output arrays should be allocated before calling this function. Pass NULL if not required.

Parameters
  • dp[in] The DP model deviation to use.

  • nframes[in] The number of frames. Only support 1 for now.

  • natoms[in] The number of atoms.

  • coord[in] The coordinates of atoms. The array should be of size natoms x 3.

  • atype[in] The atom types. The array should contain natoms ints.

  • box[in] The cell of the region. The array should be of size 9. Pass NULL if pbc is not used.

  • nghost[in] The number of ghost atoms.

  • nlist[in] The neighbor list.

  • ago[in] Update the internal neighbour list if ago is 0.

  • fparam[in] The frame parameters. The array can be of size nframes x dim_fparam.

  • aparam[in] The atom parameters. The array can be of size nframes x natoms x dim_aparam.

  • energy[out] Output energy.

  • force[out] Output force. The array should be of size natoms x 3.

  • virial[out] Output virial. The array should be of size 9.

  • atomic_energy[out] Output atomic energy. The array should be of size natoms.

  • atomic_virial[out] Output atomic virial. The array should be of size natoms x 9.