Factorization¶
Python API¶
-
LDL(A[, conjugate=True[, pivType=BUNCH_KAUFMAN_A]])¶ - Parameters
A – The (sequential or distributed) dense input/output matrix
conjugate – (optional) boolean for whether to perform LDLT or LDLH
pivType – (optional) the preferred pivoting strategy
- Return type
Nothing is returned if
pivTypeisLDL_WITHOUT_PIVOTING, but, otherwise, the subdiagonal of \(D\),dSub, and the permutation vector,p, are returned
The following Python pseudo-enum contains the list of allowable pivoting approaches for dense LDL factorization:
-
BUNCH_KAUFMAN_A¶ Hardcoded to the value 0
-
BUNCH_KAUFMAN_C¶ Not yet supported (and hardcoded to the value 1)
-
BUNCH_KAUFMAN_D¶ Hardcoded to the value 2
-
BUNCH_KAUFMAN_BOUNDED¶ Not yet supported (and hardcoded to the value 3)
-
BUNCH_PARLETT¶ Hardcoded to the value 4
-
LDL_WITHOUT_PIVOTING¶ Hardcoded to the value 5
C++ API¶
-
enum
LDLPivotType¶ For specifying the symmetric pivoting strategy. The current (not yet all supported) options include:
-
enumerator
BUNCH_KAUFMAN_A¶
-
enumerator
BUNCH_KAUFMAN_C¶ Not yet supported
-
enumerator
BUNCH_KAUFMAN_D¶
-
enumerator
BUNCH_KAUFMAN_BOUNDED¶ Not yet supported
-
enumerator
BUNCH_PARLETT¶
-
enumerator
LDL_WITHOUT_PIVOTING¶
-
enumerator
-
template<>
RealLDLPivotConstant<Real>(LDLPivotType pivotType)¶ Maps various LDL pivotings schemes to their optimal threshold constant.
-
template<>
classLDLPivotCtrl<Real>¶ -
LDLPivotType
pivotType¶ The type of pivoting to perform (by default,
BUNCH_KAUFMAN_A)
-
Real
gamma¶ Pivot tolerance (by default, set to
LDLPivotConstant<Real>(pivotType))
-
LDLPivotCtrl(LDLPivotType piv = BUNCH_KAUFMAN_A)¶
-
LDLPivotType
-
class
LDLPivot¶
-
void
LDL(Matrix<F> &A, Matrix<F> &dSub, Matrix<int> &p, bool conjugate = false, const LDLPivotCtrl<Base<F>> &ctrl = LDLPivotCtrl<Base<F>>())¶
-
void
LDL(AbstractDistMatrix<F> &A, AbstractDistMatrix<F> &dSub, AbstractDistMatrix<int> &p, bool conjugate = false, const LDLPivotCtrl<Base<F>> &ctrl = LDLPivotCtrl<Base<F>>())¶
C API¶
-
ElLDLPivotType¶ An enum for specifying the symmetric pivoting strategy. The current (not yet all supported) options include:
EL_BUNCH_KAUFMAN_AEL_BUNCH_KAUFMAN_C(not yet supported)EL_BUNCH_KAUFMAN_DEL_BUNCH_KAUFMAN_BOUNDED(not yet supported)EL_BUNCH_PARLETT
-
ElLDLPivotCtrl_s¶ -
ElLDLPivotType
pivotType¶
-
float
gamma¶
-
ElLDLPivotType
-
ElLDLPivotCtrl_d¶ -
ElLDLPivotType
pivotType¶
-
double
gamma¶
-
ElLDLPivotType