Gromacs
2021.6
|
Typedefs | |
using | BondedFunction = real(*)(int nbonds, const t_iatom iatoms[], const t_iparams iparams[], const rvec x[], rvec4 f[], rvec fshift[], const t_pbc *pbc, real lambda, real *dvdlambda, const t_mdatoms *md, t_fcdata *fcd, int *ddgatindex) |
Type of CPU function to compute a bonded interaction. | |
Functions | |
int | pbc_rvec_sub (const t_pbc *pbc, const rvec xi, const rvec xj, rvec dx) |
Compute dx = xi - xj, modulo PBC if non-NULL. More... | |
template<BondedKernelFlavor flavor> | |
void | spreadBondForces (const real bondForce, const rvec dx, const int ai, const int aj, rvec4 *f, int shiftIndex, rvec *fshift) |
Spreads and accumulates the bonded forces to the two atoms and adds the virial contribution when needed. More... | |
template<BondedKernelFlavor flavor> | |
real | morse_bonds (int nbonds, const t_iatom forceatoms[], const t_iparams forceparams[], const rvec x[], rvec4 f[], rvec fshift[], const t_pbc *pbc, real lambda, real *dvdlambda, const t_mdatoms *md, t_fcdata *fcd, int *global_atom_index) |
Morse potential bond. More... | |
int | cmap_setup_grid_index (int ip, int grid_spacing, int *ipm1, int *ipp1, int *ipp2) |
Mysterious undocumented function. | |
Variables | |
const int | cmap_coeff_matrix [] |
Mysterious CMAP coefficient matrix. More... | |
real anonymous_namespace{bonded.cpp}::morse_bonds | ( | int | nbonds, |
const t_iatom | forceatoms[], | ||
const t_iparams | forceparams[], | ||
const rvec | x[], | ||
rvec4 | f[], | ||
rvec | fshift[], | ||
const t_pbc * | pbc, | ||
real | lambda, | ||
real * | dvdlambda, | ||
const t_mdatoms * | md, | ||
t_fcdata * | fcd, | ||
int * | global_atom_index | ||
) |
Morse potential bond.
By Frank Everdij. Three parameters needed:
b0 = equilibrium distance in nm be = beta in nm^-1 (actually, it's nu_e*Sqrt(2*pi*pi*mu/D_e)) cb = well depth in kJ/mol
Note: the potential is referenced to be +cb at infinite separation and zero at the equilibrium distance!
int anonymous_namespace{bonded.cpp}::pbc_rvec_sub | ( | const t_pbc * | pbc, |
const rvec | xi, | ||
const rvec | xj, | ||
rvec | dx | ||
) |
Compute dx = xi - xj, modulo PBC if non-NULL.
|
inline |
Spreads and accumulates the bonded forces to the two atoms and adds the virial contribution when needed.
shiftIndex
is used as the periodic shift.
const int anonymous_namespace{bonded.cpp}::cmap_coeff_matrix[] |
Mysterious CMAP coefficient matrix.