Mercurial > octave-nkf
diff scripts/ode/private/ode_struct_value_check.m @ 20584:eb9e2d187ed2
maint: Use Octave coding conventions in scripts/ode/private dir.
* AbsRel_Norm.m, fuzzy_compare.m, hermite_quartic_interpolation.m,
integrate_adaptive.m, integrate_const.m, integrate_n_steps.m, kahan.m,
ode_struct_value_check.m, odepkg_event_handle.m, odepkg_structure_check.m,
runge_kutta_45_dorpri.m, starting_stepsize.m:
Wrap long lines to < 80 chars.
Use double quotes rather than single quotes where possible.
Use ';' at end of keywords "return;" and "break;"
Use '##" for stand-alone comments and '#' for end-of-line comments.
Use two spaces after period before starting new sentence.
Use '!' instead of '~' for logical negation.
Use specific form of end (endif, endfor, etc.).
Don't use line continuation marker '...' unless necessary.
author | Rik <rik@octave.org> |
---|---|
date | Sun, 04 Oct 2015 22:18:54 -0700 |
parents | 25623ef2ff4f |
children | b7ac1e94266e |
line wrap: on
line diff
--- a/scripts/ode/private/ode_struct_value_check.m Sun Oct 04 16:24:32 2015 +0100 +++ b/scripts/ode/private/ode_struct_value_check.m Sun Oct 04 22:18:54 2015 -0700 @@ -18,7 +18,8 @@ ## <http://www.gnu.org/licenses/>. ## -*- texinfo -*- -## @deftypefn {Function File} {[@var{}] =} ode_struct_value_check (@var{arg}, [@var{"solver"}]) +## @deftypefn {Function File} {} ode_struct_value_check (@var{arg}) +## @deftypefnx {Function File} {} ode_struct_value_check (@var{arg}, @var{"solver"}) ## ## If this function is called with one input argument of type structure array ## then check the field names and the field values of the OdePkg structure @@ -57,14 +58,14 @@ fields = fieldnames (arg); fields_nb = length (fields); - for i = 1:1:fields_nb # Run through the number of given structure field names + for i = 1:fields_nb # Run through the number of given structure field names switch (fields{i}) case "AbsTol" if (! isempty (arg.(fields{i}))) if (! isnumeric (arg.(fields{i})) || any (arg.(fields{i}) <= 0) - || ~isreal (arg.(fields{i}))) + || ! isreal (arg.(fields{i}))) error ("OdePkg:InvalidArgument", "value assigned to field %s is not a valid one", fields{i}); elseif (! isvector (arg.(fields{i}))) @@ -105,13 +106,13 @@ endif case "Eta" - if ( ~isempty (arg.(fields{i})) ) - if ( ~isreal (arg.(fields{i})) ) - error ("OdePkg:InvalidArgument", ... - "value assigned to field %s is not a valid one", fields{i}); + if ( ! isempty (arg.(fields{i})) ) + if ( ! isreal (arg.(fields{i})) ) + error ("OdePkg:InvalidArgument", + "value assigned to field %s is not a valid one", fields{i}); elseif ( arg.(fields{i})<0 || arg.(fields{i})>=1 ) - error ("OdePkg:InvalidArgument", ... - "value assigned to field %s is not a valid one", fields{i}); + error ("OdePkg:InvalidArgument", + "value assigned to field %s is not a valid one", fields{i}); endif endif @@ -197,7 +198,7 @@ case "Mass" if (! isempty (arg.(fields{i}))) if ((! isnumeric (arg.(fields{i})) - || ~ismatrix (arg.(fields{i}))) + || ! ismatrix (arg.(fields{i}))) && ! isa (arg.(fields{i}), "function_handle")) error ("OdePkg:InvalidArgument", "value assigned to field %s is not a valid one", fields{i}); @@ -395,18 +396,14 @@ "value assigned to field %s is not a valid one", fields{i}); endif endif - switch (solver) - case {"ode23", "ode23d", "ode45", "ode45d", - "ode54", "ode54d", "ode78", "ode78d"} - if (! isempty (arg.(fields{i}))) - if (! isscalar (arg.(fields{i}))) - error ("OdePkg:InvalidArgument", - "for this type of solver, value assigned to field %s ", - "is not a valid one", fields{i}); - endif - endif - otherwise - endswitch + if (any (strcmp (solver, {"ode23", "ode23d", "ode45", "ode45d", + "ode54", "ode54d", "ode78", "ode78d"}))) + if (! isempty (arg.(fields{i})) && ! isscalar (arg.(fields{i}))) + error ("OdePkg:InvalidArgument", + "for this type of solver, value assigned to field %s ", + "is not a valid one", fields{i}); + endif + endif case "Restart" if (! isempty (arg.(fields{i}))) @@ -473,6 +470,7 @@ endfunction + %!demo %! # Return the checked OdePkg options structure that is created by %! # the command odeset. @@ -481,12 +479,9 @@ %! %!demo %! # Create the OdePkg options structure A with odeset and check it -%! # with odepkg_structure_check. This actually is unnecessary +%! # with odepkg_structure_check. This actually is unnecessary %! # because odeset automtically calls odepkg_structure_check before %! # returning. %! %! A = odeset (); ode_struct_value_check (A); -## Local Variables: *** -## mode: octave *** -## End: ***