## DO NOT EDIT!
## Generated automatically from mpfr_vector_dot_d.cc
## by configure_make.m during package installation.

%!test;
%!  [l, u] = mpfr_vector_dot_d (-1, -1, 2, 3, 1);
%!  assert (l, -3);
%!  assert (u, 6);
%!test;
%!  x = [realmax, realmax, -realmax, -realmax, 1, eps/2];
%!  y = ones (size (x));
%!  [l, u] = mpfr_vector_dot_d (x, y, x, y, 2);
%!  d = mpfr_vector_dot_d (0.5, x, y, 2);
%!  assert (l, 1);
%!  assert (u, 1 + eps);
%!  assert (ismember (d, infsup (l, u)));
%!test;
%!  [l, u] = mpfr_vector_dot_d (0, 0, inf, inf, 1);
%!  d = mpfr_vector_dot_d (0.5, 0, inf, 1);
%!  assert (l, 0);
%!  assert (u, inf);
%!  assert (isequaln (d, NaN));
%!test;
%!  x = reshape (1:24, 2, 3, 4);
%!  y = 2.*ones (2, 3, 4);
%!  [l u] = mpfr_vector_dot_d (x, y, x, y, 3);
%!  d = mpfr_vector_dot_d (0.5, x, y, 3);
%!  assert (l, [80, 96, 112; 88, 104, 120]);
%!  assert (u, [80, 96, 112; 88, 104, 120]);
%!  assert (d, [80, 96, 112; 88, 104, 120]);
%!shared testdata
%! testdata = load (file_in_loadpath ("test/itl.mat"));
%!test
%! # Scalar evaluation
%! testcases = testdata.NoSignal.double.dot_nearest;
%! for testcase = [testcases]'
%!   assert (isequaln (...
%!     mpfr_vector_dot_d (0.5, testcase.in{1}, testcase.in{2}, 2), ...
%!     testcase.out));
%! endfor
%!test
%! # Vector evaluation
%! testcases = testdata.NoSignal.double.dot_nearest;
%! in1 = vertcat (testcases.in)(:, 1);
%! in1 = cell2mat (cellfun ("postpad", in1, {(max (cellfun ("numel", in1)))}, "UniformOutput", false));
%! in2 = vertcat (testcases.in)(:, 2);
%! in2 = cell2mat (cellfun ("postpad", in2, {(max (cellfun ("numel", in2)))}, "UniformOutput", false));
%! out = vertcat (testcases.out);
%! assert (isequaln (mpfr_vector_dot_d (0.5, in1, in2, 2), out));
%!test
%! # Scalar evaluation
%! testcases = testdata.NoSignal.double.sum_sqr_nearest;
%! for testcase = [testcases]'
%!   assert (isequaln (...
%!     mpfr_vector_dot_d (0.5, testcase.in{1}, testcase.in{1}, 2), ...
%!     testcase.out));
%! endfor
%!test
%! # Vector evaluation
%! testcases = testdata.NoSignal.double.sum_sqr_nearest;
%! in1 = vertcat (testcases.in);
%! in1 = cell2mat (cellfun ("postpad", in1, {(max (cellfun ("numel", in1)))}, "UniformOutput", false));
%! out = vertcat (testcases.out);
%! assert (isequaln (mpfr_vector_dot_d (0.5, in1, in1, 2), out));
