STORMM Source Documentation
|
A read-only abstract which can interpret the PMIGrid data in split fixed-precision format. More...
#include <pmigrid.h>
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 uint4 * | dims |
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 |
A read-only abstract which can interpret the PMIGrid data in split fixed-precision format.
stormm::energy::PMIGridFPReader::PMIGridFPReader | ( | const PMIGridAccumulator & | w | ) |
As with some other readers, the writer can be used as a constructor argument.
w | A fixed-precision accumulation abstract for a pre-existing PMIGrid object |
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.
const FFTMode stormm::energy::PMIGridFPReader::fftm |
The layout of the FFT grid, implying a mode in which the FFT will be carried out
const int stormm::energy::PMIGridFPReader::fp_bits |
The number of bits used in fixed-precision accumulation of whatever density the grids describe.
const float stormm::energy::PMIGridFPReader::fp_scale |
Scaling factor applied to all contributions for fixed-precision accumulation
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
const int stormm::energy::PMIGridFPReader::order |
The interpolation order for B-pline mapping of density to the particle-mesh interaction grid
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.
const NonbondedTheme stormm::energy::PMIGridFPReader::theme |
The non-bonded property mapped to the particle-mesh interaction grid