Skip to content
Snippets Groups Projects
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
some_function.m 1.56 KiB
% Copyright (C) 2021 IndiScale GmbH <info@indiscale.com>
% Copyright (C) 2021 Daniel Hornung <d.hornung@indiscale.com>
%
% This file is a part of the CaosDB Project.
%
% This program is free software: you can redistribute it and/or modify
% it under the terms of the GNU Affero General Public License as
% published by the Free Software Foundation, either version 3 of the
% License, or (at your option) any later version.
%
% This program is distributed in the hope that it will be useful,
% but WITHOUT ANY WARRANTY; without even the implied warranty of
% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
% GNU Affero General Public License for more details.
%
% You should have received a copy of the GNU Affero General Public License
% along with this program. If not, see <https://www.gnu.org/licenses/>.

% -*- texinfo -*-
% @deftypefn {Function File} {@var{result} =} some_function (@var{arg1}, @var{arg2})
% This is some function.
%
% For example, this function could be called like this:
% @example
% some_function (1, 2);
% @end example
%
% @seealso{some_function}
% @end deftypefn

function result = some_function(arg1, arg2)
  if arg1 >= arg2
    error("arg1 must be smaller than arg2!");
  end
  x = arg1:0.1:arg2;
  result = sin(x);
end

%%%%%%%%%%
% See https://wiki.octave.org/Tests and
% https://octave.org/doc/interpreter/Test-Functions.html for unit tests.

%!assert (some_function(1, 2))
%!assert (some_function(-0.1, 0.1)(2) == 0)
%!error <arg1 must be smaller than arg2!> (some_function(3, 2))

%!demo
%! ## Try out some_function(a, b):
%! some_function([-1:1])