Function DP_DeepPotModelDeviComputeNList2

Function Documentation

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

Evaluate the energy, force and virial by using a DP model deviation with neighbor list. (double 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.