STORMM Source Documentation
|
Unguarded struct to collect information about virtual sites in the topology. More...
#include <atomgraph_refinement.h>
Public Member Functions | |
VirtualSiteTable () | |
The constructor simply allocates memory, if dimensions are available. | |
VirtualSiteTable (int natom_in, int vs_count_in) | |
VirtualSiteTable (int natom_in, const std::vector< int > &vs_atoms_in, const std::vector< int > &frame_types_in, const std::vector< int > &frame1_atoms_in, const std::vector< int > &frame2_atoms_in, const std::vector< int > &frame3_atoms_in, const std::vector< int > &frame4_atoms_in, const std::vector< int > ¶m_idx_in, const std::vector< double > &frame_dim1_in, const std::vector< double > &frame_dim2_in, const std::vector< double > &frame_dim3_in) | |
Public Attributes | |
int | vs_count |
Number of virtual sites found, a check on the topology. | |
std::vector< int > | vs_numbers |
std::vector< int > | vs_atoms |
std::vector< int > | frame_types |
Frame types for each virtual site. | |
std::vector< int > | frame1_atoms |
Parent atoms. | |
std::vector< int > | frame2_atoms |
Second frame atoms. | |
std::vector< int > | frame3_atoms |
Third frame atoms (for some sites) | |
std::vector< int > | frame4_atoms |
Fourth frame atoms (for the most complex frame type) | |
std::vector< int > | param_idx |
std::vector< double > | frame_dim1 |
First frame dimension, i.e. distance from VS to parent. | |
std::vector< double > | frame_dim2 |
Second frame dimension. | |
std::vector< double > | frame_dim3 |
Third frame dimension. | |
Unguarded struct to collect information about virtual sites in the topology.
stormm::topology::VirtualSiteTable::VirtualSiteTable | ( | ) |
The constructor simply allocates memory, if dimensions are available.
Overloaded:
natom_in | The number of atoms in the system (for an array indicating which atom is which virtual site) |
vs_count_in | The number of virtual sites in the system (for bounds arrays) |
std::vector<int> stormm::topology::VirtualSiteTable::param_idx |
Parameter indices indicating the set of frame dimensions controlling this particular site (this is part of a broader effort to cut down on memory bandwidth requirements)
std::vector<int> stormm::topology::VirtualSiteTable::vs_atoms |
Atoms identified as virtual sites (by having zero mass). This compact list includes the topological indices only of atoms that have been identified as virtual sites, i.e. 3, 7, 11, ..., 4N + 3 in a box of TIP4P-Ew water.
std::vector<int> stormm::topology::VirtualSiteTable::vs_numbers |
An array covering all atoms in the topology and stating which virtual site they correspond to, containing -1 entries if the atom is not a virtual site. This array is critical for rapidly tracing the virtual site of interest given a topological index, such as finding the parent atom of the ith atom in a topology, knowing that the ith atom is a virtual site.