4 * This source code is part of
8 * GROningen MAchine for Chemical Simulations
12 * Copyright (c) 1991-1999
13 * BIOSON Research Institute, Dept. of Biophysical Chemistry
14 * University of Groningen, The Netherlands
17 * GROMACS: A message-passing parallel molecular dynamics implementation
18 * H.J.C. Berendsen, D. van der Spoel and R. van Drunen
19 * Comp. Phys. Comm. 91, 43-56 (1995)
21 * Also check out our WWW page:
22 * http://md.chem.rug.nl/~gmx
27 * Good ROcking Metal Altar for Chronical Sinners
33 static char *SRCID_force_h = "$Id$";
40 #ident "@(#) force.h 1.53 5/15/97"
41 #endif /* HAVE_IDENT */
49 extern void calc_vir(FILE *log,int nxf,rvec x[],rvec f[],tensor vir,
51 /* Calculate virial for nxf atoms, and add it to vir */
53 extern void f_calc_vir(FILE *log,int i0,int i1,rvec x[],rvec f[],tensor vir,
54 t_commrec *cr,t_graph *g,rvec shift_vec[]);
55 /* Calculate virial taking periodicity into account */
57 extern t_forcerec *mk_forcerec(void);
59 extern void make_tables(FILE *fp,t_forcerec *fr,bool bVerbose,char *fn);
60 /* Make tables for inner loops. When bVerbose the tables are printed
64 extern void pr_forcerec(FILE *log,t_forcerec *fr,t_commrec *cr);
66 extern void init_forcerec(FILE *log,
76 /* The Force rec struct must be created with mk_forcerec
77 * The booleans have the following meaning:
78 * bSetQ: Copy the charges [ only necessary when they change ]
79 * bMolEpot: Use the free energy stuff per molecule
82 extern void update_forcerec(FILE *log,t_forcerec *fr,matrix box);
83 /* Updates parameters in the forcerec that are time dependent */
85 extern void set_avcsix(FILE *log,t_forcerec *fr,t_mdatoms *mdatoms);
86 /* Compute the average C6 param for LJ corrections */
88 extern void ns(FILE *log,
103 /* Call the neighborsearcher */
105 extern void force(FILE *log,
119 real epot[], bool bVerbose,
129 /* Call all the force routines */
131 /* Routine from fnbf.m4 */
132 extern void do_fnbf(FILE *log,t_commrec *cr,t_forcerec *fr,
133 rvec x[],rvec f[],t_mdatoms *md,
134 real egnb[],real egcoul[],rvec box_size,
135 t_nrnb *nrnb,real lambda,real *dvdlambda,
138 #endif /* _force_h */