From: <par...@us...> - 2010-09-17 12:06:34
|
Revision: 7741 http://octave.svn.sourceforge.net/octave/?rev=7741&view=rev Author: paramaniac Date: 2010-09-17 12:06:28 +0000 (Fri, 17 Sep 2010) Log Message: ----------- control: simplify argument checks Modified Paths: -------------- trunk/octave-forge/main/control/inst/__frequency_response__.m trunk/octave-forge/main/control/inst/__time_response__.m trunk/octave-forge/main/control/inst/care.m trunk/octave-forge/main/control/inst/dare.m trunk/octave-forge/main/control/inst/h2syn.m trunk/octave-forge/main/control/inst/hinfsyn.m Modified: trunk/octave-forge/main/control/inst/__frequency_response__.m =================================================================== --- trunk/octave-forge/main/control/inst/__frequency_response__.m 2010-09-16 22:40:46 UTC (rev 7740) +++ trunk/octave-forge/main/control/inst/__frequency_response__.m 2010-09-17 12:06:28 UTC (rev 7741) @@ -1,4 +1,4 @@ -## Copyright (C) 2009 Lukas F. Reichlin +## Copyright (C) 2009 - 2010 Lukas F. Reichlin ## ## This file is part of LTI Syncope. ## @@ -21,7 +21,7 @@ ## Author: Lukas Reichlin <luk...@gm...> ## Created: November 2009 -## Version: 0.1 +## Version: 0.2 function [H, w] = __frequency_response__ (sys, w = [], mimoflag = 0, resptype = 0, wbounds = "std") @@ -30,10 +30,6 @@ error ("frequency_response: first argument sys must be an LTI system"); endif - if (! is_real_vector (w)) - error ("frequency_response: second argument w must be a vector of frequencies"); - endif - if (! mimoflag && ! issiso (sys)) error ("frequency_response: require SISO system"); endif @@ -42,8 +38,9 @@ if (isempty (w)) ## begin plot at 10^dec_min, end plot at 10^dec_max [rad/s] [dec_min, dec_max] = __frequency_range__ (sys, wbounds); - w = logspace (dec_min, dec_max, 500); # [rad/s] + elseif (! is_real_vector (w)) + error ("frequency_response: second argument w must be a vector of frequencies"); endif ## frequency response Modified: trunk/octave-forge/main/control/inst/__time_response__.m =================================================================== --- trunk/octave-forge/main/control/inst/__time_response__.m 2010-09-16 22:40:46 UTC (rev 7740) +++ trunk/octave-forge/main/control/inst/__time_response__.m 2010-09-17 12:06:28 UTC (rev 7741) @@ -28,7 +28,7 @@ sys = ss (sys); # sys must be proper endif - if (! isempty (tfinal) && ! is_real_scalar (tfinal)) # time vector t passed + if (! is_real_scalar (tfinal)) # time vector t passed dt = tfinal(2) - tfinal(1); # assume that t is regularly spaced tfinal = tfinal(end); endif Modified: trunk/octave-forge/main/control/inst/care.m =================================================================== --- trunk/octave-forge/main/control/inst/care.m 2010-09-16 22:40:46 UTC (rev 7740) +++ trunk/octave-forge/main/control/inst/care.m 2010-09-17 12:06:28 UTC (rev 7741) @@ -93,7 +93,7 @@ error ("care: (b, r) not conformable"); endif - if (! isempty (s) && (! is_real_matrix (s) || ! size_equal (s, b))) + if (! is_real_matrix (s) && ! size_equal (s, b)) error ("care: s(%dx%d) must be real and identically dimensioned with b(%dx%d)", rows (s), columns (s), rows (b), columns (b)); endif Modified: trunk/octave-forge/main/control/inst/dare.m =================================================================== --- trunk/octave-forge/main/control/inst/dare.m 2010-09-16 22:40:46 UTC (rev 7740) +++ trunk/octave-forge/main/control/inst/dare.m 2010-09-17 12:06:28 UTC (rev 7741) @@ -93,7 +93,7 @@ error ("dare: b and r must have the same number of columns"); endif - if (! isempty (s) && (! is_real_matrix (s) || ! size_equal (s, b))) + if (! is_real_matrix (s) && ! size_equal (s, b)) error ("dare: s(%dx%d) must be real and identically dimensioned with b(%dx%d)", rows (s), columns (s), rows (b), columns (b)); endif Modified: trunk/octave-forge/main/control/inst/h2syn.m =================================================================== --- trunk/octave-forge/main/control/inst/h2syn.m 2010-09-16 22:40:46 UTC (rev 7740) +++ trunk/octave-forge/main/control/inst/h2syn.m 2010-09-17 12:06:28 UTC (rev 7741) @@ -84,11 +84,11 @@ error ("h2syn: first argument must be an LTI system"); endif - if (! is_real_scalar (nmeas) || isempty (nmeas)) + if (! is_real_scalar (nmeas)) error ("h2syn: second argument invalid"); endif - if (! is_real_scalar (ncon) || isempty (ncon)) + if (! is_real_scalar (ncon)) error ("h2syn: third argument invalid"); endif Modified: trunk/octave-forge/main/control/inst/hinfsyn.m =================================================================== --- trunk/octave-forge/main/control/inst/hinfsyn.m 2010-09-16 22:40:46 UTC (rev 7740) +++ trunk/octave-forge/main/control/inst/hinfsyn.m 2010-09-17 12:06:28 UTC (rev 7741) @@ -90,15 +90,15 @@ error ("hinfsyn: first argument must be an LTI system"); endif - if (! is_real_scalar (nmeas) || isempty (nmeas)) + if (! is_real_scalar (nmeas)) error ("hinfsyn: second argument invalid"); endif - if (! is_real_scalar (ncon) || isempty (ncon)) + if (! is_real_scalar (ncon)) error ("hinfsyn: third argument invalid"); endif - if (! is_real_scalar (gmax) || isempty (gmax) || gmax < 0) + if (! is_real_scalar (gmax) || gmax < 0) error ("hinfsyn: fourth argument invalid"); endif This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |