Loading...
Searching...
No Matches
franzblau.hpp File Reference

File for generating shortest-path rings according to the Franzblau algorithm. More...

#include <algorithm>
#include <array>
#include <fstream>
#include <iostream>
#include <iterator>
#include <cmath>
#include <memory>
#include <sstream>
#include <string>
#include <vector>
#include <cage.hpp>
#include <mol_sys.hpp>
#include <seams_input.hpp>
#include <seams_output.hpp>

Go to the source code of this file.

Classes

struct  primitive::Vertex
 This is a collection of elements, for each point, required for graph traversal. More...
struct  primitive::Graph
 This is a per-frame object, containing all the vertices for the particular frame, along with the vector of rings generated. More...
class  primitive::RingUpdater
 Exact frame-to-frame maintenance of the primitive ring network. More...

Namespaces

namespace  primitive
 Functions for generating primitive rings.

Functions

std::vector< std::vector< int > > primitive::ringNetwork (const std::vector< std::vector< int > > &nList, int maxDepth)
Graph primitive::populateGraphFromNListID (molSys::PointCloud< molSys::Point< double >, double > &yCloud, const std::vector< std::vector< int > > &neighHbondList)
Graph primitive::populateGraphFromIndices (const std::vector< std::vector< int > > &nList)
void primitive::restoreEdgesFromIndices (Graph &fullGraph, const std::vector< std::vector< int > > &nList)
Graph primitive::countAllRingsFromIndex (const std::vector< std::vector< int > > &neighHbondList, int maxDepth)
 Creates a vector of vectors of all possible rings.
void primitive::removeNonSPrings (Graph &fullGraph)
 Removes the non-SP rings, using the Franzblau shortest path criterion.
int primitive::findRings (Graph &fullGraph, int v, std::vector< int > &visited, int maxDepth, int depth, int root=-1)
 Main function that searches for all rings.
int primitive::shortestPath (Graph &fullGraph, int v, int goal, std::vector< int > &path, std::vector< int > &visited, int maxDepth, int depth=1)
 Calculates the shortest path.
Graph primitive::clearGraph (Graph &currentGraph)
 Function for clearing vectors in Graph after multiple usage.

Detailed Description

File for generating shortest-path rings according to the Franzblau algorithm.

Definition in file franzblau.hpp.