CMR  1.3.0
Loading...
Searching...
No Matches
block_decomposition.h
Go to the documentation of this file.
1#ifndef CMR_BLOCK_DECOMPOSITION_H
2#define CMR_BLOCK_DECOMPOSITION_H
3
4#include <cmr/env.h>
5#include "matrix_internal.h"
6
7#ifdef __cplusplus
8extern "C" {
9#endif
10
22
31 CMR* cmr,
32 CMR_MATRIX* matrix,
33 size_t matrixType,
34 size_t targetType,
35 size_t* pnumBlocks,
36 CMR_BLOCK** pblocks,
37 size_t* rowsToBlock,
38 size_t* columnsToBlock,
39 size_t* rowsToBlockRows,
40 size_t* columnsToBlockColumns
41);
42
43#ifdef __cplusplus
44}
45#endif
46
47#endif /* CMR_BLOCK_DECOMPOSITION_H */
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.
Definition block_decomposition.c:21
Basic functionality of the software library.
CMR_ERROR
Type for return codes of library functions.
Definition env.h:32
Information on one block of a block decomposition of a matrix.
Definition block_decomposition.h:16
size_t * columnsToOriginal
Maps component columns to original matrix columns.
Definition block_decomposition.h:20
size_t * rowsToOriginal
Maps component rows to original matrix rows.
Definition block_decomposition.h:19
CMR_MATRIX * matrix
Sparse matrix.
Definition block_decomposition.h:17
CMR_MATRIX * transpose
Sparse transposed matrix.
Definition block_decomposition.h:18
Definition env_internal.h:45
Abstract struct for row-wise representations of sparse matrices.
Definition matrix_internal.h:15