Function

# sparse_matrix_trace_float(_:_:)

Computes the sum along the specified diagonal of the single-precision sparse matrix A.

## Parameters

`A`

The sparse matrix, A.

`offset`

Specifies the diagonal to sum.

## Return Value

The computed trace.

## Discussion

The diagonal is specified by the `offset` parameter where zero is the main diagonal, values greater than one refer to diagonals above the main diagonal (`A[i,i+offset]`), and values less than one refer to diagonals below the main diagonal (`A[i-offset, i]`).

If offset is out of the bounds of the matrix `A`, `0` is returned.

### Matrix-Vector Operations

`func sparse_matrix_vector_product_dense_double(CBLAS_TRANSPOSE, Double, sparse_matrix_double!, UnsafePointer<Double>!, sparse_stride, UnsafeMutablePointer<Double>!, sparse_stride) -> sparse_status`

Multiplies the dense vector x by the sparse matrix A and adds the result to the dense vector y, with all operands containing double-precision values.

`func sparse_matrix_vector_product_dense_float(CBLAS_TRANSPOSE, Float, sparse_matrix_float!, UnsafePointer<Float>!, sparse_stride, UnsafeMutablePointer<Float>!, sparse_stride) -> sparse_status`

Multiplies the dense vector x by the sparse matrix A and adds the result to the dense vector y, with all operands containing single-precision values.

`func sparse_vector_triangular_solve_dense_double(CBLAS_TRANSPOSE, Double, sparse_matrix_double!, UnsafeMutablePointer<Double>!, sparse_stride) -> sparse_status`

Solves the system of equations x = alpha * T⁻¹ * x for x where x is a dense vector and T is a triangular sparse matrix, with all operands containing double-precision values.

`func sparse_vector_triangular_solve_dense_float(CBLAS_TRANSPOSE, Float, sparse_matrix_float!, UnsafeMutablePointer<Float>!, sparse_stride) -> sparse_status`

Solves the system of equations x = alpha * T⁻¹ * x for x where x is a dense vector and T is a triangular sparse matrix, with all operands containing single-precision values.

`func sparse_permute_rows_double(sparse_matrix_double!, UnsafePointer<sparse_index>!) -> sparse_status`

Permutes the rows of the double-precision sparse matrix A based on the provided permutation array.

`func sparse_permute_rows_float(sparse_matrix_float!, UnsafePointer<sparse_index>!) -> sparse_status`

Permutes the rows of the single-precision sparse matrix A based on the provided permutation array.

`func sparse_permute_cols_double(sparse_matrix_double!, UnsafePointer<sparse_index>!) -> sparse_status`

Permutes the columns of the double-precision sparse matrix A based on the provided permutation array.

`func sparse_permute_cols_float(sparse_matrix_float!, UnsafePointer<sparse_index>!) -> sparse_status`

Permutes the columns of the single-precision sparse matrix A based on the provided permutation array.

`func sparse_elementwise_norm_double(sparse_matrix_double!, sparse_norm) -> Double`

Computes the specified element-wise norm of the double-precision sparse matrix A.

`func sparse_elementwise_norm_float(sparse_matrix_float!, sparse_norm) -> Float`

Computes the specified element-wise norm of the single-precision sparse matrix A.

`func sparse_operator_norm_double(sparse_matrix_double!, sparse_norm) -> Double`

Computes the specified operator norm of the double-precision sparse matrix A.

`func sparse_operator_norm_float(sparse_matrix_float!, sparse_norm) -> Float`

Computes the specified operator norm of the single-precision sparse matrix A.

`func sparse_matrix_trace_double(sparse_matrix_double!, sparse_index) -> Double`

Computes the sum along the specified diagonal of the double-precision sparse matrix A.

Beta Software

This documentation contains preliminary information about an API or technology in development. This information is subject to change, and software implemented according to this documentation should be tested with final operating system software.