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

%*****************************************************************************80
%
%% rule25() returns the rule of precision 25.
%
%  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.3876420304045634, ...
          0.3876420304045634, ...
          0.2247159391908731, ...
          0.2110045080614966, ...
          0.5779909838770066, ...
          0.2110045080614967, ...
          0.4404169274793433, ...
          0.5577642058863823, ...
          0.0018188666342743, ...
          0.5577642058863823, ...
          0.4404169274793434, ...
          0.0018188666342743, ...
          0.2994923158045084, ...
          0.4010153683909830, ...
          0.2994923158045084, ...
          0.1590079061973279, ...
          0.8040319522230005, ...
          0.0369601415796716, ...
          0.8040319522230007, ...
          0.1590079061973279, ...
          0.0369601415796713, ...
          0.0372229259924406, ...
          0.9255541480151184, ...
          0.0372229259924410, ...
          0.1773537967572529, ...
          0.7437881352371117, ...
          0.0788580680056354, ...
          0.7437881352371118, ...
          0.1773537967572530, ...
          0.0788580680056351, ...
          0.1451092435745002, ...
          0.7097815128509992, ...
          0.1451092435745006, ...
          0.2700667358209594, ...
          0.6610857347475426, ...
          0.0688475294314979, ...
          0.6610857347475427, ...
          0.2700667358209594, ...
          0.0688475294314977, ...
          0.3413910330211499, ...
          0.5426091593378899, ...
          0.1159998076409602, ...
          0.5426091593378899, ...
          0.3413910330211499, ...
          0.1159998076409601, ...
          0.3739379797195844, ...
          0.5777445859930386, ...
          0.0483174342873769, ...
          0.5777445859930387, ...
          0.3739379797195845, ...
          0.0483174342873768, ...
          0.0991330633416822, ...
          0.8937386221570603, ...
          0.0071283145012576, ...
          0.8937386221570603, ...
          0.0991330633416823, ...
          0.0071283145012572, ...
          0.2995064186296745, ...
          0.4968006707860745, ...
          0.2036929105842510, ...
          0.4968006707860745, ...
          0.2995064186296745, ...
          0.2036929105842509, ...
          0.4247593045405747, ...
          0.4247593045405746, ...
          0.1504813909188505, ...
          0.1786298486036162, ...
          0.8141339896484356, ...
          0.0072361617479482, ...
          0.8141339896484356, ...
          0.1786298486036164, ...
          0.0072361617479479, ...
          0.3620688018959720, ...
          0.6250173148539955, ...
          0.0129138832500325, ...
          0.6250173148539954, ...
          0.3620688018959721, ...
          0.0129138832500325, ...
          0.0887929154893665, ...
          0.8735191347263743, ...
          0.0376879497842592, ...
          0.8735191347263743, ...
          0.0887929154893666, ...
          0.0376879497842588, ...
          0.2336228101417152, ...
          0.6293704957712137, ...
          0.1370066940870710, ...
          0.6293704957712138, ...
          0.2336228101417152, ...
          0.1370066940870708, ...
          0.4622087087487061, ...
          0.4622087087487061, ...
          0.0755825825025877, ...
          0.2565954097090198, ...
          0.7188645300434557, ...
          0.0245400602475245, ...
          0.7188645300434559, ...
          0.2565954097090199, ...
          0.0245400602475242, ...
          0.0929497017007698, ...
          0.8141005965984600, ...
          0.0929497017007701, ...
          0.0410688191117846, ...
          0.9517423526265223, ...
          0.0071888282616933, ...
          0.9517423526265224, ...
          0.0410688191117848, ...
          0.0071888282616928, ...
          0.0078353442826036, ...
          0.9843293114347924, ...
          0.0078353442826041, ...
          0.4890393696603955, ...
          0.4890393696603955, ...
          0.0219212606792090, ...
          0.2794161886492607, ...
          0.7196923470332411, ...
          0.0008914643174981, ...
          0.7196923470332411, ...
          0.2794161886492608, ...
          0.0008914643174980 ];

  b = [ ...
          0.2247159391908732, ...
          0.3876420304045635, ...
          0.3876420304045636, ...
          0.2110045080614968, ...
          0.2110045080614966, ...
          0.5779909838770069, ...
          0.0018188666342744, ...
          0.4404169274793434, ...
          0.5577642058863825, ...
          0.0018188666342744, ...
          0.5577642058863823, ...
          0.4404169274793436, ...
          0.2994923158045086, ...
          0.2994923158045085, ...
          0.4010153683909831, ...
          0.0369601415796715, ...
          0.1590079061973279, ...
          0.8040319522230007, ...
          0.0369601415796715, ...
          0.8040319522230007, ...
          0.1590079061973282, ...
          0.0372229259924409, ...
          0.0372229259924406, ...
          0.9255541480151186, ...
          0.0788580680056353, ...
          0.1773537967572529, ...
          0.7437881352371120, ...
          0.0788580680056353, ...
          0.7437881352371120, ...
          0.1773537967572532, ...
          0.1451092435745005, ...
          0.1451092435745003, ...
          0.7097815128509993, ...
          0.0688475294314979, ...
          0.2700667358209594, ...
          0.6610857347475428, ...
          0.0688475294314979, ...
          0.6610857347475428, ...
          0.2700667358209596, ...
          0.1159998076409602, ...
          0.3413910330211499, ...
          0.5426091593378901, ...
          0.1159998076409602, ...
          0.5426091593378900, ...
          0.3413910330211500, ...
          0.0483174342873770, ...
          0.3739379797195844, ...
          0.5777445859930388, ...
          0.0483174342873770, ...
          0.5777445859930387, ...
          0.3739379797195846, ...
          0.0071283145012574, ...
          0.0991330633416822, ...
          0.8937386221570605, ...
          0.0071283145012574, ...
          0.8937386221570605, ...
          0.0991330633416825, ...
          0.2036929105842510, ...
          0.2995064186296746, ...
          0.4968006707860746, ...
          0.2036929105842510, ...
          0.4968006707860746, ...
          0.2995064186296747, ...
          0.1504813909188506, ...
          0.4247593045405748, ...
          0.4247593045405749, ...
          0.0072361617479482, ...
          0.1786298486036162, ...
          0.8141339896484358, ...
          0.0072361617479482, ...
          0.8141339896484358, ...
          0.1786298486036166, ...
          0.0129138832500325, ...
          0.3620688018959721, ...
          0.6250173148539957, ...
          0.0129138832500325, ...
          0.6250173148539956, ...
          0.3620688018959722, ...
          0.0376879497842591, ...
          0.0887929154893666, ...
          0.8735191347263744, ...
          0.0376879497842591, ...
          0.8735191347263744, ...
          0.0887929154893669, ...
          0.1370066940870710, ...
          0.2336228101417153, ...
          0.6293704957712140, ...
          0.1370066940870710, ...
          0.6293704957712140, ...
          0.2336228101417155, ...
          0.0755825825025878, ...
          0.4622087087487062, ...
          0.4622087087487063, ...
          0.0245400602475244, ...
          0.2565954097090198, ...
          0.7188645300434559, ...
          0.0245400602475244, ...
          0.7188645300434559, ...
          0.2565954097090201, ...
          0.0929497017007700, ...
          0.0929497017007698, ...
          0.8141005965984602, ...
          0.0071888282616930, ...
          0.0410688191117846, ...
          0.9517423526265224, ...
          0.0071888282616930, ...
          0.9517423526265224, ...
          0.0410688191117850, ...
          0.0078353442826039, ...
          0.0078353442826036, ...
          0.9843293114347926, ...
          0.0219212606792091, ...
          0.4890393696603955, ...
          0.4890393696603957, ...
          0.0008914643174981, ...
          0.2794161886492607, ...
          0.7196923470332415, ...
          0.0008914643174981, ...
          0.7196923470332413, ...
          0.2794161886492610 ];

  c = [ ...
          0.3876420304045634, ...
          0.2247159391908732, ...
          0.3876420304045634, ...
          0.5779909838770066, ...
          0.2110045080614967, ...
          0.2110045080614965, ...
          0.5577642058863823, ...
          0.0018188666342743, ...
          0.4404169274793431, ...
          0.4404169274793433, ...
          0.0018188666342743, ...
          0.5577642058863822, ...
          0.4010153683909830, ...
          0.2994923158045085, ...
          0.2994923158045085, ...
          0.8040319522230006, ...
          0.0369601415796716, ...
          0.1590079061973276, ...
          0.1590079061973278, ...
          0.0369601415796713, ...
          0.8040319522230005, ...
          0.9255541480151185, ...
          0.0372229259924410, ...
          0.0372229259924404, ...
          0.7437881352371117, ...
          0.0788580680056354, ...
          0.1773537967572526, ...
          0.1773537967572529, ...
          0.0788580680056351, ...
          0.7437881352371117, ...
          0.7097815128509992, ...
          0.1451092435745005, ...
          0.1451092435745002, ...
          0.6610857347475426, ...
          0.0688475294314980, ...
          0.2700667358209593, ...
          0.2700667358209593, ...
          0.0688475294314977, ...
          0.6610857347475426, ...
          0.5426091593378900, ...
          0.1159998076409602, ...
          0.3413910330211497, ...
          0.3413910330211499, ...
          0.1159998076409602, ...
          0.5426091593378899, ...
          0.5777445859930387, ...
          0.0483174342873770, ...
          0.3739379797195843, ...
          0.3739379797195844, ...
          0.0483174342873768, ...
          0.5777445859930385, ...
          0.8937386221570605, ...
          0.0071283145012575, ...
          0.0991330633416820, ...
          0.0991330633416822, ...
          0.0071283145012573, ...
          0.8937386221570603, ...
          0.4968006707860744, ...
          0.2036929105842509, ...
          0.2995064186296744, ...
          0.2995064186296745, ...
          0.2036929105842509, ...
          0.4968006707860744, ...
          0.4247593045405748, ...
          0.1504813909188505, ...
          0.4247593045405746, ...
          0.8141339896484356, ...
          0.0072361617479481, ...
          0.1786298486036161, ...
          0.1786298486036162, ...
          0.0072361617479478, ...
          0.8141339896484355, ...
          0.6250173148539955, ...
          0.0129138832500325, ...
          0.3620688018959718, ...
          0.3620688018959721, ...
          0.0129138832500323, ...
          0.6250173148539954, ...
          0.8735191347263744, ...
          0.0376879497842591, ...
          0.0887929154893663, ...
          0.0887929154893666, ...
          0.0376879497842589, ...
          0.8735191347263743, ...
          0.6293704957712137, ...
          0.1370066940870710, ...
          0.2336228101417150, ...
          0.2336228101417152, ...
          0.1370066940870708, ...
          0.6293704957712137, ...
          0.4622087087487061, ...
          0.0755825825025877, ...
          0.4622087087487059, ...
          0.7188645300434559, ...
          0.0245400602475244, ...
          0.2565954097090196, ...
          0.2565954097090197, ...
          0.0245400602475242, ...
          0.7188645300434557, ...
          0.8141005965984602, ...
          0.0929497017007702, ...
          0.0929497017007697, ...
          0.9517423526265223, ...
          0.0071888282616931, ...
          0.0410688191117844, ...
          0.0410688191117846, ...
          0.0071888282616929, ...
          0.9517423526265223, ...
          0.9843293114347924, ...
          0.0078353442826040, ...
          0.0078353442826032, ...
          0.4890393696603955, ...
          0.0219212606792091, ...
          0.4890393696603952, ...
          0.7196923470332411, ...
          0.0008914643174981, ...
          0.2794161886492604, ...
          0.2794161886492607, ...
          0.0008914643174980, ...
          0.7196923470332410 ];

  w = [ ...
          0.0136898515482722, ...
          0.0136898515482722, ...
          0.0136898515482722, ...
          0.0115872632360106, ...
          0.0115872632360106, ...
          0.0115872632360106, ...
          0.0016748178319347, ...
          0.0016748178319347, ...
          0.0016748178319347, ...
          0.0016748178319347, ...
          0.0016748178319347, ...
          0.0016748178319347, ...
          0.0180176407017015, ...
          0.0180176407017015, ...
          0.0180176407017015, ...
          0.0063114780247593, ...
          0.0063114780247593, ...
          0.0063114780247593, ...
          0.0063114780247593, ...
          0.0063114780247593, ...
          0.0063114780247593, ...
          0.0033972977219047, ...
          0.0033972977219047, ...
          0.0033972977219047, ...
          0.0095150215674558, ...
          0.0095150215674558, ...
          0.0095150215674558, ...
          0.0095150215674558, ...
          0.0095150215674558, ...
          0.0095150215674558, ...
          0.0114915258625648, ...
          0.0114915258625648, ...
          0.0114915258625648, ...
          0.0108843936124369, ...
          0.0108843936124369, ...
          0.0108843936124369, ...
          0.0108843936124369, ...
          0.0108843936124369, ...
          0.0108843936124369, ...
          0.0158403522878984, ...
          0.0158403522878984, ...
          0.0158403522878984, ...
          0.0158403522878984, ...
          0.0158403522878984, ...
          0.0158403522878984, ...
          0.0106401706955088, ...
          0.0106401706955088, ...
          0.0106401706955088, ...
          0.0106401706955088, ...
          0.0106401706955088, ...
          0.0106401706955088, ...
          0.0025452716253490, ...
          0.0025452716253490, ...
          0.0025452716253490, ...
          0.0025452716253490, ...
          0.0025452716253490, ...
          0.0025452716253490, ...
          0.0179138208922761, ...
          0.0179138208922761, ...
          0.0179138208922761, ...
          0.0179138208922761, ...
          0.0179138208922761, ...
          0.0179138208922761, ...
          0.0159113101374584, ...
          0.0159113101374584, ...
          0.0159113101374584, ...
          0.0032637396820492, ...
          0.0032637396820492, ...
          0.0032637396820492, ...
          0.0032637396820492, ...
          0.0032637396820492, ...
          0.0032637396820492, ...
          0.0054546383679744, ...
          0.0054546383679744, ...
          0.0054546383679744, ...
          0.0054546383679744, ...
          0.0054546383679744, ...
          0.0054546383679744, ...
          0.0052725619214294, ...
          0.0052725619214294, ...
          0.0052725619214294, ...
          0.0052725619214294, ...
          0.0052725619214294, ...
          0.0052725619214294, ...
          0.0137400825920226, ...
          0.0137400825920226, ...
          0.0137400825920226, ...
          0.0137400825920226, ...
          0.0137400825920226, ...
          0.0137400825920226, ...
          0.0136542751875280, ...
          0.0136542751875280, ...
          0.0136542751875280, ...
          0.0073143409079328, ...
          0.0073143409079328, ...
          0.0073143409079328, ...
          0.0073143409079328, ...
          0.0073143409079328, ...
          0.0073143409079328, ...
          0.0091828212598200, ...
          0.0091828212598200, ...
          0.0091828212598200, ...
          0.0016929836341273, ...
          0.0016929836341273, ...
          0.0016929836341273, ...
          0.0016929836341273, ...
          0.0016929836341273, ...
          0.0016929836341273, ...
          0.0008065102883246, ...
          0.0008065102883246, ...
          0.0008065102883246, ...
          0.0084440859465211, ...
          0.0084440859465211, ...
          0.0084440859465211, ...
          0.0015117020784589, ...
          0.0015117020784589, ...
          0.0015117020784589, ...
          0.0015117020784589, ...
          0.0015117020784589, ...
          0.0015117020784589 ];

  return
end
