Implemented nbnxn LJ switch functions
[alexxy/gromacs.git] / src / gromacs / mdlib / nbnxn_kernels / simd_4xn / nbnxn_kernel_ElecQSTab_VdwLJPSw_VgrpF_4xn.c
similarity index 82%
rename from src/gromacs/mdlib/nbnxn_kernels/simd_2xnn/nbnxn_kernel_simd_2xnn_tab_comb_none_ener.c
rename to src/gromacs/mdlib/nbnxn_kernels/simd_4xn/nbnxn_kernel_ElecQSTab_VdwLJPSw_VgrpF_4xn.c
index 50038027ee94e8ef6d79e08a51e4142a57f0a68a..59e2c624ba6c6a69d6babdd7f7c99b7e97d044f8 100644 (file)
@@ -1,7 +1,7 @@
 /*
  * This file is part of the GROMACS molecular simulation package.
  *
- * Copyright (c) 2012,2013, by the GROMACS development team, led by
+ * Copyright (c) 2012,2013,2014, 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.
  */
 /*
  * Note: this file was generated by the Verlet kernel generator for
- * kernel type 2xnn.
+ * kernel type 4xn.
  */
 
 /* Some target architectures compile kernels for only some NBNxN
  * kernel flavours, but the code is generated before the target
  * architecture is known. So compilation is conditional upon
- * GMX_NBNXN_SIMD_2XNN, so that this file reduces to a stub
+ * GMX_NBNXN_SIMD_4XN, so that this file reduces to a stub
  * function definition when the kernel will never be called.
  */
-#define GMX_SIMD_J_UNROLL_SIZE 2
-#include "nbnxn_kernel_simd_2xnn.h"
+#define GMX_SIMD_J_UNROLL_SIZE 1
+#include "nbnxn_kernel_simd_4xn.h"
 
 #define CALC_COUL_TAB
 /* Use no LJ combination rule */
+#define LJ_POT_SWITCH
 #define CALC_ENERGIES
+#define ENERGY_GROUPS
 
-#ifdef GMX_NBNXN_SIMD_2XNN
-#include "nbnxn_kernel_simd_2xnn_common.h"
-#endif /* GMX_NBNXN_SIMD_2XNN */
+#ifdef GMX_NBNXN_SIMD_4XN
+#include "nbnxn_kernel_simd_4xn_common.h"
+#endif /* GMX_NBNXN_SIMD_4XN */
 
 #ifdef CALC_ENERGIES
 void
-nbnxn_kernel_simd_2xnn_tab_comb_none_ener(const nbnxn_pairlist_t    gmx_unused *nbl,
+nbnxn_kernel_ElecQSTab_VdwLJPSw_VgrpF_4xn(const nbnxn_pairlist_t    gmx_unused *nbl,
                                           const nbnxn_atomdata_t    gmx_unused *nbat,
                                           const interaction_const_t gmx_unused *ic,
                                           rvec                      gmx_unused *shift_vec,
@@ -66,21 +68,21 @@ nbnxn_kernel_simd_2xnn_tab_comb_none_ener(const nbnxn_pairlist_t    gmx_unused *
                                           real                      gmx_unused *Vc)
 #else /* CALC_ENERGIES */
 void
-nbnxn_kernel_simd_2xnn_tab_comb_none_ener(const nbnxn_pairlist_t    gmx_unused *nbl,
+nbnxn_kernel_ElecQSTab_VdwLJPSw_VgrpF_4xn(const nbnxn_pairlist_t    gmx_unused *nbl,
                                           const nbnxn_atomdata_t    gmx_unused *nbat,
                                           const interaction_const_t gmx_unused *ic,
                                           rvec                      gmx_unused *shift_vec,
                                           real                      gmx_unused *f,
                                           real                      gmx_unused *fshift)
 #endif /* CALC_ENERGIES */
-#ifdef GMX_NBNXN_SIMD_2XNN
-#include "nbnxn_kernel_simd_2xnn_outer.h"
-#else /* GMX_NBNXN_SIMD_2XNN */
+#ifdef GMX_NBNXN_SIMD_4XN
+#include "nbnxn_kernel_simd_4xn_outer.h"
+#else /* GMX_NBNXN_SIMD_4XN */
 {
 /* No need to call gmx_incons() here, because the only function
  * that calls this one is also compiled conditionally. When
- * GMX_NBNXN_SIMD_2XNN is not defined, it will call no kernel functions and
+ * GMX_NBNXN_SIMD_4XN is not defined, it will call no kernel functions and
  * instead call gmx_incons().
  */
 }
-#endif /* GMX_NBNXN_SIMD_2XNN */
+#endif /* GMX_NBNXN_SIMD_4XN */