#include "angel/include/angel_tools.hpp"
#include <queue>
#include "angel/include/angel_exceptions.hpp"
#include "angel/include/angel_io.hpp"
#include "angel/include/eliminations.hpp"
Go to the source code of this file.
Namespaces | |
namespace | angel |
Defines | |
#define | ECONST 2.71828 |
#define | ECONST 2.71828 |
#define | ECONST 2.71828 |
Functions | |
bool | angel::reachable (const c_graph_t::vertex_t src, const c_graph_t::vertex_t tgt, c_graph_t &angelLCG) |
Answers a reachability query from src to tgt. | |
void | angel::vertex_upset (const c_graph_t::vertex_t v, const c_graph_t &angelLCG, vertex_set_t &upset) |
Returns a set of vertices in adg that depend on v . | |
void | angel::vertex_downset (const c_graph_t::vertex_t v, const c_graph_t &angelLCG, vertex_set_t &downset) |
Returns a set of vertices in adg that v depends on. | |
c_graph_t::edge_t | angel::getEdge (unsigned int i, unsigned int j, const c_graph_t &angelLCG) |
Returns the edge in angelLCG that has source i and target j . | |
bool | angel::lex_less_face (line_graph_t::face_t e1, line_graph_t::face_t e2, const line_graph_t &lg) |
void | angel::in_out_path_lengths (const c_graph_t &cg, std::vector< int > &vni, std::vector< int > &vli, std::vector< int > &vno, std::vector< int > &vlo) |
Returns for each vertex the number of paths and their overall length. | |
void | angel::number_dependent_vertices (const c_graph_t &cg, std::vector< int > &v) |
Returns for each vertex how many dependent vertices depent on it. | |
void | angel::number_independent_vertices (const c_graph_t &cg, std::vector< int > &v) |
Returns for each vertex on how many independent vertices it depends. | |
void | angel::permutate_vertices (const c_graph_t &gin, const vector< c_graph_t::vertex_t > &p, c_graph_t &gout) |
void | angel::independent_vertices_to_front (const c_graph_t &gin, const vector< c_graph_t::vertex_t > &indeps, c_graph_t &gout) |
int | angel::renumber_edges (c_graph_t &cg) |
Renumber edges of cg continously, i.e. to [0..num_edges-1]. | |
void | angel::take_over_successors (c_graph_t::vertex_t v1, c_graph_t::vertex_t v2, int offset, const c_graph_t &g1, int &edge_number, c_graph_t &g2) |
int | angel::remove_hoisting_vertices (c_graph_t &cg) |
Removes all vertices with one predecessor and one successor from cg . | |
void | angel::remove_parallel_edges (c_graph_t &cg) |
Removes parallel edges. | |
void | angel::remove_trivial_edges (c_graph_t &cg) |
Eliminates all edges with label 1, front elimination is preferred. | |
double | angel::gen_prob () |
Returns a random number between zero and one. | |
unsigned int | angel::chooseTarget_sa (std::vector< double > &deltaE) |
Randomly chooses an index into the vector deltaE . | |
int | angel::chooseEdgeElimRandomly (std::vector< double > &deltaE) |
int | angel::chooseEdgeElimRandomlyGreedy (std::vector< double > &deltaE) |
#define ECONST 2.71828 |
#define ECONST 2.71828 |
#define ECONST 2.71828 |
Referenced by angel::chooseEdgeElimRandomly(), angel::chooseEdgeElimRandomlyGreedy(), and angel::chooseTarget_sa().