![]() |
CMR
1.3.0
|
#include "block_decomposition.h"#include <assert.h>#include <stdlib.h>#include <math.h>#include <limits.h>#include "env_internal.h"Classes | |
| struct | GraphNode |
Typedefs | |
| typedef struct GraphNode | GRAPH_NODE |
Functions | |
| CMR_ERROR | CMRdecomposeBlocks (CMR *cmr, CMR_MATRIX *matrix, size_t matrixType, size_t targetType, size_t *pnumBlocks, CMR_BLOCK **pblocks, size_t *rowsToBlock, size_t *columnsToBlock, size_t *rowsToBlockRows, size_t *columnsToBlockColumns) |
| Decomposes int matrix into 1-connected submatrices. | |
| typedef struct GraphNode GRAPH_NODE |
| CMR_ERROR CMRdecomposeBlocks | ( | CMR * | cmr, |
| CMR_MATRIX * | matrix, | ||
| size_t | matrixType, | ||
| size_t | targetType, | ||
| size_t * | pnumBlocks, | ||
| CMR_BLOCK ** | pblocks, | ||
| size_t * | rowsToBlock, | ||
| size_t * | columnsToBlock, | ||
| size_t * | rowsToBlockRows, | ||
| size_t * | columnsToBlockColumns | ||
| ) |
Decomposes int matrix into 1-connected submatrices.
Allocates an array components with an entry per 1-connected submatrix. The caller has to free this array and its members.
| cmr | CMR environment |
| matrix | Matrix |
| matrixType | Size of base type of matrix. |
| targetType | Size of base type of component matrices. |
| pnumBlocks | Pointer for storing the number of components. |
| pblocks | Pointer for storing the array with component information. |
| rowsToBlock | Mapping of rows of matrix to components (may be NULL). |
| columnsToBlock | Mapping of columns of matrix to components (may be NULL). |
| rowsToBlockRows | Mapping of rows to rows of the component (may be NULL). |
| columnsToBlockColumns | Mapping of columns to columns of the component (may be NULL). |