Contents

SparseMultiply(_:_:_:_:)

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

Declaration

func SparseMultiply(_ Subfactor: SparseOpaqueSubfactor_Complex_Double, _ X: DenseMatrix_Complex_Double, _ Y: DenseMatrix_Complex_Double, _ 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 vector multiplication with user-defined workspace