class BipartiteGraphPartialOrdering in group21. More...
#include <BipartiteGraphPartialOrdering.h>
Inherits ColPack::BipartiteGraphInputOutput.
Inherited by ColPack::BipartiteGraphPartialColoring.
Public Member Functions | |
int | OrderVertices (string s_OrderingVariant="NATURAL", string s_ColoringVariant="COLUMN_PARTIAL_DISTANCE_TWO") |
BipartiteGraphPartialOrdering () | |
~BipartiteGraphPartialOrdering () | |
virtual void | Clear () |
virtual void | Reset () |
int | RowNaturalOrdering () |
int | ColumnNaturalOrdering () |
int | RowRandomOrdering () |
int | ColumnRandomOrdering () |
int | RowLargestFirstOrdering () |
int | ColumnLargestFirstOrdering () |
int | RowSmallestLastOrdering () |
int | ColumnSmallestLastOrdering () |
int | RowIncidenceDegreeOrdering () |
int | ColumnIncidenceDegreeOrdering () |
string | GetVertexOrderingVariant () |
void | GetOrderedVertices (vector< int > &output) |
void | PrintVertexOrdering () |
double | GetVertexOrderingTime () |
Protected Attributes | |
double | m_d_OrderingTime |
string | m_s_VertexOrderingVariant |
vector< int > | m_vi_OrderedVertices |
Private Member Functions | |
int | CheckVertexOrdering (string s_VertexOrderingVariant) |
class BipartiteGraphPartialOrdering in group21.
The BipartiteGraphPartialOrderingClass stores either the ordered row or column vertices as a vector of vertex identifiers to be used by bipartite graph partial coloring methods.
Definition at line 37 of file BipartiteGraphPartialOrdering.h.
ColPack::BipartiteGraphPartialOrdering::BipartiteGraphPartialOrdering | ( | ) |
Definition at line 45 of file BipartiteGraphPartialOrdering.cpp.
References Clear().
ColPack::BipartiteGraphPartialOrdering::~BipartiteGraphPartialOrdering | ( | ) |
Definition at line 52 of file BipartiteGraphPartialOrdering.cpp.
References Clear().
int ColPack::BipartiteGraphPartialOrdering::CheckVertexOrdering | ( | string | s_VertexOrderingVariant | ) | [private] |
Definition at line 28 of file BipartiteGraphPartialOrdering.cpp.
References _FALSE, _TRUE, and m_s_VertexOrderingVariant.
Referenced by ColumnIncidenceDegreeOrdering(), ColumnLargestFirstOrdering(), ColumnNaturalOrdering(), ColumnRandomOrdering(), ColumnSmallestLastOrdering(), RowIncidenceDegreeOrdering(), RowLargestFirstOrdering(), RowNaturalOrdering(), RowRandomOrdering(), and RowSmallestLastOrdering().
void ColPack::BipartiteGraphPartialOrdering::Clear | ( | ) | [virtual] |
Reimplemented from ColPack::BipartiteGraphInputOutput.
Reimplemented in ColPack::BipartiteGraphPartialColoring, and ColPack::BipartiteGraphPartialColoringInterface.
Definition at line 59 of file BipartiteGraphPartialOrdering.cpp.
References m_d_OrderingTime, m_s_VertexOrderingVariant, and m_vi_OrderedVertices.
Referenced by BipartiteGraphPartialOrdering(), and ~BipartiteGraphPartialOrdering().
int ColPack::BipartiteGraphPartialOrdering::ColumnIncidenceDegreeOrdering | ( | ) |
Definition at line 863 of file BipartiteGraphPartialOrdering.cpp.
References _FALSE, _TRUE, _UNKNOWN, CheckVertexOrdering(), ColPack::BipartiteGraphCore::m_i_MaximumVertexDegree, ColPack::BipartiteGraphCore::m_vi_Edges, ColPack::BipartiteGraphCore::m_vi_LeftVertices, m_vi_OrderedVertices, ColPack::BipartiteGraphCore::m_vi_RightVertices, and STEP_DOWN.
Referenced by OrderVertices().
int ColPack::BipartiteGraphPartialOrdering::ColumnLargestFirstOrdering | ( | ) |
Definition at line 255 of file BipartiteGraphPartialOrdering.cpp.
References _TRUE, _UNKNOWN, CheckVertexOrdering(), ColPack::BipartiteGraphCore::m_i_MaximumVertexDegree, ColPack::BipartiteGraphCore::m_i_MinimumVertexDegree, ColPack::BipartiteGraphCore::m_vi_Edges, ColPack::BipartiteGraphCore::m_vi_LeftVertices, m_vi_OrderedVertices, ColPack::BipartiteGraphCore::m_vi_RightVertices, and STEP_DOWN.
Referenced by OrderVertices().
int ColPack::BipartiteGraphPartialOrdering::ColumnNaturalOrdering | ( | ) |
Definition at line 109 of file BipartiteGraphPartialOrdering.cpp.
References _TRUE, CheckVertexOrdering(), ColPack::BipartiteGraphCore::m_vi_LeftVertices, m_vi_OrderedVertices, ColPack::BipartiteGraphCore::m_vi_RightVertices, and STEP_DOWN.
Referenced by ColPack::BipartiteGraphPartialColoring::CheckVertexColoring(), and OrderVertices().
int ColPack::BipartiteGraphPartialOrdering::ColumnRandomOrdering | ( | ) |
Definition at line 152 of file BipartiteGraphPartialOrdering.cpp.
References _TRUE, CheckVertexOrdering(), m_s_VertexOrderingVariant, ColPack::BipartiteGraphCore::m_vi_LeftVertices, m_vi_OrderedVertices, ColPack::BipartiteGraphCore::m_vi_RightVertices, randomOrdering(), and STEP_DOWN.
Referenced by OrderVertices().
int ColPack::BipartiteGraphPartialOrdering::ColumnSmallestLastOrdering | ( | ) |
Definition at line 519 of file BipartiteGraphPartialOrdering.cpp.
References _FALSE, _TRUE, _UNKNOWN, CheckVertexOrdering(), ColPack::BipartiteGraphCore::m_vi_Edges, ColPack::BipartiteGraphCore::m_vi_LeftVertices, m_vi_OrderedVertices, ColPack::BipartiteGraphCore::m_vi_RightVertices, and STEP_DOWN.
Referenced by OrderVertices().
void ColPack::BipartiteGraphPartialOrdering::GetOrderedVertices | ( | vector< int > & | output | ) |
Reimplemented in ColPack::BipartiteGraphPartialColoringInterface.
Definition at line 1069 of file BipartiteGraphPartialOrdering.cpp.
References m_vi_OrderedVertices.
double ColPack::BipartiteGraphPartialOrdering::GetVertexOrderingTime | ( | ) |
Definition at line 1165 of file BipartiteGraphPartialOrdering.cpp.
References m_d_OrderingTime.
Referenced by toFileBiPC().
string ColPack::BipartiteGraphPartialOrdering::GetVertexOrderingVariant | ( | ) |
Definition at line 1021 of file BipartiteGraphPartialOrdering.cpp.
References m_s_VertexOrderingVariant.
Referenced by ColPack::BipartiteGraphPartialColoring::PrintColumnPartialColoringMetrics(), and ColPack::BipartiteGraphPartialColoring::PrintRowPartialColoringMetrics().
int ColPack::BipartiteGraphPartialOrdering::OrderVertices | ( | string | s_OrderingVariant = "NATURAL" , |
|
string | s_ColoringVariant = "COLUMN_PARTIAL_DISTANCE_TWO" | |||
) |
Definition at line 1074 of file BipartiteGraphPartialOrdering.cpp.
References _TRUE, ColumnIncidenceDegreeOrdering(), ColumnLargestFirstOrdering(), ColumnNaturalOrdering(), ColumnRandomOrdering(), ColumnSmallestLastOrdering(), RowIncidenceDegreeOrdering(), RowLargestFirstOrdering(), RowNaturalOrdering(), RowRandomOrdering(), RowSmallestLastOrdering(), and toUpper().
Referenced by ColPack::BipartiteGraphPartialColoringInterface::PartialDistanceTwoColoring().
void ColPack::BipartiteGraphPartialOrdering::PrintVertexOrdering | ( | ) |
Definition at line 1156 of file BipartiteGraphPartialOrdering.cpp.
References m_s_VertexOrderingVariant, and m_vi_OrderedVertices.
void ColPack::BipartiteGraphPartialOrdering::Reset | ( | ) | [virtual] |
Reimplemented in ColPack::BipartiteGraphPartialColoring, and ColPack::BipartiteGraphPartialColoringInterface.
Definition at line 74 of file BipartiteGraphPartialOrdering.cpp.
References m_d_OrderingTime, m_s_VertexOrderingVariant, and m_vi_OrderedVertices.
int ColPack::BipartiteGraphPartialOrdering::RowIncidenceDegreeOrdering | ( | ) |
Definition at line 701 of file BipartiteGraphPartialOrdering.cpp.
References _FALSE, _TRUE, _UNKNOWN, CheckVertexOrdering(), ColPack::BipartiteGraphCore::m_i_MaximumVertexDegree, ColPack::BipartiteGraphCore::m_vi_Edges, ColPack::BipartiteGraphCore::m_vi_LeftVertices, m_vi_OrderedVertices, and ColPack::BipartiteGraphCore::m_vi_RightVertices.
Referenced by OrderVertices().
int ColPack::BipartiteGraphPartialOrdering::RowLargestFirstOrdering | ( | ) |
Definition at line 176 of file BipartiteGraphPartialOrdering.cpp.
References _TRUE, _UNKNOWN, CheckVertexOrdering(), ColPack::BipartiteGraphCore::m_i_MaximumVertexDegree, ColPack::BipartiteGraphCore::m_i_MinimumVertexDegree, ColPack::BipartiteGraphCore::m_vi_Edges, ColPack::BipartiteGraphCore::m_vi_LeftVertices, m_vi_OrderedVertices, and ColPack::BipartiteGraphCore::m_vi_RightVertices.
Referenced by OrderVertices().
int ColPack::BipartiteGraphPartialOrdering::RowNaturalOrdering | ( | ) |
Definition at line 87 of file BipartiteGraphPartialOrdering.cpp.
References _TRUE, CheckVertexOrdering(), ColPack::BipartiteGraphCore::m_vi_LeftVertices, m_vi_OrderedVertices, and STEP_DOWN.
Referenced by ColPack::BipartiteGraphPartialColoring::CheckVertexColoring(), and OrderVertices().
int ColPack::BipartiteGraphPartialOrdering::RowRandomOrdering | ( | ) |
Definition at line 130 of file BipartiteGraphPartialOrdering.cpp.
References _TRUE, CheckVertexOrdering(), m_s_VertexOrderingVariant, ColPack::BipartiteGraphCore::m_vi_LeftVertices, m_vi_OrderedVertices, randomOrdering(), and STEP_DOWN.
Referenced by OrderVertices().
int ColPack::BipartiteGraphPartialOrdering::RowSmallestLastOrdering | ( | ) |
Definition at line 336 of file BipartiteGraphPartialOrdering.cpp.
References _FALSE, _TRUE, _UNKNOWN, CheckVertexOrdering(), ColPack::BipartiteGraphCore::m_vi_Edges, ColPack::BipartiteGraphCore::m_vi_LeftVertices, m_vi_OrderedVertices, and ColPack::BipartiteGraphCore::m_vi_RightVertices.
Referenced by OrderVertices().
double ColPack::BipartiteGraphPartialOrdering::m_d_OrderingTime [protected] |
Definition at line 49 of file BipartiteGraphPartialOrdering.h.
Referenced by Clear(), GetVertexOrderingTime(), ColPack::BipartiteGraphPartialColoringInterface::PartialDistanceTwoColoring(), ColPack::BipartiteGraphPartialColoring::PrintColumnPartialColoringMetrics(), ColPack::BipartiteGraphPartialColoring::PrintRowPartialColoringMetrics(), and Reset().
string ColPack::BipartiteGraphPartialOrdering::m_s_VertexOrderingVariant [protected] |
Definition at line 51 of file BipartiteGraphPartialOrdering.h.
Referenced by ColPack::BipartiteGraphPartialColoring::CheckVertexColoring(), CheckVertexOrdering(), Clear(), ColumnRandomOrdering(), GetVertexOrderingVariant(), PrintVertexOrdering(), ColPack::BipartiteGraphPartialColoring::PrintVertexPartialColorClasses(), Reset(), and RowRandomOrdering().
vector<int> ColPack::BipartiteGraphPartialOrdering::m_vi_OrderedVertices [protected] |
Definition at line 53 of file BipartiteGraphPartialOrdering.h.
Referenced by Clear(), ColumnIncidenceDegreeOrdering(), ColumnLargestFirstOrdering(), ColumnNaturalOrdering(), ColumnRandomOrdering(), ColumnSmallestLastOrdering(), GetOrderedVertices(), ColPack::BipartiteGraphPartialColoring::PartialDistanceTwoColumnColoring(), ColPack::BipartiteGraphPartialColoring::PartialDistanceTwoRowColoring(), PrintVertexOrdering(), Reset(), RowIncidenceDegreeOrdering(), RowLargestFirstOrdering(), RowNaturalOrdering(), RowRandomOrdering(), and RowSmallestLastOrdering().