 Bartels and
  Stewart method [1], except that it finds the upper triangular
  matrix U directly without first finding X and without the need
  to form the normal matrix op(B)'*op(B) [2].

  If LTRANS = .FALSE., the matrix B is factored as

     B = P ( R ),  M &gt;= N,   B = P ( R  Z ),  M &lt; N,
           ( 0 )

  (QR factorization), where P is an M-by-M orthogonal matrix and
  R is a square upper triangular matrix.

  If LTRANS = .TRUE., the matrix B is factored as

     B = ( 0  R ) P,  M &gt;= N,  B 