function [ x, y, z, w ] = rule07 ( )

%*****************************************************************************80
%
%% rule07() returns the rule of precision 7.
%
%  Discussion:
%
%    The data is given for the following triangle:
%
%     (0,1) 
%       |   \ 
%       |    \ 
%       |     \ 
%       |      \ 
%     (0,0)----(1,0)
%
%  Licensing:
%
%    This code is distributed under the MIT license.
%
%  Modified:
%
%    23 April 2023
%
%  Author:
%
%    John Burkardt
%
%  Reference:
%
%    Freddie Witherden, Peter Vincent,
%    On the identification of symmetric quadrature rules for finite element methods,
%    Computers and Mathematics with Applications,
%    Volume 69, pages 1232-1241, 2015.
%
%  Output:
%
%    real x(n), y(n), z(n): the barycentric coordinates of quadrature points.
%
%    real w(n): the quadrature weights.
%
  x = [ ...
      0.0337306485545878, ...
      0.9325387028908243, ...
      0.0337306485545878, ...
      0.2415773825954036, ...
      0.5168452348091929, ...
      0.2415773825954036, ...
      0.4743096925047182, ...
      0.0513806149905635, ...
      0.4743096925047182, ...
      0.0470366446525952, ...
      0.7542800405500532, ...
      0.1986833147973516, ...
      0.7542800405500532, ...
      0.1986833147973516, ...
      0.0470366446525952 ];

  y = [ ...
      0.9325387028908243, ...
      0.0337306485545878, ...
      0.0337306485545878, ...
      0.5168452348091929, ...
      0.2415773825954036, ...
      0.2415773825954036, ...
      0.0513806149905635, ...
      0.4743096925047182, ...
      0.4743096925047182, ...
      0.7542800405500532, ...
      0.0470366446525952, ...
      0.7542800405500532, ...
      0.1986833147973516, ...
      0.0470366446525952, ...
      0.1986833147973516 ];

  z = [ ...
      0.0337306485545878, ...
      0.0337306485545878, ...
      0.9325387028908243, ...
      0.2415773825954036, ...
      0.2415773825954036, ...
      0.5168452348091930, ...
      0.4743096925047183, ...
      0.4743096925047182, ...
      0.0513806149905636, ...
      0.1986833147973517, ...
      0.1986833147973516, ...
      0.0470366446525953, ...
      0.0470366446525953, ...
      0.7542800405500532, ...
      0.7542800405500533 ];

  w = [ ...
      0.0082725250553961, ...
      0.0082725250553961, ...
      0.0082725250553961, ...
      0.0639720856150778, ...
      0.0639720856150778, ...
      0.0639720856150778, ...
      0.0385433230929930, ...
      0.0385433230929930, ...
      0.0385433230929930, ...
      0.0279393664515999, ...
      0.0279393664515999, ...
      0.0279393664515999, ...
      0.0279393664515999, ...
      0.0279393664515999, ...
      0.0279393664515999 ];
%
%  The weights should sum to 1, not 1/2!
%
  w = w * 2.0;

  return
end
