changeset 3365:7ed630f7b7be

[project @ 1999-11-20 03:11:17 by jwe]
author jwe
date Sat, 20 Nov 1999 03:12:52 +0000
parents fac05a83b4c5
children abdd5ed1bb4e
files scripts/ChangeLog scripts/control/pinv.m src/ChangeLog src/DLD-FUNCTIONS/pinv.cc
diffstat 4 files changed, 14 insertions(+), 55 deletions(-) [+]
line wrap: on
line diff
--- a/scripts/ChangeLog	Sat Nov 20 03:05:45 1999 +0000
+++ b/scripts/ChangeLog	Sat Nov 20 03:12:52 1999 +0000
@@ -1,5 +1,7 @@
 1999-11-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
 
+	* control/pinv.m: Delete.
+
 	* Makefile.in (DOCSTRINGS): Don't echo $(ALL_M_FILES).
 
 	* strings/blanks.m: Texinfoize doc string.
--- a/scripts/control/pinv.m	Sat Nov 20 03:05:45 1999 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,53 +0,0 @@
-# Copyright (C) 1994 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 USA.
-
-## -*- texinfo -*-
-## @deftypefn {Function File } { } pinv ( @var{X}@{,@var{tol}@} ) 
-## Returns the pseudoinverse of X; singular values less than tol are ignored.
-##  
-## If the second arguement is ommited , it is assummed that
-## @example
-##   tol = max (size (X)) * sigma_max (X) * eps,
-## @end example
-## where sigma_max(X) is the maximal singular value of X.  
-## @end deftypefn
-
-function retval = pinv (X, tol)
-# Written by Kurt Hornik (hornik@neuro.tuwien.ac.at) March 1993.
-# Dept of Probability Theory and Statistics TU Wien, Austria.
-
-  if (nargin < 1 || nargin > 2)
-    error ("usage: pinv (X [, tol])");
-  endif
-
-  [U, S, V] = svd(X);
-  s = diag(S);
-
-  if (nargin == 1)
-    tol = max (size (X)) * s (1) * eps;
-  endif
-
-  r = sum (s > tol);
-  if (r == 0)
-    retval = zeros (X');
-  else
-    D = diag (ones (r, 1) ./ s (1:r));
-    retval = V (:, 1:r) * D * U (:, 1:r)';
-  endif
-
-endfunction
--- a/src/ChangeLog	Sat Nov 20 03:05:45 1999 +0000
+++ b/src/ChangeLog	Sat Nov 20 03:12:52 1999 +0000
@@ -1,5 +1,7 @@
 1999-11-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
 
+	* DLD-FUNCTIONS/pinv.cc (Fpinv): Texinfoize doc string.
+
 	* defun-int.h (DEFUN_DLD_INTERNAL): New macro.
 	* defun-dld.h [MAKE_BUILTINS] (DEFUN_DLD): Simply expand to
 	DEFUN_DLD_INTERNAL.
--- a/src/DLD-FUNCTIONS/pinv.cc	Sat Nov 20 03:05:45 1999 +0000
+++ b/src/DLD-FUNCTIONS/pinv.cc	Sat Nov 20 03:12:52 1999 +0000
@@ -31,8 +31,16 @@
 #include "utils.h"
 
 DEFUN_DLD (pinv, args, ,
-  "pinv ( [, tol])\n\
-Returns the pseudoinverse of X; singular values less than tol are ignored.")
+  "-*- texinfo -*-\n\
+@deftypefn {Function File } { } pinv (@var{X}, @var{tol})\n\
+Returns the pseudoinverse of X; singular values less than tol are ignored.\n\
+\n\
+If the second arguement is ommited , it is assummed that\n\
+@example\n\
+tol = max (size (X)) * sigma_max (X) * eps,\n\
+@end example\n\
+where sigma_max(X) is the maximal singular value of X.\n\
+@end deftypefn")
 {
   octave_value_list retval;