Skip to main content

assemble_block_triangular_t

Function assemble_block_triangular_t 

Source
pub fn assemble_block_triangular_t(
    v_per_term: &[Array2<f64>],
    r_per_term: &[Option<Array2<f64>>],
) -> Array2<f64>
Expand description

Assemble a block-upper-triangular lift T from per-block diagonal V_b matrices and strictly-upper residualisation blocks R_{a→b}.

r_per_term[b] (when Some) packs ALL strictly-upper off-diagonal columns for block b stacked row-wise across all earlier-priority blocks a < b: nrows = Σ_{a<b} v_per_term[a].nrows(), ncols = v_per_term[b].ncols(). The assembled T carries V_b on the diagonal and −R_{a→b} at (a, b). r_per_term[0] must be None (no earlier block to residualise against).