STORMM Source Documentation
Loading...
Searching...
No Matches
stormm::energy::PMIGridWriter Struct Reference

A writeable abstract for the Particle-Mesh Interaction Grid class. More...

#include <pmigrid.h>

Collaboration diagram for stormm::energy::PMIGridWriter:

Public Member Functions

 PMIGridWriter (NonbondedTheme theme_in, PrecisionModel mode_in, FFTMode fftm_in, int fp_bits_in, int nsys_in, int order_in, int wu_count_in, int max_grid_points_in, const uint4 *dims_in, double *ddata_in, float *fdata_in, const uint *work_units_in)
 The constructor take a straight list of inputs for all member variables.
 
 PMIGridWriter (const PMIGridWriter &original)=default
 As with other abstracts, the presence of one or more const members forbids definition of the copy and move assignment operators, but with no pointers to repair the default copy and move constructors apply.
 
 PMIGridWriter (PMIGridWriter &&original)=default
 

Public Attributes

const NonbondedTheme theme
 
const PrecisionModel mode
 The mode in which the object is to operate.
 
const FFTMode fftm
 
const float shacc_fp_scale
 
const int nsys
 
const int order
 
const int wu_count
 
const int max_grid_points
 
const uint4dims
 
double * ddata
 
float * fdata
 
const uint * work_units
 

Detailed Description

A writeable abstract for the Particle-Mesh Interaction Grid class.

Member Data Documentation

◆ ddata

double* stormm::energy::PMIGridWriter::ddata

Double-precision real data, bounded by indices found in the "w" member of dims

◆ dims

const uint4* stormm::energy::PMIGridWriter::dims

Dimensions of each PMI grid. A-, B-, and C-axis lengths are found in the "x", "y", and "z" members of the tuple, with the offset for the start of each grid in the "w" member.

◆ fdata

float* stormm::energy::PMIGridWriter::fdata

Single-precision real data, bounded by indices found in the "w" member of dims

◆ fftm

const FFTMode stormm::energy::PMIGridWriter::fftm

The layout of the FFT grid, implying a mode in which the FFT will be carried out

◆ max_grid_points

const int stormm::energy::PMIGridWriter::max_grid_points

The naximum number of grid points that any one work unit deals with

◆ nsys

const int stormm::energy::PMIGridWriter::nsys

The number of systems in the synthesis served by this object, and a trusted length for the dims array below

◆ order

const int stormm::energy::PMIGridWriter::order

The interpolation order for B-pline mapping of density to the particle-mesh interaction grid

◆ shacc_fp_scale

const float stormm::energy::PMIGridWriter::shacc_fp_scale

Scaling factor used in fixed-precision accumulation when accumulating density in shared memory.

◆ theme

const NonbondedTheme stormm::energy::PMIGridWriter::theme

The non-bonded property mapped to the particle-mesh interaction grid

◆ work_units

const uint* stormm::energy::PMIGridWriter::work_units

Array of 32-element work units to guide certain types of accumulation kernels

◆ wu_count

const int stormm::energy::PMIGridWriter::wu_count

The number of work units built to guide special-purpose GPU kernels. When multiplied by 32, this is the trusted length of work_units.


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