class BipartiteGraphPartialColoringInterface in group21. More...
#include <BipartiteGraphPartialColoringInterface.h>
Inherits ColPack::BipartiteGraphPartialColoring.
Public Member Functions | |
BipartiteGraphPartialColoringInterface (int i_type,...) | |
Build a BipartiteGraphPartialColoringInterface object and create the bipartite graph based on the graph structure specified by the input source. | |
int | PartialDistanceTwoColoring (string s_OrderingVariant="NATURAL", string s_ColoringVariant="COLUMN_PARTIAL_DISTANCE_TWO") |
(Partial-Distance-Two) Color the bipartite graph based on the requested s_ColoringVariant and s_OrderingVariant | |
void | GenerateSeedJacobian (double ***dp3_seed, int *ip1_SeedRowCount, int *ip1_SeedColumnCount, string s_OrderingVariant="NATURAL", string s_ColoringVariant="COLUMN_PARTIAL_DISTANCE_TWO") |
Generate and return the seed matrix. | |
void | GenerateSeedJacobian_unmanaged (double ***dp3_seed, int *ip1_SeedRowCount, int *ip1_SeedColumnCount, string s_OrderingVariant="NATURAL", string s_ColoringVariant="COLUMN_PARTIAL_DISTANCE_TWO") |
Same as GenerateSeedJacobian(), except that this Seed matrix is NOT managed by ColPack. | |
double ** | GetSeedMatrix (int *ip1_SeedRowCount, int *ip1_SeedColumnCount) |
Based on m_s_VertexColoringVariant, either GetLeftSeedMatrix() or GetRightSeedMatrix() will be called. | |
void | GetOrderedVertices (vector< int > &output) |
~BipartiteGraphPartialColoringInterface () | |
void | Clear () |
void | Reset () |
Private Attributes | |
Timer | m_T_Timer |
class BipartiteGraphPartialColoringInterface in group21.
To be completed. Note that for each object, only one type of Coloring (either Row or Column) should be used. The reason is because both of RowColoring and ColumnColoring will update (share) the value of m_i_VertexColorCount. If RowColoring is run and then ColumnColoring is run, both PrintColumnPartialColoringMetrics() and PrintRowPartialColoringMetrics() will display the result of the later run (ColumnColoring) only.
Definition at line 37 of file BipartiteGraphPartialColoringInterface.h.
ColPack::BipartiteGraphPartialColoringInterface::BipartiteGraphPartialColoringInterface | ( | int | i_type, | |
... | ||||
) |
Build a BipartiteGraphPartialColoringInterface object and create the bipartite graph based on the graph structure specified by the input source.
This function will:
Structure of this variadic function's parameters: BipartiteGraphPartialColoringInterface(int i_type, [2 or more parameters for input source depending on the value of i_type]). Here are some examples:
About input parameters:
!! add interface function that takes input from ADIC
Definition at line 115 of file BipartiteGraphPartialColoringInterface.cpp.
References ColPack::BipartiteGraphInputOutput::BuildBPGraphFromRowCompressedFormat(), Clear(), ColPack::BipartiteGraphInputOutput::ReadBipartiteGraph(), SRC_FILE, SRC_MEM_ADIC, SRC_MEM_ADOLC, and SRC_WAIT.
ColPack::BipartiteGraphPartialColoringInterface::~BipartiteGraphPartialColoringInterface | ( | ) |
Definition at line 29 of file BipartiteGraphPartialColoringInterface.cpp.
References Clear(), and ColPack::BipartiteGraphPartialColoring::Seed_reset().
void ColPack::BipartiteGraphPartialColoringInterface::Clear | ( | ) | [virtual] |
Reimplemented from ColPack::BipartiteGraphPartialColoring.
Definition at line 37 of file BipartiteGraphPartialColoringInterface.cpp.
Referenced by BipartiteGraphPartialColoringInterface(), and ~BipartiteGraphPartialColoringInterface().
void ColPack::BipartiteGraphPartialColoringInterface::GenerateSeedJacobian | ( | double *** | dp3_seed, | |
int * | ip1_SeedRowCount, | |||
int * | ip1_SeedColumnCount, | |||
string | s_OrderingVariant = "NATURAL" , |
|||
string | s_ColoringVariant = "COLUMN_PARTIAL_DISTANCE_TWO" | |||
) |
Generate and return the seed matrix.
This function will
About input parameters:
Postcondition:
Definition at line 54 of file BipartiteGraphPartialColoringInterface.cpp.
References GetSeedMatrix(), and PartialDistanceTwoColoring().
Referenced by main().
void ColPack::BipartiteGraphPartialColoringInterface::GenerateSeedJacobian_unmanaged | ( | double *** | dp3_seed, | |
int * | ip1_SeedRowCount, | |||
int * | ip1_SeedColumnCount, | |||
string | s_OrderingVariant = "NATURAL" , |
|||
string | s_ColoringVariant = "COLUMN_PARTIAL_DISTANCE_TWO" | |||
) |
Same as GenerateSeedJacobian(), except that this Seed matrix is NOT managed by ColPack.
Notes:
Definition at line 70 of file BipartiteGraphPartialColoringInterface.cpp.
References ColPack::BipartiteGraphPartialColoring::GetSeedMatrix_unmanaged(), and PartialDistanceTwoColoring().
void ColPack::BipartiteGraphPartialColoringInterface::GetOrderedVertices | ( | vector< int > & | output | ) |
Reimplemented from ColPack::BipartiteGraphPartialOrdering.
Definition at line 213 of file BipartiteGraphPartialColoringInterface.cpp.
double ** ColPack::BipartiteGraphPartialColoringInterface::GetSeedMatrix | ( | int * | ip1_SeedRowCount, | |
int * | ip1_SeedColumnCount | |||
) |
Based on m_s_VertexColoringVariant, either GetLeftSeedMatrix() or GetRightSeedMatrix() will be called.
Reimplemented from ColPack::BipartiteGraphPartialColoring.
Definition at line 217 of file BipartiteGraphPartialColoringInterface.cpp.
Referenced by GenerateSeedJacobian(), and main().
int ColPack::BipartiteGraphPartialColoringInterface::PartialDistanceTwoColoring | ( | string | s_OrderingVariant = "NATURAL" , |
|
string | s_ColoringVariant = "COLUMN_PARTIAL_DISTANCE_TWO" | |||
) |
(Partial-Distance-Two) Color the bipartite graph based on the requested s_ColoringVariant and s_OrderingVariant
This function will
About input parameters:
Postcondition:
Definition at line 79 of file BipartiteGraphPartialColoringInterface.cpp.
References _FALSE, _TRUE, ColPack::Timer::GetWallTime(), ColPack::BipartiteGraphPartialColoring::m_d_ColoringTime, ColPack::BipartiteGraphPartialOrdering::m_d_OrderingTime, m_T_Timer, ColPack::BipartiteGraphPartialOrdering::OrderVertices(), ColPack::BipartiteGraphPartialColoring::PartialDistanceTwoColumnColoring(), ColPack::BipartiteGraphPartialColoring::PartialDistanceTwoRowColoring(), ColPack::Timer::Start(), ColPack::Timer::Stop(), and toUpper().
Referenced by GenerateSeedJacobian(), GenerateSeedJacobian_unmanaged(), main(), and toFileBiPC().
void ColPack::BipartiteGraphPartialColoringInterface::Reset | ( | ) | [virtual] |
Reimplemented from ColPack::BipartiteGraphPartialColoring.
Definition at line 46 of file BipartiteGraphPartialColoringInterface.cpp.
Definition at line 139 of file BipartiteGraphPartialColoringInterface.h.
Referenced by PartialDistanceTwoColoring().