#include "gromacs/fileio/gmxfio-xdr.h"
#include "gromacs/legacyheaders/copyrite.h"
#include "gromacs/legacyheaders/names.h"
+#include "gromacs/legacyheaders/typedefs.h"
#include "gromacs/legacyheaders/types/ifunc.h"
#include "gromacs/math/vec.h"
#include "gromacs/topology/block.h"
*
* Copyright (c) 1991-2000, University of Groningen, The Netherlands.
* Copyright (c) 2001-2004, The GROMACS development team.
- * Copyright (c) 2013,2014, by the GROMACS development team, led by
+ * Copyright (c) 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.
#include "gromacs/legacyheaders/macros.h"
#include "gromacs/legacyheaders/nonbonded.h"
#include "gromacs/legacyheaders/nrnb.h"
-#include "gromacs/legacyheaders/typedefs.h"
+#include "gromacs/legacyheaders/types/forcerec.h"
#include "gromacs/math/vec.h"
#include "gromacs/utility/fatalerror.h"
*
* Copyright (c) 1991-2000, University of Groningen, The Netherlands.
* Copyright (c) 2001-2008, The GROMACS development team.
- * Copyright (c) 2013,2014, by the GROMACS development team, led by
+ * Copyright (c) 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.
#include "gromacs/gmxlib/nonbonded/nb_kernel.h"
#include "gromacs/legacyheaders/typedefs.h"
+struct t_forcerec;
+
#ifdef __cplusplus
extern "C" {
#endif
/*
* This file is part of the GROMACS molecular simulation package.
*
- * Copyright (c) 2012,2014, by the GROMACS development team, led by
+ * Copyright (c) 2012,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.
} /* fixes auto-indentation problems */
#endif
-
#include "gromacs/legacyheaders/typedefs.h"
+#include "gromacs/legacyheaders/types/forcerec.h"
#include "gromacs/legacyheaders/types/simple.h"
/* Structure to collect kernel data not available in forcerec or mdatoms structures.
#endif
struct gmx_domdec_t;
+struct gmx_enerdata_t;
struct gmx_mtop_t;
static const char IMDstr[] = "IMD:"; /**< Tag output from the IMD module with this string. */
#include "gromacs/legacyheaders/vsite.h"
#include "gromacs/legacyheaders/types/fcdata.h"
#include "gromacs/legacyheaders/types/force_flags.h"
+#include "gromacs/legacyheaders/types/forcerec.h"
#include "gromacs/timing/wallcycle.h"
struct t_commrec;
#include "gromacs/legacyheaders/typedefs.h"
+struct gmx_genborn_t;
+struct gmx_enerdata_t;
struct t_commrec;
+struct t_forcerec;
+struct t_graph;
+struct t_pbc;
#ifdef __cplusplus
extern "C" {
#define STILL_P5INV (1.0/STILL_P5)
#define STILL_PIP5 (M_PI*STILL_P5)
-struct t_graph;
-struct t_pbc;
/* Initialise GB stuff */
-int init_gb(gmx_genborn_t **p_born,
- t_forcerec *fr, const t_inputrec *ir,
+int init_gb(struct gmx_genborn_t **p_born,
+ struct t_forcerec *fr, const t_inputrec *ir,
const gmx_mtop_t *mtop, int gb_algorithm);
/* Born radii calculations, both with and without SSE acceleration */
-int calc_gb_rad(struct t_commrec *cr, t_forcerec *fr, t_inputrec *ir, gmx_localtop_t *top, rvec x[], t_nblist *nl, gmx_genborn_t *born, t_mdatoms *md, t_nrnb *nrnb);
+int calc_gb_rad(struct t_commrec *cr, struct t_forcerec *fr, t_inputrec *ir, gmx_localtop_t *top, rvec x[], t_nblist *nl, struct gmx_genborn_t *born, t_mdatoms *md, t_nrnb *nrnb);
/* Functions for calculating adjustments due to ie chain rule terms */
void
-calc_gb_forces(struct t_commrec *cr, t_mdatoms *md, gmx_genborn_t *born, gmx_localtop_t *top,
- rvec x[], rvec f[], t_forcerec *fr, t_idef *idef, int gb_algorithm, int sa_algorithm, t_nrnb *nrnb,
- const struct t_pbc *pbc, const struct t_graph *graph, gmx_enerdata_t *enerd);
+calc_gb_forces(struct t_commrec *cr, t_mdatoms *md, struct gmx_genborn_t *born, gmx_localtop_t *top,
+ rvec x[], rvec f[], struct t_forcerec *fr, t_idef *idef, int gb_algorithm, int sa_algorithm, t_nrnb *nrnb,
+ const struct t_pbc *pbc, const struct t_graph *graph, struct gmx_enerdata_t *enerd);
int
make_gb_nblist(struct t_commrec *cr, int gb_algorithm,
rvec x[], matrix box,
- t_forcerec *fr, t_idef *idef, struct t_graph *graph, gmx_genborn_t *born);
+ struct t_forcerec *fr, t_idef *idef, struct t_graph *graph, struct gmx_genborn_t *born);
void
-make_local_gb(const struct t_commrec *cr, gmx_genborn_t *born, int gb_algorithm);
+make_local_gb(const struct t_commrec *cr, struct gmx_genborn_t *born, int gb_algorithm);
#ifdef __cplusplus
}
#include "gromacs/legacyheaders/typedefs.h"
+struct gmx_gpu_info_t;
+struct gmx_gpu_opt_t;
+struct gmx_hw_info_t;
struct t_commrec;
#ifdef __cplusplus
/* Check the consistency of hw_opt with hwinfo.
This function should be called once on each MPI rank. */
-void gmx_check_hw_runconf_consistency(FILE *fplog,
- const gmx_hw_info_t *hwinfo,
- const struct t_commrec *cr,
- const gmx_hw_opt_t *hw_opt,
- gmx_bool bUseGPU);
+void gmx_check_hw_runconf_consistency(FILE *fplog,
+ const struct gmx_hw_info_t *hwinfo,
+ const struct t_commrec *cr,
+ const struct gmx_hw_opt_t *hw_opt,
+ gmx_bool bUseGPU);
#endif
#include "gromacs/fileio/enxio.h"
#include "gromacs/legacyheaders/ebin.h"
-#include "gromacs/legacyheaders/typedefs.h"
+#include "gromacs/legacyheaders/types/forcerec.h"
#include "gromacs/legacyheaders/types/state.h"
struct gmx_constr;
struct gmx_ekindata_t;
+struct gmx_mtop_t;
struct gmx_output_env_t;
struct t_fcdata;
#ifndef _names_h
#define _names_h
-
-#include "gromacs/legacyheaders/typedefs.h"
+#include "gromacs/legacyheaders/types/forcerec.h"
+#include "gromacs/topology/atoms.h"
+#include "gromacs/topology/topology.h"
#ifdef __cplusplus
extern "C" {
*
* Copyright (c) 1991-2000, University of Groningen, The Netherlands.
* Copyright (c) 2001-2004, The GROMACS development team.
- * Copyright (c) 2013,2014, by the GROMACS development team, led by
+ * Copyright (c) 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.
#define _nonbonded_h
#include "gromacs/legacyheaders/typedefs.h"
+#include "gromacs/legacyheaders/types/forcerec.h"
#ifdef __cplusplus
extern "C" {
#endif
void
-gmx_nonbonded_setup(t_forcerec * fr,
- gmx_bool bGenericKernelOnly);
+gmx_nonbonded_setup(struct t_forcerec * fr,
+ gmx_bool bGenericKernelOnly);
#define GMX_NONBONDED_DO_SR (1<<5)
void
-do_nonbonded(t_forcerec *fr,
+do_nonbonded(struct t_forcerec *fr,
rvec x[], rvec f_shortrange[], rvec f_longrange[], t_mdatoms *md, t_blocka *excl,
gmx_grppairener_t *grppener,
t_nrnb *nrnb, real *lambda, real dvdlambda[],
#include "gromacs/legacyheaders/tgroup.h"
#include "gromacs/legacyheaders/typedefs.h"
+struct gmx_ns_t;
struct t_commrec;
+struct t_forcerec;
#ifdef __cplusplus
extern "C" {
struct gmx_domdec_t;
struct gmx_domdec_zones_t;
struct gmx_ddbox_t;
+struct t_forcerec;
#ifdef __cplusplus
extern "C" {
/* DEPRECATED! value for signaling unitialized variables */
#define NOTSET -12345
-#include "gromacs/legacyheaders/types/forcerec.h"
#include "gromacs/legacyheaders/types/inputrec.h"
#include "gromacs/legacyheaders/types/mdatom.h"
#include "gromacs/legacyheaders/types/nblist.h"
egCOUL14, egLJ14, egGB, egNR
};
-typedef struct {
+typedef struct gmx_grppairener_t {
int nener; /* The number of energy group pairs */
real *ener[egNR]; /* Energy terms for each pair of groups */
} gmx_grppairener_t;
-typedef struct {
+typedef struct gmx_enerdata_t {
real term[F_NRE]; /* The energies for all different interaction types */
gmx_grppairener_t grpp;
double dvdl_lin[efptNR]; /* Contributions to dvdl with linear lam-dependence */
typedef struct ewald_corr_thread_t ewald_corr_thread_t;
-typedef struct {
+typedef struct t_forcerec {
interaction_const_t *ic;
/* Domain Decomposition */
*
* Copyright (c) 1991-2000, University of Groningen, The Netherlands.
* Copyright (c) 2001-2008, The GROMACS development team.
- * Copyright (c) 2010,2014, by the GROMACS development team, led by
+ * Copyright (c) 2010,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.
typedef struct gbtmpnbls *gbtmpnbls_t;
/* Struct to hold all the information for GB */
-typedef struct
+typedef struct gmx_genborn_t
{
int nr; /* number of atoms, length of arrays below */
int n12; /* number of 1-2 (bond) interactions */
* It is initialized by gmx_detect_hardware().
* NOTE: this structure may only contain structures that are globally valid
* (i.e. must be able to be shared among all threads) */
-typedef struct
+typedef struct gmx_hw_info_t
{
/* Data for our local physical node */
struct gmx_gpu_info_t gpu_info; /* Information about GPUs detected in the system */
};
/* GPU device selection information -- includes either CUDA or OpenCL devices */
-typedef struct
+typedef struct gmx_gpu_opt_t
{
char *gpu_id; /* GPU id's to use, each specified as chars */
gmx_bool bUserSet; /* true if the GPUs in dev_use are manually provided by the user */
} gmx_gpu_opt_t;
/* Threading and GPU options, can be set automatically or by the user */
-typedef struct {
+typedef struct gmx_hw_opt_t {
int nthreads_tot; /* Total number of threads requested (TMPI) */
int nthreads_tmpi; /* Number of TMPI threads requested */
int nthreads_omp; /* Number of OpenMP threads requested */
*
* Copyright (c) 1991-2000, University of Groningen, The Netherlands.
* Copyright (c) 2001-2008, The GROMACS development team.
- * Copyright (c) 2010,2014, by the GROMACS development team, led by
+ * Copyright (c) 2010,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.
atom_id jcg[MAX_CG];
} t_ns_buf;
-typedef struct {
+typedef struct gmx_ns_t {
gmx_bool bCGlist;
atom_id *simple_aaj;
t_grid *grid;
*
* Copyright (c) 1991-2000, University of Groningen, The Netherlands.
* Copyright (c) 2001-2008, The GROMACS development team.
- * Copyright (c) 2010,2014, by the GROMACS development team, led by
+ * Copyright (c) 2010,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.
} t_MMrec;
-typedef struct {
+typedef struct t_QMMMrec {
int QMMMscheme; /* ONIOM (multi-layer) or normal */
int nrQMlayers; /* number of QM layers (total layers +1 (MM)) */
t_QMrec **qm; /* atoms and run params for each QM group */
extern "C" {
#endif
+struct gmx_enerdata_t;
struct t_graph;
/* Abstract type for stochastic dynamics */
#include "gromacs/legacyheaders/nrnb.h"
#include "gromacs/legacyheaders/types/fcdata.h"
#include "gromacs/legacyheaders/types/force_flags.h"
+#include "gromacs/legacyheaders/types/forcerec.h"
#include "gromacs/listed-forces/bonded.h"
#include "gromacs/listed-forces/position-restraints.h"
#include "gromacs/math/vec.h"
#include "gromacs/legacyheaders/typedefs.h"
+struct gmx_enerdata_t;
+struct gmx_grppairener_t;
struct gmx_multisim_t;
struct t_fcdata;
+struct t_forcerec;
#ifdef __cplusplus
extern "C" {
#include <cmath>
#include "gromacs/legacyheaders/nrnb.h"
+#include "gromacs/legacyheaders/types/forcerec.h"
#include "gromacs/math/vec.h"
#include "gromacs/pbcutil/pbc.h"
#include "gromacs/timing/wallcycle.h"
extern "C" {
#endif
-struct t_pbc;
+struct gmx_enerdata_t;
struct gmx_wallcycle;
+struct t_forcerec;
+struct t_pbc;
/*! \brief Helper function that wraps calls to posres */
void
#include <cmath>
-#include "gromacs/legacyheaders/typedefs.h"
+#include "gromacs/legacyheaders/types/forcerec.h"
#include "gromacs/legacyheaders/types/ifunc.h"
#include "gromacs/legacyheaders/types/simple.h"
#include "gromacs/math/utilities.h"
{
#endif
+struct t_forcerec;
struct t_pbc;
/** \brief calculates the AdResS weight of a particle
#include "gromacs/legacyheaders/typedefs.h"
#include "gromacs/legacyheaders/vsite.h"
#include "gromacs/legacyheaders/types/force_flags.h"
+#include "gromacs/legacyheaders/types/forcerec.h"
#include "gromacs/timing/wallcycle.h"
struct t_fcdata;
#include "gromacs/legacyheaders/genborn.h"
#include "gromacs/legacyheaders/network.h"
+#include "gromacs/legacyheaders/types/forcerec.h"
#include "gromacs/legacyheaders/types/simple.h"
#include "gromacs/math/units.h"
#include "gromacs/math/vec.h"
*
* Copyright (c) 1991-2000, University of Groningen, The Netherlands.
* Copyright (c) 2001-2009, The GROMACS Development Team.
- * Copyright (c) 2010,2014, by the GROMACS development team, led by
+ * Copyright (c) 2010,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.
#include "gromacs/legacyheaders/typedefs.h"
#include "gromacs/legacyheaders/types/simple.h"
+struct gmx_genborn_t;
+struct t_forcerec;
+
int
-genborn_allvsall_calc_still_radii(t_forcerec * fr,
- t_mdatoms * mdatoms,
- gmx_genborn_t * born,
- gmx_localtop_t * top,
- real * x,
- void * work);
+genborn_allvsall_calc_still_radii(struct t_forcerec * fr,
+ t_mdatoms * mdatoms,
+ gmx_genborn_t * born,
+ gmx_localtop_t * top,
+ real * x,
+ void * work);
int
-genborn_allvsall_calc_hct_obc_radii(t_forcerec * fr,
- t_mdatoms * mdatoms,
- gmx_genborn_t * born,
- int gb_algorithm,
- gmx_localtop_t * top,
- real * x,
- void * work);
+genborn_allvsall_calc_hct_obc_radii(struct t_forcerec * fr,
+ t_mdatoms * mdatoms,
+ gmx_genborn_t * born,
+ int gb_algorithm,
+ gmx_localtop_t * top,
+ real * x,
+ void * work);
int
-genborn_allvsall_calc_chainrule(t_forcerec * fr,
- t_mdatoms * mdatoms,
- gmx_genborn_t * born,
- real * x,
- real * f,
- int gb_algorithm,
- void * work);
+genborn_allvsall_calc_chainrule(struct t_forcerec * fr,
+ t_mdatoms * mdatoms,
+ gmx_genborn_t * born,
+ real * x,
+ real * f,
+ int gb_algorithm,
+ void * work);
#endif
/*
* This file is part of the GROMACS molecular simulation package.
*
- * Copyright (c) 2012,2013,2014, by the GROMACS development team, led by
+ * 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.
#ifndef _nbnxn_kernel_gpu_ref_h
#define _nbnxn_kernel_gpu_ref_h
-#include "gromacs/legacyheaders/typedefs.h"
+#include "gromacs/legacyheaders/types/forcerec.h"
#include "gromacs/mdlib/nbnxn_pairlist.h"
#ifdef __cplusplus
/*
* This file is part of the GROMACS molecular simulation package.
*
- * Copyright (c) 2012,2013,2014, by the GROMACS development team, led by
+ * 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.
#ifndef _nbnxn_kernel_ref_h
#define _nbnxn_kernel_ref_h
-#include "gromacs/legacyheaders/typedefs.h"
+#include "gromacs/legacyheaders/types/forcerec.h"
#include "gromacs/mdlib/nbnxn_pairlist.h"
#ifdef __cplusplus
#include "config.h"
#include "gromacs/legacyheaders/typedefs.h"
+#include "gromacs/legacyheaders/types/forcerec.h"
#include "gromacs/mdlib/nb_verlet.h"
#include "gromacs/mdlib/nbnxn_simd.h"
* kernel type 2xnn.
*/
-#include "gromacs/legacyheaders/typedefs.h"
+#include "gromacs/legacyheaders/types/forcerec.h"
#include "gromacs/mdlib/nbnxn_pairlist.h"
/*! \brief Run-time dispatcher for nbnxn kernel functions. */
#include "config.h"
#include "gromacs/legacyheaders/typedefs.h"
+#include "gromacs/legacyheaders/types/forcerec.h"
#include "gromacs/mdlib/nb_verlet.h"
#include "gromacs/mdlib/nbnxn_simd.h"
* kernel type 4xn.
*/
-#include "gromacs/legacyheaders/typedefs.h"
+#include "gromacs/legacyheaders/types/forcerec.h"
#include "gromacs/mdlib/nbnxn_pairlist.h"
/*! \brief Run-time dispatcher for nbnxn kernel functions. */
#include "gromacs/legacyheaders/tgroup.h"
#include "gromacs/legacyheaders/typedefs.h"
+struct t_forcerec;
+struct t_QMMMrec;
+
#ifdef __cplusplus
extern "C" {
#endif
#include "gromacs/timing/wallcycle.h"
struct gmx_constr;
+struct gmx_enerdata_t;
struct gmx_shellfc_t;
+struct gmx_mtop_t;
+struct t_forcerec;
struct t_fcdata;
struct t_graph;
gmx_int64_t mdstep, t_inputrec *inputrec,
gmx_bool bDoNS, int force_flags,
gmx_localtop_t *top,
- struct gmx_constr *constr,
+ gmx_constr *constr,
gmx_enerdata_t *enerd, t_fcdata *fcd,
t_state *state, rvec f[],
tensor force_vir,
t_mdatoms *md,
t_nrnb *nrnb, gmx_wallcycle_t wcycle,
- struct t_graph *graph,
+ t_graph *graph,
gmx_groups_t *groups,
gmx_shellfc_t *shfc,
t_forcerec *fr,
#include "gromacs/legacyheaders/typedefs.h"
+struct gmx_enerdata_t;
struct gmx_multisim_t;
struct t_commrec;
#include "gromacs/legacyheaders/typedefs.h"
+struct gmx_hw_info_t;
+struct gmx_hw_opt_t;
struct gmx_mtop_t;
struct t_commrec;