added Verlet scheme and NxN non-bonded functionality
[gromacs.git] / include / types / force_flags.h
blob759b31587a1fe604abfa12d338492512507e34a4
1 /* -*- mode: c; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4; c-file-style: "stroustrup"; -*-
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 * Written by David van der Spoel, Erik Lindahl, Berk Hess, and others.
11 * Copyright (c) 1991-2000, University of Groningen, The Netherlands.
12 * Copyright (c) 2001-2012, The GROMACS development team,
13 * check out http://www.gromacs.org for more information.
15 * This program is free software; you can redistribute it and/or
16 * modify it under the terms of the GNU General Public License
17 * as published by the Free Software Foundation; either version 2
18 * of the License, or (at your option) any later version.
20 * If you want to redistribute modifications, please consider that
21 * scientific software is very special. Version control is crucial -
22 * bugs must be traceable. We will be happy to consider code for
23 * inclusion in the official distribution, but derived work must not
24 * be called official GROMACS. Details are found in the README & COPYING
25 * files - if they are missing, get the official version at www.gromacs.org.
27 * To help us fund GROMACS development, we humbly ask that you cite
28 * the papers on the package - you can find them in the top README file.
30 * For more info, check our website at http://www.gromacs.org
32 * And Hey:
33 * Gromacs Runs On Most of All Computer Systems
36 #ifndef _force_flags_h
37 #define _force_flags_h
40 #ifdef __cplusplus
41 extern "C" {
42 #endif
45 /* Flags to tell the force calculation routines what (not) to do */
47 /* The state has changed */
48 #define GMX_FORCE_STATECHANGED (1<<0)
49 /* The box might have changed */
50 #define GMX_FORCE_DYNAMICBOX (1<<1)
51 /* Do neighbor searching */
52 #define GMX_FORCE_NS (1<<2)
53 /* Calculate long-range energies/forces */
54 #define GMX_FORCE_DOLR (1<<3)
55 /* Calculate bonded energies/forces */
56 #define GMX_FORCE_BONDED (1<<4)
57 /* Store long-range forces in a separate array */
58 #define GMX_FORCE_SEPLRF (1<<5)
59 /* Calculate non-bonded energies/forces */
60 #define GMX_FORCE_NONBONDED (1<<6)
61 /* Calculate forces (not only energies) */
62 #define GMX_FORCE_FORCES (1<<7)
63 /* Calculate the virial */
64 #define GMX_FORCE_VIRIAL (1<<8)
65 /* Calculate energies */
66 #define GMX_FORCE_ENERGY (1<<9)
67 /* Calculate dHdl */
68 #define GMX_FORCE_DHDL (1<<10)
69 /* Normally one want all energy terms and forces */
70 #define GMX_FORCE_ALLFORCES (GMX_FORCE_BONDED | GMX_FORCE_NONBONDED | GMX_FORCE_FORCES)
73 #ifdef __cplusplus
75 #endif
77 #endif /* _force_flags_h */