---
title: "SparseMultiply(_:_:_:_:)"
framework: accelerate
role: symbol
role_heading: Function
path: "accelerate/sparsemultiply(_:_:_:_:)-581zl"
---

# SparseMultiply(_:_:_:_:)

Perform the multiply operation Y = Subfactor * X for complex float values.

## Declaration

```swift
func SparseMultiply(_ Subfactor: SparseOpaqueSubfactor_Complex_Float, _ X: DenseMatrix_Complex_Float, _ Y: DenseMatrix_Complex_Float, _ workspace: UnsafeMutableRawPointer)
```

## Parameters

- `Subfactor`: (Input) The subfactor to multiply by, as returned by SparseCreateSubfactor().
- `X`: (Input) The right-hand side vectors X. If Subfactor is m x n, then X must have dimension n x nrhs, where nrhs is the number of right-hand side vectors.
- `Y`: (Output) The result vectors Y. If Subfactor is m x n, and X is m x nrhs, then Y must have dimension m x nrhs.
- `workspace`: (Scratch) A workspace of size Subfactor.workspaceRequiredStatic + nrhs * Subfactor.workspaceRequiredPerRHS * 2. This memory must be 16-byte aligned (any allocation returned by malloc() has this property).

## See Also

### Subfactor and dense matrix multiplication with user-defined workspace

- [SparseMultiply(_:_:_:)](accelerate/sparsemultiply(_:_:_:)-20xvs.md)
- [SparseMultiply(_:_:_:)](accelerate/sparsemultiply(_:_:_:)-6thvw.md)
- [SparseMultiply(_:_:_:_:)](accelerate/sparsemultiply(_:_:_:_:)-2osop.md)
- [SparseMultiply(_:_:_:_:)](accelerate/sparsemultiply(_:_:_:_:)-9v8hk.md)
- [SparseMultiply(_:_:_:)](accelerate/sparsemultiply(_:_:_:)-6strd.md)
- [SparseMultiply(_:_:_:)](accelerate/sparsemultiply(_:_:_:)-7mdi8.md)
