Partial commit of the project to remove all static variables.
[gromacs.git] / include / mdebin.h
blob78ffc1c4bd76da6a1f1ff31a889b22f74b8195bd
1 /*
2 * $Id$
3 *
4 * This source code is part of
5 *
6 * G R O M A C S
7 *
8 * GROningen MAchine for Chemical Simulations
9 *
10 * VERSION 3.1
11 * Copyright (c) 1991-2001, University of Groningen, The Netherlands
12 * This program is free software; you can redistribute it and/or
13 * modify it under the terms of the GNU General Public License
14 * as published by the Free Software Foundation; either version 2
15 * of the License, or (at your option) any later version.
17 * If you want to redistribute modifications, please consider that
18 * scientific software is very special. Version control is crucial -
19 * bugs must be traceable. We will be happy to consider code for
20 * inclusion in the official distribution, but derived work must not
21 * be called official GROMACS. Details are found in the README & COPYING
22 * files - if they are missing, get the official version at www.gromacs.org.
24 * To help us fund GROMACS development, we humbly ask that you cite
25 * the papers on the package - you can find them in the top README file.
27 * For more info, check our website at http://www.gromacs.org
29 * And Hey:
30 * Getting the Right Output Means no Artefacts in Calculating Stuff
33 #ifndef _mdebin_h
34 #define _mdebin_h
36 #ifdef HAVE_CONFIG_H
37 #include <config.h>
38 #endif
40 #include "typedefs.h"
41 #include "sysstuff.h"
42 #include "ebin.h"
43 #include "enxio.h"
45 typedef struct {
46 t_ebin *ebin;
47 int ie,ib,isvir,ifvir,ipres,ivir,isurft,itc,iu,imu,ivcos,ivisc;
48 int nE,nEg,nEc,nTC,nU;
49 int *igrp;
50 } t_mdebin;
52 extern t_mdebin *init_mdebin(int fp_ene,t_groups *grps,t_atoms *atoms,
53 t_idef *idef,bool bLR,bool BLJLR,bool bBHAM,
54 bool b14,bool bFEP,bool bPcoupl,bool
55 bDispCorr,bool bTriclinic,bool bNoseHoover, t_commrec *cr);
56 /* Initiate MD energy bin and write header to energy file. */
58 extern void upd_mdebin(t_mdebin *md,FILE *fp_dgdl,
59 real tmass,int step,real time,
60 real ener[],
61 matrix box,
62 tensor svir,
63 tensor fvir,
64 tensor vir,
65 tensor pres,
66 t_groups *grps,
67 rvec mu_tot, bool bNoseHoover);
69 extern void print_ebin_header(FILE *log,int steps,real time,real lamb);
71 extern void print_ebin(int fp_ene,bool bEne,bool bDR,bool bOR,bool bDihR,
72 FILE *log,int steps,real time,
73 int mode,bool bCompact,
74 t_mdebin *md,t_fcdata *fcd,t_atoms *atoms, t_grpopts *opts);
76 #endif /* _mdebin_h */