@@ 322-331 (lines=10) @@ | ||
319 | $this->ort[$m] -= $g; |
|
320 | // Apply Householder similarity transformation |
|
321 | // H = (I -u * u' / h) * H * (I -u * u') / h) |
|
322 | for ($j = $m; $j < $this->n; ++$j) { |
|
323 | $f = 0.0; |
|
324 | for ($i = $high; $i >= $m; --$i) { |
|
325 | $f += $this->ort[$i] * $this->H[$i][$j]; |
|
326 | } |
|
327 | $f /= $h; |
|
328 | for ($i = $m; $i <= $high; ++$i) { |
|
329 | $this->H[$i][$j] -= $f * $this->ort[$i]; |
|
330 | } |
|
331 | } |
|
332 | for ($i = 0; $i <= $high; ++$i) { |
|
333 | $f = 0.0; |
|
334 | for ($j = $high; $j >= $m; --$j) { |
|
@@ 332-341 (lines=10) @@ | ||
329 | $this->H[$i][$j] -= $f * $this->ort[$i]; |
|
330 | } |
|
331 | } |
|
332 | for ($i = 0; $i <= $high; ++$i) { |
|
333 | $f = 0.0; |
|
334 | for ($j = $high; $j >= $m; --$j) { |
|
335 | $f += $this->ort[$j] * $this->H[$i][$j]; |
|
336 | } |
|
337 | $f = $f / $h; |
|
338 | for ($j = $m; $j <= $high; ++$j) { |
|
339 | $this->H[$i][$j] -= $f * $this->ort[$j]; |
|
340 | } |
|
341 | } |
|
342 | $this->ort[$m] = $scale * $this->ort[$m]; |
|
343 | $this->H[$m][$m - 1] = $scale * $g; |
|
344 | } |