From: <par...@us...> - 2011-11-10 20:38:48
|
Revision: 9055 http://octave.svn.sourceforge.net/octave/?rev=9055&view=rev Author: paramaniac Date: 2011-11-10 20:38:42 +0000 (Thu, 10 Nov 2011) Log Message: ----------- control-devel: return info struct for all model reduction commands Modified Paths: -------------- trunk/octave-forge/extra/control-devel/inst/__modred_ab09id__.m trunk/octave-forge/extra/control-devel/inst/bstmodred.m trunk/octave-forge/extra/control-devel/inst/btamodred.m trunk/octave-forge/extra/control-devel/inst/spamodred.m trunk/octave-forge/extra/control-devel/src/slab09hd.cc trunk/octave-forge/extra/control-devel/src/slab09id.cc Modified: trunk/octave-forge/extra/control-devel/inst/__modred_ab09id__.m =================================================================== --- trunk/octave-forge/extra/control-devel/inst/__modred_ab09id__.m 2011-11-10 20:31:47 UTC (rev 9054) +++ trunk/octave-forge/extra/control-devel/inst/__modred_ab09id__.m 2011-11-10 20:38:42 UTC (rev 9055) @@ -16,7 +16,7 @@ ## along with LTI Syncope. If not, see <http://www.gnu.org/licenses/>. ## -*- texinfo -*- -## @deftypefn{Function File} {[@var{sysr}, @var{nr}] =} __modred_ab09id__ (@var{method}, @dots{}) +## @deftypefn{Function File} {[@var{sysr}, @var{info}] =} __modred_ab09id__ (@var{method}, @dots{}) ## Backend for btamodred and spamodred. ## @end deftypefn @@ -24,7 +24,7 @@ ## Created: November 2011 ## Version: 0.1 -function [sysr, nr] = __modred_ab09id__ (method, varargin) +function [sysr, info] = __modred_ab09id__ (method, varargin) if (nargin < 2) print_usage (); @@ -110,15 +110,18 @@ ## TODO: handle job ## perform model order reduction - [ar, br, cr, dr] = slab09id (a, b, c, d, dico, equil, nr, ordsel, alpha, job, \ - av, bv, cv, dv, \ - aw, bw, cw, dw, \ - weight, jobc, jobo, alphac, alphao, \ - tol1, tol2); + [ar, br, cr, dr, nr, hsv, ns] = slab09id (a, b, c, d, dico, equil, nr, ordsel, alpha, job, \ + av, bv, cv, dv, \ + aw, bw, cw, dw, \ + weight, jobc, jobo, alphac, alphao, \ + tol1, tol2); ## assemble reduced order model sysr = ss (ar, br, cr, dr, tsam); + ## assemble info struct + info = struct ("nr", nr, "ns", ns, "hsv", hsv); + endfunction Modified: trunk/octave-forge/extra/control-devel/inst/bstmodred.m =================================================================== --- trunk/octave-forge/extra/control-devel/inst/bstmodred.m 2011-11-10 20:31:47 UTC (rev 9054) +++ trunk/octave-forge/extra/control-devel/inst/bstmodred.m 2011-11-10 20:38:42 UTC (rev 9055) @@ -103,12 +103,15 @@ ## TODO: handle job ## perform model order reduction - [ar, br, cr, dr, nr] = slab09hd (a, b, c, d, dt, scaled, job, nr, ordsel, alpha, beta, \ - tol1, tol2); + [ar, br, cr, dr, nr, hsv, ns] = slab09hd (a, b, c, d, dt, scaled, job, nr, ordsel, alpha, beta, \ + tol1, tol2); ## assemble reduced order model sysr = ss (ar, br, cr, dr, tsam); + ## assemble info struct + info = struct ("nr", nr, "ns", ns, "hsv", hsv); + endfunction Modified: trunk/octave-forge/extra/control-devel/inst/btamodred.m =================================================================== --- trunk/octave-forge/extra/control-devel/inst/btamodred.m 2011-11-10 20:31:47 UTC (rev 9054) +++ trunk/octave-forge/extra/control-devel/inst/btamodred.m 2011-11-10 20:38:42 UTC (rev 9055) @@ -45,9 +45,9 @@ ## Created: November 2011 ## Version: 0.1 -function [sysr, nr] = btamodred (varargin) +function [sysr, info] = btamodred (varargin) - [sysr, nr] = __modred_ab09id__ ("bta", varargin{:}); + [sysr, info] = __modred_ab09id__ ("bta", varargin{:}); endfunction Modified: trunk/octave-forge/extra/control-devel/inst/spamodred.m =================================================================== --- trunk/octave-forge/extra/control-devel/inst/spamodred.m 2011-11-10 20:31:47 UTC (rev 9054) +++ trunk/octave-forge/extra/control-devel/inst/spamodred.m 2011-11-10 20:38:42 UTC (rev 9055) @@ -45,9 +45,9 @@ ## Created: November 2011 ## Version: 0.1 -function [sysr, nr] = spamodred (varargin) +function [sysr, info] = spamodred (varargin) - [sysr, nr] = __modred_ab09id__ ("spa", varargin{:}); + [sysr, info] = __modred_ab09id__ ("spa", varargin{:}); endfunction Modified: trunk/octave-forge/extra/control-devel/src/slab09hd.cc =================================================================== --- trunk/octave-forge/extra/control-devel/src/slab09hd.cc 2011-11-10 20:31:47 UTC (rev 9054) +++ trunk/octave-forge/extra/control-devel/src/slab09hd.cc 2011-11-10 20:38:42 UTC (rev 9055) @@ -261,8 +261,8 @@ retval(2) = c; retval(3) = d; retval(4) = octave_value (nr); - // retval(0) = hsv; - // retval(1) = octave_value (ns); + retval(5) = hsv; + retval(6) = octave_value (ns); } return retval; Modified: trunk/octave-forge/extra/control-devel/src/slab09id.cc =================================================================== --- trunk/octave-forge/extra/control-devel/src/slab09id.cc 2011-11-10 20:31:47 UTC (rev 9054) +++ trunk/octave-forge/extra/control-devel/src/slab09id.cc 2011-11-10 20:38:42 UTC (rev 9055) @@ -414,8 +414,8 @@ retval(2) = c; retval(3) = d; retval(4) = octave_value (nr); - // retval(0) = hsv; - // retval(1) = octave_value (ns); + retval(5) = hsv; + retval(6) = octave_value (ns); } return retval; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |