Helper utility for checking numeric vector arguments. Runs a number of tests on the numeric array x. Tests to see if x has all integer values, all positive values, and so on, depending on the values for intFlag and signFlag. Also tests to see if the size of x matches siz (unless siz==[]). If x is a scalar, x is converted to a array simply by creating a matrix of size siz with x in each entry. This is why the function returns x. siz=M is equivalent to siz=[M M]. If x does not satisfy some criteria, an error message is returned in er. If x satisfied all the criteria er=''. Note that error('') has no effect, so can use: [ x, er ] = checkNumArgs( x, ... ); error(er); which will throw an error only if something was wrong with x. USAGE [ x, er ] = checkNumArgs( x, siz, intFlag, signFlag ) INPUTS x - numeric array siz - []: does not test size of x - [if not []]: intended size for x intFlag - -1: no need for integer x 0: error if non integer x 1: error if non odd integers 2: error if non even integers signFlag - -2: entires of x must be strictly negative -1: entires of x must be negative 0: no contstraints on sign of entries in x 1: entires of x must be positive 2: entires of x must be strictly positive OUTPUTS x - if x was a scalar it may have been replicated into a matrix er - contains error msg if anything was wrong with x EXAMPLE a=1; [a, er]=checkNumArgs( a, [1 3], 2, 0 ); a, error(er) See also NARGCHK Piotr's Computer Vision Matlab Toolbox Version 2.0 Copyright 2014 Piotr Dollar. [pdollar-at-gmail.com] Licensed under the Simplified BSD License [see external/bsd.txt]