function rotation_xyz_test ( )

%*****************************************************************************80
%
%% rotation_xyz_test() tests rotation_xyz().
%
%  Licensing:
%
%    This code is distributed under the MIT license.
%
%  Modified:
%
%    12 December 2019
%
%  Author:
%
%    John Burkardt
%
  fprintf ( 1, '\n' );
  fprintf ( 1, 'rotation_xyz_test():\n' );
  fprintf ( 1, '  rotation_xyz() rotates an xyz point through an angle\n' );
  fprintf ( 1, '  of theta radians around an axis vector\n' );
  fprintf ( 1, '  using quaternion multiplication.\n' );

  theta = 2.0 * acos ( 0.836516 );
  theta_degrees = theta * 180 / pi;
  axis = [ 0.12941; -0.482963; -0.224144 ] / 0.836516;
  r8vec_print ( 3, axis, '  The rotation axis:' );
  fprintf ( 1, '\n' );
  fprintf ( 1, '  The rotation angle (degrees): %g\n', theta_degrees );

  xyz = [ 1.0; 4.0; 10.0 ];
  r8vec_print ( 3, xyz, '  The point xyz:' );

  xyz_rotated = rotation_xyz ( xyz, axis, theta );
  r8vec_print ( 3, xyz_rotated, '  The rotated point:' );

  return
end
