![]() |
ESPResSo
Extensible Simulation Package for Research on Soft Matter Systems
|
State of the p3m methods, the part which applies to both, electrostatic and dipolar p3m. More...
#include <data_struct.hpp>
Inheritance diagram for P3MStateCommon< FloatType >:
Collaboration diagram for P3MStateCommon< FloatType >:Public Types | |
| using | value_type = FloatType |
Public Member Functions | |
| P3MStateCommon (P3MParameters &¶meters) | |
| void | calc_differential_operator () |
| Calculate the Fourier transformed differential operator. | |
Public Attributes | |
| P3MParameters | params |
| P3M base parameters. | |
| P3MLocalMesh | local_mesh |
| Local mesh geometry information for this MPI rank. | |
| std::array< std::vector< int >, 3 > | d_op |
| Spatial differential operator in k-space. | |
| std::vector< FloatType > | g_force |
| Force optimised influence function (k-space) | |
| std::vector< FloatType > | g_energy |
| Energy optimised influence function (k-space) | |
State of the p3m methods, the part which applies to both, electrostatic and dipolar p3m.
Definition at line 40 of file data_struct.hpp.
| using P3MStateCommon< FloatType >::value_type = FloatType |
Definition at line 41 of file data_struct.hpp.
|
inlineexplicit |
Definition at line 43 of file data_struct.hpp.
|
inline |
Calculate the Fourier transformed differential operator.
Remark: This is done on the level of n-vectors and not k-vectors, i.e. the prefactor \( 2i\pi/L \) is missing!
Definition at line 64 of file data_struct.hpp.
References calc_p3m_mesh_shift(), P3MStateCommon< FloatType >::d_op, P3MParameters::mesh, and P3MStateCommon< FloatType >::params.
| std::array<std::vector<int>, 3> P3MStateCommon< FloatType >::d_op |
Spatial differential operator in k-space.
We use an i*k differentiation. TODO: RW: I think this is not the differential operator but the mapping between index in the GLOBAL mesh and the corresponding k-vector with a few pre-factors missing.
Definition at line 58 of file data_struct.hpp.
Referenced by P3MStateCommon< FloatType >::calc_differential_operator().
| std::vector<FloatType> P3MStateCommon< FloatType >::g_energy |
Energy optimised influence function (k-space)
Definition at line 71 of file data_struct.hpp.
| std::vector<FloatType> P3MStateCommon< FloatType >::g_force |
Force optimised influence function (k-space)
Definition at line 69 of file data_struct.hpp.
| P3MLocalMesh P3MStateCommon< FloatType >::local_mesh |
Local mesh geometry information for this MPI rank.
Definition at line 49 of file data_struct.hpp.
Referenced by DipolarP3MState< FloatType, FFTConfig >::make_fft_instance(), DipolarP3MState< FloatType, FFTConfig >::make_mesh_instance(), CoulombP3MHeffte< FloatType, Architecture, FFTConfig >::prepare_fft_mesh(), CoulombP3MHeffte< FloatType, Architecture, FFTConfig >::scaleby_box_l(), and DipolarP3MHeffte< FloatType, Architecture, FFTConfig >::scaleby_box_l().
| P3MParameters P3MStateCommon< FloatType >::params |
P3M base parameters.
Definition at line 47 of file data_struct.hpp.
Referenced by CoulombP3MHeffte< FloatType, Architecture, FFTConfig >::adapt_epsilon_elc(), P3MStateCommon< FloatType >::calc_differential_operator(), DipolarP3MHeffte< FloatType, Architecture, FFTConfig >::calc_energy_correction(), CoulombTuningAlgorithm< FloatType, Architecture, FFTConfig >::calculate_accuracy(), DipolarTuningAlgorithm< FloatType, Architecture, FFTConfig >::calculate_accuracy(), CoulombP3MHeffte< FloatType, Architecture, FFTConfig >::CoulombP3MHeffte(), CoulombTuningAlgorithm< FloatType, Architecture, FFTConfig >::determine_mesh_limits(), DipolarTuningAlgorithm< FloatType, Architecture, FFTConfig >::determine_mesh_limits(), DipolarP3MHeffte< FloatType, Architecture, FFTConfig >::DipolarP3MHeffte(), CoulombTuningAlgorithm< FloatType, Architecture, FFTConfig >::get_params(), DipolarTuningAlgorithm< FloatType, Architecture, FFTConfig >::get_params(), CoulombTuningAlgorithm< FloatType, Architecture, FFTConfig >::get_time(), CoulombP3MHeffte< FloatType, Architecture, FFTConfig >::init_gpu_kernels(), CoulombP3MHeffte< FloatType, Architecture, FFTConfig >::prepare_fft_mesh(), CoulombP3MHeffte< FloatType, Architecture, FFTConfig >::scaleby_box_l(), DipolarP3MHeffte< FloatType, Architecture, FFTConfig >::scaleby_box_l(), CoulombTuningAlgorithm< FloatType, Architecture, FFTConfig >::setup_logger(), DipolarTuningAlgorithm< FloatType, Architecture, FFTConfig >::setup_logger(), CoulombP3MHeffte< FloatType, Architecture, FFTConfig >::tune(), and DipolarP3MHeffte< FloatType, Architecture, FFTConfig >::tune().