sparse_insert_entry_float(_:_:_:_:)
Inserts a single scalar entry into a single-precision sparse matrix.
Declaration
func sparse_insert_entry_float(_ A: sparse_matrix_float!, _ val: Float, _ i: sparse_index, _ j: sparse_index) -> sparse_statusParameters
- A:
The sparse matrix, A, which must have been created with Sparse_matrix_create_float(_:_:). Sparse_illegal_parameter is returned if not met.
- val:
The scalar value to insert into the sparse matrix.
- i:
The row location to insert the value. Indices are 0 based (first element of pointer is
ptr[0]). Indices expected to be in the bounds of matrix dimensions, undefined behavior if not met. - j:
The column location to insert the value. Indices are 0 based (first element of pointer is ptr[0]). Indices expected to be in the bounds of matrix dimensions, undefined behavior if not met.
Return Value
On successful insertion, A has been updated with the value and SPARSE_SUCCESS is returned. If A creation requirements are not met, SPARSE_ILLEGAL_PARAMETER is returned and A is unchanged.
Discussion
Use to build a sparse matrix by inserting one scalar entry at a time. This function is the equivalent of A[i,j] = val.
Note that matrix properties cannot be modified after value insertion begins. This includes properties such as specifying a triangular matrix.
Insertion can be expensive, generally speaking it is best to do a batch update.
Inserted values may be temporarily held internally within the object and only inserted into the sparse format when a later computation triggers a need to insert.
See Also
Matrix creation and population
sparse_matrix_create_double(_:_:)sparse_matrix_create_float(_:_:)sparse_insert_entry_double(_:_:_:_:)sparse_insert_entries_double(_:_:_:_:_:)sparse_insert_entries_float(_:_:_:_:_:)sparse_insert_col_double(_:_:_:_:_:)sparse_insert_col_float(_:_:_:_:_:)sparse_insert_row_double(_:_:_:_:_:)sparse_insert_row_float(_:_:_:_:_:)