Any abstract of the convolution manager is read-only.
More...
#include <convolution_manager.h>
|
|
| ConvolutionKit (int system_count_in, T ew_coeff_in, const int *sys_offsets_in, const T *self_ecorr_in, const T *bmesh_a_in, const T *bmesh_b_in, const T *bmesh_c_in, const T *mval_a_in, const T *mval_b_in, const T *mval_c_in, const T *msval_a_in, const T *msval_b_in, const T *msval_c_in, const T *cmesh_a_in, const T *cmesh_b_in, const T *cmesh_c_in) |
| | As with other abstracts, the convolution kit is constructed with a series of values for each associated pointer and critical constant. See Essmann's 1995 paper (below) for the inspiration to some of the nomenclature.
|
| |
|
| | ConvolutionKit (const ConvolutionKit &original)=default |
| | Like other abstracts, the presence of const members implicitly forbids the copy and move assignment operators. Copy and move constructors may be taken in their deafult forms.
|
| |
|
| ConvolutionKit (ConvolutionKit &&original)=default |
| |
|
|
const int | system_count |
| | The number of indepedent systems.
|
| |
|
const T | ew_coeff |
| | The Ewald coefficien in use by the splitting function.
|
| |
| const int * | sys_offsets |
| |
| const T * | self_ecorr |
| |
|
const T * | bmesh_a |
| | "B" mesh prefactors for each system along the unit cell A axis
|
| |
|
const T * | bmesh_b |
| | "B" mesh prefactors for each system along the unit cell B axis
|
| |
|
const T * | bmesh_c |
| | "B" mesh prefactors for each system along the unit cell C axis
|
| |
|
const T * | mval_a |
| | "M" values for each system along the unit cell A axis
|
| |
|
const T * | mval_b |
| | "M" values for each system along the unit cell B axis
|
| |
|
const T * | mval_c |
| | "M" values for each system along the unit cell C axis
|
| |
|
const T * | msval_a |
| | Shifted "M" values for each system along the unit cell A axis.
|
| |
|
const T * | msval_b |
| | Shifted "M" values for each system along the unit cell B axis.
|
| |
|
const T * | msval_c |
| | Shifted "M" values for each system along the unit cell C axis.
|
| |
| const T * | cmesh_a |
| |
|
const T * | cmesh_b |
| | "C" mesh prefactors for each system along the unit cell B axis.
|
| |
|
const T * | cmesh_c |
| | "C" mesh prefactors for each system along the unit cell C axis.
|
| |
template<typename T>
struct stormm::energy::ConvolutionKit< T >
Any abstract of the convolution manager is read-only.
◆ ConvolutionKit()
Like other abstracts, the presence of const members implicitly forbids the copy and move assignment operators. Copy and move constructors may be taken in their deafult forms.
- Parameters
-
| original | The original object to copy or move |
◆ cmesh_a
"C" mesh prefactors for each system along the unit cell A axis. These are only computed if all systems' unit cells are orthorhombic.
◆ self_ecorr
Self-correlation energy of the charges (electrostatic or otherwise) in each system.
◆ sys_offsets
Offsets for grid elements and prefactors in each system. The maximum of all grid dimensions for a particular system, rounded to the nearest multiple of the warp size, determines each successive system offset in the arrays for prefactors and M values along any of the A, B, or C unit cell dimensions.
The documentation for this struct was generated from the following file: