annotate examples/paramdemo.cc @ 6650:10da0f6d85c2 ss-2-9-11

[project @ 2007-05-22 06:48:18 by jwe]
author jwe
date Tue, 22 May 2007 06:48:18 +0000
parents d2bb3b8a8d20
children 4270ded9ddc6
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
6580
d2bb3b8a8d20 [project @ 2007-04-25 22:19:03 by dbateman]
dbateman
parents:
diff changeset
1 #include <octave/oct.h>
d2bb3b8a8d20 [project @ 2007-04-25 22:19:03 by dbateman]
dbateman
parents:
diff changeset
2
d2bb3b8a8d20 [project @ 2007-04-25 22:19:03 by dbateman]
dbateman
parents:
diff changeset
3 DEFUN_DLD (paramdemo, args, nargout, "Parameter Check Demo.")
d2bb3b8a8d20 [project @ 2007-04-25 22:19:03 by dbateman]
dbateman
parents:
diff changeset
4 {
d2bb3b8a8d20 [project @ 2007-04-25 22:19:03 by dbateman]
dbateman
parents:
diff changeset
5 int nargin = args.length ();
d2bb3b8a8d20 [project @ 2007-04-25 22:19:03 by dbateman]
dbateman
parents:
diff changeset
6 octave_value retval;
d2bb3b8a8d20 [project @ 2007-04-25 22:19:03 by dbateman]
dbateman
parents:
diff changeset
7
d2bb3b8a8d20 [project @ 2007-04-25 22:19:03 by dbateman]
dbateman
parents:
diff changeset
8 if (nargin != 1)
d2bb3b8a8d20 [project @ 2007-04-25 22:19:03 by dbateman]
dbateman
parents:
diff changeset
9 print_usage();
d2bb3b8a8d20 [project @ 2007-04-25 22:19:03 by dbateman]
dbateman
parents:
diff changeset
10 else if (nargout != 0)
d2bb3b8a8d20 [project @ 2007-04-25 22:19:03 by dbateman]
dbateman
parents:
diff changeset
11 error ("paramdemo: function has no output arguments");
d2bb3b8a8d20 [project @ 2007-04-25 22:19:03 by dbateman]
dbateman
parents:
diff changeset
12 else
d2bb3b8a8d20 [project @ 2007-04-25 22:19:03 by dbateman]
dbateman
parents:
diff changeset
13 {
d2bb3b8a8d20 [project @ 2007-04-25 22:19:03 by dbateman]
dbateman
parents:
diff changeset
14 NDArray m = args(0).array_value();
d2bb3b8a8d20 [project @ 2007-04-25 22:19:03 by dbateman]
dbateman
parents:
diff changeset
15 double min_val = -10.0;
d2bb3b8a8d20 [project @ 2007-04-25 22:19:03 by dbateman]
dbateman
parents:
diff changeset
16 double max_val = 10.0;
d2bb3b8a8d20 [project @ 2007-04-25 22:19:03 by dbateman]
dbateman
parents:
diff changeset
17 octave_stdout << "Properties of input array:\n";
d2bb3b8a8d20 [project @ 2007-04-25 22:19:03 by dbateman]
dbateman
parents:
diff changeset
18 if (m.any_element_is_negative ())
d2bb3b8a8d20 [project @ 2007-04-25 22:19:03 by dbateman]
dbateman
parents:
diff changeset
19 octave_stdout << " includes negative values\n";
d2bb3b8a8d20 [project @ 2007-04-25 22:19:03 by dbateman]
dbateman
parents:
diff changeset
20 if (m.any_element_is_inf_or_nan())
d2bb3b8a8d20 [project @ 2007-04-25 22:19:03 by dbateman]
dbateman
parents:
diff changeset
21 octave_stdout << " includes Inf or NaN values\n";
d2bb3b8a8d20 [project @ 2007-04-25 22:19:03 by dbateman]
dbateman
parents:
diff changeset
22 if (m.any_element_not_one_or_zero())
d2bb3b8a8d20 [project @ 2007-04-25 22:19:03 by dbateman]
dbateman
parents:
diff changeset
23 octave_stdout << " includes other values than 1 and 0\n";
d2bb3b8a8d20 [project @ 2007-04-25 22:19:03 by dbateman]
dbateman
parents:
diff changeset
24 if (m.all_elements_are_int_or_inf_or_nan())
d2bb3b8a8d20 [project @ 2007-04-25 22:19:03 by dbateman]
dbateman
parents:
diff changeset
25 octave_stdout << " includes only int, Inf or NaN values\n";
d2bb3b8a8d20 [project @ 2007-04-25 22:19:03 by dbateman]
dbateman
parents:
diff changeset
26 if (m.all_integers (min_val, max_val))
d2bb3b8a8d20 [project @ 2007-04-25 22:19:03 by dbateman]
dbateman
parents:
diff changeset
27 octave_stdout << " includes only integers in [-10,10]\n";
d2bb3b8a8d20 [project @ 2007-04-25 22:19:03 by dbateman]
dbateman
parents:
diff changeset
28 }
d2bb3b8a8d20 [project @ 2007-04-25 22:19:03 by dbateman]
dbateman
parents:
diff changeset
29 return retval;
d2bb3b8a8d20 [project @ 2007-04-25 22:19:03 by dbateman]
dbateman
parents:
diff changeset
30 }