STORMM Source Documentation
Loading...
Searching...
No Matches
stormm::topology::VirtualSiteTable Struct Reference

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 > &param_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.
 

Detailed Description

Unguarded struct to collect information about virtual sites in the topology.

Constructor & Destructor Documentation

◆ VirtualSiteTable()

stormm::topology::VirtualSiteTable::VirtualSiteTable ( )

The constructor simply allocates memory, if dimensions are available.

Overloaded:

  • Create an empty object
  • Create an object with pre-allocated memory for each virtual site
Parameters
natom_inThe number of atoms in the system (for an array indicating which atom is which virtual site)
vs_count_inThe number of virtual sites in the system (for bounds arrays)

Member Data Documentation

◆ param_idx

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)

◆ vs_atoms

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.

◆ vs_numbers

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.


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