Figure 2: Pseudo-code for back-substitution process

for (j = 2 to ndf) // assumes 1-based indexing
{
   rhs(j) = rhs(j) - dotproduct(rhs(k), v(k, j), k = ..)
}

rhs(k) = rhs(k) / diag(k)  // k loops over the column 

for (j = n downto 2)
{
   rhs(k) = rhs(k) - rhs(j) * v(k, j) // k loops over the column 
}

- End of Figure -