#include <vector>#include <string>#include <algorithm>#include <iostream>#include <sstream>#include "boost/graph/adjacency_list.hpp"#include "boost/graph/graph_traits.hpp"#include "boost/property_map.hpp"#include <map>#include <set>#include "xaifBooster/algorithms/CrossCountryInterface/inc/LinearizedComputationalGraph.hpp"#include "xaifBooster/algorithms/CrossCountryInterface/inc/JacobianAccumulationExpressionList.hpp"#include "xaifBooster/algorithms/CrossCountryInterface/inc/GraphCorrelations.hpp"#include "angel_exceptions.hpp"


Go to the source code of this file.
Namespaces | |
| namespace | angel |
Classes | |
| struct | angel::EdgeType |
| struct | angel::VertexVisited |
| Pure BGL type definition of c-graph. More... | |
| class | angel::c_graph_t |
| C-graph type. More... | |
| class | angel::line_graph_t |
| Line graph type. More... | |
| struct | angel::triplet_t |
| Triplet of faces, used in face_elimination_history_t. More... | |
| class | angel::predecessor_t< Ad_graph_t > |
| class | angel::successor_t< Ad_graph_t > |
| struct | angel::edge_elim_t |
Edge edge to eliminate from c-graph and whether it should be front or back eliminated. More... | |
| struct | angel::edge_pair_elim_t |
| struct | angel::edge_ij_elim_t |
| struct | angel::accu_exp_t |
| union | angel::accu_exp_t::ref_t |
| class | angel::accu_exp_graph_t |
| struct | angel::accu_graph_t |
| struct | angel::EdgeRef_t |
| struct | angel::edge_reroute_t |
| class | angel::EdgeElim |
| Graph-independent edge elimination. More... | |
| class | angel::Rerouting |
| Graph-independent rerouting. More... | |
| class | angel::Transformation |
| Graph-independent transformation. More... | |
| struct | angel::elimSeq_cost_t |
| struct | angel::transformationSeq_cost_t |
Typedefs | |
| typedef boost::property < boost::edge_weight_t, int > | angel::edge_weight_property |
| typedef boost::property < boost::edge_index_t, int, edge_weight_property > | angel::edge_index_weight_property |
| typedef boost::property < EdgeType, int, edge_index_weight_property > | angel::edge_type_index_weight_property |
| typedef boost::property < VertexVisited, bool > | angel::vertex_visited_property |
| typedef boost::adjacency_list < boost::vecS, boost::vecS, boost::bidirectionalS, vertex_visited_property, edge_type_index_weight_property > | angel::pure_c_graph_t |
| Pure BGL type definition of c-graph. | |
| typedef std::pair < c_graph_t::edge_t, bool > | angel::edge_bool_t |
| Pair of c-graph edge and boolean to specify an edge elimination. | |
| typedef std::pair < int, int > | angel::ad_edge_t |
| typedef boost::property < boost::vertex_degree_t, int > | angel::vertex_degree_property |
| typedef boost::property < boost::vertex_name_t, ad_edge_t, vertex_degree_property > | angel::vertex_name_degree_property |
| typedef boost::adjacency_list < boost::vecS, boost::vecS, boost::bidirectionalS, vertex_name_degree_property, boost::no_property > | angel::pure_line_graph_t |
| Pure BGL type definition of line graph. | |
| typedef std::vector < edge_elim_t > | angel::edge_elim_seq_t |
| typedef std::vector < edge_pair_elim_t > | angel::edge_pair_elim_seq_t |
| typedef std::vector < edge_ij_elim_t > | angel::edge_ij_elim_seq_t |
| typedef boost::property < boost::vertex_name_t, accu_exp_t > | angel::accu_exp_property |
| typedef boost::adjacency_list < boost::vecS, boost::vecS, boost::bidirectionalS, accu_exp_property, boost::no_property > | angel::pure_accu_exp_graph_t |
| typedef std::pair < unsigned int, unsigned int > | angel::uint_pair_t |
| typedef std::set < c_graph_t::vertex_t > | angel::vertex_set_t |
| typedef std::map < uint_pair_t, vertex_set_t > | angel::refillDependenceMap_t |
Enumerations | |
| enum | angel::vertex_type_t { angel::independent, angel::intermediate, angel::dependent, angel::dead_vertex, angel::undefined_vertex } |
| Vertex type for vertex_t in c_graph_t and edge_t in line_graph_t. More... | |
| enum | angel::Edge_Type_E { angel::VARIABLE_EDGE, angel::UNIT_EDGE, angel::CONSTANT_EDGE } |
| enum | angel::EdgeRefType_E { angel::LCG_EDGE, angel::JAE_VERT, angel::UNDEFINED } |
Functions | |
| bool | angel::operator== (const c_graph_t &g1, const c_graph_t &g2) |
| Compares two c-graphs. | |
| bool | angel::operator!= (const c_graph_t &g1, const c_graph_t &g2) |
| Compares two c-graphs. | |
| int | angel::overall_markowitz_degree (const c_graph_t &cg) |
Markowitz degree of all vertices in cg. | |
| bool | angel::vertex_eliminatable (const c_graph_t &cg) |
Whether cg can be transformed into bipartite graph by vertex eliminations. | |
| template<typename Ad_graph_t> | |
| std::pair< typename Ad_graph_t::edge_descriptor, bool > | angel::edge (typename Ad_graph_t::vertex_descriptor u, typename Ad_graph_t::vertex_descriptor v, const Ad_graph_t &g) |
| Replaces edge function of BGL. | |
| void | angel::edge_vertex_name (line_graph_t::edge_t e, const line_graph_t &lg, int &i, int &j) |
| Vertex pair representation of an edge in line graph. | |
| void | angel::face_vertex_name (line_graph_t::face_t f, const line_graph_t &lg, int &i, int &j, int &k) |
| Vertex triplet representation of a face. | |
| bool | angel::operator== (const line_graph_t &g1, const line_graph_t &g2) |
| Compares two line graphs. | |
| bool | angel::operator!= (const line_graph_t &g1, const line_graph_t &g2) |
| Compares two line graphs. | |
| int | angel::overall_markowitz_degree (const line_graph_t &lg) |
| Markowitz degree of all vertices. | |
| int | angel::markowitz_degree (int j, const line_graph_t &lg) |
| Markowitz. | |
| std::ostream & | angel::operator<< (std::ostream &stream, const triplet_t &t) |
| Output operator of triplet_t. | |
| std::ostream & | angel::operator<< (std::ostream &stream, const edge_pair_elim_t &ee) |
| Output operator of edge_pair_elim_t. | |
| std::ostream & | angel::operator<< (std::ostream &stream, const edge_ij_elim_t &ee) |
| Output operator of edge_ij_elim_t. | |
| std::ostream & | angel::operator<< (std::ostream &stream, const accu_exp_t &exp) |
1.5.3