pub trait KluData: Sealed + Copy + PartialEq + Debug + Default + Mul + Sub + Add + AddAssign + Div + ComplexFloat<Real = f64> {
unsafe fn klu_solve<I: KluIndex>(
symbolic: *mut I::KluSymbolic,
numeric: *mut I::KluNumeric,
rhs_dimension: I,
number_rhs: I,
rhs_data: *mut Self,
common: *mut I::KluCommon
) -> bool;
unsafe fn klu_tsolve<I: KluIndex>(
symbolic: *mut I::KluSymbolic,
numeric: *mut I::KluNumeric,
rhs_dimension: I,
number_rhs: I,
rhs_data: *mut Self,
common: *mut I::KluCommon
) -> bool;
unsafe fn klu_factor<I: KluIndex>(
colum_offsets: *const I,
row_indices: *const I,
data: *mut Self,
symbolic: *mut I::KluSymbolic,
common: *mut I::KluCommon
) -> *mut I::KluNumeric;
unsafe fn klu_refactor<I: KluIndex>(
colum_offsets: *const I,
row_indices: *const I,
data: *mut Self,
symbolic: *mut I::KluSymbolic,
numeric: *mut I::KluNumeric,
common: *mut I::KluCommon
) -> bool;
unsafe fn klu_free_numeric<I: KluIndex>(
numeric: *mut *mut I::KluNumeric,
common: *mut I::KluCommon
);
unsafe fn klu_rcond<I: KluIndex>(
symbolic: *mut I::KluSymbolic,
numeric: *mut I::KluNumeric,
common: *mut I::KluCommon
) -> bool;
}Expand description
Values that can be used by the KLU solver. The functions of this trait are all unsafe because they directly call the underlying C implementation.
Required Methods
sourceunsafe fn klu_solve<I: KluIndex>(
unsafe fn klu_solve<I: KluIndex>(
symbolic: *mut I::KluSymbolic,
numeric: *mut I::KluNumeric,
rhs_dimension: I,
number_rhs: I,
rhs_data: *mut Self,
common: *mut I::KluCommon
) -> bool
sourceunsafe fn klu_tsolve<I: KluIndex>(
unsafe fn klu_tsolve<I: KluIndex>(
symbolic: *mut I::KluSymbolic,
numeric: *mut I::KluNumeric,
rhs_dimension: I,
number_rhs: I,
rhs_data: *mut Self,
common: *mut I::KluCommon
) -> bool
sourceunsafe fn klu_factor<I: KluIndex>(
unsafe fn klu_factor<I: KluIndex>(
colum_offsets: *const I,
row_indices: *const I,
data: *mut Self,
symbolic: *mut I::KluSymbolic,
common: *mut I::KluCommon
) -> *mut I::KluNumeric
sourceunsafe fn klu_refactor<I: KluIndex>(
unsafe fn klu_refactor<I: KluIndex>(
colum_offsets: *const I,
row_indices: *const I,
data: *mut Self,
symbolic: *mut I::KluSymbolic,
numeric: *mut I::KluNumeric,
common: *mut I::KluCommon
) -> bool
sourceunsafe fn klu_free_numeric<I: KluIndex>(
unsafe fn klu_free_numeric<I: KluIndex>(
numeric: *mut *mut I::KluNumeric,
common: *mut I::KluCommon
)
sourceunsafe fn klu_rcond<I: KluIndex>(