gtsam 4.2
gtsam
Loading...
Searching...
No Matches
FindSeparator.h
1/*
2 * FindSeparator.h
3 *
4 * Created on: Nov 23, 2010
5 * Author: nikai
6 * Description: find the separator of bisectioning for a given graph
7 */
8
9#pragma once
10
11#include <map>
12#include <vector>
13#include <boost/optional.hpp>
14#include <gtsam/inference/Key.h>
16
17#include "PartitionWorkSpace.h"
18
19namespace gtsam { namespace partition {
20
21// typedef std::map<size_t, size_t> PartitionTable; // from the key to the partition: 0 - separator, > 1: submap id
22
24 struct MetisResult {
25 std::vector<size_t> A, B; // frontals
26 std::vector<size_t> C; // separator
27 };
28
33 template<class GenericGraph>
34 boost::optional<MetisResult> separatorPartitionByMetis(const GenericGraph& graph, const std::vector<size_t>& keys,
35 WorkSpace& workspace, bool verbose);
36
41 template<class GenericGraph>
42 int findSeparator(const GenericGraph& graph, const std::vector<size_t>& keys,
43 const int minNodesPerMap, WorkSpace& workspace, bool verbose, const boost::optional<std::vector<Symbol> >& int2symbol,
44 const bool reduceGraph, const int minNrConstraintsPerCamera, const int minNrConstraintsPerLandmark);
45
46}} //namespace
Global functions in a separate testing namespace.
Definition chartTesting.h:28
the metis Nest dissection result
Definition FindSeparator.h:24
Definition PartitionWorkSpace.h:19