From: <par...@us...> - 2010-09-15 14:06:39
|
Revision: 7731 http://octave.svn.sourceforge.net/octave/?rev=7731&view=rev Author: paramaniac Date: 2010-09-15 14:06:32 +0000 (Wed, 15 Sep 2010) Log Message: ----------- control: use @lti/transpose for dual system Modified Paths: -------------- trunk/octave-forge/main/control/inst/isdetectable.m trunk/octave-forge/main/control/inst/isobsv.m Modified: trunk/octave-forge/main/control/inst/isdetectable.m =================================================================== --- trunk/octave-forge/main/control/inst/isdetectable.m 2010-09-15 13:07:07 UTC (rev 7730) +++ trunk/octave-forge/main/control/inst/isdetectable.m 2010-09-15 14:06:32 UTC (rev 7731) @@ -56,24 +56,22 @@ ## Author: Lukas Reichlin <luk...@gm...> ## Created: October 2009 -## Version: 0.2.1 +## Version: 0.3 function bool = isdetectable (a, c = [], tol = [], dflg = 0) - if (nargin < 1 || nargin > 4) + if (nargin == 0) print_usage (); elseif (isa (a, "lti")) # isdetectable (sys), isdetectable (sys, tol) if (nargin > 2) print_usage (); endif - tol = c; - dflg = ! isct (a); - [a, b, c] = ssdata (a); - elseif (nargin == 1) # isdetectable (a, c, ...) + bool = isstabilizable (a.', c); # transpose is overloaded + elseif (nargin < 2 || nargin > 4) print_usage (); + else # isdetectable (a, c, ...) + bool = isstabilizable (a.', c.', tol, dflg); # arguments checked inside endif - bool = isstabilizable (a.', c.', tol, dflg); # arguments checked inside - endfunction Modified: trunk/octave-forge/main/control/inst/isobsv.m =================================================================== --- trunk/octave-forge/main/control/inst/isobsv.m 2010-09-15 13:07:07 UTC (rev 7730) +++ trunk/octave-forge/main/control/inst/isobsv.m 2010-09-15 14:06:32 UTC (rev 7731) @@ -51,23 +51,22 @@ ## Author: Lukas Reichlin <luk...@gm...> ## Created: October 2009 -## Version: 0.2.1 +## Version: 0.3 function [bool, u] = isobsv (a, c = [], tol = []) - if (nargin < 1 || nargin > 3) + if (nargin == 0) print_usage (); - elseif (isa (a, "lti")) # isobsv (sys), isobsv (sys, tol) + elseif (isa (a, "lti")) # isobsv (sys), isobsv (sys, tol) if (nargin > 2) print_usage (); endif - tol = c; - [a, b, c] = ssdata (a); - elseif (nargin < 2) # isobsv (a, c), isobsv (a, c, tol) + [bool, u] = isctrb (a.', c); # transpose is overloaded + elseif (nargin < 2 || nargin > 3) print_usage (); + else # isobsv (a, c), isobsv (a, c, tol) + [bool, u] = isctrb (a.', c.', tol); endif - [bool, u] = isctrb (a.', c.', tol); - endfunction This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |