Here we describe the matching interface provided by Isorropia.
More...
Here we describe the matching interface provided by Isorropia.
Matching
Isorropia currently supports maximum-cardinality matching, also known as maximum transversal. This may be used to permute a matrix to get a zero-free diagonal. This code uses shared-memory parallelism and requires OpenMP. An MPI version is planned for a future version.
Isorropia::Epetra::Matcher::Matcher |
( |
const Epetra_CrsMatrix * |
, |
|
|
const Teuchos::ParameterList & |
paramlist = Teuchos::ParameterList("EmptyParameterList") |
|
) |
| |
Constructor.
- Parameters
-
[in] | Epetra_CRSMatrix* | compressed row matrix |
[in] | paramlist | this parameter list is used to select the algorithm. The input is a string. "PHK","PHKDW", "PDFS" and "PPF" for parallel Hopcroft-Karp, parallel Hopcroft-Karp with Duff-Wiberg , parallel DFS and parallel Pothen-Fan respectively. The default is the "PHKDW". |
Isorropia::Epetra::Matcher::Matcher |
( |
Teuchos::RCP< const Epetra_CrsMatrix > |
, |
|
|
const Teuchos::ParameterList & |
paramlist = Teuchos::ParameterList("EmptyParameterList") |
|
) |
| |
Constructor.
- Parameters
-
[in] | RCP | of the CrsMatrix |
[in] | paramlist | this parameter list is used to select the algorithm. The input is a string. "PHK","PHKDW", "PDFS" and "PPF" for parallel Hopcroft-Karp, parallel Hopcroft-Karp with Duff-Wiberg , parallel DFS and parallel Pothen-Fan respectively. The default is the "PHKDW". |
Isorropia::Epetra::Matcher::Matcher |
( |
const Epetra_CrsGraph * |
, |
|
|
const Teuchos::ParameterList & |
paramlist = Teuchos::ParameterList("EmptyParameterList") |
|
) |
| |
Constructor.
- Parameters
-
[in] | Pointer | to the Epetra_CrsGraph |
[in] | paramlist | this parameter list is used to select the algorithm. The input is a string. "PHK","PHKDW", "PDFS" and "PPF" for parallel Hopcroft-Karp, parallel Hopcroft-Karp with Duff-Wiberg , parallel DFS and parallel Pothen-Fan respectively. The default is the "PHKDW". |
Isorropia::Epetra::Matcher::Matcher |
( |
Teuchos::RCP< const Epetra_CrsGraph > |
, |
|
|
const Teuchos::ParameterList & |
paramlist = Teuchos::ParameterList("EmptyParameterList") |
|
) |
| |
Constructor.
- Parameters
-
[in] | RCP | of the Epetra_CrsGraph |
[in] | paramlist | this parameter list is used to select the algorithm. The input is a string. "PHK","PHKDW", "PDFS" and "PPF" for parallel Hopcroft-Karp, parallel Hopcroft-Karp with Duff-Wiberg , parallel DFS and parallel Pothen-Fan respectively. The default is the "PHKDW". |
virtual Isorropia::Epetra::Matcher::~Matcher |
( |
| ) |
|
|
virtual |
void Isorropia::Epetra::Matcher::getMatchedColumnsForRowsCopy |
( |
int |
, |
|
|
int & |
, |
|
|
int * |
|
|
) |
| const |
Copies the matched columns corresponding to each row in a user given array.
- Parameters
-
[in] | The | length of the array provided by the user |
[out] | The | amount of data copied into the array |
| in/out] | The user array |
void Isorropia::Epetra::Matcher::getMatchedRowsForColumnsCopy |
( |
int |
, |
|
|
int & |
, |
|
|
int * |
|
|
) |
| const |
Copies the matched rows corresponding to each column in a user given array.
- Parameters
-
[in] | The | length of the array provided by the user |
[out] | The | amount of data copied into the array |
| in/out] | The user array |
Teuchos::RCP<Epetra_CrsMatrix> Isorropia::Epetra::Matcher::applyRowPermutation |
( |
| ) |
|
Applies the row permutation from matching and returns a new matrix.
Teuchos::RCP<Epetra_CrsMatrix> Isorropia::Epetra::Matcher::applyColumnPermutation |
( |
| ) |
|
Applies the column permutation from matching and returns a new matrix.
int Isorropia::Epetra::Matcher::match |
( |
| ) |
|
Provides the column map which is actually the complete column permutation.
Computes the maximum cardinality matching.