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

A read-only abstract which can interpret the PMIGrid data in split fixed-precision format. More...

#include <pmigrid.h>

Collaboration diagram for stormm::energy::PMIGridFPReader:

Public Member Functions

 PMIGridFPReader (NonbondedTheme theme_in, PrecisionModel mode_in, FFTMode fftm_in, bool use_overflow_in, int fp_bits_in, int nsys_in, int order_in, const uint4 *dims_in, const double *ddata_in, const float *fdata_in, const int *overflow_in)
 The constructor takes inputs from the object's member variables and re-interprets some of them as necessary.
 
 PMIGridFPReader (const PMIGridAccumulator &w)
 As with some other readers, the writer can be used as a constructor argument.
 
 PMIGridFPReader (const PMIGridAccumulator *w)
 
 PMIGridFPReader (const PMIGridFPReader &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.
 
 PMIGridFPReader (PMIGridFPReader &&original)=default
 

Public Attributes

const NonbondedTheme theme
 
const PrecisionModel mode
 The mode in which the object is to operate.
 
const FFTMode fftm
 
const bool use_overflow
 Flag to indicate that overflow accumulators are relevant.
 
const int fp_bits
 
const float fp_scale
 
const int nsys
 
const int order
 
const uint4dims
 
const llint * lldata
 Primary accumulator for 95-bit split fixed precision data.
 
const int * idata
 Primary accumulator for 63-bit split fixed precision data.
 
const int * overflow
 

Detailed Description

A read-only abstract which can interpret the PMIGrid data in split fixed-precision format.

Constructor & Destructor Documentation

◆ PMIGridFPReader()

stormm::energy::PMIGridFPReader::PMIGridFPReader ( const PMIGridAccumulator & w)

As with some other readers, the writer can be used as a constructor argument.

Parameters
wA fixed-precision accumulation abstract for a pre-existing PMIGrid object

Member Data Documentation

◆ dims

const uint4* stormm::energy::PMIGridFPReader::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.

◆ fftm

const FFTMode stormm::energy::PMIGridFPReader::fftm

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

◆ fp_bits

const int stormm::energy::PMIGridFPReader::fp_bits

The number of bits used in fixed-precision accumulation of whatever density the grids describe.

◆ fp_scale

const float stormm::energy::PMIGridFPReader::fp_scale

Scaling factor applied to all contributions for fixed-precision accumulation

◆ nsys

const int stormm::energy::PMIGridFPReader::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::PMIGridFPReader::order

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

◆ overflow

const int* stormm::energy::PMIGridFPReader::overflow

Overflow data to complement either lldata or idata, creating 95-bit and 63-bit split fixed-precision accumulators, respectively.

◆ theme

const NonbondedTheme stormm::energy::PMIGridFPReader::theme

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


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