#! /usr/bin/env python # def patterson_set ( n ): #*****************************************************************************80 # ## PATTERSON_SET sets abscissas and weights for Gauss-Patterson quadrature. # # Discussion: # # The integral: # # Integral ( -1 <= X <= 1 ) F(X) dX # # The quadrature rule: # # Sum ( 1 <= I <= N ) W(I) * F ( X(I) ) # # The zeroth rule, of order 1, is the standard Gauss-Legendre rule. # # The first rule, of order 3, is the standard Gauss-Legendre rule. # # The second rule, of order 7, includes the abscissas of the previous # rule. # # Rules are available of orders 1, 3, 7, 15, 31, 63, 127, 255, and 511. # # These rules constitute a nested family. The rules can integrate exactly # any polynomial of degree 1, 5, 11, 23, 47, 95, 191, 383 or 767, # respectively. # # The data for N = 511 was supplied by Dirk Laurie, and is derived # from a NAG Library function d01arf. # # Licensing: # # This code is distributed under the GNU LGPL license. # # Modified: # # 17 June 2015 # # Author: # # John Burkardt # # Reference: # # Prem Kythe, Michael Schaeferkotter, # Handbook of Computational Methods for Integration, # Chapman and Hall, 2004, # ISBN: 1-58488-428-2, # LC: QA299.3.K98. # # NAG Library Documentation, # D01ARF, # The Numerical Algorithms Group. # # Thomas Patterson, # The Optimal Addition of Points to Quadrature Formulae, # Mathematics of Computation, # Volume 22, Number 104, October 1968, pages 847-856. # # Parameters: # # Input, integer N, the order. # N must be 1, 3, 7, 15, 31, 63, 127, 255 or 511. # # Output, real X(N), the abscissas. # # Output, real W(N), the weights. # import numpy as np from sys import exit if ( n == 1 ): x = np.array ( [ \ 0.0 ] ) w = np.array ( [ \ 2.0 ] ) elif ( n == 3 ): x = np.array ( [ \ -0.77459666924148337704, \ 0.0, \ 0.77459666924148337704 ] ) w = np.array ( [ \ 0.555555555555555555556, \ 0.888888888888888888889, \ 0.555555555555555555556 ] ) elif ( n == 7 ): x = np.array ( [ \ -0.96049126870802028342, \ -0.77459666924148337704, \ -0.43424374934680255800, \ 0.0, \ 0.43424374934680255800, \ 0.77459666924148337704, \ 0.96049126870802028342 ] ) w = np.array ( [ \ 0.104656226026467265194, \ 0.268488089868333440729, \ 0.401397414775962222905, \ 0.450916538658474142345, \ 0.401397414775962222905, \ 0.268488089868333440729, \ 0.104656226026467265194 ] ) elif ( n == 15 ): x = np.array ( [ \ -0.99383196321275502221, \ -0.96049126870802028342, \ -0.88845923287225699889, \ -0.77459666924148337704, \ -0.62110294673722640294, \ -0.43424374934680255800, \ -0.22338668642896688163, \ 0.0, \ 0.22338668642896688163, \ 0.43424374934680255800, \ 0.62110294673722640294, \ 0.77459666924148337704, \ 0.88845923287225699889, \ 0.96049126870802028342, \ 0.99383196321275502221 ] ) w = np.array ( [ \ 0.0170017196299402603390, \ 0.0516032829970797396969, \ 0.0929271953151245376859, \ 0.134415255243784220360, \ 0.171511909136391380787, \ 0.200628529376989021034, \ 0.219156858401587496404, \ 0.225510499798206687386, \ 0.219156858401587496404, \ 0.200628529376989021034, \ 0.171511909136391380787, \ 0.134415255243784220360, \ 0.0929271953151245376859, \ 0.0516032829970797396969, \ 0.0170017196299402603390 ] ) elif ( n == 31 ): x = np.array ( [ \ -0.99909812496766759766, \ -0.99383196321275502221, \ -0.98153114955374010687, \ -0.96049126870802028342, \ -0.92965485742974005667, \ -0.88845923287225699889, \ -0.83672593816886873550, \ -0.77459666924148337704, \ -0.70249620649152707861, \ -0.62110294673722640294, \ -0.53131974364437562397, \ -0.43424374934680255800, \ -0.33113539325797683309, \ -0.22338668642896688163, \ -0.11248894313318662575, \ 0.0, \ 0.11248894313318662575, \ 0.22338668642896688163, \ 0.33113539325797683309, \ 0.43424374934680255800, \ 0.53131974364437562397, \ 0.62110294673722640294, \ 0.70249620649152707861, \ 0.77459666924148337704, \ 0.83672593816886873550, \ 0.88845923287225699889, \ 0.92965485742974005667, \ 0.96049126870802028342, \ 0.98153114955374010687, \ 0.99383196321275502221, \ 0.99909812496766759766 ] ) w = np.array ( [ \ 0.00254478079156187441540, \ 0.00843456573932110624631, \ 0.0164460498543878109338, \ 0.0258075980961766535646, \ 0.0359571033071293220968, \ 0.0464628932617579865414, \ 0.0569795094941233574122, \ 0.0672077542959907035404, \ 0.0768796204990035310427, \ 0.0857559200499903511542, \ 0.0936271099812644736167, \ 0.100314278611795578771, \ 0.105669893580234809744, \ 0.109578421055924638237, \ 0.111956873020953456880, \ 0.112755256720768691607, \ 0.111956873020953456880, \ 0.109578421055924638237, \ 0.105669893580234809744, \ 0.100314278611795578771, \ 0.0936271099812644736167, \ 0.0857559200499903511542, \ 0.0768796204990035310427, \ 0.0672077542959907035404, \ 0.0569795094941233574122, \ 0.0464628932617579865414, \ 0.0359571033071293220968, \ 0.0258075980961766535646, \ 0.0164460498543878109338, \ 0.00843456573932110624631, \ 0.00254478079156187441540 ] ) elif ( n == 63 ): x = np.array ( [ \ -0.99987288812035761194, \ -0.99909812496766759766, \ -0.99720625937222195908, \ -0.99383196321275502221, \ -0.98868475754742947994, \ -0.98153114955374010687, \ -0.97218287474858179658, \ -0.96049126870802028342, \ -0.94634285837340290515, \ -0.92965485742974005667, \ -0.91037115695700429250, \ -0.88845923287225699889, \ -0.86390793819369047715, \ -0.83672593816886873550, \ -0.80694053195021761186, \ -0.77459666924148337704, \ -0.73975604435269475868, \ -0.70249620649152707861, \ -0.66290966002478059546, \ -0.62110294673722640294, \ -0.57719571005204581484, \ -0.53131974364437562397, \ -0.48361802694584102756, \ -0.43424374934680255800, \ -0.38335932419873034692, \ -0.33113539325797683309, \ -0.27774982202182431507, \ -0.22338668642896688163, \ -0.16823525155220746498, \ -0.11248894313318662575, \ -0.056344313046592789972, \ 0.0, \ 0.056344313046592789972, \ 0.11248894313318662575, \ 0.16823525155220746498, \ 0.22338668642896688163, \ 0.27774982202182431507, \ 0.33113539325797683309, \ 0.38335932419873034692, \ 0.43424374934680255800, \ 0.48361802694584102756, \ 0.53131974364437562397, \ 0.57719571005204581484, \ 0.62110294673722640294, \ 0.66290966002478059546, \ 0.70249620649152707861, \ 0.73975604435269475868, \ 0.77459666924148337704, \ 0.80694053195021761186, \ 0.83672593816886873550, \ 0.86390793819369047715, \ 0.88845923287225699889, \ 0.91037115695700429250, \ 0.92965485742974005667, \ 0.94634285837340290515, \ 0.96049126870802028342, \ 0.97218287474858179658, \ 0.98153114955374010687, \ 0.98868475754742947994, \ 0.99383196321275502221, \ 0.99720625937222195908, \ 0.99909812496766759766, \ 0.99987288812035761194 ] ) w = np.array ( [ \ 0.000363221481845530659694, \ 0.00126515655623006801137, \ 0.00257904979468568827243, \ 0.00421763044155885483908, \ 0.00611550682211724633968, \ 0.00822300795723592966926, \ 0.0104982469096213218983, \ 0.0129038001003512656260, \ 0.0154067504665594978021, \ 0.0179785515681282703329, \ 0.0205942339159127111492, \ 0.0232314466399102694433, \ 0.0258696793272147469108, \ 0.0284897547458335486125, \ 0.0310735511116879648799, \ 0.0336038771482077305417, \ 0.0360644327807825726401, \ 0.0384398102494555320386, \ 0.0407155101169443189339, \ 0.0428779600250077344929, \ 0.0449145316536321974143, \ 0.0468135549906280124026, \ 0.0485643304066731987159, \ 0.0501571393058995374137, \ 0.0515832539520484587768, \ 0.0528349467901165198621, \ 0.0539054993352660639269, \ 0.0547892105279628650322, \ 0.0554814043565593639878, \ 0.0559784365104763194076, \ 0.0562776998312543012726, \ 0.0563776283603847173877, \ 0.0562776998312543012726, \ 0.0559784365104763194076, \ 0.0554814043565593639878, \ 0.0547892105279628650322, \ 0.0539054993352660639269, \ 0.0528349467901165198621, \ 0.0515832539520484587768, \ 0.0501571393058995374137, \ 0.0485643304066731987159, \ 0.0468135549906280124026, \ 0.0449145316536321974143, \ 0.0428779600250077344929, \ 0.0407155101169443189339, \ 0.0384398102494555320386, \ 0.0360644327807825726401, \ 0.0336038771482077305417, \ 0.0310735511116879648799, \ 0.0284897547458335486125, \ 0.0258696793272147469108, \ 0.0232314466399102694433, \ 0.0205942339159127111492, \ 0.0179785515681282703329, \ 0.0154067504665594978021, \ 0.0129038001003512656260, \ 0.0104982469096213218983, \ 0.00822300795723592966926, \ 0.00611550682211724633968, \ 0.00421763044155885483908, \ 0.00257904979468568827243, \ 0.00126515655623006801137, \ 0.000363221481845530659694 ] ) elif ( n == 127 ): x = np.array ( [ \ -0.99998243035489159858, \ -0.99987288812035761194, \ -0.99959879967191068325, \ -0.99909812496766759766, \ -0.99831663531840739253, \ -0.99720625937222195908, \ -0.99572410469840718851, \ -0.99383196321275502221, \ -0.99149572117810613240, \ -0.98868475754742947994, \ -0.98537149959852037111, \ -0.98153114955374010687, \ -0.97714151463970571416, \ -0.97218287474858179658, \ -0.96663785155841656709, \ -0.96049126870802028342, \ -0.95373000642576113641, \ -0.94634285837340290515, \ -0.93832039777959288365, \ -0.92965485742974005667, \ -0.92034002547001242073, \ -0.91037115695700429250, \ -0.89974489977694003664, \ -0.88845923287225699889, \ -0.87651341448470526974, \ -0.86390793819369047715, \ -0.85064449476835027976, \ -0.83672593816886873550, \ -0.82215625436498040737, \ -0.80694053195021761186, \ -0.79108493379984836143, \ -0.77459666924148337704, \ -0.75748396638051363793, \ -0.73975604435269475868, \ -0.72142308537009891548, \ -0.70249620649152707861, \ -0.68298743109107922809, \ -0.66290966002478059546, \ -0.64227664250975951377, \ -0.62110294673722640294, \ -0.59940393024224289297, \ -0.57719571005204581484, \ -0.55449513263193254887, \ -0.53131974364437562397, \ -0.50768775753371660215, \ -0.48361802694584102756, \ -0.45913001198983233287, \ -0.43424374934680255800, \ -0.40897982122988867241, \ -0.38335932419873034692, \ -0.35740383783153215238, \ -0.33113539325797683309, \ -0.30457644155671404334, \ -0.27774982202182431507, \ -0.25067873030348317661, \ -0.22338668642896688163, \ -0.19589750271110015392, \ -0.16823525155220746498, \ -0.14042423315256017459, \ -0.11248894313318662575, \ -0.084454040083710883710, \ -0.056344313046592789972, \ -0.028184648949745694339, \ 0.0, \ 0.028184648949745694339, \ 0.056344313046592789972, \ 0.084454040083710883710, \ 0.11248894313318662575, \ 0.14042423315256017459, \ 0.16823525155220746498, \ 0.19589750271110015392, \ 0.22338668642896688163, \ 0.25067873030348317661, \ 0.27774982202182431507, \ 0.30457644155671404334, \ 0.33113539325797683309, \ 0.35740383783153215238, \ 0.38335932419873034692, \ 0.40897982122988867241, \ 0.43424374934680255800, \ 0.45913001198983233287, \ 0.48361802694584102756, \ 0.50768775753371660215, \ 0.53131974364437562397, \ 0.55449513263193254887, \ 0.57719571005204581484, \ 0.59940393024224289297, \ 0.62110294673722640294, \ 0.64227664250975951377, \ 0.66290966002478059546, \ 0.68298743109107922809, \ 0.70249620649152707861, \ 0.72142308537009891548, \ 0.73975604435269475868, \ 0.75748396638051363793, \ 0.77459666924148337704, \ 0.79108493379984836143, \ 0.80694053195021761186, \ 0.82215625436498040737, \ 0.83672593816886873550, \ 0.85064449476835027976, \ 0.86390793819369047715, \ 0.87651341448470526974, \ 0.88845923287225699889, \ 0.89974489977694003664, \ 0.91037115695700429250, \ 0.92034002547001242073, \ 0.92965485742974005667, \ 0.93832039777959288365, \ 0.94634285837340290515, \ 0.95373000642576113641, \ 0.96049126870802028342, \ 0.96663785155841656709, \ 0.97218287474858179658, \ 0.97714151463970571416, \ 0.98153114955374010687, \ 0.98537149959852037111, \ 0.98868475754742947994, \ 0.99149572117810613240, \ 0.99383196321275502221, \ 0.99572410469840718851, \ 0.99720625937222195908, \ 0.99831663531840739253, \ 0.99909812496766759766, \ 0.99959879967191068325, \ 0.99987288812035761194, \ 0.99998243035489159858 ] ) w = np.array ( [ \ 0.0000505360952078625176247, \ 0.000180739564445388357820, \ 0.000377746646326984660274, \ 0.000632607319362633544219, \ 0.000938369848542381500794, \ 0.00128952408261041739210, \ 0.00168114286542146990631, \ 0.00210881524572663287933, \ 0.00256876494379402037313, \ 0.00305775341017553113613, \ 0.00357289278351729964938, \ 0.00411150397865469304717, \ 0.00467105037211432174741, \ 0.00524912345480885912513, \ 0.00584344987583563950756, \ 0.00645190005017573692280, \ 0.00707248999543355546805, \ 0.00770337523327974184817, \ 0.00834283875396815770558, \ 0.00898927578406413572328, \ 0.00964117772970253669530, \ 0.0102971169579563555237, \ 0.0109557333878379016480, \ 0.0116157233199551347270, \ 0.0122758305600827700870, \ 0.0129348396636073734547, \ 0.0135915710097655467896, \ 0.0142448773729167743063, \ 0.0148936416648151820348, \ 0.0155367755558439824399, \ 0.0161732187295777199419, \ 0.0168019385741038652709, \ 0.0174219301594641737472, \ 0.0180322163903912863201, \ 0.0186318482561387901863, \ 0.0192199051247277660193, \ 0.0197954950480974994880, \ 0.0203577550584721594669, \ 0.0209058514458120238522, \ 0.0214389800125038672465, \ 0.0219563663053178249393, \ 0.0224572658268160987071, \ 0.0229409642293877487608, \ 0.0234067774953140062013, \ 0.0238540521060385400804, \ 0.0242821652033365993580, \ 0.0246905247444876769091, \ 0.0250785696529497687068, \ 0.0254457699654647658126, \ 0.0257916269760242293884, \ 0.0261156733767060976805, \ 0.0264174733950582599310, \ 0.0266966229274503599062, \ 0.0269527496676330319634, \ 0.0271855132296247918192, \ 0.0273946052639814325161, \ 0.0275797495664818730349, \ 0.0277407021782796819939, \ 0.0278772514766137016085, \ 0.0279892182552381597038, \ 0.0280764557938172466068, \ 0.0281388499156271506363, \ 0.0281763190330166021307, \ 0.0281888141801923586938, \ 0.0281763190330166021307, \ 0.0281388499156271506363, \ 0.0280764557938172466068, \ 0.0279892182552381597038, \ 0.0278772514766137016085, \ 0.0277407021782796819939, \ 0.0275797495664818730349, \ 0.0273946052639814325161, \ 0.0271855132296247918192, \ 0.0269527496676330319634, \ 0.0266966229274503599062, \ 0.0264174733950582599310, \ 0.0261156733767060976805, \ 0.0257916269760242293884, \ 0.0254457699654647658126, \ 0.0250785696529497687068, \ 0.0246905247444876769091, \ 0.0242821652033365993580, \ 0.0238540521060385400804, \ 0.0234067774953140062013, \ 0.0229409642293877487608, \ 0.0224572658268160987071, \ 0.0219563663053178249393, \ 0.0214389800125038672465, \ 0.0209058514458120238522, \ 0.0203577550584721594669, \ 0.0197954950480974994880, \ 0.0192199051247277660193, \ 0.0186318482561387901863, \ 0.0180322163903912863201, \ 0.0174219301594641737472, \ 0.0168019385741038652709, \ 0.0161732187295777199419, \ 0.0155367755558439824399, \ 0.0148936416648151820348, \ 0.0142448773729167743063, \ 0.0135915710097655467896, \ 0.0129348396636073734547, \ 0.0122758305600827700870, \ 0.0116157233199551347270, \ 0.0109557333878379016480, \ 0.0102971169579563555237, \ 0.00964117772970253669530, \ 0.00898927578406413572328, \ 0.00834283875396815770558, \ 0.00770337523327974184817, \ 0.00707248999543355546805, \ 0.00645190005017573692280, \ 0.00584344987583563950756, \ 0.00524912345480885912513, \ 0.00467105037211432174741, \ 0.00411150397865469304717, \ 0.00357289278351729964938, \ 0.00305775341017553113613, \ 0.00256876494379402037313, \ 0.00210881524572663287933, \ 0.00168114286542146990631, \ 0.00128952408261041739210, \ 0.000938369848542381500794, \ 0.000632607319362633544219, \ 0.000377746646326984660274, \ 0.000180739564445388357820, \ 0.0000505360952078625176247 ] ) elif ( n == 255 ): x = np.array ( [ \ -0.99999759637974846462E+00, \ -0.99998243035489159858E+00, \ -0.99994399620705437576E+00, \ -0.99987288812035761194E+00, \ -0.99976049092443204733E+00, \ -0.99959879967191068325E+00, \ -0.99938033802502358193E+00, \ -0.99909812496766759766E+00, \ -0.99874561446809511470E+00, \ -0.99831663531840739253E+00, \ -0.99780535449595727456E+00, \ -0.99720625937222195908E+00, \ -0.99651414591489027385E+00, \ -0.99572410469840718851E+00, \ -0.99483150280062100052E+00, \ -0.99383196321275502221E+00, \ -0.99272134428278861533E+00, \ -0.99149572117810613240E+00, \ -0.99015137040077015918E+00, \ -0.98868475754742947994E+00, \ -0.98709252795403406719E+00, \ -0.98537149959852037111E+00, \ -0.98351865757863272876E+00, \ -0.98153114955374010687E+00, \ -0.97940628167086268381E+00, \ -0.97714151463970571416E+00, \ -0.97473445975240266776E+00, \ -0.97218287474858179658E+00, \ -0.96948465950245923177E+00, \ -0.96663785155841656709E+00, \ -0.96364062156981213252E+00, \ -0.96049126870802028342E+00, \ -0.95718821610986096274E+00, \ -0.95373000642576113641E+00, \ -0.95011529752129487656E+00, \ -0.94634285837340290515E+00, \ -0.94241156519108305981E+00, \ -0.93832039777959288365E+00, \ -0.93406843615772578800E+00, \ -0.92965485742974005667E+00, \ -0.92507893290707565236E+00, \ -0.92034002547001242073E+00, \ -0.91543758715576504064E+00, \ -0.91037115695700429250E+00, \ -0.90514035881326159519E+00, \ -0.89974489977694003664E+00, \ -0.89418456833555902286E+00, \ -0.88845923287225699889E+00, \ -0.88256884024734190684E+00, \ -0.87651341448470526974E+00, \ -0.87029305554811390585E+00, \ -0.86390793819369047715E+00, \ -0.85735831088623215653E+00, \ -0.85064449476835027976E+00, \ -0.84376688267270860104E+00, \ -0.83672593816886873550E+00, \ -0.82952219463740140018E+00, \ -0.82215625436498040737E+00, \ -0.81462878765513741344E+00, \ -0.80694053195021761186E+00, \ -0.79909229096084140180E+00, \ -0.79108493379984836143E+00, \ -0.78291939411828301639E+00, \ -0.77459666924148337704E+00, \ -0.76611781930376009072E+00, \ -0.75748396638051363793E+00, \ -0.74869629361693660282E+00, \ -0.73975604435269475868E+00, \ -0.73066452124218126133E+00, \ -0.72142308537009891548E+00, \ -0.71203315536225203459E+00, \ -0.70249620649152707861E+00, \ -0.69281376977911470289E+00, \ -0.68298743109107922809E+00, \ -0.67301883023041847920E+00, \ -0.66290966002478059546E+00, \ -0.65266166541001749610E+00, \ -0.64227664250975951377E+00, \ -0.63175643771119423041E+00, \ -0.62110294673722640294E+00, \ -0.61031811371518640016E+00, \ -0.59940393024224289297E+00, \ -0.58836243444766254143E+00, \ -0.57719571005204581484E+00, \ -0.56590588542365442262E+00, \ -0.55449513263193254887E+00, \ -0.54296566649831149049E+00, \ -0.53131974364437562397E+00, \ -0.51955966153745702199E+00, \ -0.50768775753371660215E+00, \ -0.49570640791876146017E+00, \ -0.48361802694584102756E+00, \ -0.47142506587165887693E+00, \ -0.45913001198983233287E+00, \ -0.44673538766202847374E+00, \ -0.43424374934680255800E+00, \ -0.42165768662616330006E+00, \ -0.40897982122988867241E+00, \ -0.39621280605761593918E+00, \ -0.38335932419873034692E+00, \ -0.37042208795007823014E+00, \ -0.35740383783153215238E+00, \ -0.34430734159943802278E+00, \ -0.33113539325797683309E+00, \ -0.31789081206847668318E+00, \ -0.30457644155671404334E+00, \ -0.29119514851824668196E+00, \ -0.27774982202182431507E+00, \ -0.26424337241092676194E+00, \ -0.25067873030348317661E+00, \ -0.23705884558982972721E+00, \ -0.22338668642896688163E+00, \ -0.20966523824318119477E+00, \ -0.19589750271110015392E+00, \ -0.18208649675925219825E+00, \ -0.16823525155220746498E+00, \ -0.15434681148137810869E+00, \ -0.14042423315256017459E+00, \ -0.12647058437230196685E+00, \ -0.11248894313318662575E+00, \ -0.098482396598119202090E+00, \ -0.084454040083710883710E+00, \ -0.070406976042855179063E+00, \ -0.056344313046592789972E+00, \ -0.042269164765363603212E+00, \ -0.028184648949745694339E+00, \ -0.014093886410782462614E+00, \ 0.0E+00, \ 0.014093886410782462614E+00, \ 0.028184648949745694339E+00, \ 0.042269164765363603212E+00, \ 0.056344313046592789972E+00, \ 0.070406976042855179063E+00, \ 0.084454040083710883710E+00, \ 0.098482396598119202090E+00, \ 0.11248894313318662575E+00, \ 0.12647058437230196685E+00, \ 0.14042423315256017459E+00, \ 0.15434681148137810869E+00, \ 0.16823525155220746498E+00, \ 0.18208649675925219825E+00, \ 0.19589750271110015392E+00, \ 0.20966523824318119477E+00, \ 0.22338668642896688163E+00, \ 0.23705884558982972721E+00, \ 0.25067873030348317661E+00, \ 0.26424337241092676194E+00, \ 0.27774982202182431507E+00, \ 0.29119514851824668196E+00, \ 0.30457644155671404334E+00, \ 0.31789081206847668318E+00, \ 0.33113539325797683309E+00, \ 0.34430734159943802278E+00, \ 0.35740383783153215238E+00, \ 0.37042208795007823014E+00, \ 0.38335932419873034692E+00, \ 0.39621280605761593918E+00, \ 0.40897982122988867241E+00, \ 0.42165768662616330006E+00, \ 0.43424374934680255800E+00, \ 0.44673538766202847374E+00, \ 0.45913001198983233287E+00, \ 0.47142506587165887693E+00, \ 0.48361802694584102756E+00, \ 0.49570640791876146017E+00, \ 0.50768775753371660215E+00, \ 0.51955966153745702199E+00, \ 0.53131974364437562397E+00, \ 0.54296566649831149049E+00, \ 0.55449513263193254887E+00, \ 0.56590588542365442262E+00, \ 0.57719571005204581484E+00, \ 0.58836243444766254143E+00, \ 0.59940393024224289297E+00, \ 0.61031811371518640016E+00, \ 0.62110294673722640294E+00, \ 0.63175643771119423041E+00, \ 0.64227664250975951377E+00, \ 0.65266166541001749610E+00, \ 0.66290966002478059546E+00, \ 0.67301883023041847920E+00, \ 0.68298743109107922809E+00, \ 0.69281376977911470289E+00, \ 0.70249620649152707861E+00, \ 0.71203315536225203459E+00, \ 0.72142308537009891548E+00, \ 0.73066452124218126133E+00, \ 0.73975604435269475868E+00, \ 0.74869629361693660282E+00, \ 0.75748396638051363793E+00, \ 0.76611781930376009072E+00, \ 0.77459666924148337704E+00, \ 0.78291939411828301639E+00, \ 0.79108493379984836143E+00, \ 0.79909229096084140180E+00, \ 0.80694053195021761186E+00, \ 0.81462878765513741344E+00, \ 0.82215625436498040737E+00, \ 0.82952219463740140018E+00, \ 0.83672593816886873550E+00, \ 0.84376688267270860104E+00, \ 0.85064449476835027976E+00, \ 0.85735831088623215653E+00, \ 0.86390793819369047715E+00, \ 0.87029305554811390585E+00, \ 0.87651341448470526974E+00, \ 0.88256884024734190684E+00, \ 0.88845923287225699889E+00, \ 0.89418456833555902286E+00, \ 0.89974489977694003664E+00, \ 0.90514035881326159519E+00, \ 0.91037115695700429250E+00, \ 0.91543758715576504064E+00, \ 0.92034002547001242073E+00, \ 0.92507893290707565236E+00, \ 0.92965485742974005667E+00, \ 0.93406843615772578800E+00, \ 0.93832039777959288365E+00, \ 0.94241156519108305981E+00, \ 0.94634285837340290515E+00, \ 0.95011529752129487656E+00, \ 0.95373000642576113641E+00, \ 0.95718821610986096274E+00, \ 0.96049126870802028342E+00, \ 0.96364062156981213252E+00, \ 0.96663785155841656709E+00, \ 0.96948465950245923177E+00, \ 0.97218287474858179658E+00, \ 0.97473445975240266776E+00, \ 0.97714151463970571416E+00, \ 0.97940628167086268381E+00, \ 0.98153114955374010687E+00, \ 0.98351865757863272876E+00, \ 0.98537149959852037111E+00, \ 0.98709252795403406719E+00, \ 0.98868475754742947994E+00, \ 0.99015137040077015918E+00, \ 0.99149572117810613240E+00, \ 0.99272134428278861533E+00, \ 0.99383196321275502221E+00, \ 0.99483150280062100052E+00, \ 0.99572410469840718851E+00, \ 0.99651414591489027385E+00, \ 0.99720625937222195908E+00, \ 0.99780535449595727456E+00, \ 0.99831663531840739253E+00, \ 0.99874561446809511470E+00, \ 0.99909812496766759766E+00, \ 0.99938033802502358193E+00, \ 0.99959879967191068325E+00, \ 0.99976049092443204733E+00, \ 0.99987288812035761194E+00, \ 0.99994399620705437576E+00, \ 0.99998243035489159858E+00, \ 0.99999759637974846462E+00 ] ) w = np.array ( [ \ 0.69379364324108267170E-05, \ 0.25157870384280661489E-04, \ 0.53275293669780613125E-04, \ 0.90372734658751149261E-04, \ 0.13575491094922871973E-03, \ 0.18887326450650491366E-03, \ 0.24921240048299729402E-03, \ 0.31630366082226447689E-03, \ 0.38974528447328229322E-03, \ 0.46918492424785040975E-03, \ 0.55429531493037471492E-03, \ 0.64476204130572477933E-03, \ 0.74028280424450333046E-03, \ 0.84057143271072246365E-03, \ 0.94536151685852538246E-03, \ 0.10544076228633167722E-02, \ 0.11674841174299594077E-02, \ 0.12843824718970101768E-02, \ 0.14049079956551446427E-02, \ 0.15288767050877655684E-02, \ 0.16561127281544526052E-02, \ 0.17864463917586498247E-02, \ 0.19197129710138724125E-02, \ 0.20557519893273465236E-02, \ 0.21944069253638388388E-02, \ 0.23355251860571608737E-02, \ 0.24789582266575679307E-02, \ 0.26245617274044295626E-02, \ 0.27721957645934509940E-02, \ 0.29217249379178197538E-02, \ 0.30730184347025783234E-02, \ 0.32259500250878684614E-02, \ 0.33803979910869203823E-02, \ 0.35362449977167777340E-02, \ 0.36933779170256508183E-02, \ 0.38516876166398709241E-02, \ 0.40110687240750233989E-02, \ 0.41714193769840788528E-02, \ 0.43326409680929828545E-02, \ 0.44946378920320678616E-02, \ 0.46573172997568547773E-02, \ 0.48205888648512683476E-02, \ 0.49843645647655386012E-02, \ 0.51485584789781777618E-02, \ 0.53130866051870565663E-02, \ 0.54778666939189508240E-02, \ 0.56428181013844441585E-02, \ 0.58078616599775673635E-02, \ 0.59729195655081658049E-02, \ 0.61379152800413850435E-02, \ 0.63027734490857587172E-02, \ 0.64674198318036867274E-02, \ 0.66317812429018878941E-02, \ 0.67957855048827733948E-02, \ 0.69593614093904229394E-02, \ 0.71224386864583871532E-02, \ 0.72849479805538070639E-02, \ 0.74468208324075910174E-02, \ 0.76079896657190565832E-02, \ 0.77683877779219912200E-02, \ 0.79279493342948491103E-02, \ 0.80866093647888599710E-02, \ 0.82443037630328680306E-02, \ 0.84009692870519326354E-02, \ 0.85565435613076896192E-02, \ 0.87109650797320868736E-02, \ 0.88641732094824942641E-02, \ 0.90161081951956431600E-02, \ 0.91667111635607884067E-02, \ 0.93159241280693950932E-02, \ 0.94636899938300652943E-02, \ 0.96099525623638830097E-02, \ 0.97546565363174114611E-02, \ 0.98977475240487497440E-02, \ 0.10039172044056840798E-01, \ 0.10178877529236079733E-01, \ 0.10316812330947621682E-01, \ 0.10452925722906011926E-01, \ 0.10587167904885197931E-01, \ 0.10719490006251933623E-01, \ 0.10849844089337314099E-01, \ 0.10978183152658912470E-01, \ 0.11104461134006926537E-01, \ 0.11228632913408049354E-01, \ 0.11350654315980596602E-01, \ 0.11470482114693874380E-01, \ 0.11588074033043952568E-01, \ 0.11703388747657003101E-01, \ 0.11816385890830235763E-01, \ 0.11927026053019270040E-01, \ 0.12035270785279562630E-01, \ 0.12141082601668299679E-01, \ 0.12244424981611985899E-01, \ 0.12345262372243838455E-01, \ 0.12443560190714035263E-01, \ 0.12539284826474884353E-01, \ 0.12632403643542078765E-01, \ 0.12722884982732382906E-01, \ 0.12810698163877361967E-01, \ 0.12895813488012114694E-01, \ 0.12978202239537399286E-01, \ 0.13057836688353048840E-01, \ 0.13134690091960152836E-01, \ 0.13208736697529129966E-01, \ 0.13279951743930530650E-01, \ 0.13348311463725179953E-01, \ 0.13413793085110098513E-01, \ 0.13476374833816515982E-01, \ 0.13536035934956213614E-01, \ 0.13592756614812395910E-01, \ 0.13646518102571291428E-01, \ 0.13697302631990716258E-01, \ 0.13745093443001896632E-01, \ 0.13789874783240936517E-01, \ 0.13831631909506428676E-01, \ 0.13870351089139840997E-01, \ 0.13906019601325461264E-01, \ 0.13938625738306850804E-01, \ 0.13968158806516938516E-01, \ 0.13994609127619079852E-01, \ 0.14017968039456608810E-01, \ 0.14038227896908623303E-01, \ 0.14055382072649964277E-01, \ 0.14069424957813575318E-01, \ 0.14080351962553661325E-01, \ 0.14088159516508301065E-01, \ 0.14092845069160408355E-01, \ 0.14094407090096179347E-01, \ 0.14092845069160408355E-01, \ 0.14088159516508301065E-01, \ 0.14080351962553661325E-01, \ 0.14069424957813575318E-01, \ 0.14055382072649964277E-01, \ 0.14038227896908623303E-01, \ 0.14017968039456608810E-01, \ 0.13994609127619079852E-01, \ 0.13968158806516938516E-01, \ 0.13938625738306850804E-01, \ 0.13906019601325461264E-01, \ 0.13870351089139840997E-01, \ 0.13831631909506428676E-01, \ 0.13789874783240936517E-01, \ 0.13745093443001896632E-01, \ 0.13697302631990716258E-01, \ 0.13646518102571291428E-01, \ 0.13592756614812395910E-01, \ 0.13536035934956213614E-01, \ 0.13476374833816515982E-01, \ 0.13413793085110098513E-01, \ 0.13348311463725179953E-01, \ 0.13279951743930530650E-01, \ 0.13208736697529129966E-01, \ 0.13134690091960152836E-01, \ 0.13057836688353048840E-01, \ 0.12978202239537399286E-01, \ 0.12895813488012114694E-01, \ 0.12810698163877361967E-01, \ 0.12722884982732382906E-01, \ 0.12632403643542078765E-01, \ 0.12539284826474884353E-01, \ 0.12443560190714035263E-01, \ 0.12345262372243838455E-01, \ 0.12244424981611985899E-01, \ 0.12141082601668299679E-01, \ 0.12035270785279562630E-01, \ 0.11927026053019270040E-01, \ 0.11816385890830235763E-01, \ 0.11703388747657003101E-01, \ 0.11588074033043952568E-01, \ 0.11470482114693874380E-01, \ 0.11350654315980596602E-01, \ 0.11228632913408049354E-01, \ 0.11104461134006926537E-01, \ 0.10978183152658912470E-01, \ 0.10849844089337314099E-01, \ 0.10719490006251933623E-01, \ 0.10587167904885197931E-01, \ 0.10452925722906011926E-01, \ 0.10316812330947621682E-01, \ 0.10178877529236079733E-01, \ 0.10039172044056840798E-01, \ 0.98977475240487497440E-02, \ 0.97546565363174114611E-02, \ 0.96099525623638830097E-02, \ 0.94636899938300652943E-02, \ 0.93159241280693950932E-02, \ 0.91667111635607884067E-02, \ 0.90161081951956431600E-02, \ 0.88641732094824942641E-02, \ 0.87109650797320868736E-02, \ 0.85565435613076896192E-02, \ 0.84009692870519326354E-02, \ 0.82443037630328680306E-02, \ 0.80866093647888599710E-02, \ 0.79279493342948491103E-02, \ 0.77683877779219912200E-02, \ 0.76079896657190565832E-02, \ 0.74468208324075910174E-02, \ 0.72849479805538070639E-02, \ 0.71224386864583871532E-02, \ 0.69593614093904229394E-02, \ 0.67957855048827733948E-02, \ 0.66317812429018878941E-02, \ 0.64674198318036867274E-02, \ 0.63027734490857587172E-02, \ 0.61379152800413850435E-02, \ 0.59729195655081658049E-02, \ 0.58078616599775673635E-02, \ 0.56428181013844441585E-02, \ 0.54778666939189508240E-02, \ 0.53130866051870565663E-02, \ 0.51485584789781777618E-02, \ 0.49843645647655386012E-02, \ 0.48205888648512683476E-02, \ 0.46573172997568547773E-02, \ 0.44946378920320678616E-02, \ 0.43326409680929828545E-02, \ 0.41714193769840788528E-02, \ 0.40110687240750233989E-02, \ 0.38516876166398709241E-02, \ 0.36933779170256508183E-02, \ 0.35362449977167777340E-02, \ 0.33803979910869203823E-02, \ 0.32259500250878684614E-02, \ 0.30730184347025783234E-02, \ 0.29217249379178197538E-02, \ 0.27721957645934509940E-02, \ 0.26245617274044295626E-02, \ 0.24789582266575679307E-02, \ 0.23355251860571608737E-02, \ 0.21944069253638388388E-02, \ 0.20557519893273465236E-02, \ 0.19197129710138724125E-02, \ 0.17864463917586498247E-02, \ 0.16561127281544526052E-02, \ 0.15288767050877655684E-02, \ 0.14049079956551446427E-02, \ 0.12843824718970101768E-02, \ 0.11674841174299594077E-02, \ 0.10544076228633167722E-02, \ 0.94536151685852538246E-03, \ 0.84057143271072246365E-03, \ 0.74028280424450333046E-03, \ 0.64476204130572477933E-03, \ 0.55429531493037471492E-03, \ 0.46918492424785040975E-03, \ 0.38974528447328229322E-03, \ 0.31630366082226447689E-03, \ 0.24921240048299729402E-03, \ 0.18887326450650491366E-03, \ 0.13575491094922871973E-03, \ 0.90372734658751149261E-04, \ 0.53275293669780613125E-04, \ 0.25157870384280661489E-04, \ 0.69379364324108267170E-05 ] ) elif ( n == 511 ): x = np.array ( [ \ -0.999999672956734384381, \ -0.999997596379748464620, \ -0.999992298136257588028, \ -0.999982430354891598580, \ -0.999966730098486276883, \ -0.999943996207054375764, \ -0.999913081144678282800, \ -0.999872888120357611938, \ -0.999822363679787739196, \ -0.999760490924432047330, \ -0.999686286448317731776, \ -0.999598799671910683252, \ -0.999497112467187190535, \ -0.999380338025023581928, \ -0.999247618943342473599, \ -0.999098124967667597662, \ -0.998931050830810562236, \ -0.998745614468095114704, \ -0.998541055697167906027, \ -0.998316635318407392531, \ -0.998071634524930323302, \ -0.997805354495957274562, \ -0.997517116063472399965, \ -0.997206259372221959076, \ -0.996872143485260161299, \ -0.996514145914890273849, \ -0.996131662079315037786, \ -0.995724104698407188509, \ -0.995290903148810302261, \ -0.994831502800621000519, \ -0.994345364356723405931, \ -0.993831963212755022209, \ -0.993290788851684966211, \ -0.992721344282788615328, \ -0.992123145530863117683, \ -0.991495721178106132399, \ -0.990838611958294243677, \ -0.990151370400770159181, \ -0.989433560520240838716, \ -0.988684757547429479939, \ -0.987904547695124280467, \ -0.987092527954034067190, \ -0.986248305913007552681, \ -0.985371499598520371114, \ -0.984461737328814534596, \ -0.983518657578632728762, \ -0.982541908851080604251, \ -0.981531149553740106867, \ -0.980486047876721339416, \ -0.979406281670862683806, \ -0.978291538324758539526, \ -0.977141514639705714156, \ -0.975955916702011753129, \ -0.974734459752402667761, \ -0.973476868052506926773, \ -0.972182874748581796578, \ -0.970852221732792443256, \ -0.969484659502459231771, \ -0.968079947017759947964, \ -0.966637851558416567092, \ -0.965158148579915665979, \ -0.963640621569812132521, \ -0.962085061904651475741, \ -0.960491268708020283423, \ -0.958859048710200221356, \ -0.957188216109860962736, \ -0.955478592438183697574, \ -0.953730006425761136415, \ -0.951942293872573589498, \ -0.950115297521294876558, \ -0.948248866934137357063, \ -0.946342858373402905148, \ -0.944397134685866648591, \ -0.942411565191083059813, \ -0.940386025573669721370, \ -0.938320397779592883655, \ -0.936214569916450806625, \ -0.934068436157725787999, \ -0.931881896650953639345, \ -0.929654857429740056670, \ -0.927387230329536696843, \ -0.925078932907075652364, \ -0.922729888363349241523, \ -0.920340025470012420730, \ -0.917909278499077501636, \ -0.915437587155765040644, \ -0.912924896514370590080, \ -0.910371156957004292498, \ -0.907776324115058903624, \ -0.905140358813261595189, \ -0.902463227016165675048, \ -0.899744899776940036639, \ -0.896985353188316590376, \ -0.894184568335559022859, \ -0.891342531251319871666, \ -0.888459232872256998890, \ -0.885534668997285008926, \ -0.882568840247341906842, \ -0.879561752026556262568, \ -0.876513414484705269742, \ -0.873423842480859310192, \ -0.870293055548113905851, \ -0.867121077859315215614, \ -0.863907938193690477146, \ -0.860653669904299969802, \ -0.857358310886232156525, \ -0.854021903545468625813, \ -0.850644494768350279758, \ -0.847226135891580884381, \ -0.843766882672708601038, \ -0.840266795261030442350, \ -0.836725938168868735503, \ -0.833144380243172624728, \ -0.829522194637401400178, \ -0.825859458783650001088, \ -0.822156254364980407373, \ -0.818412667287925807395, \ -0.814628787655137413436, \ -0.810804709738146594361, \ -0.806940531950217611856, \ -0.803036356819268687782, \ -0.799092290960841401800, \ -0.795108445051100526780, \ -0.791084933799848361435, \ -0.787021875923539422170, \ -0.782919394118283016385, \ -0.778777615032822744702, \ -0.774596669241483377036, \ -0.770376691217076824278, \ -0.766117819303760090717, \ -0.761820195689839149173, \ -0.757483966380513637926, \ -0.753109281170558142523, \ -0.748696293616936602823, \ -0.744245161011347082309, \ -0.739756044352694758677, \ -0.735229108319491547663, \ -0.730664521242181261329, \ -0.726062455075389632685, \ -0.721423085370098915485, \ -0.716746591245747095767, \ -0.712033155362252034587, \ -0.707282963891961103412, \ -0.702496206491527078610, \ -0.697673076273711232906, \ -0.692813769779114702895, \ -0.687918486947839325756, \ -0.682987431091079228087, \ -0.678020808862644517838, \ -0.673018830230418479199, \ -0.667981708447749702165, \ -0.662909660024780595461, \ -0.657802904699713735422, \ -0.652661665410017496101, \ -0.647486168263572388782, \ -0.642276642509759513774, \ -0.637033320510492495071, \ -0.631756437711194230414, \ -0.626446232611719746542, \ -0.621102946737226402941, \ -0.615726824608992638014, \ -0.610318113715186400156, \ -0.604877064481584353319, \ -0.599403930242242892974, \ -0.593898967210121954393, \ -0.588362434447662541434, \ -0.582794593837318850840, \ -0.577195710052045814844, \ -0.571566050525742833992, \ -0.565905885423654422623, \ -0.560215487612728441818, \ -0.554495132631932548866, \ -0.548745098662529448608, \ -0.542965666498311490492, \ -0.537157119515795115982, \ -0.531319743644375623972, \ -0.525453827336442687395, \ -0.519559661537457021993, \ -0.513637539655988578507, \ -0.507687757533716602155, \ -0.501710613415391878251, \ -0.495706407918761460170, \ -0.489675444004456155436, \ -0.483618026945841027562, \ -0.477534464298829155284, \ -0.471425065871658876934, \ -0.465290143694634735858, \ -0.459130011989832332874, \ -0.452944987140767283784, \ -0.446735387662028473742, \ -0.440501534168875795783, \ -0.434243749346802558002, \ -0.427962357921062742583, \ -0.421657686626163300056, \ -0.415330064175321663764, \ -0.408979821229888672409, \ -0.402607290368737092671, \ -0.396212806057615939183, \ -0.389796704618470795479, \ -0.383359324198730346916, \ -0.376901004740559344802, \ -0.370422087950078230138, \ -0.363922917266549655269, \ -0.357403837831532152376, \ -0.350865196458001209011, \ -0.344307341599438022777, \ -0.337730623318886219621, \ -0.331135393257976833093, \ -0.324522004605921855207, \ -0.317890812068476683182, \ -0.311242171836871800300, \ -0.304576441556714043335, \ -0.297893980296857823437, \ -0.291195148518246681964, \ -0.284480308042725577496, \ -0.277749822021824315065, \ -0.271004054905512543536, \ -0.264243372410926761945, \ -0.257468141491069790481, \ -0.250678730303483176613, \ -0.243875508178893021593, \ -0.237058845589829727213, \ -0.230229114119222177156, \ -0.223386686428966881628, \ -0.216531936228472628081, \ -0.209665238243181194766, \ -0.202786968183064697557, \ -0.195897502711100153915, \ -0.188997219411721861059, \ -0.182086496759252198246, \ -0.175165714086311475707, \ -0.168235251552207464982, \ -0.161295490111305257361, \ -0.154346811481378108692, \ -0.147389598111939940054, \ -0.140424233152560174594, \ -0.133451100421161601344, \ -0.126470584372301966851, \ -0.119483070065440005133, \ -0.112488943133186625746, \ -0.105488589749541988533, \ -0.984823965981192020903E-01, \ -0.914707508403553909095E-01, \ -0.844540400837108837102E-01, \ -0.774326523498572825675E-01, \ -0.704069760428551790633E-01, \ -0.633773999173222898797E-01, \ -0.563443130465927899720E-01, \ -0.493081047908686267156E-01, \ -0.422691647653636032124E-01, \ -0.352278828084410232603E-01, \ -0.281846489497456943394E-01, \ -0.211398533783310883350E-01, \ -0.140938864107824626142E-01, \ -0.704713845933674648514E-02, \ +0.000000000000000000000, \ +0.704713845933674648514E-02, \ +0.140938864107824626142E-01, \ +0.211398533783310883350E-01, \ +0.281846489497456943394E-01, \ +0.352278828084410232603E-01, \ +0.422691647653636032124E-01, \ +0.493081047908686267156E-01, \ +0.563443130465927899720E-01, \ +0.633773999173222898797E-01, \ +0.704069760428551790633E-01, \ +0.774326523498572825675E-01, \ +0.844540400837108837102E-01, \ +0.914707508403553909095E-01, \ +0.984823965981192020903E-01, \ +0.105488589749541988533, \ +0.112488943133186625746, \ +0.119483070065440005133, \ +0.126470584372301966851, \ +0.133451100421161601344, \ +0.140424233152560174594, \ +0.147389598111939940054, \ +0.154346811481378108692, \ +0.161295490111305257361, \ +0.168235251552207464982, \ +0.175165714086311475707, \ +0.182086496759252198246, \ +0.188997219411721861059, \ +0.195897502711100153915, \ +0.202786968183064697557, \ +0.209665238243181194766, \ +0.216531936228472628081, \ +0.223386686428966881628, \ +0.230229114119222177156, \ +0.237058845589829727213, \ +0.243875508178893021593, \ +0.250678730303483176613, \ +0.257468141491069790481, \ +0.264243372410926761945, \ +0.271004054905512543536, \ +0.277749822021824315065, \ +0.284480308042725577496, \ +0.291195148518246681964, \ +0.297893980296857823437, \ +0.304576441556714043335, \ +0.311242171836871800300, \ +0.317890812068476683182, \ +0.324522004605921855207, \ +0.331135393257976833093, \ +0.337730623318886219621, \ +0.344307341599438022777, \ +0.350865196458001209011, \ +0.357403837831532152376, \ +0.363922917266549655269, \ +0.370422087950078230138, \ +0.376901004740559344802, \ +0.383359324198730346916, \ +0.389796704618470795479, \ +0.396212806057615939183, \ +0.402607290368737092671, \ +0.408979821229888672409, \ +0.415330064175321663764, \ +0.421657686626163300056, \ +0.427962357921062742583, \ +0.434243749346802558002, \ +0.440501534168875795783, \ +0.446735387662028473742, \ +0.452944987140767283784, \ +0.459130011989832332874, \ +0.465290143694634735858, \ +0.471425065871658876934, \ +0.477534464298829155284, \ +0.483618026945841027562, \ +0.489675444004456155436, \ +0.495706407918761460170, \ +0.501710613415391878251, \ +0.507687757533716602155, \ +0.513637539655988578507, \ +0.519559661537457021993, \ +0.525453827336442687395, \ +0.531319743644375623972, \ +0.537157119515795115982, \ +0.542965666498311490492, \ +0.548745098662529448608, \ +0.554495132631932548866, \ +0.560215487612728441818, \ +0.565905885423654422623, \ +0.571566050525742833992, \ +0.577195710052045814844, \ +0.582794593837318850840, \ +0.588362434447662541434, \ +0.593898967210121954393, \ +0.599403930242242892974, \ +0.604877064481584353319, \ +0.610318113715186400156, \ +0.615726824608992638014, \ +0.621102946737226402941, \ +0.626446232611719746542, \ +0.631756437711194230414, \ +0.637033320510492495071, \ +0.642276642509759513774, \ +0.647486168263572388782, \ +0.652661665410017496101, \ +0.657802904699713735422, \ +0.662909660024780595461, \ +0.667981708447749702165, \ +0.673018830230418479199, \ +0.678020808862644517838, \ +0.682987431091079228087, \ +0.687918486947839325756, \ +0.692813769779114702895, \ +0.697673076273711232906, \ +0.702496206491527078610, \ +0.707282963891961103412, \ +0.712033155362252034587, \ +0.716746591245747095767, \ +0.721423085370098915485, \ +0.726062455075389632685, \ +0.730664521242181261329, \ +0.735229108319491547663, \ +0.739756044352694758677, \ +0.744245161011347082309, \ +0.748696293616936602823, \ +0.753109281170558142523, \ +0.757483966380513637926, \ +0.761820195689839149173, \ +0.766117819303760090717, \ +0.770376691217076824278, \ +0.774596669241483377036, \ +0.778777615032822744702, \ +0.782919394118283016385, \ +0.787021875923539422170, \ +0.791084933799848361435, \ +0.795108445051100526780, \ +0.799092290960841401800, \ +0.803036356819268687782, \ +0.806940531950217611856, \ +0.810804709738146594361, \ +0.814628787655137413436, \ +0.818412667287925807395, \ +0.822156254364980407373, \ +0.825859458783650001088, \ +0.829522194637401400178, \ +0.833144380243172624728, \ +0.836725938168868735503, \ +0.840266795261030442350, \ +0.843766882672708601038, \ +0.847226135891580884381, \ +0.850644494768350279758, \ +0.854021903545468625813, \ +0.857358310886232156525, \ +0.860653669904299969802, \ +0.863907938193690477146, \ +0.867121077859315215614, \ +0.870293055548113905851, \ +0.873423842480859310192, \ +0.876513414484705269742, \ +0.879561752026556262568, \ +0.882568840247341906842, \ +0.885534668997285008926, \ +0.888459232872256998890, \ +0.891342531251319871666, \ +0.894184568335559022859, \ +0.896985353188316590376, \ +0.899744899776940036639, \ +0.902463227016165675048, \ +0.905140358813261595189, \ +0.907776324115058903624, \ +0.910371156957004292498, \ +0.912924896514370590080, \ +0.915437587155765040644, \ +0.917909278499077501636, \ +0.920340025470012420730, \ +0.922729888363349241523, \ +0.925078932907075652364, \ +0.927387230329536696843, \ +0.929654857429740056670, \ +0.931881896650953639345, \ +0.934068436157725787999, \ +0.936214569916450806625, \ +0.938320397779592883655, \ +0.940386025573669721370, \ +0.942411565191083059813, \ +0.944397134685866648591, \ +0.946342858373402905148, \ +0.948248866934137357063, \ +0.950115297521294876558, \ +0.951942293872573589498, \ +0.953730006425761136415, \ +0.955478592438183697574, \ +0.957188216109860962736, \ +0.958859048710200221356, \ +0.960491268708020283423, \ +0.962085061904651475741, \ +0.963640621569812132521, \ +0.965158148579915665979, \ +0.966637851558416567092, \ +0.968079947017759947964, \ +0.969484659502459231771, \ +0.970852221732792443256, \ +0.972182874748581796578, \ +0.973476868052506926773, \ +0.974734459752402667761, \ +0.975955916702011753129, \ +0.977141514639705714156, \ +0.978291538324758539526, \ +0.979406281670862683806, \ +0.980486047876721339416, \ +0.981531149553740106867, \ +0.982541908851080604251, \ +0.983518657578632728762, \ +0.984461737328814534596, \ +0.985371499598520371114, \ +0.986248305913007552681, \ +0.987092527954034067190, \ +0.987904547695124280467, \ +0.988684757547429479939, \ +0.989433560520240838716, \ +0.990151370400770159181, \ +0.990838611958294243677, \ +0.991495721178106132399, \ +0.992123145530863117683, \ +0.992721344282788615328, \ +0.993290788851684966211, \ +0.993831963212755022209, \ +0.994345364356723405931, \ +0.994831502800621000519, \ +0.995290903148810302261, \ +0.995724104698407188509, \ +0.996131662079315037786, \ +0.996514145914890273849, \ +0.996872143485260161299, \ +0.997206259372221959076, \ +0.997517116063472399965, \ +0.997805354495957274562, \ +0.998071634524930323302, \ +0.998316635318407392531, \ +0.998541055697167906027, \ +0.998745614468095114704, \ +0.998931050830810562236, \ +0.999098124967667597662, \ +0.999247618943342473599, \ +0.999380338025023581928, \ +0.999497112467187190535, \ +0.999598799671910683252, \ +0.999686286448317731776, \ +0.999760490924432047330, \ +0.999822363679787739196, \ +0.999872888120357611938, \ +0.999913081144678282800, \ +0.999943996207054375764, \ +0.999966730098486276883, \ +0.999982430354891598580, \ +0.999992298136257588028, \ +0.999997596379748464620, \ +0.999999672956734384381 ] ) w = np.array ( [ \ 0.945715933950007048827E-06, \ 0.345456507169149134898E-05, \ 0.736624069102321668857E-05, \ 0.125792781889592743525E-04, \ 0.190213681905875816679E-04, \ 0.266376412339000901358E-04, \ 0.353751372055189588628E-04, \ 0.451863674126296143105E-04, \ 0.560319507856164252140E-04, \ 0.678774554733972416227E-04, \ 0.806899228014035293851E-04, \ 0.944366322532705527066E-04, \ 0.109085545645741522051E-03, \ 0.124606200241498368482E-03, \ 0.140970302204104791413E-03, \ 0.158151830411132242924E-03, \ 0.176126765545083195474E-03, \ 0.194872642236641146532E-03, \ 0.214368090034216937149E-03, \ 0.234592462123925204879E-03, \ 0.255525589595236862014E-03, \ 0.277147657465187357459E-03, \ 0.299439176850911730874E-03, \ 0.322381020652862389664E-03, \ 0.345954492129903871350E-03, \ 0.370141402122251665232E-03, \ 0.394924138246873704434E-03, \ 0.420285716355361231823E-03, \ 0.446209810101403247488E-03, \ 0.472680758429262691232E-03, \ 0.499683553312800484519E-03, \ 0.527203811431658386125E-03, \ 0.555227733977307579715E-03, \ 0.583742058714979703847E-03, \ 0.612734008012225209294E-03, \ 0.642191235948505088403E-03, \ 0.672101776960108194646E-03, \ 0.702453997827572321358E-03, \ 0.733236554224767912055E-03, \ 0.764438352543882784191E-03, \ 0.796048517297550871506E-03, \ 0.828056364077226302608E-03, \ 0.860451377808527848128E-03, \ 0.893223195879324912340E-03, \ 0.926361595613111283368E-03, \ 0.959856485506936206261E-03, \ 0.993697899638760857945E-03, \ 0.102787599466367326179E-02, \ 0.106238104885340071375E-02, \ 0.109720346268191941940E-02, \ 0.113233376051597664917E-02, \ 0.116776259302858043685E-02, \ 0.120348074001265964881E-02, \ 0.123947911332878396534E-02, \ 0.127574875977346947345E-02, \ 0.131228086370221478128E-02, \ 0.134906674928353113127E-02, \ 0.138609788229672549700E-02, \ 0.142336587141720519900E-02, \ 0.146086246895890987689E-02, \ 0.149857957106456636214E-02, \ 0.153650921735128916170E-02, \ 0.157464359003212166189E-02, \ 0.161297501254393423070E-02, \ 0.165149594771914570655E-02, \ 0.169019899554346019117E-02, \ 0.172907689054461607168E-02, \ 0.176812249885838886701E-02, \ 0.180732881501808930079E-02, \ 0.184668895851282540913E-02, \ 0.188619617015808475394E-02, \ 0.192584380831993546204E-02, \ 0.196562534503150547732E-02, \ 0.200553436203751169944E-02, \ 0.204556454679958293446E-02, \ 0.208570968849203942640E-02, \ 0.212596367401472533045E-02, \ 0.216632048404649142727E-02, \ 0.220677418916003329194E-02, \ 0.224731894601603393082E-02, \ 0.228794899365195972378E-02, \ 0.232865864987842738864E-02, \ 0.236944230779380495146E-02, \ 0.241029443242563417382E-02, \ 0.245120955750556483923E-02, \ 0.249218228238276930060E-02, \ 0.253320726907925325750E-02, \ 0.257427923948908888092E-02, \ 0.261539297272236109225E-02, \ 0.265654330259352828314E-02, \ 0.269772511525294586667E-02, \ 0.273893334695947541201E-02, \ 0.278016298199139435045E-02, \ 0.282140905069222207923E-02, \ 0.286266662764757868253E-02, \ 0.290393082998878368175E-02, \ 0.294519681581857582284E-02, \ 0.298645978275408290247E-02, \ 0.302771496658198544480E-02, \ 0.306895764002069252174E-02, \ 0.311018311158427546158E-02, \ 0.315138672454287935858E-02, \ 0.319256385597434736790E-02, \ 0.323370991590184336368E-02, \ 0.327482034651233969564E-02, \ 0.331589062145094394706E-02, \ 0.335691624518616761342E-02, \ 0.339789275244138669739E-02, \ 0.343881570768790591876E-02, \ 0.347968070469521146972E-02, \ 0.352048336613417922682E-02, \ 0.356121934322919357659E-02, \ 0.360188431545532431869E-02, \ 0.364247399027690353194E-02, \ 0.368298410292403911967E-02, \ 0.372341041620379550870E-02, \ 0.376374872034296338241E-02, \ 0.380399483285952829161E-02, \ 0.384414459846013158917E-02, \ 0.388419388896099560998E-02, \ 0.392413860322995774660E-02, \ 0.396397466714742455513E-02, \ 0.400369803358421688562E-02, \ 0.404330468239442998549E-02, \ 0.408279062042157838350E-02, \ 0.412215188151643401528E-02, \ 0.416138452656509745764E-02, \ 0.420048464352596631772E-02, \ 0.423944834747438184434E-02, \ 0.427827178065384480959E-02, \ 0.431695111253279479928E-02, \ 0.435548253986604343679E-02, \ 0.439386228676004195260E-02, \ 0.443208660474124713206E-02, \ 0.447015177282692726900E-02, \ 0.450805409759782158001E-02, \ 0.454578991327213285488E-02, \ 0.458335558178039420335E-02, \ 0.462074749284080687482E-02, \ 0.465796206403469754658E-02, \ 0.469499574088179046532E-02, \ 0.473184499691503264714E-02, \ 0.476850633375474925263E-02, \ 0.480497628118194150483E-02, \ 0.484125139721057135214E-02, \ 0.487732826815870573054E-02, \ 0.491320350871841897367E-02, \ 0.494887376202437487201E-02, \ 0.498433569972103029914E-02, \ 0.501958602202842039909E-02, \ 0.505462145780650125058E-02, \ 0.508943876461803986674E-02, \ 0.512403472879005351831E-02, \ 0.515840616547381084096E-02, \ 0.519254991870341614863E-02, \ 0.522646286145300596306E-02, \ 0.526014189569259311205E-02, \ 0.529358395244259896547E-02, \ 0.532678599182711857974E-02, \ 0.535974500312596681161E-02, \ 0.539245800482555593606E-02, \ 0.542492204466865704951E-02, \ 0.545713419970309863995E-02, \ 0.548909157632945623482E-02, \ 0.552079131034778706457E-02, \ 0.555223056700346326850E-02, \ 0.558340654103215637610E-02, \ 0.561431645670402467678E-02, \ 0.564495756786715368885E-02, \ 0.567532715799029830087E-02, \ 0.570542254020497332312E-02, \ 0.573524105734693719020E-02, \ 0.576478008199711142954E-02, \ 0.579403701652197628421E-02, \ 0.582300929311348057702E-02, \ 0.585169437382850155033E-02, \ 0.588008975062788803205E-02, \ 0.590819294541511788161E-02, \ 0.593600151007459827614E-02, \ 0.596351302650963502011E-02, \ 0.599072510668009471472E-02, \ 0.601763539263978131522E-02, \ 0.604424155657354634589E-02, \ 0.607054130083414983949E-02, \ 0.609653235797888692923E-02, \ 0.612221249080599294931E-02, \ 0.614757949239083790214E-02, \ 0.617263118612191922727E-02, \ 0.619736542573665996342E-02, \ 0.622178009535701763157E-02, \ 0.624587310952490748541E-02, \ 0.626964241323744217671E-02, \ 0.629308598198198836688E-02, \ 0.631620182177103938227E-02, \ 0.633898796917690165912E-02, \ 0.636144249136619145314E-02, \ 0.638356348613413709795E-02, \ 0.640534908193868098342E-02, \ 0.642679743793437438922E-02, \ 0.644790674400605734710E-02, \ 0.646867522080231481688E-02, \ 0.648910111976869964292E-02, \ 0.650918272318071200827E-02, \ 0.652891834417652442012E-02, \ 0.654830632678944064054E-02, \ 0.656734504598007641819E-02, \ 0.658603290766824937794E-02, \ 0.660436834876456498276E-02, \ 0.662234983720168509457E-02, \ 0.663997587196526532519E-02, \ 0.665724498312454708217E-02, \ 0.667415573186258997654E-02, \ 0.669070671050613006584E-02, \ 0.670689654255504925648E-02, \ 0.672272388271144108036E-02, \ 0.673818741690825799086E-02, \ 0.675328586233752529078E-02, \ 0.676801796747810680683E-02, \ 0.678238251212300746082E-02, \ 0.679637830740619795480E-02, \ 0.681000419582894688374E-02, \ 0.682325905128564571420E-02, \ 0.683614177908911221841E-02, \ 0.684865131599535812903E-02, \ 0.686078663022780697951E-02, \ 0.687254672150094831613E-02, \ 0.688393062104341470995E-02, \ 0.689493739162046825872E-02, \ 0.690556612755588354803E-02, \ 0.691581595475321433825E-02, \ 0.692568603071643155621E-02, \ 0.693517554456992049848E-02, \ 0.694428371707782549438E-02, \ 0.695300980066273063177E-02, \ 0.696135307942366551493E-02, \ 0.696931286915342540213E-02, \ 0.697688851735519545845E-02, \ 0.698407940325846925786E-02, \ 0.699088493783425207545E-02, \ 0.699730456380953992594E-02, \ 0.700333775568106572820E-02, \ 0.700898401972830440494E-02, \ 0.701424289402572916425E-02, \ 0.701911394845431165171E-02, \ 0.702359678471225911031E-02, \ 0.702769103632498213858E-02, \ 0.703139636865428709508E-02, \ 0.703471247890678765907E-02, \ 0.703763909614153052319E-02, \ 0.704017598127683066242E-02, \ 0.704232292709631209597E-02, \ 0.704407975825415053266E-02, \ 0.704544633127951476780E-02, \ 0.704642253458020417748E-02, \ 0.704700828844548013730E-02, \ 0.704720354504808967346E-02, \ 0.704700828844548013730E-02, \ 0.704642253458020417748E-02, \ 0.704544633127951476780E-02, \ 0.704407975825415053266E-02, \ 0.704232292709631209597E-02, \ 0.704017598127683066242E-02, \ 0.703763909614153052319E-02, \ 0.703471247890678765907E-02, \ 0.703139636865428709508E-02, \ 0.702769103632498213858E-02, \ 0.702359678471225911031E-02, \ 0.701911394845431165171E-02, \ 0.701424289402572916425E-02, \ 0.700898401972830440494E-02, \ 0.700333775568106572820E-02, \ 0.699730456380953992594E-02, \ 0.699088493783425207545E-02, \ 0.698407940325846925786E-02, \ 0.697688851735519545845E-02, \ 0.696931286915342540213E-02, \ 0.696135307942366551493E-02, \ 0.695300980066273063177E-02, \ 0.694428371707782549438E-02, \ 0.693517554456992049848E-02, \ 0.692568603071643155621E-02, \ 0.691581595475321433825E-02, \ 0.690556612755588354803E-02, \ 0.689493739162046825872E-02, \ 0.688393062104341470995E-02, \ 0.687254672150094831613E-02, \ 0.686078663022780697951E-02, \ 0.684865131599535812903E-02, \ 0.683614177908911221841E-02, \ 0.682325905128564571420E-02, \ 0.681000419582894688374E-02, \ 0.679637830740619795480E-02, \ 0.678238251212300746082E-02, \ 0.676801796747810680683E-02, \ 0.675328586233752529078E-02, \ 0.673818741690825799086E-02, \ 0.672272388271144108036E-02, \ 0.670689654255504925648E-02, \ 0.669070671050613006584E-02, \ 0.667415573186258997654E-02, \ 0.665724498312454708217E-02, \ 0.663997587196526532519E-02, \ 0.662234983720168509457E-02, \ 0.660436834876456498276E-02, \ 0.658603290766824937794E-02, \ 0.656734504598007641819E-02, \ 0.654830632678944064054E-02, \ 0.652891834417652442012E-02, \ 0.650918272318071200827E-02, \ 0.648910111976869964292E-02, \ 0.646867522080231481688E-02, \ 0.644790674400605734710E-02, \ 0.642679743793437438922E-02, \ 0.640534908193868098342E-02, \ 0.638356348613413709795E-02, \ 0.636144249136619145314E-02, \ 0.633898796917690165912E-02, \ 0.631620182177103938227E-02, \ 0.629308598198198836688E-02, \ 0.626964241323744217671E-02, \ 0.624587310952490748541E-02, \ 0.622178009535701763157E-02, \ 0.619736542573665996342E-02, \ 0.617263118612191922727E-02, \ 0.614757949239083790214E-02, \ 0.612221249080599294931E-02, \ 0.609653235797888692923E-02, \ 0.607054130083414983949E-02, \ 0.604424155657354634589E-02, \ 0.601763539263978131522E-02, \ 0.599072510668009471472E-02, \ 0.596351302650963502011E-02, \ 0.593600151007459827614E-02, \ 0.590819294541511788161E-02, \ 0.588008975062788803205E-02, \ 0.585169437382850155033E-02, \ 0.582300929311348057702E-02, \ 0.579403701652197628421E-02, \ 0.576478008199711142954E-02, \ 0.573524105734693719020E-02, \ 0.570542254020497332312E-02, \ 0.567532715799029830087E-02, \ 0.564495756786715368885E-02, \ 0.561431645670402467678E-02, \ 0.558340654103215637610E-02, \ 0.555223056700346326850E-02, \ 0.552079131034778706457E-02, \ 0.548909157632945623482E-02, \ 0.545713419970309863995E-02, \ 0.542492204466865704951E-02, \ 0.539245800482555593606E-02, \ 0.535974500312596681161E-02, \ 0.532678599182711857974E-02, \ 0.529358395244259896547E-02, \ 0.526014189569259311205E-02, \ 0.522646286145300596306E-02, \ 0.519254991870341614863E-02, \ 0.515840616547381084096E-02, \ 0.512403472879005351831E-02, \ 0.508943876461803986674E-02, \ 0.505462145780650125058E-02, \ 0.501958602202842039909E-02, \ 0.498433569972103029914E-02, \ 0.494887376202437487201E-02, \ 0.491320350871841897367E-02, \ 0.487732826815870573054E-02, \ 0.484125139721057135214E-02, \ 0.480497628118194150483E-02, \ 0.476850633375474925263E-02, \ 0.473184499691503264714E-02, \ 0.469499574088179046532E-02, \ 0.465796206403469754658E-02, \ 0.462074749284080687482E-02, \ 0.458335558178039420335E-02, \ 0.454578991327213285488E-02, \ 0.450805409759782158001E-02, \ 0.447015177282692726900E-02, \ 0.443208660474124713206E-02, \ 0.439386228676004195260E-02, \ 0.435548253986604343679E-02, \ 0.431695111253279479928E-02, \ 0.427827178065384480959E-02, \ 0.423944834747438184434E-02, \ 0.420048464352596631772E-02, \ 0.416138452656509745764E-02, \ 0.412215188151643401528E-02, \ 0.408279062042157838350E-02, \ 0.404330468239442998549E-02, \ 0.400369803358421688562E-02, \ 0.396397466714742455513E-02, \ 0.392413860322995774660E-02, \ 0.388419388896099560998E-02, \ 0.384414459846013158917E-02, \ 0.380399483285952829161E-02, \ 0.376374872034296338241E-02, \ 0.372341041620379550870E-02, \ 0.368298410292403911967E-02, \ 0.364247399027690353194E-02, \ 0.360188431545532431869E-02, \ 0.356121934322919357659E-02, \ 0.352048336613417922682E-02, \ 0.347968070469521146972E-02, \ 0.343881570768790591876E-02, \ 0.339789275244138669739E-02, \ 0.335691624518616761342E-02, \ 0.331589062145094394706E-02, \ 0.327482034651233969564E-02, \ 0.323370991590184336368E-02, \ 0.319256385597434736790E-02, \ 0.315138672454287935858E-02, \ 0.311018311158427546158E-02, \ 0.306895764002069252174E-02, \ 0.302771496658198544480E-02, \ 0.298645978275408290247E-02, \ 0.294519681581857582284E-02, \ 0.290393082998878368175E-02, \ 0.286266662764757868253E-02, \ 0.282140905069222207923E-02, \ 0.278016298199139435045E-02, \ 0.273893334695947541201E-02, \ 0.269772511525294586667E-02, \ 0.265654330259352828314E-02, \ 0.261539297272236109225E-02, \ 0.257427923948908888092E-02, \ 0.253320726907925325750E-02, \ 0.249218228238276930060E-02, \ 0.245120955750556483923E-02, \ 0.241029443242563417382E-02, \ 0.236944230779380495146E-02, \ 0.232865864987842738864E-02, \ 0.228794899365195972378E-02, \ 0.224731894601603393082E-02, \ 0.220677418916003329194E-02, \ 0.216632048404649142727E-02, \ 0.212596367401472533045E-02, \ 0.208570968849203942640E-02, \ 0.204556454679958293446E-02, \ 0.200553436203751169944E-02, \ 0.196562534503150547732E-02, \ 0.192584380831993546204E-02, \ 0.188619617015808475394E-02, \ 0.184668895851282540913E-02, \ 0.180732881501808930079E-02, \ 0.176812249885838886701E-02, \ 0.172907689054461607168E-02, \ 0.169019899554346019117E-02, \ 0.165149594771914570655E-02, \ 0.161297501254393423070E-02, \ 0.157464359003212166189E-02, \ 0.153650921735128916170E-02, \ 0.149857957106456636214E-02, \ 0.146086246895890987689E-02, \ 0.142336587141720519900E-02, \ 0.138609788229672549700E-02, \ 0.134906674928353113127E-02, \ 0.131228086370221478128E-02, \ 0.127574875977346947345E-02, \ 0.123947911332878396534E-02, \ 0.120348074001265964881E-02, \ 0.116776259302858043685E-02, \ 0.113233376051597664917E-02, \ 0.109720346268191941940E-02, \ 0.106238104885340071375E-02, \ 0.102787599466367326179E-02, \ 0.993697899638760857945E-03, \ 0.959856485506936206261E-03, \ 0.926361595613111283368E-03, \ 0.893223195879324912340E-03, \ 0.860451377808527848128E-03, \ 0.828056364077226302608E-03, \ 0.796048517297550871506E-03, \ 0.764438352543882784191E-03, \ 0.733236554224767912055E-03, \ 0.702453997827572321358E-03, \ 0.672101776960108194646E-03, \ 0.642191235948505088403E-03, \ 0.612734008012225209294E-03, \ 0.583742058714979703847E-03, \ 0.555227733977307579715E-03, \ 0.527203811431658386125E-03, \ 0.499683553312800484519E-03, \ 0.472680758429262691232E-03, \ 0.446209810101403247488E-03, \ 0.420285716355361231823E-03, \ 0.394924138246873704434E-03, \ 0.370141402122251665232E-03, \ 0.345954492129903871350E-03, \ 0.322381020652862389664E-03, \ 0.299439176850911730874E-03, \ 0.277147657465187357459E-03, \ 0.255525589595236862014E-03, \ 0.234592462123925204879E-03, \ 0.214368090034216937149E-03, \ 0.194872642236641146532E-03, \ 0.176126765545083195474E-03, \ 0.158151830411132242924E-03, \ 0.140970302204104791413E-03, \ 0.124606200241498368482E-03, \ 0.109085545645741522051E-03, \ 0.944366322532705527066E-04, \ 0.806899228014035293851E-04, \ 0.678774554733972416227E-04, \ 0.560319507856164252140E-04, \ 0.451863674126296143105E-04, \ 0.353751372055189588628E-04, \ 0.266376412339000901358E-04, \ 0.190213681905875816679E-04, \ 0.125792781889592743525E-04, \ 0.736624069102321668857E-05, \ 0.345456507169149134898E-05, \ 0.945715933950007048827E-06 ] ) else: print ( '' ) print ( 'PATTERSON_SET - Fatal error!' ) print ( ' Illegal input value of N.' ) print ( ' N must be 1, 3, 7, 15, 31, 63, 127, 255 or 511.' ) exit ( 'PATTERSON_SET - Fatal error!' ) return x, w def patterson_set_test ( ): #*****************************************************************************80 # ## PATTERSON_SET_TEST tests PATTERSON_SET. # # Licensing: # # This code is distributed under the GNU LGPL license. # # Modified: # # 10 June 2015 # # Author: # # John Burkardt # import numpy as np import platform n_test = np.array ( [ 1, 3, 7, 15 ] ) print ( '' ) print ( 'PATTERSON_SET_TEST' ) print ( ' Python version: %s' % ( platform.python_version ( ) ) ) print ( ' PATTERSON_SET sets a Patterson quadrature rule.' ) print ( '' ) print ( ' Index X W' ) for j in range ( 0, 4 ): n = n_test[j] x, w = patterson_set ( n ) print ( '' ) for i in range ( 0, n ): print ( ' %2d %24.16g %24.16g' % ( i, x[i], w[i] ) ) # # Terminate. # print ( '' ) print ( 'PATTERSON_SET_TEST:' ) print ( ' Normal end of execution.' ) return if ( __name__ == '__main__' ): from timestamp import timestamp timestamp ( ) patterson_set_test ( ) timestamp ( )