function [ a, b, c, w ] = rule18 ( )

%*****************************************************************************80
%
%% rule18() returns the rule of precision 18.
%
%  Licensing:
%
%    This code is distributed under the MIT license.
%
%  Modified:
%
%    09 June 2023
%
%  Author:
%
%    John Burkardt
%
%  Reference:
%
%    Hong Xiao, Zydrunas Gimbutas,
%    A numerical algorithm for the construction of efficient
%    quadrature rules in two and higher dimensions, 
%    Computers and Mathematics with Applications,
%    Volume 59, 2010, pages 663-676.
%
%  Output:
%
%    real a(n), b(n), c(n): the barycentric coordinates of quadrature points.
%
%    real w(n): the quadrature weights.
%
  a = [ ...
          0.3850440344131636, ...
          0.5245289252324958, ...
          0.0904270403543406, ...
          0.5245289252324957, ...
          0.3850440344131637, ...
          0.0904270403543405, ...
          0.4749182113240457, ...
          0.4749182113240458, ...
          0.0501635773519085, ...
          0.1516385069726047, ...
          0.6967229860547902, ...
          0.1516385069726050, ...
          0.0472761418326517, ...
          0.9402249256838527, ...
          0.0124989324834957, ...
          0.9402249256838527, ...
          0.0472761418326518, ...
          0.0124989324834952, ...
          0.3333333333333333, ...
          0.3020619577128708, ...
          0.6439263069481050, ...
          0.0540117353390243, ...
          0.6439263069481049, ...
          0.3020619577128708, ...
          0.0540117353390241, ...
          0.2565061597742415, ...
          0.7329888214065164, ...
          0.0105050188192420, ...
          0.7329888214065166, ...
          0.2565061597742415, ...
          0.0105050188192418, ...
          0.4110671018759194, ...
          0.4110671018759194, ...
          0.1778657962481610, ...
          0.1784791255658876, ...
          0.7553984164057089, ...
          0.0661224580284036, ...
          0.7553984164057089, ...
          0.1784791255658877, ...
          0.0661224580284032, ...
          0.2656146099053742, ...
          0.4687707801892516, ...
          0.2656146099053743, ...
          0.0037589443410682, ...
          0.9924821113178632, ...
          0.0037589443410687, ...
          0.2685733063960138, ...
          0.5823597834782123, ...
          0.1490669101257739, ...
          0.5823597834782123, ...
          0.2685733063960138, ...
          0.1490669101257737, ...
          0.4110656686746184, ...
          0.5772425066507145, ...
          0.0116918246746671, ...
          0.5772425066507145, ...
          0.4110656686746185, ...
          0.0116918246746671, ...
          0.1327788302713893, ...
          0.8528896449496687, ...
          0.0143315247789422, ...
          0.8528896449496688, ...
          0.1327788302713893, ...
          0.0143315247789417, ...
          0.0724387055673328, ...
          0.8551225888653341, ...
          0.0724387055673332 ];

  b = [ ...
          0.0904270403543407, ...
          0.3850440344131637, ...
          0.5245289252324959, ...
          0.0904270403543407, ...
          0.5245289252324958, ...
          0.3850440344131639, ...
          0.0501635773519086, ...
          0.4749182113240458, ...
          0.4749182113240459, ...
          0.1516385069726050, ...
          0.1516385069726048, ...
          0.6967229860547904, ...
          0.0124989324834955, ...
          0.0472761418326518, ...
          0.9402249256838529, ...
          0.0124989324834955, ...
          0.9402249256838529, ...
          0.0472761418326521, ...
          0.3333333333333334, ...
          0.0540117353390243, ...
          0.3020619577128708, ...
          0.6439263069481052, ...
          0.0540117353390243, ...
          0.6439263069481049, ...
          0.3020619577128710, ...
          0.0105050188192420, ...
          0.2565061597742415, ...
          0.7329888214065168, ...
          0.0105050188192420, ...
          0.7329888214065168, ...
          0.2565061597742418, ...
          0.1778657962481611, ...
          0.4110671018759195, ...
          0.4110671018759197, ...
          0.0661224580284034, ...
          0.1784791255658876, ...
          0.7553984164057090, ...
          0.0661224580284034, ...
          0.7553984164057090, ...
          0.1784791255658879, ...
          0.2656146099053743, ...
          0.2656146099053742, ...
          0.4687707801892517, ...
          0.0037589443410685, ...
          0.0037589443410682, ...
          0.9924821113178633, ...
          0.1490669101257739, ...
          0.2685733063960138, ...
          0.5823597834782125, ...
          0.1490669101257739, ...
          0.5823597834782125, ...
          0.2685733063960140, ...
          0.0116918246746672, ...
          0.4110656686746184, ...
          0.5772425066507147, ...
          0.0116918246746672, ...
          0.5772425066507145, ...
          0.4110656686746186, ...
          0.0143315247789420, ...
          0.1327788302713893, ...
          0.8528896449496687, ...
          0.0143315247789420, ...
          0.8528896449496690, ...
          0.1327788302713896, ...
          0.0724387055673330, ...
          0.0724387055673327, ...
          0.8551225888653343 ];

  c = [ ...
          0.5245289252324957, ...
          0.0904270403543405, ...
          0.3850440344131635, ...
          0.3850440344131636, ...
          0.0904270403543405, ...
          0.5245289252324956, ...
          0.4749182113240457, ...
          0.0501635773519085, ...
          0.4749182113240456, ...
          0.6967229860547902, ...
          0.1516385069726050, ...
          0.1516385069726046, ...
          0.9402249256838529, ...
          0.0124989324834955, ...
          0.0472761418326515, ...
          0.0472761418326518, ...
          0.0124989324834953, ...
          0.9402249256838527, ...
          0.3333333333333333, ...
          0.6439263069481050, ...
          0.0540117353390242, ...
          0.3020619577128706, ...
          0.3020619577128708, ...
          0.0540117353390243, ...
          0.6439263069481048, ...
          0.7329888214065166, ...
          0.0105050188192420, ...
          0.2565061597742413, ...
          0.2565061597742415, ...
          0.0105050188192417, ...
          0.7329888214065164, ...
          0.4110671018759195, ...
          0.1778657962481610, ...
          0.4110671018759194, ...
          0.7553984164057089, ...
          0.0661224580284035, ...
          0.1784791255658874, ...
          0.1784791255658876, ...
          0.0661224580284032, ...
          0.7553984164057088, ...
          0.4687707801892514, ...
          0.2656146099053742, ...
          0.2656146099053741, ...
          0.9924821113178633, ...
          0.0037589443410686, ...
          0.0037589443410680, ...
          0.5823597834782123, ...
          0.1490669101257739, ...
          0.2685733063960136, ...
          0.2685733063960138, ...
          0.1490669101257737, ...
          0.5823597834782122, ...
          0.5772425066507145, ...
          0.0116918246746671, ...
          0.4110656686746181, ...
          0.4110656686746183, ...
          0.0116918246746670, ...
          0.5772425066507143, ...
          0.8528896449496688, ...
          0.0143315247789421, ...
          0.1327788302713891, ...
          0.1327788302713892, ...
          0.0143315247789417, ...
          0.8528896449496687, ...
          0.8551225888653342, ...
          0.0724387055673332, ...
          0.0724387055673325 ];

  w = [ ...
          0.0153282581945531, ...
          0.0153282581945531, ...
          0.0153282581945531, ...
          0.0153282581945531, ...
          0.0153282581945531, ...
          0.0153282581945531, ...
          0.0131070274917388, ...
          0.0131070274917388, ...
          0.0131070274917388, ...
          0.0203183388454584, ...
          0.0203183388454584, ...
          0.0203183388454584, ...
          0.0042175167747444, ...
          0.0042175167747444, ...
          0.0042175167747444, ...
          0.0042175167747444, ...
          0.0042175167747444, ...
          0.0042175167747444, ...
          0.0307485212391159, ...
          0.0163659084139866, ...
          0.0163659084139866, ...
          0.0163659084139866, ...
          0.0163659084139866, ...
          0.0163659084139866, ...
          0.0163659084139866, ...
          0.0077298352800062, ...
          0.0077298352800062, ...
          0.0077298352800062, ...
          0.0077298352800062, ...
          0.0077298352800062, ...
          0.0077298352800062, ...
          0.0334719940598479, ...
          0.0334719940598479, ...
          0.0334719940598479, ...
          0.0169116539174801, ...
          0.0169116539174801, ...
          0.0169116539174801, ...
          0.0169116539174801, ...
          0.0169116539174801, ...
          0.0169116539174801, ...
          0.0311163966020061, ...
          0.0311163966020061, ...
          0.0311163966020061, ...
          0.0005320056169478, ...
          0.0005320056169478, ...
          0.0005320056169478, ...
          0.0275928864885795, ...
          0.0275928864885795, ...
          0.0275928864885795, ...
          0.0275928864885795, ...
          0.0275928864885795, ...
          0.0275928864885795, ...
          0.0095861244743615, ...
          0.0095861244743615, ...
          0.0095861244743615, ...
          0.0095861244743615, ...
          0.0095861244743615, ...
          0.0095861244743615, ...
          0.0076417049727196, ...
          0.0076417049727196, ...
          0.0076417049727196, ...
          0.0076417049727196, ...
          0.0076417049727196, ...
          0.0076417049727196, ...
          0.0137902866047669, ...
          0.0137902866047669, ...
          0.0137902866047669 ];

  return
end
