From 386dedc8cb8e6b9bb7d6b6f59d3aa0ef18a68fcf Mon Sep 17 00:00:00 2001 From: David van der Spoel Date: Thu, 19 Nov 2015 13:08:40 +0100 Subject: [PATCH] Moved mdatom.h from legacyheader/types to mdtypes. Add doxygen comments to the elements of the structure. Part of #1415. Change-Id: I811ad4782dd482ac7fe198c85c85b91af6e20b67 --- src/gromacs/domdec/domdec.cpp | 2 +- src/gromacs/domdec/domdec.h | 2 +- src/gromacs/gmxlib/nonbonded/nb_free_energy.h | 2 +- src/gromacs/gmxlib/nonbonded/nb_generic.h | 2 +- src/gromacs/gmxlib/nonbonded/nb_generic_cg.h | 2 +- src/gromacs/gmxlib/nonbonded/nb_kernel.h | 2 +- .../nonbonded/nb_kernel_c/nb_kernel_allvsall.h | 2 +- .../nonbonded/nb_kernel_c/nb_kernel_allvsallgb.h | 2 +- src/gromacs/gmxlib/nonbonded/nonbonded.cpp | 2 +- src/gromacs/gmxlib/nonbonded/nonbonded.h | 2 +- src/gromacs/gmxlib/orires.cpp | 2 +- src/gromacs/legacyheaders/types/mdatom.h | 82 ------------- src/gromacs/listed-forces/bonded.h | 2 +- src/gromacs/listed-forces/pairs.h | 4 +- src/gromacs/mdlib/genborn_allvsall.cpp | 2 +- src/gromacs/mdlib/integrator.h | 2 +- src/gromacs/mdlib/mdatoms.h | 2 +- src/gromacs/mdlib/qmmm.cpp | 2 +- src/gromacs/mdlib/rf_util.cpp | 2 +- src/gromacs/mdlib/tgroup.cpp | 2 +- src/gromacs/mdlib/vcm.h | 2 +- src/gromacs/mdlib/wall.cpp | 2 +- src/gromacs/mdtypes/CMakeLists.txt | 1 + src/gromacs/mdtypes/mdatom.h | 130 +++++++++++++++++++++ src/gromacs/pulling/pull.cpp | 2 +- src/gromacs/pulling/pullutil.cpp | 2 +- src/programs/mdrun/md.cpp | 2 +- 27 files changed, 156 insertions(+), 107 deletions(-) delete mode 100644 src/gromacs/legacyheaders/types/mdatom.h create mode 100644 src/gromacs/mdtypes/mdatom.h diff --git a/src/gromacs/domdec/domdec.cpp b/src/gromacs/domdec/domdec.cpp index 2cb7a870ab..681735b54e 100644 --- a/src/gromacs/domdec/domdec.cpp +++ b/src/gromacs/domdec/domdec.cpp @@ -65,7 +65,6 @@ #include "gromacs/legacyheaders/types/forcerec.h" #include "gromacs/legacyheaders/types/hw_info.h" #include "gromacs/legacyheaders/types/ifunc.h" -#include "gromacs/legacyheaders/types/mdatom.h" #include "gromacs/legacyheaders/types/nrnb.h" #include "gromacs/legacyheaders/types/ns.h" #include "gromacs/listed-forces/manage-threading.h" @@ -84,6 +83,7 @@ #include "gromacs/mdlib/vsite.h" #include "gromacs/mdtypes/df_history.h" #include "gromacs/mdtypes/inputrec.h" +#include "gromacs/mdtypes/mdatom.h" #include "gromacs/mdtypes/state.h" #include "gromacs/pbcutil/ishift.h" #include "gromacs/pbcutil/pbc.h" diff --git a/src/gromacs/domdec/domdec.h b/src/gromacs/domdec/domdec.h index d97eda1bca..77945b7e98 100644 --- a/src/gromacs/domdec/domdec.h +++ b/src/gromacs/domdec/domdec.h @@ -62,12 +62,12 @@ #include "gromacs/legacyheaders/types/forcerec.h" #include "gromacs/legacyheaders/types/hw_info.h" -#include "gromacs/legacyheaders/types/mdatom.h" #include "gromacs/legacyheaders/types/nrnb.h" #include "gromacs/math/vectypes.h" #include "gromacs/mdlib/constr.h" #include "gromacs/mdlib/vsite.h" #include "gromacs/mdtypes/inputrec.h" +#include "gromacs/mdtypes/mdatom.h" #include "gromacs/mdtypes/state.h" #include "gromacs/timing/wallcycle.h" #include "gromacs/topology/block.h" diff --git a/src/gromacs/gmxlib/nonbonded/nb_free_energy.h b/src/gromacs/gmxlib/nonbonded/nb_free_energy.h index 88a0889cca..6d5649a9d1 100644 --- a/src/gromacs/gmxlib/nonbonded/nb_free_energy.h +++ b/src/gromacs/gmxlib/nonbonded/nb_free_energy.h @@ -39,10 +39,10 @@ #define _nb_free_energy_h_ #include "gromacs/gmxlib/nonbonded/nb_kernel.h" -#include "gromacs/legacyheaders/types/mdatom.h" #include "gromacs/legacyheaders/types/nblist.h" #include "gromacs/legacyheaders/types/nrnb.h" #include "gromacs/math/vectypes.h" +#include "gromacs/mdtypes/mdatom.h" struct t_forcerec; diff --git a/src/gromacs/gmxlib/nonbonded/nb_generic.h b/src/gromacs/gmxlib/nonbonded/nb_generic.h index 9bb233d16b..d564f21fe8 100644 --- a/src/gromacs/gmxlib/nonbonded/nb_generic.h +++ b/src/gromacs/gmxlib/nonbonded/nb_generic.h @@ -39,10 +39,10 @@ #define _nb_generic_h_ #include "gromacs/gmxlib/nonbonded/nb_kernel.h" -#include "gromacs/legacyheaders/types/mdatom.h" #include "gromacs/legacyheaders/types/nblist.h" #include "gromacs/legacyheaders/types/nrnb.h" #include "gromacs/math/vectypes.h" +#include "gromacs/mdtypes/mdatom.h" void gmx_nb_generic_kernel(t_nblist * nlist, diff --git a/src/gromacs/gmxlib/nonbonded/nb_generic_cg.h b/src/gromacs/gmxlib/nonbonded/nb_generic_cg.h index 44abd7244d..a2db8f734f 100644 --- a/src/gromacs/gmxlib/nonbonded/nb_generic_cg.h +++ b/src/gromacs/gmxlib/nonbonded/nb_generic_cg.h @@ -39,10 +39,10 @@ #define _nb_generic_cg_h_ #include "gromacs/gmxlib/nonbonded/nb_kernel.h" -#include "gromacs/legacyheaders/types/mdatom.h" #include "gromacs/legacyheaders/types/nblist.h" #include "gromacs/legacyheaders/types/nrnb.h" #include "gromacs/math/vectypes.h" +#include "gromacs/mdtypes/mdatom.h" void gmx_nb_generic_cg_kernel(t_nblist * nlist, diff --git a/src/gromacs/gmxlib/nonbonded/nb_kernel.h b/src/gromacs/gmxlib/nonbonded/nb_kernel.h index 359ac44d00..ede504ae54 100644 --- a/src/gromacs/gmxlib/nonbonded/nb_kernel.h +++ b/src/gromacs/gmxlib/nonbonded/nb_kernel.h @@ -36,10 +36,10 @@ #define _nb_kernel_h_ #include "gromacs/legacyheaders/types/forcerec.h" -#include "gromacs/legacyheaders/types/mdatom.h" #include "gromacs/legacyheaders/types/nblist.h" #include "gromacs/legacyheaders/types/nrnb.h" #include "gromacs/math/vectypes.h" +#include "gromacs/mdtypes/mdatom.h" #include "gromacs/topology/block.h" #include "gromacs/utility/real.h" diff --git a/src/gromacs/gmxlib/nonbonded/nb_kernel_c/nb_kernel_allvsall.h b/src/gromacs/gmxlib/nonbonded/nb_kernel_c/nb_kernel_allvsall.h index 4a1889bf6a..f2966a2d59 100644 --- a/src/gromacs/gmxlib/nonbonded/nb_kernel_c/nb_kernel_allvsall.h +++ b/src/gromacs/gmxlib/nonbonded/nb_kernel_c/nb_kernel_allvsall.h @@ -38,10 +38,10 @@ #include "config.h" #include "gromacs/gmxlib/nonbonded/nb_kernel.h" -#include "gromacs/legacyheaders/types/mdatom.h" #include "gromacs/legacyheaders/types/nblist.h" #include "gromacs/legacyheaders/types/nrnb.h" #include "gromacs/math/vectypes.h" +#include "gromacs/mdtypes/mdatom.h" #ifdef __cplusplus extern "C" { diff --git a/src/gromacs/gmxlib/nonbonded/nb_kernel_c/nb_kernel_allvsallgb.h b/src/gromacs/gmxlib/nonbonded/nb_kernel_c/nb_kernel_allvsallgb.h index 029666378a..0d1979601f 100644 --- a/src/gromacs/gmxlib/nonbonded/nb_kernel_c/nb_kernel_allvsallgb.h +++ b/src/gromacs/gmxlib/nonbonded/nb_kernel_c/nb_kernel_allvsallgb.h @@ -38,10 +38,10 @@ #include "config.h" #include "gromacs/gmxlib/nonbonded/nb_kernel.h" -#include "gromacs/legacyheaders/types/mdatom.h" #include "gromacs/legacyheaders/types/nblist.h" #include "gromacs/legacyheaders/types/nrnb.h" #include "gromacs/math/vectypes.h" +#include "gromacs/mdtypes/mdatom.h" #ifdef __cplusplus extern "C" { diff --git a/src/gromacs/gmxlib/nonbonded/nonbonded.cpp b/src/gromacs/gmxlib/nonbonded/nonbonded.cpp index 3221a7199c..b764d2dd44 100644 --- a/src/gromacs/gmxlib/nonbonded/nonbonded.cpp +++ b/src/gromacs/gmxlib/nonbonded/nonbonded.cpp @@ -54,12 +54,12 @@ #include "gromacs/legacyheaders/names.h" #include "gromacs/legacyheaders/nrnb.h" #include "gromacs/legacyheaders/types/forcerec.h" -#include "gromacs/legacyheaders/types/mdatom.h" #include "gromacs/legacyheaders/types/nblist.h" #include "gromacs/legacyheaders/types/nrnb.h" #include "gromacs/listed-forces/bonded.h" #include "gromacs/math/utilities.h" #include "gromacs/math/vec.h" +#include "gromacs/mdtypes/mdatom.h" #include "gromacs/pbcutil/ishift.h" #include "gromacs/pbcutil/mshift.h" #include "gromacs/pbcutil/pbc.h" diff --git a/src/gromacs/gmxlib/nonbonded/nonbonded.h b/src/gromacs/gmxlib/nonbonded/nonbonded.h index c03908d4da..6a5919f7a8 100644 --- a/src/gromacs/gmxlib/nonbonded/nonbonded.h +++ b/src/gromacs/gmxlib/nonbonded/nonbonded.h @@ -40,10 +40,10 @@ #include #include "gromacs/legacyheaders/types/forcerec.h" -#include "gromacs/legacyheaders/types/mdatom.h" #include "gromacs/legacyheaders/types/nblist.h" #include "gromacs/legacyheaders/types/nrnb.h" #include "gromacs/math/vectypes.h" +#include "gromacs/mdtypes/mdatom.h" #include "gromacs/topology/block.h" #include "gromacs/utility/basedefinitions.h" diff --git a/src/gromacs/gmxlib/orires.cpp b/src/gromacs/gmxlib/orires.cpp index 48c2049527..a1871d8817 100644 --- a/src/gromacs/gmxlib/orires.cpp +++ b/src/gromacs/gmxlib/orires.cpp @@ -46,10 +46,10 @@ #include "gromacs/legacyheaders/types/commrec.h" #include "gromacs/legacyheaders/types/fcdata.h" #include "gromacs/legacyheaders/types/ifunc.h" -#include "gromacs/legacyheaders/types/mdatom.h" #include "gromacs/linearalgebra/nrjac.h" #include "gromacs/math/do_fit.h" #include "gromacs/math/vec.h" +#include "gromacs/mdtypes/mdatom.h" #include "gromacs/mdtypes/state.h" #include "gromacs/pbcutil/ishift.h" #include "gromacs/pbcutil/mshift.h" diff --git a/src/gromacs/legacyheaders/types/mdatom.h b/src/gromacs/legacyheaders/types/mdatom.h deleted file mode 100644 index 25975c32f0..0000000000 --- a/src/gromacs/legacyheaders/types/mdatom.h +++ /dev/null @@ -1,82 +0,0 @@ -/* - * This file is part of the GROMACS molecular simulation package. - * - * Copyright (c) 1991-2000, University of Groningen, The Netherlands. - * Copyright (c) 2001-2004, The GROMACS development team. - * Copyright (c) 2012,2013,2014,2015, by the GROMACS development team, led by - * Mark Abraham, David van der Spoel, Berk Hess, and Erik Lindahl, - * and including many others, as listed in the AUTHORS file in the - * top-level source directory and at http://www.gromacs.org. - * - * GROMACS is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public License - * as published by the Free Software Foundation; either version 2.1 - * of the License, or (at your option) any later version. - * - * GROMACS is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with GROMACS; if not, see - * http://www.gnu.org/licenses, or write to the Free Software Foundation, - * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * - * If you want to redistribute modifications to GROMACS, please - * consider that scientific software is very special. Version - * control is crucial - bugs must be traceable. We will be happy to - * consider code for inclusion in the official distribution, but - * derived work must not be called official GROMACS. Details are found - * in the README & COPYING files - if they are missing, get the - * official version at http://www.gromacs.org. - * - * To help us fund GROMACS development, we humbly ask that you cite - * the research papers on the package. Check out http://www.gromacs.org. - */ - -#ifndef _mdatom_h -#define _mdatom_h - -#include "gromacs/utility/basedefinitions.h" -#include "gromacs/utility/real.h" - -#ifdef __cplusplus -extern "C" { -#endif - - -typedef struct t_mdatoms { - real tmassA, tmassB, tmass; - int nr; - int nalloc; - int nenergrp; - gmx_bool bVCMgrps; - int nPerturbed; - int nMassPerturbed; - int nChargePerturbed; - int nTypePerturbed; - gmx_bool bOrires; - real *massA, *massB, *massT, *invmass; - real *chargeA, *chargeB; - real *sqrt_c6A, *sqrt_c6B; - real *sigmaA, *sigmaB, *sigma3A, *sigma3B; - gmx_bool *bPerturbed; - int *typeA, *typeB; - unsigned short *ptype; - unsigned short *cTC, *cENER, *cACC, *cFREEZE, *cVCM; - unsigned short *cU1, *cU2, *cORF; - /* for QMMM, atomnumber contains atomic number of the atoms */ - gmx_bool *bQM; - /* The range of home atoms */ - int homenr; - /* The lambda value used to create the contents of the struct */ - real lambda; -} t_mdatoms; - -#ifdef __cplusplus -} -#endif - - -#endif diff --git a/src/gromacs/listed-forces/bonded.h b/src/gromacs/listed-forces/bonded.h index 9277101bd9..a4f11fa42a 100644 --- a/src/gromacs/listed-forces/bonded.h +++ b/src/gromacs/listed-forces/bonded.h @@ -53,9 +53,9 @@ #include "gromacs/legacyheaders/types/forcerec.h" #include "gromacs/legacyheaders/types/ifunc.h" #include "gromacs/legacyheaders/types/interaction_const.h" -#include "gromacs/legacyheaders/types/mdatom.h" #include "gromacs/legacyheaders/types/nrnb.h" #include "gromacs/math/vec.h" +#include "gromacs/mdtypes/mdatom.h" #include "gromacs/pbcutil/pbc-simd.h" #include "gromacs/simd/simd.h" #include "gromacs/topology/idef.h" diff --git a/src/gromacs/listed-forces/pairs.h b/src/gromacs/listed-forces/pairs.h index c895f81b85..45faba3cd9 100644 --- a/src/gromacs/listed-forces/pairs.h +++ b/src/gromacs/listed-forces/pairs.h @@ -1,7 +1,7 @@ /* * This file is part of the GROMACS molecular simulation package. * - * Copyright (c) 2014, by the GROMACS development team, led by + * Copyright (c) 2014,2015, by the GROMACS development team, led by * Mark Abraham, David van der Spoel, Berk Hess, and Erik Lindahl, * and including many others, as listed in the AUTHORS file in the * top-level source directory and at http://www.gromacs.org. @@ -45,8 +45,8 @@ #define GMX_LISTED_FORCES_PAIRS_H #include "gromacs/legacyheaders/types/forcerec.h" -#include "gromacs/legacyheaders/types/mdatom.h" #include "gromacs/math/vec.h" +#include "gromacs/mdtypes/mdatom.h" #include "gromacs/utility/basedefinitions.h" #include "gromacs/utility/real.h" diff --git a/src/gromacs/mdlib/genborn_allvsall.cpp b/src/gromacs/mdlib/genborn_allvsall.cpp index e474094b25..5fab4ff5b2 100644 --- a/src/gromacs/mdlib/genborn_allvsall.cpp +++ b/src/gromacs/mdlib/genborn_allvsall.cpp @@ -44,10 +44,10 @@ #include "gromacs/gmxlib/network.h" #include "gromacs/legacyheaders/types/forcerec.h" -#include "gromacs/legacyheaders/types/mdatom.h" #include "gromacs/math/units.h" #include "gromacs/math/vec.h" #include "gromacs/mdlib/genborn.h" +#include "gromacs/mdtypes/mdatom.h" #include "gromacs/topology/topology.h" #include "gromacs/utility/smalloc.h" diff --git a/src/gromacs/mdlib/integrator.h b/src/gromacs/mdlib/integrator.h index ab4422766f..dc08028d39 100644 --- a/src/gromacs/mdlib/integrator.h +++ b/src/gromacs/mdlib/integrator.h @@ -45,11 +45,11 @@ #include "gromacs/fileio/filenm.h" #include "gromacs/legacyheaders/types/fcdata.h" #include "gromacs/legacyheaders/types/forcerec.h" -#include "gromacs/legacyheaders/types/mdatom.h" #include "gromacs/legacyheaders/types/nrnb.h" #include "gromacs/mdlib/constr.h" #include "gromacs/mdlib/vsite.h" #include "gromacs/mdtypes/inputrec.h" +#include "gromacs/mdtypes/mdatom.h" #include "gromacs/mdtypes/state.h" #include "gromacs/timing/wallcycle.h" #include "gromacs/timing/walltime_accounting.h" diff --git a/src/gromacs/mdlib/mdatoms.h b/src/gromacs/mdlib/mdatoms.h index a3d9e81301..a16ac5d1bb 100644 --- a/src/gromacs/mdlib/mdatoms.h +++ b/src/gromacs/mdlib/mdatoms.h @@ -39,8 +39,8 @@ #include -#include "gromacs/legacyheaders/types/mdatom.h" #include "gromacs/mdtypes/inputrec.h" +#include "gromacs/mdtypes/mdatom.h" #include "gromacs/utility/basedefinitions.h" #include "gromacs/utility/real.h" diff --git a/src/gromacs/mdlib/qmmm.cpp b/src/gromacs/mdlib/qmmm.cpp index c4910874c4..b8c3908cad 100644 --- a/src/gromacs/mdlib/qmmm.cpp +++ b/src/gromacs/mdlib/qmmm.cpp @@ -55,11 +55,11 @@ #include "gromacs/legacyheaders/names.h" #include "gromacs/legacyheaders/nrnb.h" #include "gromacs/legacyheaders/types/commrec.h" -#include "gromacs/legacyheaders/types/mdatom.h" #include "gromacs/math/units.h" #include "gromacs/math/vec.h" #include "gromacs/mdlib/force.h" #include "gromacs/mdlib/ns.h" +#include "gromacs/mdtypes/mdatom.h" #include "gromacs/pbcutil/ishift.h" #include "gromacs/pbcutil/pbc.h" #include "gromacs/topology/mtop_util.h" diff --git a/src/gromacs/mdlib/rf_util.cpp b/src/gromacs/mdlib/rf_util.cpp index ee39826739..589215d2ca 100644 --- a/src/gromacs/mdlib/rf_util.cpp +++ b/src/gromacs/mdlib/rf_util.cpp @@ -40,10 +40,10 @@ #include "gromacs/fileio/copyrite.h" #include "gromacs/legacyheaders/names.h" -#include "gromacs/legacyheaders/types/mdatom.h" #include "gromacs/math/units.h" #include "gromacs/math/vec.h" #include "gromacs/mdlib/force.h" +#include "gromacs/mdtypes/mdatom.h" #include "gromacs/pbcutil/ishift.h" #include "gromacs/pbcutil/mshift.h" #include "gromacs/pbcutil/pbc.h" diff --git a/src/gromacs/mdlib/tgroup.cpp b/src/gromacs/mdlib/tgroup.cpp index d161427168..f8ef24a051 100644 --- a/src/gromacs/mdlib/tgroup.cpp +++ b/src/gromacs/mdlib/tgroup.cpp @@ -44,10 +44,10 @@ #include "gromacs/gmxlib/gmx_omp_nthreads.h" #include "gromacs/gmxlib/network.h" #include "gromacs/legacyheaders/types/group.h" -#include "gromacs/legacyheaders/types/mdatom.h" #include "gromacs/math/vec.h" #include "gromacs/mdlib/rbin.h" #include "gromacs/mdlib/update.h" +#include "gromacs/mdtypes/mdatom.h" #include "gromacs/topology/mtop_util.h" #include "gromacs/topology/topology.h" #include "gromacs/utility/exceptions.h" diff --git a/src/gromacs/mdlib/vcm.h b/src/gromacs/mdlib/vcm.h index d8100f67ba..0bf9c388ef 100644 --- a/src/gromacs/mdlib/vcm.h +++ b/src/gromacs/mdlib/vcm.h @@ -39,9 +39,9 @@ #include -#include "gromacs/legacyheaders/types/mdatom.h" #include "gromacs/math/vectypes.h" #include "gromacs/mdtypes/inputrec.h" +#include "gromacs/mdtypes/mdatom.h" #include "gromacs/utility/basedefinitions.h" #include "gromacs/utility/real.h" diff --git a/src/gromacs/mdlib/wall.cpp b/src/gromacs/mdlib/wall.cpp index e3bab29891..9228832eb9 100644 --- a/src/gromacs/mdlib/wall.cpp +++ b/src/gromacs/mdlib/wall.cpp @@ -43,12 +43,12 @@ #include "gromacs/fileio/filenm.h" #include "gromacs/legacyheaders/nrnb.h" -#include "gromacs/legacyheaders/types/mdatom.h" #include "gromacs/legacyheaders/types/nrnb.h" #include "gromacs/math/utilities.h" #include "gromacs/math/vec.h" #include "gromacs/mdlib/force.h" #include "gromacs/mdtypes/inputrec.h" +#include "gromacs/mdtypes/mdatom.h" #include "gromacs/tables/forcetable.h" #include "gromacs/topology/topology.h" #include "gromacs/utility/cstringutil.h" diff --git a/src/gromacs/mdtypes/CMakeLists.txt b/src/gromacs/mdtypes/CMakeLists.txt index 652383205f..fec10a38a5 100644 --- a/src/gromacs/mdtypes/CMakeLists.txt +++ b/src/gromacs/mdtypes/CMakeLists.txt @@ -38,5 +38,6 @@ set(LIBGROMACS_SOURCES ${LIBGROMACS_SOURCES} ${MDTYPES_SOURCES} PARENT_SCOPE) gmx_install_headers( energy.h inputrec.h + mdatom.h state.h ) diff --git a/src/gromacs/mdtypes/mdatom.h b/src/gromacs/mdtypes/mdatom.h new file mode 100644 index 0000000000..69519ececf --- /dev/null +++ b/src/gromacs/mdtypes/mdatom.h @@ -0,0 +1,130 @@ +/* + * This file is part of the GROMACS molecular simulation package. + * + * Copyright (c) 1991-2000, University of Groningen, The Netherlands. + * Copyright (c) 2001-2004, The GROMACS development team. + * Copyright (c) 2012,2013,2014,2015, by the GROMACS development team, led by + * Mark Abraham, David van der Spoel, Berk Hess, and Erik Lindahl, + * and including many others, as listed in the AUTHORS file in the + * top-level source directory and at http://www.gromacs.org. + * + * GROMACS is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public License + * as published by the Free Software Foundation; either version 2.1 + * of the License, or (at your option) any later version. + * + * GROMACS is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with GROMACS; if not, see + * http://www.gnu.org/licenses, or write to the Free Software Foundation, + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + * + * If you want to redistribute modifications to GROMACS, please + * consider that scientific software is very special. Version + * control is crucial - bugs must be traceable. We will be happy to + * consider code for inclusion in the official distribution, but + * derived work must not be called official GROMACS. Details are found + * in the README & COPYING files - if they are missing, get the + * official version at http://www.gromacs.org. + * + * To help us fund GROMACS development, we humbly ask that you cite + * the research papers on the package. Check out http://www.gromacs.org. + */ +/*! \brief + * Declares mdatom data structure. + * + * \inpublicapi + * \ingroup module_mdtypes + */ +#ifndef GMX_MDTYPES_MDATOM_H +#define GMX_MDTYPES_MDATOM_H + +#include "gromacs/utility/basedefinitions.h" +#include "gromacs/utility/real.h" + +typedef struct t_mdatoms { + //! Total mass in state A + real tmassA; + //! Total mass in state B + real tmassB; + //! Total mass + real tmass; + //! Number of atoms in arrays + int nr; + //! Number of elements in arrays + int nalloc; + //! Number of energy groups + int nenergrp; + //! Do we have multiple center of mass motion removal groups + gmx_bool bVCMgrps; + //! Number of perturbed atoms + int nPerturbed; + //! Number of atoms for which the mass is perturbed + int nMassPerturbed; + //! Number of atoms for which the charge is perturbed + int nChargePerturbed; + //! Number of atoms for which the type is perturbed + int nTypePerturbed; + //! Do we have orientation restraints + gmx_bool bOrires; + //! Atomic mass in A state + real *massA; + //! Atomic mass in B state + real *massB; + //! Atomic mass in present state + real *massT; + //! Inverse atomic mass + real *invmass; + //! Atomic charge in A state + real *chargeA; + //! Atomic charge in B state + real *chargeB; + //! Dispersion constant C6 in A state + real *sqrt_c6A; + //! Dispersion constant C6 in A state + real *sqrt_c6B; + //! Van der Waals radius sigma in the A state + real *sigmaA; + //! Van der Waals radius sigma in the B state + real *sigmaB; + //! Van der Waals radius sigma^3 in the A state + real *sigma3A; + //! Van der Waals radius sigma^3 in the B state + real *sigma3B; + //! Is this atom perturbed + gmx_bool *bPerturbed; + //! Type of atom in the A state + int *typeA; + //! Type of atom in the B state + int *typeB; + //! Particle type + unsigned short *ptype; + //! Group index for temperature coupling + unsigned short *cTC; + //! Group index for energy matrix + unsigned short *cENER; + //! Group index for acceleration + unsigned short *cACC; + //! Group index for freezing + unsigned short *cFREEZE; + //! Group index for center of mass motion removal + unsigned short *cVCM; + //! Group index for user 1 + unsigned short *cU1; + //! Group index for user 2 + unsigned short *cU2; + //! Group index for orientation restraints + unsigned short *cORF; + //! QMMM atoms + gmx_bool *bQM; + //! Number of atoms on this processor. TODO is this still used? + int homenr; + //! The lambda value used to create the contents of the struct + real lambda; +} t_mdatoms; + +#endif diff --git a/src/gromacs/pulling/pull.cpp b/src/gromacs/pulling/pull.cpp index 3481cce591..2a382909e3 100644 --- a/src/gromacs/pulling/pull.cpp +++ b/src/gromacs/pulling/pull.cpp @@ -56,10 +56,10 @@ #include "gromacs/gmxlib/network.h" #include "gromacs/legacyheaders/names.h" #include "gromacs/legacyheaders/types/commrec.h" -#include "gromacs/legacyheaders/types/mdatom.h" #include "gromacs/math/vec.h" #include "gromacs/math/vectypes.h" #include "gromacs/mdlib/mdrun.h" +#include "gromacs/mdtypes/mdatom.h" #include "gromacs/pbcutil/pbc.h" #include "gromacs/pulling/pull_internal.h" #include "gromacs/topology/mtop_util.h" diff --git a/src/gromacs/pulling/pullutil.cpp b/src/gromacs/pulling/pullutil.cpp index 5a4db5f299..4ea1201220 100644 --- a/src/gromacs/pulling/pullutil.cpp +++ b/src/gromacs/pulling/pullutil.cpp @@ -46,8 +46,8 @@ #include "gromacs/gmxlib/network.h" #include "gromacs/legacyheaders/names.h" #include "gromacs/legacyheaders/types/commrec.h" -#include "gromacs/legacyheaders/types/mdatom.h" #include "gromacs/math/vec.h" +#include "gromacs/mdtypes/mdatom.h" #include "gromacs/pbcutil/pbc.h" #include "gromacs/pulling/pull.h" #include "gromacs/pulling/pull_internal.h" diff --git a/src/programs/mdrun/md.cpp b/src/programs/mdrun/md.cpp index 4796cf882c..65d119ee90 100644 --- a/src/programs/mdrun/md.cpp +++ b/src/programs/mdrun/md.cpp @@ -65,7 +65,6 @@ #include "gromacs/legacyheaders/types/forcerec.h" #include "gromacs/legacyheaders/types/group.h" #include "gromacs/legacyheaders/types/interaction_const.h" -#include "gromacs/legacyheaders/types/mdatom.h" #include "gromacs/legacyheaders/types/nrnb.h" #include "gromacs/listed-forces/manage-threading.h" #include "gromacs/math/utilities.h" @@ -95,6 +94,7 @@ #include "gromacs/mdtypes/df_history.h" #include "gromacs/mdtypes/energyhistory.h" #include "gromacs/mdtypes/inputrec.h" +#include "gromacs/mdtypes/mdatom.h" #include "gromacs/mdtypes/state.h" #include "gromacs/pbcutil/mshift.h" #include "gromacs/pbcutil/pbc.h" -- 2.11.4.GIT