#include <memory>
#include "gromacs/math/vectypes.h"
#include "gromacs/utility/basedefinitions.h"
#include "gromacs/utility/classhelpers.h"
Declares functions to calculate both essential dynamics constraints as well as flooding potentials and forces.
- Authors
- Bert de Groot bgroo.nosp@m.t@gw.nosp@m.dg.de, Oliver Lange olive.nosp@m.r.la.nosp@m.nge@t.nosp@m.um.d.nosp@m.e, Carsten Kutzner ckutz.nosp@m.ne@g.nosp@m.wdg.d.nosp@m.e
|
void | do_edsam (const t_inputrec *ir, int64_t step, const t_commrec *cr, rvec xs[], rvec v[], const matrix box, gmx_edsam *ed) |
| Applies essential dynamics constrains as defined in the .edi input file. More...
|
|
std::unique_ptr
< gmx::EssentialDynamics > | init_edsam (const gmx::MDLogger &mdlog, const char *ediFileName, const char *edoFileName, const gmx_mtop_t *mtop, const t_inputrec *ir, const t_commrec *cr, gmx::Constraints *constr, const t_state *globalState, ObservablesHistory *oh, const gmx_output_env_t *oenv, gmx::StartingBehavior startingBehavior) |
| Initializes the essential dynamics and flooding module. More...
|
|
void | dd_make_local_ed_indices (gmx_domdec_t *dd, gmx_edsam *ed) |
| Make a selection of the home atoms for the ED groups. More...
|
|
void | do_flood (const t_commrec *cr, const t_inputrec *ir, const rvec x[], rvec force[], gmx_edsam *ed, const matrix box, int64_t step, gmx_bool bNS) |
| Evaluate the flooding potential(s) and forces as requested in the .edi input file. More...
|
|
void dd_make_local_ed_indices |
( |
gmx_domdec_t * |
dd, |
|
|
gmx_edsam * |
ed |
|
) |
| |
Make a selection of the home atoms for the ED groups.
Should be called at every domain decomposition.
- Parameters
-
dd | Domain decomposition data. |
ed | Essential dynamics and flooding data. |
void do_edsam |
( |
const t_inputrec * |
ir, |
|
|
int64_t |
step, |
|
|
const t_commrec * |
cr, |
|
|
rvec |
xs[], |
|
|
rvec |
v[], |
|
|
const matrix |
box, |
|
|
gmx_edsam * |
ed |
|
) |
| |
Applies essential dynamics constrains as defined in the .edi input file.
- Parameters
-
ir | MD input parameter record. |
step | Number of the time step. |
cr | Data needed for MPI communication. |
xs | The local positions on this processor. |
v | The local velocities. |
box | The simulation box. |
ed | The essential dynamics data. |
void do_flood |
( |
const t_commrec * |
cr, |
|
|
const t_inputrec * |
ir, |
|
|
const rvec |
x[], |
|
|
rvec |
force[], |
|
|
gmx_edsam * |
ed, |
|
|
const matrix |
box, |
|
|
int64_t |
step, |
|
|
gmx_bool |
bNS |
|
) |
| |
Evaluate the flooding potential(s) and forces as requested in the .edi input file.
- Parameters
-
cr | Data needed for MPI communication. |
ir | MD input parameter record. |
x | Positions on the local processor. |
force | Forcefield forces to which the flooding forces are added. |
ed | The essential dynamics data. |
box | The simulation box. |
step | Number of the time step. |
bNS | Are we in a neighbor searching step? |
std::unique_ptr<gmx::EssentialDynamics> init_edsam |
( |
const gmx::MDLogger & |
mdlog, |
|
|
const char * |
ediFileName, |
|
|
const char * |
edoFileName, |
|
|
const gmx_mtop_t * |
mtop, |
|
|
const t_inputrec * |
ir, |
|
|
const t_commrec * |
cr, |
|
|
gmx::Constraints * |
constr, |
|
|
const t_state * |
globalState, |
|
|
ObservablesHistory * |
oh, |
|
|
const gmx_output_env_t * |
oenv, |
|
|
gmx::StartingBehavior |
startingBehavior |
|
) |
| |
Initializes the essential dynamics and flooding module.
- Parameters
-
mdlog | Logger. |
ediFileName | Essential dynamics input file. |
edoFileName | Output file for essential dynamics data. |
mtop | Molecular topology. |
ir | MD input parameter record. |
cr | Data needed for MPI communication. |
constr | Data structure keeping the constraint information. |
globalState | The global state, only used on the master rank. |
oh | The observables history container. |
oenv | The output environment information. |
startingBehavior | Describes whether this is a restart appending to output files |
- Returns
- A pointer to the ED data structure.