27 std::vector<molSys::Point<double>> tempPts;
28 std::vector<double> tempBox;
30 std::vector<double> tempBox1;
32 tempPts.swap(yCloud->pts);
33 tempBox.swap(yCloud->box);
34 tempBox1.swap(yCloud->boxLow);
46 std::unordered_map<int, int>
52 for (
int iatom = 0; iatom < yCloud->nop; iatom++) {
53 iatomID = yCloud->pts[iatom].atomID;
54 iatomMolID = yCloud->pts[iatom].molID;
56 idMolIDmap[iatomID] = iatomMolID;
69 std::unordered_multimap<int, int>
75 for (
int iatom = 0; iatom < yCloud->nop; iatom++) {
76 iatomID = yCloud->pts[iatom].atomID;
77 iatomMolID = yCloud->pts[iatom].molID;
79 molIDAtomIDmap.emplace(iatomMolID,iatomID);
82 return molIDAtomIDmap;
92 std::vector<std::vector<int>>
99 for (
int iatom = 0; iatom < oCloud->nop; iatom++) {
101 iMolID = oCloud->pts[iatom].molID;
103 hMolList.push_back(std::vector<int>());
105 hMolList[iatom].push_back(iMolID);
110 for (
int jatom = 0; jatom < hCloud->nop; jatom++) {
111 if (hCloud->pts[jatom].molID == iMolID) {
112 hMolList[iatom].push_back(jatom);
135 for (
int iatom = 0; iatom < molList.size(); iatom++) {
137 if (molList[iatom][0] == molIDtoFind) {
std::vector< std::vector< int > > hAtomMolList(molSys::PointCloud< molSys::Point< double >, double > *hCloud, molSys::PointCloud< molSys::Point< double >, double > *oCloud)
std::unordered_map< int, int > createIDMolIDmap(molSys::PointCloud< molSys::Point< double >, double > *yCloud)
std::unordered_multimap< int, int > createMolIDAtomIDMultiMap(molSys::PointCloud< molSys::Point< double >, double > *yCloud)
int searchMolList(std::vector< std::vector< int > > molList, int molIDtoFind)
std::unordered_map< int, int > idIndexMap
xlo, ylo, zlo
molSys::PointCloud< molSys::Point< double >, double > clearPointCloud(molSys::PointCloud< molSys::Point< double >, double > *yCloud)
//! Function for clearing vectors in PointCloud after multiple usage
The main molecular system handler.
This contains a collection of points; contains information for a particular frame.
This contains per-particle information.