46 #ifndef GUM_DEFAULT_PARTIAL_ORDERED_ELIMINATION_SEQUENCE_STRATEGY_H 47 #define GUM_DEFAULT_PARTIAL_ORDERED_ELIMINATION_SEQUENCE_STRATEGY_H 187 virtual void clear()
final;
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.
virtual void clear() final
clears the sequence (to prepare, for instance, a new elimination sequence)
void __createSimplicialSet()
create a new simplicial set suited for the current graph
#define GUM_WEIGHT_THRESHOLD
virtual void eliminationUpdate(const NodeId node) final
performs all the graph/fill-ins updates provided (if any)
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.
virtual DefaultPartialOrderedEliminationSequenceStrategy * newFactory() const final
creates a new elimination sequence of the same type as the current object, but this sequence contains...
virtual bool providesFillIns() const final
indicates whether the fill-ins generated by the eliminated nodes, if needed, will be computed by the ...
virtual const EdgeSet & fillIns() final
in case fill-ins are provided, this function returns the fill-ins due to all the nodes eliminated so ...
virtual void askFillIns(bool do_it) final
if the elimination sequence is able to compute fill-ins, we indicate whether we want this feature to ...
NodeProperty< double > __log_weights
for each node, the weight of the clique created by the node's elimination
double __simplicial_ratio
the ratio used by __simplicial_set for its quasi-simplicial nodes
virtual NodeId nextNodeToEliminate() final
returns the new node to be eliminated within the triangulation algorithm
Generic doubly linked lists.
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.
double __simplicial_threshold
the threshold used by __simplicial_set to determine small cliques
An Elimination sequence algorithm that imposes a given partial ordering on the nodes elimination sequ...
NodeId __nodeToEliminate(const PriorityQueue< NodeId, double > &possibleNodes)
returns the best possible node to be eliminated
The class for generic Hash Tables.
UndiGraph * graph() const noexcept
returns the current graph
bool __provide_fill_ins
indicates whether we compute new fill-ins
SimplicialSet * __simplicial_set
the simplicial set used for determining the best nodes to eliminate
Base class for all elimination sequence algorithm that impose a given partial ordering on the nodes e...
Class enabling fast retrieval of simplicial, quasi and almost simplicial nodes.
virtual bool providesGraphUpdate() const final
indicates whether the elimination sequence updates by itself the graph after a node has been eliminat...
virtual ~DefaultPartialOrderedEliminationSequenceStrategy()
destructor
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.
virtual DefaultPartialOrderedEliminationSequenceStrategy * copyFactory() const final
virtual copy constructor
virtual bool setGraph(UndiGraph *graph, const NodeProperty< Size > *dom_sizes) final
sets a new graph to be triangulated
Base class for undirected graphs.
DefaultPartialOrderedEliminationSequenceStrategy(double theRatio=GUM_QUASI_RATIO, double theThreshold=GUM_WEIGHT_THRESHOLD)
default constructor (uses an empty graph)
Size NodeId
Type for node ids.
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.