Gromacs  2026.0-dev-20241212-74b8831
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Functions
position_restraints.h File Reference
#include <cstdio>
#include "gromacs/math/vectypes.h"
#include "gromacs/topology/ifunc.h"
#include "gromacs/utility/arrayref.h"
#include "gromacs/utility/real.h"
+ Include dependency graph for position_restraints.h:
+ This graph shows which files directly or indirectly include this file:

Description

This file contains declarations necessary for low-level functions for computing energies and forces for position restraints.

Author
Mark Abraham mark..nosp@m.j.ab.nosp@m.raham.nosp@m.@gma.nosp@m.il.co.nosp@m.m

Functions

real posres_wrapper (gmx::ArrayRef< const int > iatoms, gmx::ArrayRef< const t_iparams > iparamsPosres, const t_pbc &pbc, const rvec *x, gmx::ArrayRef< const real > lambda, const t_forcerec *fr, const gmx::ArrayRef< const unsigned short > refScaleComIndices, gmx::ArrayRef< gmx::RVec > centersOfMassScaledBuffer, gmx::ArrayRef< gmx::RVec > centersOfMassBScaledBuffer, gmx::ArrayRef< rvec4 > forces, gmx::RVec *virial, real *dvdl)
 Helper function that wraps calls to posres. More...
 
void posres_wrapper_lambda (struct gmx_wallcycle *wcycle, const InteractionDefinitions &idef, const t_pbc &pbc, const rvec x[], gmx_enerdata_t *enerd, gmx::ArrayRef< const real > lambda, const t_forcerec *fr, const gmx::ArrayRef< const unsigned short > refScaleComIndices, gmx::ArrayRef< gmx::RVec > centersOfMassScaledBuffer, gmx::ArrayRef< gmx::RVec > centersOfMassBScaledBuffer)
 Helper function that wraps calls to posres for free-energy pertubation.
 
real fbposres_wrapper (gmx::ArrayRef< const int > iatoms, gmx::ArrayRef< const t_iparams > iparamsFBPosres, const t_pbc &pbc, const rvec *x, const t_forcerec *fr, const gmx::ArrayRef< const unsigned short > refScaleComIndices, gmx::ArrayRef< gmx::RVec > centersOfMassScaledBuffer, gmx::ArrayRef< rvec4 > forces, gmx::RVec *virial)
 Helper function that wraps calls to fbposres for free-energy perturbation. More...
 

Function Documentation

real fbposres_wrapper ( gmx::ArrayRef< const int >  iatoms,
gmx::ArrayRef< const t_iparams iparamsFBPosres,
const t_pbc pbc,
const rvec x,
const t_forcerec *  fr,
const gmx::ArrayRef< const unsigned short >  refScaleComIndices,
gmx::ArrayRef< gmx::RVec centersOfMassScaledBuffer,
gmx::ArrayRef< rvec4 >  forces,
gmx::RVec virial 
)

Helper function that wraps calls to fbposres for free-energy perturbation.

Returns
the potential
real posres_wrapper ( gmx::ArrayRef< const int >  iatoms,
gmx::ArrayRef< const t_iparams iparamsPosres,
const t_pbc pbc,
const rvec x,
gmx::ArrayRef< const real lambda,
const t_forcerec *  fr,
const gmx::ArrayRef< const unsigned short >  refScaleComIndices,
gmx::ArrayRef< gmx::RVec centersOfMassScaledBuffer,
gmx::ArrayRef< gmx::RVec centersOfMassBScaledBuffer,
gmx::ArrayRef< rvec4 >  forces,
gmx::RVec virial,
real dvdl 
)

Helper function that wraps calls to posres.

Returns
the potential