Contents

SparseRefactor(_:_:)

Reuses supplied factorization object’s storage to compute a new factorization of the supplied matrix of complex double values.

Declaration

func SparseRefactor(_ Matrix: SparseMatrix_Complex_Double, _ Factorization: UnsafeMutablePointer<SparseOpaqueFactorization_Complex_Double>)

Parameters

  • Matrix:

    The matrix to be factorized.

  • Factorization:

    The factorization to be updated.

Discussion

Matrix must have the same non-zero structure as that used for the original factorization.

The same numerical factorization options will be used as in the original construction of Factorization.

This call provides very similar behavior to that which can be achieved by reusing explicit storage supplied to SparseFactor as the argument factorStorage. However, in addition to providing a simplified call sequence, this call can also reuse any additional storage allocated to accomodate delayed pivots.

Note that if the reference count of the underlying object is not exactly one (i.e. if there are any implict copies as a result of calls to SparseGetTranspose or SparseCreateSubfactor() that have not been destroyed through a call to SparseCleanup), then new storage will be allocated regardless.

See Also

Matrix Refactorization Functions