sparse_extract_block_float(_:_:_:_:_:_:)
Extracts values from a specified block of a single-precision matrix.
Declaration
func sparse_extract_block_float(_ A: sparse_matrix_float!, _ bi: sparse_index, _ bj: sparse_index, _ row_stride: sparse_dimension, _ col_stride: sparse_dimension, _ val: UnsafeMutablePointer<Float>!) -> sparse_statusParameters
- A:
The sparse matrix, A, which must have been created with Sparse_matrix_block_create_float(_:_:_:_:) or Sparse_matrix_variable_block_create_float(_:_:_:_:). Sparse_illegal_parameter is returned if not met.
Aholds block dimensions (fixed or variable) set with matrix object creation routine. - bi:
The block row index for value extraction. Indices are 0 based (first block of matrix is
A[0,0]). Indices expected to be in the bounds of matrix dimensions, undefined behavior if not met. - bj:
The block column index for value extraction. Indices are 0 based (first block of matrix is
A[0,0]). Indices expected to be in the bounds of matrix dimensions, undefined behavior if not met. - row_stride:
The row stride in number of elements to move from one row to the next for the block
val. - col_stride:
The column stride in number of elements to move from one column to the next for the block
val. - val:
Pointer to dense block to place the extracted values. Expected to be of size
K * LwhereK * Lis the block size for the matrix object at block indexbi,bj. This dimensions is set at matrix object creation time.
Return Value
On success SPARSE_SUCCESS is return and val has been updated with the block from block index bi,bj. If A creation requirements are not met, SPARSE_ILLEGAL_PARAMETER is returned and val is unchanged.
Discussion
Extract the bi,bj’th block from the sparse matrix A.