ESPResSo
Extensible Simulation Package for Research on Soft Matter Systems
Loading...
Searching...
No Matches
P3MLocalMesh Struct Reference

Properties of the local mesh. More...

#include <common.hpp>

Public Member Functions

void recalc_ld_pos (P3MParameters const &params)
 Recalculate quantities derived from the mesh and box length: ld_pos (position of the left down mesh).
 
void calc_local_ca_mesh (P3MParameters const &params, LocalBox const &local_geo, double skin, double space_layer)
 Calculate properties of the local FFT mesh for the charge assignment process.
 

Public Attributes

Utils::Vector3i dim
 dimension (size) of local mesh.
 
int size
 number of local mesh points.
 
int ld_ind [3]
 index of lower left corner of the local mesh in the global mesh.
 
double ld_pos [3]
 position of the first local mesh point.
 
int inner [3]
 dimension of mesh inside node domain.
 
int in_ld [3]
 inner left down grid point
 
int in_ur [3]
 inner up right grid point + (1,1,1)
 
int margin [6]
 number of margin mesh points.
 
int r_margin [6]
 number of margin mesh points from neighbour nodes
 
int q_2_off
 offset between mesh lines of the last dimension
 
int q_21_off
 offset between mesh lines of the two last dimensions
 

Detailed Description

Properties of the local mesh.

Definition at line 176 of file p3m/common.hpp.

Member Function Documentation

◆ calc_local_ca_mesh()

void P3MLocalMesh::calc_local_ca_mesh ( P3MParameters const &  params,
LocalBox const &  local_geo,
double  skin,
double  space_layer 
)

Calculate properties of the local FFT mesh for the charge assignment process.

Definition at line 34 of file common.cpp.

References Utils::Vector< T, N >::broadcast(), dim, in_ld, in_ur, inner, ld_ind, margin, LocalBox::my_left(), LocalBox::my_right(), params, q_21_off, q_2_off, ROUND_ERROR_PREC, and size.

◆ recalc_ld_pos()

void P3MLocalMesh::recalc_ld_pos ( P3MParameters const &  params)
inline

Recalculate quantities derived from the mesh and box length: ld_pos (position of the left down mesh).

Definition at line 205 of file p3m/common.hpp.

References ld_ind, ld_pos, and params.

Referenced by CoulombP3MImpl< FloatType, Architecture >::scaleby_box_l(), and DipolarP3MImpl< FloatType, Architecture >::scaleby_box_l().

Member Data Documentation

◆ dim

Utils::Vector3i P3MLocalMesh::dim

dimension (size) of local mesh.

Definition at line 178 of file p3m/common.hpp.

Referenced by calc_local_ca_mesh(), p3m_calculate_interpolation_weights(), and p3m_send_mesh< FloatType >::resize().

◆ in_ld

int P3MLocalMesh::in_ld[3]

inner left down grid point

Definition at line 189 of file p3m/common.hpp.

Referenced by calc_local_ca_mesh().

◆ in_ur

int P3MLocalMesh::in_ur[3]

inner up right grid point + (1,1,1)

Definition at line 191 of file p3m/common.hpp.

Referenced by calc_local_ca_mesh(), and p3m_send_mesh< FloatType >::resize().

◆ inner

int P3MLocalMesh::inner[3]

dimension of mesh inside node domain.

Definition at line 187 of file p3m/common.hpp.

Referenced by calc_local_ca_mesh().

◆ ld_ind

int P3MLocalMesh::ld_ind[3]

index of lower left corner of the local mesh in the global mesh.

Definition at line 183 of file p3m/common.hpp.

Referenced by calc_local_ca_mesh(), and recalc_ld_pos().

◆ ld_pos

double P3MLocalMesh::ld_pos[3]

position of the first local mesh point.

Definition at line 185 of file p3m/common.hpp.

Referenced by p3m_calculate_interpolation_weights(), and recalc_ld_pos().

◆ margin

int P3MLocalMesh::margin[6]

number of margin mesh points.

Definition at line 193 of file p3m/common.hpp.

Referenced by calc_local_ca_mesh(), and p3m_send_mesh< FloatType >::resize().

◆ q_21_off

int P3MLocalMesh::q_21_off

offset between mesh lines of the two last dimensions

Definition at line 199 of file p3m/common.hpp.

Referenced by calc_local_ca_mesh(), and p3m_interpolate().

◆ q_2_off

int P3MLocalMesh::q_2_off

offset between mesh lines of the last dimension

Definition at line 197 of file p3m/common.hpp.

Referenced by calc_local_ca_mesh(), and p3m_interpolate().

◆ r_margin

int P3MLocalMesh::r_margin[6]

number of margin mesh points from neighbour nodes

Definition at line 195 of file p3m/common.hpp.

◆ size

int P3MLocalMesh::size

number of local mesh points.

Definition at line 180 of file p3m/common.hpp.

Referenced by calc_local_ca_mesh().


The documentation for this struct was generated from the following files: