where r is an integer input. Fromu = (u1, u2, ..., ur,0, ..., 0)
withS = I - 2*u*u'/u'*u = [P, 0; 0, I]
resultsdim(P) = r x r, dim(I) = n-r x n-r
S*A*S = [P*A11*P, P*A12; A21*P, A22]
function householderSimilarityTransformation2 import Modelica.Math.Vectors.length; input Real A[:, size(A, 1)]; input Real u[size(A, 1)] "householder vector"; input Integer r; output Real SAS[size(A, 1), size(A, 1)]; end householderSimilarityTransformation2;