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_pme_h = "$Id$";
44 typedef real *splinevec[DIM];
46 extern real do_pme(FILE *log, bool bVerbose,
49 real charge[], matrix box,
51 t_nsborder *nsb, t_nrnb *nrnb,
52 matrix lrvir,real ewaldcoeff,
55 /* Do a PME calculation for the long range electrostatics.
56 * If bGatherOnly is set, the energy from the last computation will be used, and
57 * the forces will be interpolated at the new positions. No new solving is done then.
60 extern void sum_qgrid(t_commrec *cr,t_nsborder *nsb,t_fftgrid *grid,bool bForward);
62 extern void init_pme(FILE *log,t_commrec *cr,
63 int nkx,int nky,int nkz,int pme_order,int homenr,
66 /* Routine for spreading something on a grid. Can be misused for non-PME
67 * related things. init_pme must be called before this guy.
69 extern t_fftgrid *spread_on_grid(FILE *logfile, int homenr,
70 int pme_order, rvec x[],
71 real charge[], matrix box,