pub struct KktReport {
pub iter: i32,
pub dim: i32,
pub n_neg: i32,
pub n_pos: i32,
pub expected_neg: i32,
pub provides_inertia: bool,
pub inertia_correct: bool,
pub delta_w: Number,
pub delta_c: Number,
pub status: String,
}Expand description
KKT-factorization report (see DebugState::kkt). The inertia of a
well-posed primal-dual system is (n_pos = n, n_neg = m, n_zero = 0);
a mismatch (or nonzero regularization) is the classic signal that the
step is being stabilized.
Fields§
§iter: i32The outer iteration this factorization was assembled at — may be the
previous iteration when paused at iter_start (viz look-back).
dim: i32Augmented-system dimension (n + m).
n_neg: i32Negative eigenvalues reported (-1 if the backend has no inertia).
n_pos: i32Positive eigenvalues = dim − n_neg (-1 if unknown).
expected_neg: i32Expected negatives = number of equality + inequality multipliers.
provides_inertia: boolWhether the backend reports inertia.
inertia_correct: booltrue when reported inertia matches the expected (n, m, 0).
delta_w: NumberPrimal regularization δ_w applied to the (1,1) block.
delta_c: NumberDual regularization δ_c applied to the (3,3)/(4,4) blocks.
status: StringFactorization status (debug string).