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


Declares functions for handling distance restraints.


void init_disres (FILE *fplog, const gmx_mtop_t *mtop, t_inputrec *ir, const t_commrec *cr, const gmx_multisim_t *ms, t_fcdata *fcd, t_state *state, gmx_bool bIsREMD)
 Initiates *fcd data. 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_fcdata *fcd, 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, const t_graph *g, real lambda, real *dvdlambda, const t_mdatoms *md, t_fcdata *fcd, int *global_atom_index)
 Calculates the distance restraint forces, return the potential.
void update_disres_history (const t_fcdata *fcd, 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,
const t_commrec *  cr,
const gmx_multisim_t ms,
t_fcdata *  fcd,
t_state state,
gmx_bool  bIsREMD 

Initiates *fcd data.

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.