Gromacs  2021.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Enumerations | Functions
#include <cstdio>
#include "gromacs/topology/ifunc.h"
#include "gromacs/utility/basedefinitions.h"
#include "gromacs/utility/gmxmpi.h"
+ Include dependency graph for disre.h:
+ This graph shows which files directly or indirectly include this file:


Declares functions for handling distance restraints.


enum  DisResRunMode { MDRun, AnalysisTool }
 Whether distance restraints are called from mdrun or from an analysis tool.


void init_disres (FILE *fplog, const gmx_mtop_t *mtop, t_inputrec *ir, DisResRunMode disResRunMode, DDRole ddRole, NumRanks numRanks, MPI_Comm communicator, const gmx_multisim_t *ms, t_disresdata *disresdata, t_state *state, gmx_bool bIsREMD)
 Initiates *disresdata. More...
void calc_disres_R_6 (const t_commrec *cr, const gmx_multisim_t *ms, int nfa, const t_iatom *fa, const rvec *x, const t_pbc *pbc, t_disresdata *disresdata, history_t *hist)
 Calculates r and r^-3 (inst. and time averaged) for all pairs and the ensemble averaged r^-6 (inst. and time averaged) for all restraints.
real ta_disres (int nfa, const t_iatom forceatoms[], const t_iparams ip[], const rvec x[], rvec4 f[], rvec fshift[], const t_pbc *pbc, real lambda, real *dvdlambda, const t_mdatoms *md, t_fcdata *fcdata, int *global_atom_index)
 Calculates the distance restraint forces, return the potential.
void update_disres_history (const t_disresdata &disresdata, history_t *hist)
 Copies the new time averages that have been calculated in calc_disres_R_6.

Function Documentation

void init_disres ( FILE *  fplog,
const gmx_mtop_t *  mtop,
t_inputrec *  ir,
DisResRunMode  disResRunMode,
DDRole  ddRole,
NumRanks  numRanks,
MPI_Comm  communicator,
const gmx_multisim_t ms,
t_disresdata *  disresdata,
t_state state,
gmx_bool  bIsREMD 

Initiates *disresdata.

Must be called once, nbonds is the number of iatoms in the ilist of the idef struct. When time averaging is used, the history is initialized in state, unless it was read before from a checkpoint file. The implementation of distance restraints with -multidir must differ according to whether REMD is active.