function r8cbb_set_test ( )

%*****************************************************************************80
%
%% R8CBB_SET_TEST tests R8CBB_SET.
%
%  Licensing:
%
%    This code is distributed under the MIT license. 
%
%  Modified:
%
%    23 July 2016
%
%  Author:
%
%    John Burkardt
%
  n1 = 4;
  n2 = 1;
  n = n1 + n2;
  ml = 2;
  mu = 1;
  na = ( ml + mu + 1 ) * n1 + 2 * n1 * n2 + n2 * n2;

  fprintf ( 1, '\n' );
  fprintf ( 1, 'R8CBB_SET_TEST\n' );
  fprintf ( 1, '  R8CBB_SET sets the value of an element of an R8CBB matrix.\n' );
  fprintf ( 1, '\n' );
  fprintf ( 1, '  Matrix order N =     %d\n', n );
  fprintf ( 1, '  Matrix suborder N1 = %d\n', n1 );
  fprintf ( 1, '  Matrix suborder N2 = %d\n', n2 );
  fprintf ( 1, '  Lower bandwidth ML = %d\n', ml );
  fprintf ( 1, '  Upper bandwidth MU = %d\n', mu );
%
%  Initialize matrix to zero.
%
  a = r8cbb_zeros ( n1, n2, ml, mu );
%
%  Set matrix entries to the "indicator" values.
%
  for i = 1 : n1
    for j = max ( 1, i - ml ) : min ( n1, i + mu )
      value = 10 * i + j;
      a = r8cbb_set ( n1, n2, ml, mu, a, i, j, value );
    end
  end

  for i = 1 : n1
    for j = n1 + 1 : n1 + n2
      value = 10 * i + j;
      a = r8cbb_set ( n1, n2, ml, mu, a, i, j, value );
    end
  end

  for i = n1 + 1 : n1 + n2
    for j = 1 : n1
      value = 10 * i + j;
      a = r8cbb_set ( n1, n2, ml, mu, a, i, j, value );
    end
  end

  for i = n1 + 1 : n1 + n2
    for j = n1 + 1 : n1 + n2
      value = 10 * i + j;
      a = r8cbb_set ( n1, n2, ml, mu, a, i, j, value );
    end
  end

  r8cbb_print ( n1, n2, ml, mu, a, '  The R8BB matrix after additions:' );

  return
end
