% -*- texinfo -*- % @deftypefn {Function File} {} peaks % @deftypefnx {Function File} {} peaks (@var{n}) % @deftypefnx {Function File} {} peaks (@var{x}, @var{y}) % @deftypefnx {Function File} {@var{z} =} peaks (@dots{}) % @deftypefnx {Function File} {[@var{x}, @var{y}, @var{z}] =} peaks (@dots{}) % Generate a function with lots of local maxima and minima. The function % has the form % % @tex % $f(x,y) = 3 (1 - x) ^ 2 e ^ {\left(-x^2 - (y+1)^2\right)} - 10 \left({x \over 5} - x^3 - y^5)\right) - {1 \over 3} e^{\left(-(x+1)^2 - y^2\right)}$ % @end tex % @ifnottex % @verbatim % f(x,y) = 3*(1-x)^2*exp(-x^2 - (y+1)^2) ... % - 10*(x/5 - x^3 - y^5)*exp(-x^2-y^2) ... % - 1/3*exp(-(x+1)^2 - y^2) % @end verbatim % @end ifnottex % % Called without a return argument, @code{peaks} plots the surface of the % above function using @code{mesh}. If @var{n} is a scalar, the @code{peaks} % returns the values of the above function on a @var{n}-by-@var{n} mesh over % the range @code{[-3,3]}. The default value for @var{n} is 49. % % If @var{n} is a vector, then it represents the @var{x} and @var{y} values % of the grid on which to calculate the above function. The @var{x} and % @var{y} values can be specified separately. % @seealso{surf, mesh, meshgrid} % @end deftypefn