diff scripts/linear-algebra/qzhess.m @ 2303:5cffc4b8de57

[project @ 1996-06-24 09:15:24 by jwe]
author jwe
date Mon, 24 Jun 1996 09:15:24 +0000
parents 5d29638dd524
children 2b5788792cad
line wrap: on
line diff
--- a/scripts/linear-algebra/qzhess.m	Mon Jun 24 08:12:01 1996 +0000
+++ b/scripts/linear-algebra/qzhess.m	Mon Jun 24 09:15:24 1996 +0000
@@ -1,37 +1,38 @@
-# Copyright (C) 1996 John W. Eaton
-# 
-# This file is part of Octave.
-# 
-# Octave is free software; you can redistribute it and/or modify it
-# under the terms of the GNU General Public License as published by the
-# Free Software Foundation; either version 2, or (at your option) any
-# later version.
-# 
-# Octave is distributed in the hope that it will be useful, but WITHOUT
-# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
-# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
-# for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with Octave; see the file COPYING.  If not, write to the Free
-# Software Foundation, 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+### Copyright (C) 1996 John W. Eaton
+###
+### This file is part of Octave.
+###
+### Octave is free software; you can redistribute it and/or modify it
+### under the terms of the GNU General Public License as published by
+### the Free Software Foundation; either version 2, or (at your option)
+### any later version.
+###
+### Octave is distributed in the hope that it will be useful, but
+### WITHOUT ANY WARRANTY; without even the implied warranty of
+### MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+### General Public License for more details.
+###
+### You should have received a copy of the GNU General Public License
+### along with Octave; see the file COPYING.  If not, write to the Free
+### Software Foundation, 59 Temple Place - Suite 330, Boston, MA
+### 02111-1307, USA.
 
 function [aa, bb, q, z] = qzhess (a, b)
 
-# Usage: [aa, bb, q, z] = qzhess (a, b)
-#
-# Compute the qz decomposition of the matrix pencil (a - lambda b)
-#
-# result: (for Matlab compatibility):
-#
-#   aa = q*a*z and bb = q*b*z, with q, z orthogonal, and
-#   v = matrix of generalized eigenvectors.
-#
-# This ought to be done in a compiled program
-#
-# Algorithm taken from Golub and Van Loan, Matrix Computations, 2nd ed.
+  ## Usage: [aa, bb, q, z] = qzhess (a, b)
+  ##
+  ## Compute the qz decomposition of the matrix pencil (a - lambda b)
+  ##
+  ## result: (for Matlab compatibility):
+  ##
+  ##   aa = q*a*z and bb = q*b*z, with q, z orthogonal, and
+  ##   v = matrix of generalized eigenvectors.
+  ##
+  ## This ought to be done in a compiled program
+  ##
+  ## Algorithm taken from Golub and Van Loan, Matrix Computations, 2nd ed.
 
-# Written by A. S. Hodel (scotte@eng.auburn.edu) August 1993.
+  ## Written by A. S. Hodel (scotte@eng.auburn.edu) August 1993.
 
   if (nargin != 2)
     error ("usage: [aa, bb, q, z] = qzhess (a, b)");
@@ -43,7 +44,7 @@
     error ("qzhess: incompatible dimensions");
   endif
 
-# Reduce to hessenberg-triangular form.
+  ## Reduce to hessenberg-triangular form.
 
   [q, bb] = qr (b);
   aa = q' * a;
@@ -52,14 +53,14 @@
   for j = 1:(na-2)
     for i = na:-1:(j+2)
 
-# disp (["zero out aa(", num2str(i), ",", num2str(j), ")"])
+      ## disp (["zero out aa(", num2str(i), ",", num2str(j), ")"])
 
       rot = givens (aa (i-1, j), aa (i, j));
       aa ((i-1):i, :) = rot *aa ((i-1):i, :);
       bb ((i-1):i, :) = rot *bb ((i-1):i, :);
       q  ((i-1):i, :) = rot *q  ((i-1):i, :);
 
-# disp (["now zero out bb(", num2str(i), ",", num2str(i-1), ")"])
+      ## disp (["now zero out bb(", num2str(i), ",", num2str(i-1), ")"])
 
       rot = givens (bb (i, i), bb (i, i-1))';
       bb (:, (i-1):i) = bb (:, (i-1):i) * rot';