4 * This source code is part of
8 * GROningen MAchine for Chemical Simulations
12 * Copyright (c) 1991-2001
13 * BIOSON Research Institute, Dept. of Biophysical Chemistry
14 * University of Groningen, The Netherlands
16 * This program is free software; you can redistribute it and/or
17 * modify it under the terms of the GNU General Public License
18 * as published by the Free Software Foundation; either version 2
19 * of the License, or (at your option) any later version.
21 * If you want to redistribute modifications, please consider that
22 * scientific software is very special. Version control is crucial -
23 * bugs must be traceable. We will be happy to consider code for
24 * inclusion in the official distribution, but derived work must not
25 * be called official GROMACS. Details are found in the README & COPYING
26 * files - if they are missing, get the official version at www.gromacs.org.
28 * To help us fund GROMACS development, we humbly ask that you cite
29 * the papers on the package - you can find them in the top README file.
31 * Do check out http://www.gromacs.org , or mail us at gromacs@gromacs.org .
34 * Good ROcking Metal Altar for Chronical Sinners
40 static char *SRCID_vcm_h = "$Id$";
46 #ident "@(#) vcm.h 1.9 9/29/97"
47 #endif /* HAVE_IDENT */
55 char **group_name; /* These two are copies to pointers in */
56 unsigned short *group_id; /* other structures. */
59 t_vcm *init_vcm(FILE *fp,t_topology *top,t_mdatoms *md,
60 int start,int homenr,int nstcomm);
62 extern void calc_vcm(FILE *log,int homenr,int start,
63 real mass[],rvec v[],rvec vcm);
65 extern void do_stopcm(FILE *log,int homenr,int start,
66 rvec v[],rvec mvcm,real tm,real invmass[]);
68 extern void check_cm(FILE *log,rvec mvcm,real tm);
70 /* remove global rotation of system by fitting to structure of nstcomm
72 extern void do_stoprot(FILE *log, int natoms, rvec box, rvec x[],
75 /* Do a per group center of mass things */
76 extern void calc_vcm_grp(FILE *log,int homenr,int start,real mass[],rvec v[],
79 extern void do_stopcm_grp(FILE *log,int homenr,int start,rvec v[],
80 t_vcm *vcm,real invmass[]);
82 extern void check_cm_grp(FILE *log,t_vcm *vcm);