Gromacs  2026.0-dev-20250116-fa3fd9d
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Functions
anonymous_namespace{position_restraints.cpp} Namespace Reference

Functions

void posres_dx (const rvec x, const rvec pos0A, const rvec pos0B, const gmx::RVec &centerOfMassAScaled, const gmx::RVec &centerOfMassBScaled, real lambda, const t_pbc &pbc, RefCoordScaling refcoord_scaling, int npbcdim, rvec dx, rvec rdist, rvec dpdl)
 returns dx, rdist, and dpdl for functions posres() and fbposres()
 
real do_fbposres_cylinder (int fbdim, rvec fm, rvec dx, real rfb, real kk, gmx_bool bInvert)
 Computes forces and potential for flat-bottom cylindrical restraints. Returns the flat-bottom potential.
 
real fbposres (int nbonds, const t_iatom forceatoms[], const t_iparams forceparams[], const rvec x[], rvec4 *forces, gmx::RVec *virial, const t_pbc &pbc, RefCoordScaling refcoord_scaling, PbcType pbcType, const gmx::ArrayRef< const gmx::RVec > centersOfMass, const gmx::ArrayRef< const unsigned short > refScaleComIndices, gmx::ArrayRef< gmx::RVec > centersOfMassScaled)
 Compute energies and forces for flat-bottomed position restraints. More...
 
template<bool computeForce>
real posres (int nbonds, const t_iatom forceatoms[], const t_iparams forceparams[], const rvec x[], rvec4 *forces, gmx::RVec *virial, const struct t_pbc &pbc, real lambda, real *dvdlambda, RefCoordScaling refcoord_scaling, const gmx::ArrayRef< const gmx::RVec > centersOfMassA, const gmx::ArrayRef< const gmx::RVec > centersOfMassB, const gmx::ArrayRef< const unsigned short > refScaleComIndices, gmx::ArrayRef< gmx::RVec > centersOfMassAScaled, gmx::ArrayRef< gmx::RVec > centersOfMassBScaled)
 Compute energies and forces, when requested, for position restraints. More...
 

Function Documentation

real anonymous_namespace{position_restraints.cpp}::fbposres ( int  nbonds,
const t_iatom  forceatoms[],
const t_iparams  forceparams[],
const rvec  x[],
rvec4 *  forces,
gmx::RVec virial,
const t_pbc pbc,
RefCoordScaling  refcoord_scaling,
PbcType  pbcType,
const gmx::ArrayRef< const gmx::RVec centersOfMass,
const gmx::ArrayRef< const unsigned short >  refScaleComIndices,
gmx::ArrayRef< gmx::RVec centersOfMassScaled 
)

Compute energies and forces for flat-bottomed position restraints.

Returns the flat-bottomed potential. Same PBC treatment as in normal position restraints

template<bool computeForce>
real anonymous_namespace{position_restraints.cpp}::posres ( int  nbonds,
const t_iatom  forceatoms[],
const t_iparams  forceparams[],
const rvec  x[],
rvec4 *  forces,
gmx::RVec virial,
const struct t_pbc pbc,
real  lambda,
real dvdlambda,
RefCoordScaling  refcoord_scaling,
const gmx::ArrayRef< const gmx::RVec centersOfMassA,
const gmx::ArrayRef< const gmx::RVec centersOfMassB,
const gmx::ArrayRef< const unsigned short >  refScaleComIndices,
gmx::ArrayRef< gmx::RVec centersOfMassAScaled,
gmx::ArrayRef< gmx::RVec centersOfMassBScaled 
)

Compute energies and forces, when requested, for position restraints.

Note that position restraints require a different pbc treatment from other bondeds