STORMM Source Documentation
Loading...
Searching...
No Matches
stormm::trajectory::CacheResourceKit< T > Struct Template Reference

Abstract for the CacheResource object, accessible as a C-style struct and suitable for passing to GPU kernels as a kernel argument. More...

#include <cacheresource.h>

Public Member Functions

 CacheResourceKit (int max_blocks_in, int max_atoms_in, llint *xcrd_in, llint *ycrd_in, llint *zcrd_in, llint *xvel_in, llint *yvel_in, llint *zvel_in, int *xcrd_ovrf_in, int *ycrd_ovrf_in, int *zcrd_ovrf_in, int *xvel_ovrf_in, int *yvel_ovrf_in, int *zvel_ovrf_in, int *xfrc_ovrf_in, int *yfrc_ovrf_in, int *zfrc_ovrf_in, T *charges_in, int *lj_idx_in)
 The constructor for this abstract takes all of the usual pointer arguments to fill out its member variables, the template parameter corresponding to the precision model of the charges.
 
 CacheResourceKit (const CacheResourceKit &original)=default
 The usual copy and move constructors for an abstract with one or more const member variables apply.
 
 CacheResourceKit (CacheResourceKit &&original)=default
 

Public Attributes

const int max_blocks
 Maximum number of blocks that resources are designed to accommodate.
 
const int max_atoms
 
llint * xcrd
 Cartesian X coordinates of locally cached particles.
 
llint * ycrd
 Cartesian Y coordinates of locally cached particles.
 
llint * zcrd
 Cartesian Z coordinates of locally cached particles.
 
llint * xvel
 Cartesian X velocities of locally cached particles.
 
llint * yvel
 Cartesian Y velocities of locally cached particles.
 
llint * zvel
 Cartesian Z velocities of locally cached particles.
 
int * xcrd_ovrf
 Cartesian X coordinate overflow buffers.
 
int * ycrd_ovrf
 Cartesian Y coordinate overflow buffers.
 
int * zcrd_ovrf
 Cartesian Z coordinate overflow buffers.
 
int * xvel_ovrf
 Cartesian X velocity overflow buffers.
 
int * yvel_ovrf
 Cartesian Y velocity overflow buffers.
 
int * zvel_ovrf
 Cartesian Z velocity overflow buffers.
 
int * xfrc_ovrf
 Cartesian X force overflow buffers.
 
int * yfrc_ovrf
 Cartesian Y force overflow buffers.
 
int * zfrc_ovrf
 Cartesian Z force overflow buffers.
 
T * charges
 
int * lj_idx
 Lennard-Jones indices of locally cached particles.
 

Detailed Description

template<typename T>
struct stormm::trajectory::CacheResourceKit< T >

Abstract for the CacheResource object, accessible as a C-style struct and suitable for passing to GPU kernels as a kernel argument.

Member Data Documentation

◆ charges

template<typename T>
T* stormm::energy::CacheResourceKit< T >::charges

Charge parameters for locally cached particles (non-const anticipating some future support of a polarizable model)

◆ max_atoms

template<typename T>
const int stormm::energy::CacheResourceKit< T >::max_atoms

Maximum number of atoms that resources are designed to accommodate. The product of this and max_blocks (above) is what really matters.


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