Gromacs  2024.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Macros | Typedefs | Variables
#include "config.h"
#include <vector>
#include "gromacs/math/gmxcomplex.h"
#include "gromacs/utility/alignedallocator.h"
#include "gromacs/utility/arrayref.h"
#include "gromacs/utility/defaultinitializationallocator.h"
#include "gromacs/utility/gmxassert.h"
#include "gromacs/utility/gmxmpi.h"
#include "spline_vectors.h"
+ Include dependency graph for pme_internal.h:
+ This graph shows which files directly or indirectly include this file:

Description

This file contains function declarations necessary for computing energies and forces for the PME long-ranged part (Coulomb and LJ).

Author
Berk Hess hess@.nosp@m.kth..nosp@m.se
Mark Abraham mark..nosp@m.j.ab.nosp@m.raham.nosp@m.@gma.nosp@m.il.co.nosp@m.m

Macros

#define PME_ORDER_MAX   12
 We only define a maximum to be able to use local arrays without allocation. An order larger than 12 should never be needed, even for test cases. If needed it can be changed here.
 
#define PME_GRID_QA   0
 Grid indices for A state for charge and Lennard-Jones C6.
 
#define PME_GRID_C6A   2
 
#define DO_Q   2 /* Electrostatic grids have index q<2 */
 Flags that indicate the number of PME grids in use.
 
#define DO_Q_AND_LJ   4 /* non-LB LJ grids have index 2 <= q < 4 */
 
#define DO_Q_AND_LJ_LB   9 /* With LB rules we need a total of 2+7 grids */
 

Typedefs

typedef struct gmx_parallel_3dfft * gmx_parallel_3dfft_t
 A repeat of typedef from parallel_3dfft.h.
 

Variables

static const real lb_scale_factor []
 Pascal triangle coefficients scaled with (1/2)^6 for LJ-PME with LB-rules. More...
 
static const real lb_scale_factor_symm [] = { 2.0 / 64, 12.0 / 64, 30.0 / 64, 20.0 / 64 }
 Pascal triangle coefficients used in solve_pme_lj_yzx, only need to do 4 calculations due to symmetry.
 

Variable Documentation

const real lb_scale_factor[]
static
Initial value:
= { 1.0 / 64, 6.0 / 64, 15.0 / 64, 20.0 / 64,
15.0 / 64, 6.0 / 64, 1.0 / 64 }

Pascal triangle coefficients scaled with (1/2)^6 for LJ-PME with LB-rules.