STORMM Source Documentation
Loading...
Searching...
No Matches
stormm::generalized_born_defaults::NeckGeneralizedBornTable Class Reference

Object to hold a complex array of constants referenced by various GB calculations using the "neck" formalism for the union of spheres. This is an object of its own to encapsulate the underlying Hybrid data structures. More...

#include <generalized_born.h>

Public Member Functions

int size () const
 Get the table size.
 
double getMaxSeparation (int i_type, int j_type) const
 Get the maximum separation of neck placement for a pair of Generalized Born atom types. This reads from the host only, as there is no way to modify the device-side data without first modifying it on the host.
 
double getMaxValue (int i_type, int j_type) const
 Get the maximum value of the neck factor for a pair of Generalized Born atom types. This reads from the host only, as there is no way to modify the device-side data without first modifying it on the host.
 
const NeckGeneralizedBornKit< double > dpData (HybridTargetLevel tier=HybridTargetLevel::HOST) const
 Get a collection of double-precision pointers for this object.
 
const NeckGeneralizedBornKit< float > spData (HybridTargetLevel tier=HybridTargetLevel::HOST) const
 Get a collection of single-precision pointers for this object.
 
const NeckGeneralizedBornTablegetSelfPointer () const
 Get a const pointer to the object itself, useful if a pointer is needed after passing he object by const reference.
 
 NeckGeneralizedBornTable ()
 
 NeckGeneralizedBornTable (int table_size_in, double neck_cut_in, double kscale_in, const std::vector< double > &max_sep_in, const std::vector< double > &max_val_in)
 

Detailed Description

Object to hold a complex array of constants referenced by various GB calculations using the "neck" formalism for the union of spheres. This is an object of its own to encapsulate the underlying Hybrid data structures.

Constructor & Destructor Documentation

◆ NeckGeneralizedBornTable()

stormm::generalized_born_defaults::NeckGeneralizedBornTable::NeckGeneralizedBornTable ( )

The basic constructor hard-codes the large table of constants into the relevant Hybrid objects, with no arguments needed. An overload of the constructor take custom arrays

Parameters
table_size_inLength of the tables (they are assumed to be square)
neck_cut_inThe GB neck cutoff distance (see above)
kscale_inThe GB Kappa scaling parameter (see above)
max_sep_inData for maximum separations (must be table_size_in * table_size_in)
max_val_inData for maximum values (must be table_size_in * table_size_in)

Member Function Documentation

◆ dpData()

const NeckGeneralizedBornKit< double > stormm::generalized_born_defaults::NeckGeneralizedBornTable::dpData ( HybridTargetLevel tier = HybridTargetLevel::HOST) const

Get a collection of double-precision pointers for this object.

Parameters
tierLevel at which to get the pointers (CPU or GPU, HOST or DEVICE)

◆ getMaxSeparation()

double stormm::generalized_born_defaults::NeckGeneralizedBornTable::getMaxSeparation ( int i_type,
int j_type ) const

Get the maximum separation of neck placement for a pair of Generalized Born atom types. This reads from the host only, as there is no way to modify the device-side data without first modifying it on the host.

Parameters
i_typeGeneralized Born type of the first atom
j_typeGeneralized Born type of the second atom

◆ getMaxValue()

double stormm::generalized_born_defaults::NeckGeneralizedBornTable::getMaxValue ( int i_type,
int j_type ) const

Get the maximum value of the neck factor for a pair of Generalized Born atom types. This reads from the host only, as there is no way to modify the device-side data without first modifying it on the host.

Parameters
i_typeGeneralized Born type of the first atom
j_typeGeneralized Born type of the second atom

◆ spData()

const NeckGeneralizedBornKit< float > stormm::generalized_born_defaults::NeckGeneralizedBornTable::spData ( HybridTargetLevel tier = HybridTargetLevel::HOST) const

Get a collection of single-precision pointers for this object.

Parameters
tierLevel at which to get the pointers (CPU or GPU, HOST or DEVICE)

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