function circle_circles_packing_test ( )

%*****************************************************************************80
%
%% circle_circles_packing_test() tests circle_circles_packing().
%
%  Licensing:
%
%    This code is distributed under the MIT license.
%
%  Modified:
%
%    11 August 2024
%
%  Author:
%
%    John Burkardt
%
  addpath ( '../circle_circles_packing' );

  timestamp ( );
  fprintf ( 1, '\n' );
  fprintf ( 1, 'circle_circles_packing_test():\n' );
  fprintf ( 1, '  MATLAB/Octave version %s\n', version ( ) );
  fprintf ( 1, '  Test circle_circles_packing().\n' );

  C = [ 0.0, 0.0 ];
  R = 20.0;
  r = 1.0;

  [ c_try, c_park, density_obs ] = circle_circles_packing ( C, R, r );

  fprintf ( 1, '\n' );
  fprintf ( 1, '  Number of circles placed    = %d\n', c_park );
  fprintf ( 1, '  Number of circles generated = %d\n', c_try );
  fprintf ( 1, '  density_obs            = %g\n', density_obs );
  fprintf ( 1, '  jamming density        = %g\n', 0.547 );
%
%  Terminate.
%
  fprintf ( 1, '\n' );
  fprintf ( 1, 'circle_circles_packing_test()\n' );
  fprintf ( 1, '  Normal end of execution.\n' );
  fprintf ( 1, '\n' );
  timestamp ( );

  rmpath ( '../circle_circles_packing' );
  return
end
function timestamp ( )

%*****************************************************************************80
%
%% timestamp() prints the YMDHMS date as a timestamp.
%
%  Licensing:
%
%    This code is distributed under the MIT license.
%
%  Modified:
%
%    14 November 2022
%
%  Author:
%
%    John Burkardt
%
  t = now ( );
  c = datevec ( t );
  s = datestr ( c, 0 );
  fprintf ( 1, '%s\n', s );

  return
end
