changeset 13027:b9a89ca0fb75

prevent optimization functions from setting ans in workspace at startup * fminbnd.m, fminunc.m, fsolve.m, fzero.m, lsqnonneg.m, pqpnonneg.m, qp.m: Discard result from call to __all_opt__ in PKG_ADD command.
author John W. Eaton <jwe@octave.org>
date Mon, 29 Aug 2011 13:07:22 -0400
parents 9a2a6054460f
children 50db905c3cf1
files scripts/optimization/fminbnd.m scripts/optimization/fminunc.m scripts/optimization/fsolve.m scripts/optimization/fzero.m scripts/optimization/lsqnonneg.m scripts/optimization/pqpnonneg.m scripts/optimization/qp.m
diffstat 7 files changed, 14 insertions(+), 7 deletions(-) [+]
line wrap: on
line diff
--- a/scripts/optimization/fminbnd.m	Mon Aug 29 09:14:11 2011 -0700
+++ b/scripts/optimization/fminbnd.m	Mon Aug 29 13:07:22 2011 -0400
@@ -49,7 +49,8 @@
 ## This is patterned after opt/fmin.f from Netlib, which in turn is taken from
 ## Richard Brent: Algorithms For Minimization Without Derivatives, Prentice-Hall (1973)
 
-## PKG_ADD: __all_opts__ ("fminbnd");
+## PKG_ADD: ## Discard result to avoid polluting workspace with ans at startup.
+## PKG_ADD: [~] = __all_opts__ ("fminbnd");
 
 function [x, fval, info, output] = fminbnd (fun, xmin, xmax, options = struct ())
 
--- a/scripts/optimization/fminunc.m	Mon Aug 29 09:14:11 2011 -0700
+++ b/scripts/optimization/fminunc.m	Mon Aug 29 13:07:22 2011 -0400
@@ -77,7 +77,8 @@
 ## @seealso{fminbnd, optimset}
 ## @end deftypefn
 
-## PKG_ADD: __all_opts__ ("fminunc");
+## PKG_ADD: ## Discard result to avoid polluting workspace with ans at startup.
+## PKG_ADD: [~] = __all_opts__ ("fminunc");
 
 function [x, fval, info, output, grad, hess] = fminunc (fcn, x0, options = struct ())
 
--- a/scripts/optimization/fsolve.m	Mon Aug 29 09:14:11 2011 -0700
+++ b/scripts/optimization/fsolve.m	Mon Aug 29 13:07:22 2011 -0400
@@ -127,7 +127,8 @@
 ## @end example
 ## @end deftypefn
 
-## PKG_ADD: __all_opts__ ("fsolve");
+## PKG_ADD: ## Discard result to avoid polluting workspace with ans at startup.
+## PKG_ADD: [~] = __all_opts__ ("fsolve");
 
 function [x, fvec, info, output, fjac] = fsolve (fcn, x0, options = struct ())
 
--- a/scripts/optimization/fzero.m	Mon Aug 29 09:14:11 2011 -0700
+++ b/scripts/optimization/fzero.m	Mon Aug 29 13:07:22 2011 -0400
@@ -93,7 +93,8 @@
 ## the need for external functions and error handling. The algorithm has
 ## also been slightly modified.
 
-## PKG_ADD: __all_opts__ ("fzero");
+## PKG_ADD: ## Discard result to avoid polluting workspace with ans at startup.
+## PKG_ADD: [~] = __all_opts__ ("fzero");
 
 function [x, fval, info, output] = fzero (fun, x0, options = struct ())
 
--- a/scripts/optimization/lsqnonneg.m	Mon Aug 29 09:14:11 2011 -0700
+++ b/scripts/optimization/lsqnonneg.m	Mon Aug 29 13:07:22 2011 -0400
@@ -63,7 +63,8 @@
 ## @seealso{optimset, pqpnonneg}
 ## @end deftypefn
 
-## PKG_ADD: __all_opts__ ("lsqnonneg");
+## PKG_ADD: ## Discard result to avoid polluting workspace with ans at startup.
+## PKG_ADD: [~] = __all_opts__ ("lsqnonneg");
 
 ## This is implemented from Lawson and Hanson's 1973 algorithm on page
 ## 161 of Solving Least Squares Problems.
--- a/scripts/optimization/pqpnonneg.m	Mon Aug 29 09:14:11 2011 -0700
+++ b/scripts/optimization/pqpnonneg.m	Mon Aug 29 13:07:22 2011 -0400
@@ -58,7 +58,8 @@
 ## @seealso{optimset, lsqnonneg, qp}
 ## @end deftypefn
 
-## PKG_ADD: __all_opts__ ("pqpnonneg");
+## PKG_ADD: ## Discard result to avoid polluting workspace with ans at startup.
+## PKG_ADD: [~] = __all_opts__ ("pqpnonneg");
 
 ## This is analogical to the lsqnonneg implementation, which is
 ## implemented from Lawson and Hanson's 1973 algorithm on page
--- a/scripts/optimization/qp.m	Mon Aug 29 09:14:11 2011 -0700
+++ b/scripts/optimization/qp.m	Mon Aug 29 13:07:22 2011 -0400
@@ -108,7 +108,8 @@
 ## @end table
 ## @end deftypefn
 
-## PKG_ADD: __all_opts__ ("qp");
+## PKG_ADD: ## Discard result to avoid polluting workspace with ans at startup.
+## PKG_ADD: [~] = __all_opts__ ("qp");
 
 function [x, obj, INFO, lambda] = qp (x0, H, varargin)