STORMM Source Documentation
|
A small collection of arrays to manage temporary accumulators for computing Born radii and their derivatives. More...
#include <implicit_solvent_workspace.h>
Public Member Functions | |
int | getFixedPrecisionBits () const |
Get the precision in which Born radii and sums of the per-atom energy derivatives are stored. | |
CoordinateCycle | getCyclePosition () const |
Get the object's current coordinate cycle position. | |
void | updateCyclePosition () |
Increment the object's cycle counter. | |
void | initialize (HybridTargetLevel tier=HybridTargetLevel::HOST, CoordinateCycle orientation=CoordinateCycle::WHITE, const GpuDetails &gpu=null_gpu) |
Set the Generalized Born radii and radii derivative accumulators to zero. | |
ImplicitSolventWorkspace (const Hybrid< int > &atom_starts, const Hybrid< int > &atom_counts, int bit_count) | |
The object contains arrays to store Born radii and derivatives to very high precision. | |
ImplicitSolventWorkspace (const Hybrid< int > &atom_starts, const Hybrid< int > &atom_counts, PrecisionModel prec) | |
ImplicitSolventWorkspace (const ImplicitSolventWorkspace &original) | |
Copy and move constructors, as well as the respective assignment operators, take the usual form for an object with POINTER-kind Hybrids that require repair. | |
ImplicitSolventWorkspace (ImplicitSolventWorkspace &&original) | |
ImplicitSolventWorkspace & | operator= (const ImplicitSolventWorkspace &other) |
ImplicitSolventWorkspace & | operator= (ImplicitSolventWorkspace &&other) |
ISWorkspaceKit< double > | dpData (CoordinateCycle orientation, HybridTargetLevel tier=HybridTargetLevel::HOST) |
Get the double-precision abstract, containing pointers to data on the host or device. | |
ISWorkspaceKit< double > | dpData (HybridTargetLevel tier=HybridTargetLevel::HOST) |
ISWorkspaceKit< float > | spData (CoordinateCycle orientation, HybridTargetLevel tier=HybridTargetLevel::HOST) |
Get the single-precision abstract, containing pointers to data on the host or device. Overloading and descriptions of input parameters follow from dpData(), above. | |
ISWorkspaceKit< float > | spData (HybridTargetLevel tier=HybridTargetLevel::HOST) |
A small collection of arrays to manage temporary accumulators for computing Born radii and their derivatives.
stormm::synthesis::ImplicitSolventWorkspace::ImplicitSolventWorkspace | ( | const Hybrid< int > & | atom_starts, |
const Hybrid< int > & | atom_counts, | ||
int | bit_count ) |
The object contains arrays to store Born radii and derivatives to very high precision.
Overloaded:
atom_starts | Starting positions of the atoms for each system in the coordinate arrays of the related AtomGraphSynthesis and PhaseSpaceSynthesis |
atom_counts | Atom counts in each system of the related syntheses |
bit_count | The number of bits to keep after the decimal (units of Angstroms for the radii, or kcal/mol-Angstroms per change in radius) |
prec | The precision model to prepare for (automates selection of bit_count) |
stormm::synthesis::ImplicitSolventWorkspace::ImplicitSolventWorkspace | ( | const ImplicitSolventWorkspace & | original | ) |
Copy and move constructors, as well as the respective assignment operators, take the usual form for an object with POINTER-kind Hybrids that require repair.
original | The object to copy or move |
other | Right-hand side object for assignment operators |
ISWorkspaceKit< double > stormm::synthesis::ImplicitSolventWorkspace::dpData | ( | CoordinateCycle | orientation, |
HybridTargetLevel | tier = HybridTargetLevel::HOST ) |
Get the double-precision abstract, containing pointers to data on the host or device.
Overloaded:
tier | Level at which to retrieve pointers (the CPU host, or GPU device) |
orientation | Perform the zeroing on psi / sumdeijda or alt_psi / alt_sumdeijda arrays |
void stormm::synthesis::ImplicitSolventWorkspace::initialize | ( | HybridTargetLevel | tier = HybridTargetLevel::HOST, |
CoordinateCycle | orientation = CoordinateCycle::WHITE, | ||
const GpuDetails & | gpu = null_gpu ) |
Set the Generalized Born radii and radii derivative accumulators to zero.
tier | Do the zeroing on the host or on the GPU device |
orientation | Perform the zeroing on psi / sumdeijda or alt_psi / alt_sumdeijda arrays |
gpu | Details of the GPU in use |