#! /usr/bin/env python # def hermite_set ( n ): #*****************************************************************************80 # ## HERMITE_SET sets abscissas and weights for Hermite quadrature. # # Discussion: # # The integral: # # integral ( -oo < x < +oo ) f(x) * rho(x) dx # # The weight: # # rho(x) exp ( - x * x ) # # The quadrature rule: # # sum ( 1 <= i <= n ) w(i) * f ( x(i) ). # # Mathematica can numerically estimate the abscissas of the rule # of order N to P digits by the command: # # NSolve [ HermiteH [ n, x ] == 0, x, p ] # # Licensing: # # This code is distributed under the GNU LGPL license. # # Modified: # # 12 June 2015 # # Author: # # John Burkardt # # Reference: # # Milton Abramowitz, Irene Stegun, # Handbook of Mathematical Functions, # National Bureau of Standards, 1964, # ISBN: 0-486-61272-4, # LC: QA47.A34. # # Vladimir Krylov, # Approximate Calculation of Integrals, # Dover, 2006, # ISBN: 0486445798, # LC: QA311.K713. # # Arthur Stroud, Don Secrest, # Gaussian Quadrature Formulas, # Prentice Hall, 1966, # LC: QA299.4G3S7. # # Stephen Wolfram, # The Mathematica Book, # Fourth Edition, # Cambridge University Press, 1999, # ISBN: 0-521-64314-7, # LC: QA76.95.W65 # # Daniel Zwillinger, editor, # CRC Standard Mathematical Tables and Formulae, # 30th Edition, # CRC Press, 1996, # ISBN: 0-8493-2479-3, # LC: QA47.M315. # # Parameters: # # Input, integer N, the order. # N must be between 1 and 20, 31/32/33, 63/64/65, 127/128/129. # # 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 ( [ \ 1.77245385090551602729816748334 ] ) elif ( n == 2 ): x = np.array ( [ \ - 0.707106781186547524400844362105, \ 0.707106781186547524400844362105 ] ) w = np.array ( [ \ 0.886226925452758013649083741671, \ 0.886226925452758013649083741671 ] ) elif ( n == 3 ): x = np.array ( [ \ - 0.122474487139158904909864203735E+01, \ 0.0, \ 0.122474487139158904909864203735E+01 ] ) w = np.array ( [ \ 0.295408975150919337883027913890, \ 0.118163590060367735153211165556E+01, \ 0.295408975150919337883027913890 ] ) elif ( n == 4 ): x = np.array ( [ \ - 0.165068012388578455588334111112E+01, \ - 0.524647623275290317884060253835, \ 0.524647623275290317884060253835, \ 0.165068012388578455588334111112E+01 ] ) w = np.array ( [ \ 0.813128354472451771430345571899E-01, \ 0.804914090005512836506049184481, \ 0.804914090005512836506049184481, \ 0.813128354472451771430345571899E-01 ] ) elif ( n == 5 ): x = np.array ( [ \ - 0.202018287045608563292872408814E+01, \ - 0.958572464613818507112770593893, \ 0.0, \ 0.958572464613818507112770593893, \ 0.202018287045608563292872408814E+01 ] ) w = np.array ( [ \ 0.199532420590459132077434585942E-01, \ 0.393619323152241159828495620852, \ 0.945308720482941881225689324449, \ 0.393619323152241159828495620852, \ 0.199532420590459132077434585942E-01 ] ) elif ( n == 6 ): x = np.array ( [ \ - 0.235060497367449222283392198706E+01, \ - 0.133584907401369694971489528297E+01, \ - 0.436077411927616508679215948251, \ 0.436077411927616508679215948251, \ 0.133584907401369694971489528297E+01, \ 0.235060497367449222283392198706E+01 ] ) w = np.array ( [ \ 0.453000990550884564085747256463E-02, \ 0.157067320322856643916311563508, \ 0.724629595224392524091914705598, \ 0.724629595224392524091914705598, \ 0.157067320322856643916311563508, \ 0.453000990550884564085747256463E-02 ] ) elif ( n == 7 ): x = np.array ( [ \ - 0.265196135683523349244708200652E+01, \ - 0.167355162876747144503180139830E+01, \ - 0.816287882858964663038710959027, \ 0.0, \ 0.816287882858964663038710959027, \ 0.167355162876747144503180139830E+01, \ 0.265196135683523349244708200652E+01 ] ) w = np.array ( [ \ 0.971781245099519154149424255939E-03, \ 0.545155828191270305921785688417E-01, \ 0.425607252610127800520317466666, \ 0.810264617556807326764876563813, \ 0.425607252610127800520317466666, \ 0.545155828191270305921785688417E-01, \ 0.971781245099519154149424255939E-03 ] ) elif ( n == 8 ): x = np.array ( [ \ - 0.293063742025724401922350270524E+01, \ - 0.198165675669584292585463063977E+01, \ - 0.115719371244678019472076577906E+01, \ - 0.381186990207322116854718885584, \ 0.381186990207322116854718885584, \ 0.115719371244678019472076577906E+01, \ 0.198165675669584292585463063977E+01, \ 0.293063742025724401922350270524E+01 ] ) w = np.array ( [ \ 0.199604072211367619206090452544E-03, \ 0.170779830074134754562030564364E-01, \ 0.207802325814891879543258620286, \ 0.661147012558241291030415974496, \ 0.661147012558241291030415974496, \ 0.207802325814891879543258620286, \ 0.170779830074134754562030564364E-01, \ 0.199604072211367619206090452544E-03 ] ) elif ( n == 9 ): x = np.array ( [ \ - 0.319099320178152760723004779538E+01, \ - 0.226658058453184311180209693284E+01, \ - 0.146855328921666793166701573925E+01, \ - 0.723551018752837573322639864579, \ 0.0, \ 0.723551018752837573322639864579, \ 0.146855328921666793166701573925E+01, \ 0.226658058453184311180209693284E+01, \ 0.319099320178152760723004779538E+01 ] ) w = np.array ( [ \ 0.396069772632643819045862946425E-04, \ 0.494362427553694721722456597763E-02, \ 0.884745273943765732879751147476E-01, \ 0.432651559002555750199812112956, \ 0.720235215606050957124334723389, \ 0.432651559002555750199812112956, \ 0.884745273943765732879751147476E-01, \ 0.494362427553694721722456597763E-02, \ 0.396069772632643819045862946425E-04 ] ) elif ( n == 10 ): x = np.array ( [ \ - 0.343615911883773760332672549432E+01, \ - 0.253273167423278979640896079775E+01, \ - 0.175668364929988177345140122011E+01, \ - 0.103661082978951365417749191676E+01, \ - 0.342901327223704608789165025557, \ 0.342901327223704608789165025557, \ 0.103661082978951365417749191676E+01, \ 0.175668364929988177345140122011E+01, \ 0.253273167423278979640896079775E+01, \ 0.343615911883773760332672549432E+01 ] ) w = np.array ( [ \ 0.764043285523262062915936785960E-05, \ 0.134364574678123269220156558585E-02, \ 0.338743944554810631361647312776E-01, \ 0.240138611082314686416523295006, \ 0.610862633735325798783564990433, \ 0.610862633735325798783564990433, \ 0.240138611082314686416523295006, \ 0.338743944554810631361647312776E-01, \ 0.134364574678123269220156558585E-02, \ 0.764043285523262062915936785960E-05 ] ) elif ( n == 11 ): x = np.array ( [ \ - 0.366847084655958251845837146485E+01, \ - 0.278329009978165177083671870152E+01, \ - 0.202594801582575533516591283121E+01, \ - 0.132655708449493285594973473558E+01, \ - 0.656809566882099765024611575383, \ 0.0, \ 0.656809566882099765024611575383, \ 0.132655708449493285594973473558E+01, \ 0.202594801582575533516591283121E+01, \ 0.278329009978165177083671870152E+01, \ 0.366847084655958251845837146485E+01 ] ) w = np.array ( [ \ 0.143956039371425822033088366032E-05, \ 0.346819466323345510643413772940E-03, \ 0.119113954449115324503874202916E-01, \ 0.117227875167708503381788649308, \ 0.429359752356125028446073598601, \ 0.654759286914591779203940657627, \ 0.429359752356125028446073598601, \ 0.117227875167708503381788649308, \ 0.119113954449115324503874202916E-01, \ 0.346819466323345510643413772940E-03, \ 0.143956039371425822033088366032E-05 ] ) elif ( n == 12 ): x = np.array ( [ \ - 0.388972489786978191927164274724E+01, \ - 0.302063702512088977171067937518E+01, \ - 0.227950708050105990018772856942E+01, \ - 0.159768263515260479670966277090E+01, \ - 0.947788391240163743704578131060, \ - 0.314240376254359111276611634095, \ 0.314240376254359111276611634095, \ 0.947788391240163743704578131060, \ 0.159768263515260479670966277090E+01, \ 0.227950708050105990018772856942E+01, \ 0.302063702512088977171067937518E+01, \ 0.388972489786978191927164274724E+01 ] ) w = np.array ( [ \ 0.265855168435630160602311400877E-06, \ 0.857368704358785865456906323153E-04, \ 0.390539058462906185999438432620E-02, \ 0.516079856158839299918734423606E-01, \ 0.260492310264161129233396139765, \ 0.570135236262479578347113482275, \ 0.570135236262479578347113482275, \ 0.260492310264161129233396139765, \ 0.516079856158839299918734423606E-01, \ 0.390539058462906185999438432620E-02, \ 0.857368704358785865456906323153E-04, \ 0.265855168435630160602311400877E-06 ] ) elif ( n == 13 ): x = np.array ( [ \ - 0.410133759617863964117891508007E+01, \ - 0.324660897837240998812205115236E+01, \ - 0.251973568567823788343040913628E+01, \ - 0.185310765160151214200350644316E+01, \ - 0.122005503659074842622205526637E+01, \ - 0.605763879171060113080537108602, \ 0.0, \ 0.605763879171060113080537108602, \ 0.122005503659074842622205526637E+01, \ 0.185310765160151214200350644316E+01, \ 0.251973568567823788343040913628E+01, \ 0.324660897837240998812205115236E+01, \ 0.410133759617863964117891508007E+01 ] ) w = np.array ( [ \ 0.482573185007313108834997332342E-07, \ 0.204303604027070731248669432937E-04, \ 0.120745999271938594730924899224E-02, \ 0.208627752961699392166033805050E-01, \ 0.140323320687023437762792268873, \ 0.421616296898543221746893558568, \ 0.604393187921161642342099068579, \ 0.421616296898543221746893558568, \ 0.140323320687023437762792268873, \ 0.208627752961699392166033805050E-01, \ 0.120745999271938594730924899224E-02, \ 0.204303604027070731248669432937E-04, \ 0.482573185007313108834997332342E-07 ] ) elif ( n == 14 ): x = np.array ( [ \ - 0.430444857047363181262129810037E+01, \ - 0.346265693360227055020891736115E+01, \ - 0.274847072498540256862499852415E+01, \ - 0.209518325850771681573497272630E+01, \ - 0.147668273114114087058350654421E+01, \ - 0.878713787329399416114679311861, \ - 0.291745510672562078446113075799, \ 0.291745510672562078446113075799, \ 0.878713787329399416114679311861, \ 0.147668273114114087058350654421E+01, \ 0.209518325850771681573497272630E+01, \ 0.274847072498540256862499852415E+01, \ 0.346265693360227055020891736115E+01, \ 0.430444857047363181262129810037E+01 ] ) w = np.array ( [ \ 0.862859116812515794532041783429E-08, \ 0.471648435501891674887688950105E-05, \ 0.355092613551923610483661076691E-03, \ 0.785005472645794431048644334608E-02, \ 0.685055342234652055387163312367E-01, \ 0.273105609064246603352569187026, \ 0.536405909712090149794921296776, \ 0.536405909712090149794921296776, \ 0.273105609064246603352569187026, \ 0.685055342234652055387163312367E-01, \ 0.785005472645794431048644334608E-02, \ 0.355092613551923610483661076691E-03, \ 0.471648435501891674887688950105E-05, \ 0.862859116812515794532041783429E-08 ] ) elif ( n == 15 ): x = np.array ( [ \ - 0.449999070730939155366438053053E+01, \ - 0.366995037340445253472922383312E+01, \ - 0.296716692790560324848896036355E+01, \ - 0.232573248617385774545404479449E+01, \ - 0.171999257518648893241583152515E+01, \ - 0.113611558521092066631913490556E+01, \ - 0.565069583255575748526020337198, \ 0.0, \ 0.565069583255575748526020337198, \ 0.113611558521092066631913490556E+01, \ 0.171999257518648893241583152515E+01, \ 0.232573248617385774545404479449E+01, \ 0.296716692790560324848896036355E+01, \ 0.366995037340445253472922383312E+01, \ 0.449999070730939155366438053053E+01 ] ) w = np.array ( [ \ 0.152247580425351702016062666965E-08, \ 0.105911554771106663577520791055E-05, \ 0.100004441232499868127296736177E-03, \ 0.277806884291277589607887049229E-02, \ 0.307800338725460822286814158758E-01, \ 0.158488915795935746883839384960, \ 0.412028687498898627025891079568, \ 0.564100308726417532852625797340, \ 0.412028687498898627025891079568, \ 0.158488915795935746883839384960, \ 0.307800338725460822286814158758E-01, \ 0.277806884291277589607887049229E-02, \ 0.100004441232499868127296736177E-03, \ 0.105911554771106663577520791055E-05, \ 0.152247580425351702016062666965E-08 ] ) elif ( n == 16 ): x = np.array ( [ \ - 0.468873893930581836468849864875E+01, \ - 0.386944790486012269871942409801E+01, \ - 0.317699916197995602681399455926E+01, \ - 0.254620215784748136215932870545E+01, \ - 0.195178799091625397743465541496E+01, \ - 0.138025853919888079637208966969E+01, \ - 0.822951449144655892582454496734, \ - 0.273481046138152452158280401965, \ 0.273481046138152452158280401965, \ 0.822951449144655892582454496734, \ 0.138025853919888079637208966969E+01, \ 0.195178799091625397743465541496E+01, \ 0.254620215784748136215932870545E+01, \ 0.317699916197995602681399455926E+01, \ 0.386944790486012269871942409801E+01, \ 0.468873893930581836468849864875E+01 ] ) w = np.array ( [ \ 0.265480747401118224470926366050E-09, \ 0.232098084486521065338749423185E-06, \ 0.271186009253788151201891432244E-04, \ 0.932284008624180529914277305537E-03, \ 0.128803115355099736834642999312E-01, \ 0.838100413989858294154207349001E-01, \ 0.280647458528533675369463335380, \ 0.507929479016613741913517341791, \ 0.507929479016613741913517341791, \ 0.280647458528533675369463335380, \ 0.838100413989858294154207349001E-01, \ 0.128803115355099736834642999312E-01, \ 0.932284008624180529914277305537E-03, \ 0.271186009253788151201891432244E-04, \ 0.232098084486521065338749423185E-06, \ 0.265480747401118224470926366050E-09 ] ) elif ( n == 17 ): x = np.array ( [ \ - 0.487134519367440308834927655662E+01, \ - 0.406194667587547430689245559698E+01, \ - 0.337893209114149408338327069289E+01, \ - 0.275776291570388873092640349574E+01, \ - 0.217350282666662081927537907149E+01, \ - 0.161292431422123133311288254454E+01, \ - 0.106764872574345055363045773799E+01, \ - 0.531633001342654731349086553718, \ 0.0, \ 0.531633001342654731349086553718, \ 0.106764872574345055363045773799E+01, \ 0.161292431422123133311288254454E+01, \ 0.217350282666662081927537907149E+01, \ 0.275776291570388873092640349574E+01, \ 0.337893209114149408338327069289E+01, \ 0.406194667587547430689245559698E+01, \ 0.487134519367440308834927655662E+01 ] ) w = np.array ( [ \ 0.458057893079863330580889281222E-10, \ 0.497707898163079405227863353715E-07, \ 0.711228914002130958353327376218E-05, \ 0.298643286697753041151336643059E-03, \ 0.506734995762753791170069495879E-02, \ 0.409200341495762798094994877854E-01, \ 0.172648297670097079217645196219, \ 0.401826469470411956577635085257, \ 0.530917937624863560331883103379, \ 0.401826469470411956577635085257, \ 0.172648297670097079217645196219, \ 0.409200341495762798094994877854E-01, \ 0.506734995762753791170069495879E-02, \ 0.298643286697753041151336643059E-03, \ 0.711228914002130958353327376218E-05, \ 0.497707898163079405227863353715E-07, \ 0.458057893079863330580889281222E-10 ] ) elif ( n == 18 ): x = np.array ( [ \ - 0.504836400887446676837203757885E+01, \ - 0.424811787356812646302342016090E+01, \ - 0.357376906848626607950067599377E+01, \ - 0.296137750553160684477863254906E+01, \ - 0.238629908916668600026459301424E+01, \ - 0.183553160426162889225383944409E+01, \ - 0.130092085838961736566626555439E+01, \ - 0.776682919267411661316659462284, \ - 0.258267750519096759258116098711, \ 0.258267750519096759258116098711, \ 0.776682919267411661316659462284, \ 0.130092085838961736566626555439E+01, \ 0.183553160426162889225383944409E+01, \ 0.238629908916668600026459301424E+01, \ 0.296137750553160684477863254906E+01, \ 0.357376906848626607950067599377E+01, \ 0.424811787356812646302342016090E+01, \ 0.504836400887446676837203757885E+01 ] ) w = np.array ( [ \ 0.782819977211589102925147471012E-11, \ 0.104672057957920824443559608435E-07, \ 0.181065448109343040959702385911E-05, \ 0.918112686792940352914675407371E-04, \ 0.188852263026841789438175325426E-02, \ 0.186400423875446519219315221973E-01, \ 0.973017476413154293308537234155E-01, \ 0.284807285669979578595606820713, \ 0.483495694725455552876410522141, \ 0.483495694725455552876410522141, \ 0.284807285669979578595606820713, \ 0.973017476413154293308537234155E-01, \ 0.186400423875446519219315221973E-01, \ 0.188852263026841789438175325426E-02, \ 0.918112686792940352914675407371E-04, \ 0.181065448109343040959702385911E-05, \ 0.104672057957920824443559608435E-07, \ 0.782819977211589102925147471012E-11 ] ) elif ( n == 19 ): x = np.array ( [ \ - 0.522027169053748216460967142500E+01, \ - 0.442853280660377943723498532226E+01, \ - 0.376218735196402009751489394104E+01, \ - 0.315784881834760228184318034120E+01, \ - 0.259113378979454256492128084112E+01, \ - 0.204923170985061937575050838669E+01, \ - 0.152417061939353303183354859367E+01, \ - 0.101036838713431135136859873726E+01, \ - 0.503520163423888209373811765050, \ 0.0, \ 0.503520163423888209373811765050, \ 0.101036838713431135136859873726E+01, \ 0.152417061939353303183354859367E+01, \ 0.204923170985061937575050838669E+01, \ 0.259113378979454256492128084112E+01, \ 0.315784881834760228184318034120E+01, \ 0.376218735196402009751489394104E+01, \ 0.442853280660377943723498532226E+01, \ 0.522027169053748216460967142500E+01 ] ) w = np.array ( [ \ 0.132629709449851575185289154385E-11, \ 0.216305100986355475019693077221E-08, \ 0.448824314722312295179447915594E-06, \ 0.272091977631616257711941025214E-04, \ 0.670877521407181106194696282100E-03, \ 0.798886677772299020922211491861E-02, \ 0.508103869090520673569908110358E-01, \ 0.183632701306997074156148485766, \ 0.391608988613030244504042313621, \ 0.502974888276186530840731361096, \ 0.391608988613030244504042313621, \ 0.183632701306997074156148485766, \ 0.508103869090520673569908110358E-01, \ 0.798886677772299020922211491861E-02, \ 0.670877521407181106194696282100E-03, \ 0.272091977631616257711941025214E-04, \ 0.448824314722312295179447915594E-06, \ 0.216305100986355475019693077221E-08, \ 0.132629709449851575185289154385E-11 ] ) elif ( n == 20 ): x = np.array ( [ \ - 0.538748089001123286201690041068E+01, \ - 0.460368244955074427307767524898E+01, \ - 0.394476404011562521037562880052E+01, \ - 0.334785456738321632691492452300E+01, \ - 0.278880605842813048052503375640E+01, \ - 0.225497400208927552308233334473E+01, \ - 0.173853771211658620678086566214E+01, \ - 0.123407621539532300788581834696E+01, \ - 0.737473728545394358705605144252, \ - 0.245340708300901249903836530634, \ 0.245340708300901249903836530634, \ 0.737473728545394358705605144252, \ 0.123407621539532300788581834696E+01, \ 0.173853771211658620678086566214E+01, \ 0.225497400208927552308233334473E+01, \ 0.278880605842813048052503375640E+01, \ 0.334785456738321632691492452300E+01, \ 0.394476404011562521037562880052E+01, \ 0.460368244955074427307767524898E+01, \ 0.538748089001123286201690041068E+01 ] ) w = np.array ( [ \ 0.222939364553415129252250061603E-12, \ 0.439934099227318055362885145547E-09, \ 0.108606937076928169399952456345E-06, \ 0.780255647853206369414599199965E-05, \ 0.228338636016353967257145917963E-03, \ 0.324377334223786183218324713235E-02, \ 0.248105208874636108821649525589E-01, \ 0.109017206020023320013755033535, \ 0.286675505362834129719659706228, \ 0.462243669600610089650328639861, \ 0.462243669600610089650328639861, \ 0.286675505362834129719659706228, \ 0.109017206020023320013755033535, \ 0.248105208874636108821649525589E-01, \ 0.324377334223786183218324713235E-02, \ 0.228338636016353967257145917963E-03, \ 0.780255647853206369414599199965E-05, \ 0.108606937076928169399952456345E-06, \ 0.439934099227318055362885145547E-09, \ 0.222939364553415129252250061603E-12 ] ) elif ( n == 30 ): x = np.array ( [ \ -6.86334529352989158106110835756, \ -6.13827922012393462039499237854, \ -5.53314715156749572511833355558, \ -4.98891896858994394448649710633, \ -4.48305535709251834188703761971, \ -4.00390860386122881522787601332, \ -3.54444387315534988692540090217, \ -3.09997052958644174868873332237, \ -2.66713212453561720057110646422, \ -2.24339146776150407247297999483, \ -1.82674114360368803883588048351, \ -1.41552780019818851194072510555, \ -1.00833827104672346180498960870, \ -0.603921058625552307778155678757, \ -0.201128576548871485545763013244, \ 0.201128576548871485545763013244, \ 0.603921058625552307778155678757, \ 1.00833827104672346180498960870, \ 1.41552780019818851194072510555, \ 1.82674114360368803883588048351, \ 2.24339146776150407247297999483, \ 2.66713212453561720057110646422, \ 3.09997052958644174868873332237, \ 3.54444387315534988692540090217, \ 4.00390860386122881522787601332, \ 4.48305535709251834188703761971, \ 4.98891896858994394448649710633, \ 5.53314715156749572511833355558, \ 6.13827922012393462039499237854, \ 6.86334529352989158106110835756 ] ) w = np.array ( [ \ 0.290825470013122622941102747365E-20, \ 0.281033360275090370876277491534E-16, \ 0.287860708054870606219239791142E-13, \ 0.810618629746304420399344796173E-11, \ 0.917858042437852820850075742492E-09, \ 0.510852245077594627738963204403E-07, \ 0.157909488732471028834638794022E-05, \ 0.293872522892298764150118423412E-04, \ 0.348310124318685523420995323183E-03, \ 0.273792247306765846298942568953E-02, \ 0.147038297048266835152773557787E-01, \ 0.551441768702342511680754948183E-01, \ 0.146735847540890099751693643152, \ 0.280130930839212667413493211293, \ 0.386394889541813862555601849165, \ 0.386394889541813862555601849165, \ 0.280130930839212667413493211293, \ 0.146735847540890099751693643152, \ 0.551441768702342511680754948183E-01, \ 0.147038297048266835152773557787E-01, \ 0.273792247306765846298942568953E-02, \ 0.348310124318685523420995323183E-03, \ 0.293872522892298764150118423412E-04, \ 0.157909488732471028834638794022E-05, \ 0.510852245077594627738963204403E-07, \ 0.917858042437852820850075742492E-09, \ 0.810618629746304420399344796173E-11, \ 0.287860708054870606219239791142E-13, \ 0.281033360275090370876277491534E-16, \ 0.290825470013122622941102747365E-20 ] ) elif ( n == 31 ): x = np.array ( [ \ -6.99568012371854027532485214732E+00, \ -6.27507870494286014270365678125E+00, \ -5.67396144461858832963325587893E+00, \ -5.13359557711238070458629689140E+00, \ -4.63155950631285994206679976543E+00, \ -4.15627175581814517248313523153E+00, \ -3.70074340323146942244971645897E+00, \ -3.26032073231354081046454015096E+00, \ -2.83168045339020545570156401514E+00, \ -2.41231770548042010517401845821E+00, \ -2.00025854893563896579755625986E+00, \ -1.59388586047213982613884194556E+00, \ -1.19182699835004642608213586492E+00, \ -0.792876976915308939685930329988E+00, \ -0.395942736471423110946700416634E+00, \ 0.0E+00, \ 0.395942736471423110946700416634E+00, \ 0.792876976915308939685930329988E+00, \ 1.19182699835004642608213586492E+00, \ 1.59388586047213982613884194556E+00, \ 2.00025854893563896579755625986E+00, \ 2.41231770548042010517401845821E+00, \ 2.83168045339020545570156401514E+00, \ 3.26032073231354081046454015096E+00, \ 3.70074340323146942244971645897E+00, \ 4.15627175581814517248313523153E+00, \ 4.63155950631285994206679976543E+00, \ 5.13359557711238070458629689140E+00, \ 5.67396144461858832963325587893E+00, \ 6.27507870494286014270365678125E+00, \ 6.99568012371854027532485214732E+00 ] ) w = np.array ( [ \ 4.61896839446420502132944426974E-22, \ 5.11060900792715640739422641166E-18, \ 5.89955649875387299038431589378E-15, \ 1.86037352145214652437380892603E-12, \ 2.35249200320864163398597795323E-10, \ 1.46119883449105307352780323055E-08, \ 5.04371255893979974253745671633E-07, \ 0.0000104986027576756063228123279208E+00, \ 0.000139520903950470433823653754396E+00, \ 0.00123368330730688826551750402319E+00, \ 0.00748279991403519848345678003016E+00, \ 0.0318472307313003327772087235339E+00, \ 0.0967179481608704535580338478886E+00, \ 0.212132788668764779877735637343E+00, \ 0.338772657894107724675701919878E+00, \ 0.395778556098609545141783810611E+00, \ 0.338772657894107724675701919878E+00, \ 0.212132788668764779877735637343E+00, \ 0.0967179481608704535580338478886E+00, \ 0.0318472307313003327772087235339E+00, \ 0.00748279991403519848345678003016E+00, \ 0.00123368330730688826551750402319E+00, \ 0.000139520903950470433823653754396E+00, \ 0.0000104986027576756063228123279208E+00, \ 5.04371255893979974253745671633E-07, \ 1.46119883449105307352780323055E-08, \ 2.35249200320864163398597795323E-10, \ 1.86037352145214652437380892603E-12, \ 5.89955649875387299038431589378E-15, \ 5.11060900792715640739422641166E-18, \ 4.61896839446420502132944426974E-22 ] ) elif ( n == 32 ): x = np.array ( [ \ -7.12581390983072757279520760342E+00, \ -6.40949814926966041217376374153E+00, \ -5.81222594951591383276596615366E+00, \ -5.27555098651588012781906048140E+00, \ -4.77716450350259639303579405689E+00, \ -4.30554795335119844526348653193E+00, \ -3.85375548547144464388787292109E+00, \ -3.41716749281857073587392729564E+00, \ -2.99249082500237420628549407606E+00, \ -2.57724953773231745403092930114E+00, \ -2.16949918360611217330570559502E+00, \ -1.76765410946320160462767325853E+00, \ -1.37037641095287183816170564864E+00, \ -0.976500463589682838484704871982E+00, \ -0.584978765435932448466957544011E+00, \ -0.194840741569399326708741289532E+00, \ 0.194840741569399326708741289532E+00, \ 0.584978765435932448466957544011E+00, \ 0.976500463589682838484704871982E+00, \ 1.37037641095287183816170564864E+00, \ 1.76765410946320160462767325853E+00, \ 2.16949918360611217330570559502E+00, \ 2.57724953773231745403092930114E+00, \ 2.99249082500237420628549407606E+00, \ 3.41716749281857073587392729564E+00, \ 3.85375548547144464388787292109E+00, \ 4.30554795335119844526348653193E+00, \ 4.77716450350259639303579405689E+00, \ 5.27555098651588012781906048140E+00, \ 5.81222594951591383276596615366E+00, \ 6.40949814926966041217376374153E+00, \ 7.12581390983072757279520760342E+00 ] ) w = np.array ( [ \ 7.31067642738416239327427845506E-23, \ 9.23173653651829223349442007207E-19, \ 1.19734401709284866582868189951E-15, \ 4.21501021132644757296944521183E-13, \ 5.93329146339663861451156821558E-11, \ 4.0988321647708966182350410138E-09, \ 1.57416779254559402926869257929E-07, \ 3.65058512956237605737032418746E-06, \ 0.0000541658406181998255800193939267E+00, \ 0.000536268365527972045970238101501E+00, \ 0.00365489032665442807912565712241E+00, \ 0.017553428831573430303437844611E+00, \ 0.0604581309559126141865857607833E+00, \ 0.151269734076642482575147114614E+00, \ 0.277458142302529898137698918542E+00, \ 0.375238352592802392866818388907E+00, \ 0.375238352592802392866818388907E+00, \ 0.277458142302529898137698918542E+00, \ 0.151269734076642482575147114614E+00, \ 0.0604581309559126141865857607833E+00, \ 0.017553428831573430303437844611E+00, \ 0.00365489032665442807912565712241E+00, \ 0.000536268365527972045970238101501E+00, \ 0.0000541658406181998255800193939267E+00, \ 3.65058512956237605737032418746E-06, \ 1.57416779254559402926869257929E-07, \ 4.0988321647708966182350410138E-09, \ 5.93329146339663861451156821558E-11, \ 4.21501021132644757296944521183E-13, \ 1.19734401709284866582868189951E-15, \ 9.23173653651829223349442007207E-19, \ 7.31067642738416239327427845506E-23 ] ) elif ( n == 33 ): x = np.array ( [ \ -7.25385182201520064607977244465E+00, \ -6.54165544573807726095826608811E+00, \ -5.94807118208714447981366477584E+00, \ -5.41492900261419253992709076454E+00, \ -4.92002852059500829241139910265E+00, \ -4.45191114883282719009473876206E+00, \ -4.00367160995693141451378357174E+00, \ -3.57072198023271828561890330658E+00, \ -3.14979668170382538461281438786E+00, \ -2.73844582435135490694887052899E+00, \ -2.33475115152951517708536069773E+00, \ -1.93715458182220661643452220908E+00, \ -1.54434826124312180914304288754E+00, \ -1.15520020412678961356412482063E+00, \ -0.768701379758868598107224561306E+00, \ -0.383926014508409083771145488401E+00, \ 0.0E+00, \ 0.383926014508409083771145488401E+00, \ 0.768701379758868598107224561306E+00, \ 1.15520020412678961356412482063E+00, \ 1.54434826124312180914304288754E+00, \ 1.93715458182220661643452220908E+00, \ 2.33475115152951517708536069773E+00, \ 2.73844582435135490694887052899E+00, \ 3.14979668170382538461281438786E+00, \ 3.57072198023271828561890330658E+00, \ 4.00367160995693141451378357174E+00, \ 4.45191114883282719009473876206E+00, \ 4.92002852059500829241139910265E+00, \ 5.41492900261419253992709076454E+00, \ 5.94807118208714447981366477584E+00, \ 6.54165544573807726095826608811E+00, \ 7.25385182201520064607977244465E+00 ] ) w = np.array ( [ \ 1.15331621854588454082208890757E-23, \ 1.65709474153369051048226040291E-19, \ 2.40778567955799442824587707068E-16, \ 9.43481415901497503451931586527E-14, \ 1.47398093709248867676655543441E-11, \ 1.12892224710833129085848357165E-09, \ 4.8077456763231909801575826594E-08, \ 1.23769336720121013593677278301E-06, \ 0.000020423684051423773240532989618E+00, \ 0.000225442770596327415479556999963E+00, \ 0.00171845463776092445684897958755E+00, \ 0.00926568997068523330372581072023E+00, \ 0.0359879823185769744486866448437E+00, \ 0.102069079995541500792505520921E+00, \ 0.213493931150291836488258605194E+00, \ 0.331552000750741282288352789764E+00, \ 0.383785266519863801349608543622E+00, \ 0.331552000750741282288352789764E+00, \ 0.213493931150291836488258605194E+00, \ 0.102069079995541500792505520921E+00, \ 0.0359879823185769744486866448437E+00, \ 0.00926568997068523330372581072023E+00, \ 0.00171845463776092445684897958755E+00, \ 0.000225442770596327415479556999963E+00, \ 0.000020423684051423773240532989618E+00, \ 1.23769336720121013593677278301E-06, \ 4.8077456763231909801575826594E-08, \ 1.12892224710833129085848357165E-09, \ 1.47398093709248867676655543441E-11, \ 9.43481415901497503451931586527E-14, \ 2.40778567955799442824587707068E-16, \ 1.65709474153369051048226040291E-19, \ 1.15331621854588454082208890757E-23 ] ) elif ( n == 63 ): x = np.array ( [ \ -10.4354998778541680534681154273E+00, \ -9.80287599129749636352239352865E+00, \ -9.27920195430503913194047455065E+00, \ -8.81185814372845464425266282756E+00, \ -8.38076834518632193430106510438E+00, \ -7.97559508014203731815418062985E+00, \ -7.59013951986410667624797831945E+00, \ -7.22031670788896784611613242225E+00, \ -6.86325443317953685273532858761E+00, \ -6.51683481068211606052733958540E+00, \ -6.17943799227059698624184617873E+00, \ -5.84978840008106734625265829615E+00, \ -5.52685725264030314250475751228E+00, \ -5.20979798304083548615751364163E+00, \ -4.89790186449757423507450992149E+00, \ -4.59056657444351902292712945691E+00, \ -4.28727333528244040317276161995E+00, \ -3.98756991041971574852270520681E+00, \ -3.69105770009634651173228105598E+00, \ -3.39738177133039118527559418063E+00, \ -3.10622302792825663291386167460E+00, \ -2.81729196728379777507471356574E+00, \ -2.53032363047120109268552217185E+00, \ -2.24507346048120662989959181793E+00, \ -1.96131385830814852939220084113E+00, \ -1.67883127917201375208028006226E+00, \ -1.39742374860496251075707520637E+00, \ -1.11689870509964626905109702778E+00, \ -0.837071095589476159777377954613E+00, \ -0.557761664279082216687636652538E+00, \ -0.278795385671152239866876286272E+00, \ 0.0E+00, \ 0.278795385671152239866876286272E+00, \ 0.557761664279082216687636652538E+00, \ 0.837071095589476159777377954613E+00, \ 1.11689870509964626905109702778E+00, \ 1.39742374860496251075707520637E+00, \ 1.67883127917201375208028006226E+00, \ 1.96131385830814852939220084113E+00, \ 2.24507346048120662989959181793E+00, \ 2.53032363047120109268552217185E+00, \ 2.81729196728379777507471356574E+00, \ 3.10622302792825663291386167460E+00, \ 3.39738177133039118527559418063E+00, \ 3.69105770009634651173228105598E+00, \ 3.98756991041971574852270520681E+00, \ 4.28727333528244040317276161995E+00, \ 4.59056657444351902292712945691E+00, \ 4.89790186449757423507450992149E+00, \ 5.20979798304083548615751364163E+00, \ 5.52685725264030314250475751228E+00, \ 5.84978840008106734625265829615E+00, \ 6.17943799227059698624184617873E+00, \ 6.51683481068211606052733958540E+00, \ 6.86325443317953685273532858761E+00, \ 7.22031670788896784611613242225E+00, \ 7.59013951986410667624797831945E+00, \ 7.97559508014203731815418062985E+00, \ 8.38076834518632193430106510438E+00, \ 8.81185814372845464425266282756E+00, \ 9.27920195430503913194047455065E+00, \ 9.80287599129749636352239352865E+00, \ 10.4354998778541680534681154273E+00 ] ) w = np.array ( [ \ 3.70992064349030055823376157823E-48, \ 1.04007786152246672212559599908E-42, \ 1.97968047083199197900260998813E-38, \ 8.46874781919035663281042885251E-35, \ 1.30713059308206243904769877879E-31, \ 9.34378371756582396450246862195E-29, \ 3.60274266352851638202340658522E-26, \ 8.29638631162099766157527065317E-24, \ 1.22666299091434557721622529775E-21, \ 1.22884356288353036990240371039E-19, \ 8.69255369584585252225619256428E-18, \ 4.48570586893158184069444097978E-16, \ 1.73358179557891044383064226749E-14, \ 5.1265062385197846998384009333E-13, \ 1.18089218445696923817995132237E-11, \ 2.15086982978749617679069862879E-10, \ 3.13719295353830786449435629291E-09, \ 3.70416259848969809883356560995E-08, \ 3.57347329499908777461505032558E-07, \ 2.83931144984692884712301165567E-06, \ 0.0000187091130037887216027832755405E+00, \ 0.000102848808006856425543062213642E+00, \ 0.000474117026103206754395975199216E+00, \ 0.0018409222622442103760124297917E+00, \ 0.00604360445513757113209247151533E+00, \ 0.0168292991996521044559098701555E+00, \ 0.0398582640278170328649908688578E+00, \ 0.0804670879942008323850873860195E+00, \ 0.138719508176584635072239096351E+00, \ 0.204486953468973988225911656103E+00, \ 0.25799889943138332612723393346E+00, \ 0.278766948849251654365527505911E+00, \ 0.25799889943138332612723393346E+00, \ 0.204486953468973988225911656103E+00, \ 0.138719508176584635072239096351E+00, \ 0.0804670879942008323850873860195E+00, \ 0.0398582640278170328649908688578E+00, \ 0.0168292991996521044559098701555E+00, \ 0.00604360445513757113209247151533E+00, \ 0.0018409222622442103760124297917E+00, \ 0.000474117026103206754395975199216E+00, \ 0.000102848808006856425543062213642E+00, \ 0.0000187091130037887216027832755405E+00, \ 2.83931144984692884712301165567E-06, \ 3.57347329499908777461505032558E-07, \ 3.70416259848969809883356560995E-08, \ 3.13719295353830786449435629291E-09, \ 2.15086982978749617679069862879E-10, \ 1.18089218445696923817995132237E-11, \ 5.1265062385197846998384009333E-13, \ 1.73358179557891044383064226749E-14, \ 4.48570586893158184069444097978E-16, \ 8.69255369584585252225619256428E-18, \ 1.22884356288353036990240371039E-19, \ 1.22666299091434557721622529775E-21, \ 8.29638631162099766157527065317E-24, \ 3.60274266352851638202340658522E-26, \ 9.34378371756582396450246862195E-29, \ 1.30713059308206243904769877879E-31, \ 8.46874781919035663281042885251E-35, \ 1.97968047083199197900260998813E-38, \ 1.04007786152246672212559599908E-42, \ 3.70992064349030055823376157823E-48 ] ) elif ( n == 64 ): x = np.array ( [ \ -10.5261231679605458833268262838E+00, \ -9.89528758682953902120446147716E+00, \ -9.37315954964672116254565243972E+00, \ -8.90724909996476975729597288564E+00, \ -8.47752908337986309056416634482E+00, \ -8.07368728501022522585879114076E+00, \ -7.68954016404049682844780422987E+00, \ -7.32101303278094920118956936372E+00, \ -6.96524112055110752924264219349E+00, \ -6.62011226263602737903666010894E+00, \ -6.28401122877482823541809319507E+00, \ -5.95566632679948604534456718098E+00, \ -5.63405216434997214724992048331E+00, \ -5.31832522463327085732364951520E+00, \ -5.00777960219876819644370262718E+00, \ -4.70181564740749981609753801581E+00, \ -4.39991716822813764776793253544E+00, \ -4.10163447456665671497098123846E+00, \ -3.80657151394536046116597200046E+00, \ -3.51437593574090621153995058647E+00, \ -3.22473129199203572584817111019E+00, \ -2.93735082300462180968533902619E+00, \ -2.65197243543063501100545778600E+00, \ -2.36835458863240140411151126534E+00, \ -2.08627287988176202083256330236E+00, \ -1.80551717146554491890377357419E+00, \ -1.52588914020986366294897013315E+00, \ -1.24720015694311794069356453069E+00, \ -0.969269423071178016743541489019E+00, \ -0.691922305810044577268219287596E+00, \ -0.414988824121078684576929129200E+00, \ -0.138302244987009724115049767967E+00, \ 0.138302244987009724115049767967E+00, \ 0.414988824121078684576929129200E+00, \ 0.691922305810044577268219287596E+00, \ 0.969269423071178016743541489019E+00, \ 1.24720015694311794069356453069E+00, \ 1.52588914020986366294897013315E+00, \ 1.80551717146554491890377357419E+00, \ 2.08627287988176202083256330236E+00, \ 2.36835458863240140411151126534E+00, \ 2.65197243543063501100545778600E+00, \ 2.93735082300462180968533902619E+00, \ 3.22473129199203572584817111019E+00, \ 3.51437593574090621153995058647E+00, \ 3.80657151394536046116597200046E+00, \ 4.10163447456665671497098123846E+00, \ 4.39991716822813764776793253544E+00, \ 4.70181564740749981609753801581E+00, \ 5.00777960219876819644370262718E+00, \ 5.31832522463327085732364951520E+00, \ 5.63405216434997214724992048331E+00, \ 5.95566632679948604534456718098E+00, \ 6.28401122877482823541809319507E+00, \ 6.62011226263602737903666010894E+00, \ 6.96524112055110752924264219349E+00, \ 7.32101303278094920118956936372E+00, \ 7.68954016404049682844780422987E+00, \ 8.07368728501022522585879114076E+00, \ 8.47752908337986309056416634482E+00, \ 8.90724909996476975729597288564E+00, \ 9.37315954964672116254565243972E+00, \ 9.89528758682953902120446147716E+00, \ 10.5261231679605458833268262838E+00 ] ) w = np.array ( [ \ 5.53570653585694282057546330099E-49, \ 1.67974799010815921866628833063E-43, \ 3.42113801125574050432722182815E-39, \ 1.55739062462976380230933538026E-35, \ 2.54966089911299925660476658044E-32, \ 1.92910359546496685030196877907E-29, \ 7.86179778892591036909999149628E-27, \ 1.91170688330064282995845696553E-24, \ 2.98286278427985115447870070202E-22, \ 3.15225456650378141612134668341E-20, \ 2.35188471067581911695767591556E-18, \ 1.28009339132243804163956329526E-16, \ 5.21862372659084752295780851305E-15, \ 1.62834073070972036208430708124E-13, \ 3.95917776694772392723644586425E-12, \ 7.61521725014545135331529567532E-11, \ 1.17361674232154934354250646708E-09, \ 1.4651253164761093549266220038E-08, \ 1.49553293672724706110246169293E-07, \ 1.25834025103118457615784218002E-06, \ 8.7884992308503591814440474067E-06, \ 0.0000512592913578627466082191141274E+00, \ 0.000250983698513062486082362017982E+00, \ 0.00103632909950757766345674174628E+00, \ 0.00362258697853445876066812537162E+00, \ 0.0107560405098791370494651727867E+00, \ 0.0272031289536889184538348212615E+00, \ 0.0587399819640994345496889462518E+00, \ 0.108498349306186840633025845506E+00, \ 0.171685842349083702000727970124E+00, \ 0.232994786062678046650566029333E+00, \ 0.271377424941303977945606508418E+00, \ 0.271377424941303977945606508418E+00, \ 0.232994786062678046650566029333E+00, \ 0.171685842349083702000727970124E+00, \ 0.108498349306186840633025845506E+00, \ 0.0587399819640994345496889462518E+00, \ 0.0272031289536889184538348212615E+00, \ 0.0107560405098791370494651727867E+00, \ 0.00362258697853445876066812537162E+00, \ 0.00103632909950757766345674174628E+00, \ 0.000250983698513062486082362017982E+00, \ 0.0000512592913578627466082191141274E+00, \ 8.7884992308503591814440474067E-06, \ 1.25834025103118457615784218002E-06, \ 1.49553293672724706110246169293E-07, \ 1.4651253164761093549266220038E-08, \ 1.17361674232154934354250646708E-09, \ 7.61521725014545135331529567532E-11, \ 3.95917776694772392723644586425E-12, \ 1.62834073070972036208430708124E-13, \ 5.21862372659084752295780851305E-15, \ 1.28009339132243804163956329526E-16, \ 2.35188471067581911695767591556E-18, \ 3.15225456650378141612134668341E-20, \ 2.98286278427985115447870070202E-22, \ 1.91170688330064282995845696553E-24, \ 7.86179778892591036909999149628E-27, \ 1.92910359546496685030196877907E-29, \ 2.54966089911299925660476658044E-32, \ 1.55739062462976380230933538026E-35, \ 3.42113801125574050432722182815E-39, \ 1.67974799010815921866628833063E-43, \ 5.53570653585694282057546330099E-49 ] ) elif ( n == 65 ): x = np.array ( [ \ -10.6160229818782811890575602362E+00, \ -9.98694169167668475289516351866E+00, \ -9.46632932015538456209230219583E+00, \ -9.00182332295913301957373193078E+00, \ -8.57344474441790920512961590649E+00, \ -8.17090617805258532129873946832E+00, \ -7.78803908298957078257446963177E+00, \ -7.42077883436632423648540822493E+00, \ -7.06626794030689283695626648500E+00, \ -6.72239982016573443713269171234E+00, \ -6.38756373978709108766264932629E+00, \ -6.06049177883150521431844958114E+00, \ -5.74016182369022552144785845004E+00, \ -5.42573329769734933377879520007E+00, \ -5.11650300472141247403405938903E+00, \ -4.81187385202746476469375701958E+00, \ -4.51133211136821338520053781440E+00, \ -4.21443050997195460766227433230E+00, \ -3.92077540444472380734866143333E+00, \ -3.63001687763289533380743256995E+00, \ -3.34184096844683005348576537026E+00, \ -3.05596348432867100471992904351E+00, \ -2.77212500515709167382401243242E+00, \ -2.49008679530393550665251461372E+00, \ -2.20962741516918436363972079745E+00, \ -1.93053987597722550177796442890E+00, \ -1.65262921904032541019598694267E+00, \ -1.37571042772366833613088581439E+00, \ -1.09960660005694495033699221150E+00, \ -0.824147324402412861055989047706E+00, \ -0.549167211221599184571872835161E+00, \ -0.274504541753944755855051087074E+00, \ 0.0E+00, \ 0.274504541753944755855051087074E+00, \ 0.549167211221599184571872835161E+00, \ 0.824147324402412861055989047706E+00, \ 1.09960660005694495033699221150E+00, \ 1.37571042772366833613088581439E+00, \ 1.65262921904032541019598694267E+00, \ 1.93053987597722550177796442890E+00, \ 2.20962741516918436363972079745E+00, \ 2.49008679530393550665251461372E+00, \ 2.77212500515709167382401243242E+00, \ 3.05596348432867100471992904351E+00, \ 3.34184096844683005348576537026E+00, \ 3.63001687763289533380743256995E+00, \ 3.92077540444472380734866143333E+00, \ 4.21443050997195460766227433230E+00, \ 4.51133211136821338520053781440E+00, \ 4.81187385202746476469375701958E+00, \ 5.11650300472141247403405938903E+00, \ 5.42573329769734933377879520007E+00, \ 5.74016182369022552144785845004E+00, \ 6.06049177883150521431844958114E+00, \ 6.38756373978709108766264932629E+00, \ 6.72239982016573443713269171234E+00, \ 7.06626794030689283695626648500E+00, \ 7.42077883436632423648540822493E+00, \ 7.78803908298957078257446963177E+00, \ 8.17090617805258532129873946832E+00, \ 8.57344474441790920512961590649E+00, \ 9.00182332295913301957373193078E+00, \ 9.46632932015538456209230219583E+00, \ 9.98694169167668475289516351866E+00, \ 10.6160229818782811890575602362E+00 ] ) w = np.array ( [ \ 8.25161081325244640518686536873E-50, \ 2.70767584528327632245086261566E-44, \ 5.89628446597893219238447711362E-40, \ 2.8541849032786262808377028501E-36, \ 4.95258625502059879210418105309E-33, \ 3.96328698707468682361835959189E-30, \ 1.70591158107580273148997822331E-27, \ 4.37697419487184691809226004173E-25, \ 7.20161078913500757836854034749E-23, \ 8.0222187354240312838311535001E-21, \ 6.30789104558609987896303941119E-19, \ 3.61819961904286485492939434525E-17, \ 1.55466357223809604941702812296E-15, \ 5.11391748171652449009988302839E-14, \ 1.31125161063902569430172028735E-12, \ 2.66086534779295548413319751434E-11, \ 4.32865615344850974821379264835E-10, \ 5.70758293277877491250362877931E-09, \ 6.15779622145053848599380659292E-08, \ 5.48045603501799498244047819842E-07, \ 4.05224939102373376093012342174E-06, \ 0.0000250453428904958321201946621231E+00, \ 0.000130082916298451204382435919638E+00, \ 0.000570398967523771524725931177791E+00, \ 0.00211998163203684165580510045255E+00, \ 0.00670140453800573713948633700424E+00, \ 0.018069433112703589006399924887E+00, \ 0.0416611087624784398909512089873E+00, \ 0.0823001633697352251543326980867E+00, \ 0.139526139482843953007755621004E+00, \ 0.203250574154441897747728738409E+00, \ 0.254628811852790103887643365928E+00, \ 0.274478226559263167375288621205E+00, \ 0.254628811852790103887643365928E+00, \ 0.203250574154441897747728738409E+00, \ 0.139526139482843953007755621004E+00, \ 0.0823001633697352251543326980867E+00, \ 0.0416611087624784398909512089873E+00, \ 0.018069433112703589006399924887E+00, \ 0.00670140453800573713948633700424E+00, \ 0.00211998163203684165580510045255E+00, \ 0.000570398967523771524725931177791E+00, \ 0.000130082916298451204382435919638E+00, \ 0.0000250453428904958321201946621231E+00, \ 4.05224939102373376093012342174E-06, \ 5.48045603501799498244047819842E-07, \ 6.15779622145053848599380659292E-08, \ 5.70758293277877491250362877931E-09, \ 4.32865615344850974821379264835E-10, \ 2.66086534779295548413319751434E-11, \ 1.31125161063902569430172028735E-12, \ 5.11391748171652449009988302839E-14, \ 1.55466357223809604941702812296E-15, \ 3.61819961904286485492939434525E-17, \ 6.30789104558609987896303941119E-19, \ 8.0222187354240312838311535001E-21, \ 7.20161078913500757836854034749E-23, \ 4.37697419487184691809226004173E-25, \ 1.70591158107580273148997822331E-27, \ 3.96328698707468682361835959189E-30, \ 4.95258625502059879210418105309E-33, \ 2.8541849032786262808377028501E-36, \ 5.89628446597893219238447711362E-40, \ 2.70767584528327632245086261566E-44, \ 8.25161081325244640518686536873E-50 ] ) elif ( n == 127 ): x = np.array ( [ \ -15.2283381481673509782469544335E+00, \ -14.6695951588339726327463541129E+00, \ -14.2090859952848707551682442509E+00, \ -13.7997222902116766346452467467E+00, \ -13.4235185900709500624382583219E+00, \ -13.0712086604746019015839954396E+00, \ -12.7372356524156863381380039241E+00, \ -12.4179393788697158054458796241E+00, \ -12.1107490209477476001321235081E+00, \ -11.8137721982677271951345841362E+00, \ -11.5255651125726965991678885886E+00, \ -11.2449945837855434451943841943E+00, \ -10.9711505698402474234230402639E+00, \ -10.7032882010274813476709407447E+00, \ -10.4407879577727728677425917980E+00, \ -10.1831274734503438886241264504E+00, \ -9.92986104951142507368470042737E+00, \ -9.68060444124747280381507127327E+00, \ -9.43502333898816501350195985063E+00, \ -9.19282449884603057157741950525E+00, \ -8.95374881085654043238078901700E+00, \ -8.71756580870763073638339995485E+00, \ -8.48406926898324733260971803400E+00, \ -8.25307364544571565796941242439E+00, \ -8.02441115147033755785947397968E+00, \ -7.79792935138701054208291204556E+00, \ -7.57348915560834540228349607633E+00, \ -7.35096313922690527019612580437E+00, \ -7.13023412203507106680640257134E+00, \ -6.91119396154657131974656331094E+00, \ -6.69374252087582941900744173817E+00, \ -6.47778678116453654481449038215E+00, \ -6.26324007427373543456097238571E+00, \ -6.05002141614198456944654744824E+00, \ -5.83805492487741873866016908078E+00, \ -5.62726931054648166594234557949E+00, \ -5.41759742592432407228484258729E+00, \ -5.20897586931539835875702583722E+00, \ -5.00134463203863600385208091074E+00, \ -4.79464678437649250097485099309E+00, \ -4.58882819476983729516064850312E+00, \ -4.38383727784647362942537444075E+00, \ -4.17962476753520313494211898924E+00, \ -3.97614351206733559160358141959E+00, \ -3.77334828812505267210046784001E+00, \ -3.57119563177821804471997564852E+00, \ -3.36964368417173978966436292400E+00, \ -3.16865205019536301918577982615E+00, \ -2.96818166859559102677616495215E+00, \ -2.76819469218240588012265459589E+00, \ -2.56865437694735017231440130224E+00, \ -2.36952497904904010800124746457E+00, \ -2.17077165874115068794984980837E+00, \ -1.97236039041950200793247432276E+00, \ -1.77425787805167915846764421037E+00, \ -1.57643147532678013155195976219E+00, \ -1.37884910992617780914415570537E+00, \ -1.18147921137006858486785835984E+00, \ -0.984290641940272777265689842138E+00, \ -0.787252630218250341515968318790E+00, \ -0.590334706809421021422304393461E+00, \ -0.393506641851301365680378262002E+00, \ -0.196738383924232519642722397371E+00, \ 0.0E+00, \ 0.196738383924232519642722397371E+00, \ 0.393506641851301365680378262002E+00, \ 0.590334706809421021422304393461E+00, \ 0.787252630218250341515968318790E+00, \ 0.984290641940272777265689842138E+00, \ 1.18147921137006858486785835984E+00, \ 1.37884910992617780914415570537E+00, \ 1.57643147532678013155195976219E+00, \ 1.77425787805167915846764421037E+00, \ 1.97236039041950200793247432276E+00, \ 2.17077165874115068794984980837E+00, \ 2.36952497904904010800124746457E+00, \ 2.56865437694735017231440130224E+00, \ 2.76819469218240588012265459589E+00, \ 2.96818166859559102677616495215E+00, \ 3.16865205019536301918577982615E+00, \ 3.36964368417173978966436292400E+00, \ 3.57119563177821804471997564852E+00, \ 3.77334828812505267210046784001E+00, \ 3.97614351206733559160358141959E+00, \ 4.17962476753520313494211898924E+00, \ 4.38383727784647362942537444075E+00, \ 4.58882819476983729516064850312E+00, \ 4.79464678437649250097485099309E+00, \ 5.00134463203863600385208091074E+00, \ 5.20897586931539835875702583722E+00, \ 5.41759742592432407228484258729E+00, \ 5.62726931054648166594234557949E+00, \ 5.83805492487741873866016908078E+00, \ 6.05002141614198456944654744824E+00, \ 6.26324007427373543456097238571E+00, \ 6.47778678116453654481449038215E+00, \ 6.69374252087582941900744173817E+00, \ 6.91119396154657131974656331094E+00, \ 7.13023412203507106680640257134E+00, \ 7.35096313922690527019612580437E+00, \ 7.57348915560834540228349607633E+00, \ 7.79792935138701054208291204556E+00, \ 8.02441115147033755785947397968E+00, \ 8.25307364544571565796941242439E+00, \ 8.48406926898324733260971803400E+00, \ 8.71756580870763073638339995485E+00, \ 8.95374881085654043238078901700E+00, \ 9.19282449884603057157741950525E+00, \ 9.43502333898816501350195985063E+00, \ 9.68060444124747280381507127327E+00, \ 9.92986104951142507368470042737E+00, \ 10.1831274734503438886241264504E+00, \ 10.4407879577727728677425917980E+00, \ 10.7032882010274813476709407447E+00, \ 10.9711505698402474234230402639E+00, \ 11.2449945837855434451943841943E+00, \ 11.5255651125726965991678885886E+00, \ 11.8137721982677271951345841362E+00, \ 12.1107490209477476001321235081E+00, \ 12.4179393788697158054458796241E+00, \ 12.7372356524156863381380039241E+00, \ 13.0712086604746019015839954396E+00, \ 13.4235185900709500624382583219E+00, \ 13.7997222902116766346452467467E+00, \ 14.2090859952848707551682442509E+00, \ 14.6695951588339726327463541129E+00, \ 15.2283381481673509782469544335E+00 ] ) w = np.array ( [ \ 1.25044975770895101066558695394E-101, \ 1.72727980594728851329952877284E-94, \ 8.93216815722645216635320162557E-89, \ 7.7306185241134158744827181222E-84, \ 2.01439576527109443920782513994E-79, \ 2.15037147336771602203551878273E-75, \ 1.13419242086298913875376620343E-71, \ 3.34891390118992716444169809114E-68, \ 6.04865489642049179016214753843E-65, \ 7.13750929465743002965122123123E-62, \ 5.78845633750656959788340019085E-59, \ 3.3581166223962736386929935773E-56, \ 1.4394641949298720336141068619E-53, \ 4.68218083833618292793410025836E-51, \ 1.18170544407210392716367665268E-48, \ 2.35816591560823143778744566357E-46, \ 3.78144279409152203964384313149E-44, \ 4.9411031115925407477456893331E-42, \ 5.32553037755907921458489847863E-40, \ 4.78543906802804099967221020647E-38, \ 3.61918834460649868835433546523E-36, \ 2.3232083386415854084664074623E-34, \ 1.27533314110484056196532640642E-32, \ 6.02777538509463291699314327193E-31, \ 2.4679773241854004762148469348E-29, \ 8.8019567691972403392314252914E-28, \ 2.74824892121260880467531987939E-26, \ 7.54682189033203465872349657723E-25, \ 1.83031346363374264415878982576E-23, \ 3.93559908609832906838466602268E-22, \ 7.52931616388155067444192947319E-21, \ 1.28579977867628696999762170542E-19, \ 1.96593268885070384943390296306E-18, \ 2.69865119072980851232572568063E-17, \ 3.33444143033026256341061235315E-16, \ 3.71733031252663248624409938613E-15, \ 3.74739544729563577089986076081E-14, \ 3.42300944935037851188976963928E-13, \ 2.83853037250817094975750489262E-12, \ 2.14069202905212884993201956606E-11, \ 1.47063312734774830028408333227E-10, \ 9.21739409677215086782446989876E-10, \ 5.27816639371369729333040255118E-09, \ 2.76504970450371674155194812923E-08, \ 1.32678558425807549298485884004E-07, \ 5.83809442762947462901022315301E-07, \ 2.35815617248490159838145978859E-06, \ 8.75244680345528247507614056972E-06, \ 0.0000298767905360019901790649251988E+00, \ 0.0000938744357203646866361259710004E+00, \ 0.000271707626280157286781639661883E+00, \ 0.000724939297427239633212185817821E+00, \ 0.0017841208326818955520088211458E+00, \ 0.00405248551861722466559241860023E+00, \ 0.00850002630418086349941683729112E+00, \ 0.0164711422416609467530350356258E+00, \ 0.0294992962483054353948393364098E+00, \ 0.0488473871144520262535428484316E+00, \ 0.074807989768816537216026182806E+00, \ 0.10598520508123912472195529192E+00, \ 0.138939453090947794093360848265E+00, \ 0.168562360742603870987330592834E+00, \ 0.189278495801793364889704841035E+00, \ 0.196733406888845140995323677102E+00, \ 0.189278495801793364889704841035E+00, \ 0.168562360742603870987330592834E+00, \ 0.138939453090947794093360848265E+00, \ 0.10598520508123912472195529192E+00, \ 0.074807989768816537216026182806E+00, \ 0.0488473871144520262535428484316E+00, \ 0.0294992962483054353948393364098E+00, \ 0.0164711422416609467530350356258E+00, \ 0.00850002630418086349941683729112E+00, \ 0.00405248551861722466559241860023E+00, \ 0.0017841208326818955520088211458E+00, \ 0.000724939297427239633212185817821E+00, \ 0.000271707626280157286781639661883E+00, \ 0.0000938744357203646866361259710004E+00, \ 0.0000298767905360019901790649251988E+00, \ 8.75244680345528247507614056972E-06, \ 2.35815617248490159838145978859E-06, \ 5.83809442762947462901022315301E-07, \ 1.32678558425807549298485884004E-07, \ 2.76504970450371674155194812923E-08, \ 5.27816639371369729333040255118E-09, \ 9.21739409677215086782446989876E-10, \ 1.47063312734774830028408333227E-10, \ 2.14069202905212884993201956606E-11, \ 2.83853037250817094975750489262E-12, \ 3.42300944935037851188976963928E-13, \ 3.74739544729563577089986076081E-14, \ 3.71733031252663248624409938613E-15, \ 3.33444143033026256341061235315E-16, \ 2.69865119072980851232572568063E-17, \ 1.96593268885070384943390296306E-18, \ 1.28579977867628696999762170542E-19, \ 7.52931616388155067444192947319E-21, \ 3.93559908609832906838466602268E-22, \ 1.83031346363374264415878982576E-23, \ 7.54682189033203465872349657723E-25, \ 2.74824892121260880467531987939E-26, \ 8.8019567691972403392314252914E-28, \ 2.4679773241854004762148469348E-29, \ 6.02777538509463291699314327193E-31, \ 1.27533314110484056196532640642E-32, \ 2.3232083386415854084664074623E-34, \ 3.61918834460649868835433546523E-36, \ 4.78543906802804099967221020647E-38, \ 5.32553037755907921458489847863E-40, \ 4.9411031115925407477456893331E-42, \ 3.78144279409152203964384313149E-44, \ 2.35816591560823143778744566357E-46, \ 1.18170544407210392716367665268E-48, \ 4.68218083833618292793410025836E-51, \ 1.4394641949298720336141068619E-53, \ 3.3581166223962736386929935773E-56, \ 5.78845633750656959788340019085E-59, \ 7.13750929465743002965122123123E-62, \ 6.04865489642049179016214753843E-65, \ 3.34891390118992716444169809114E-68, \ 1.13419242086298913875376620343E-71, \ 2.15037147336771602203551878273E-75, \ 2.01439576527109443920782513994E-79, \ 7.7306185241134158744827181222E-84, \ 8.93216815722645216635320162557E-89, \ 1.72727980594728851329952877284E-94, \ 1.25044975770895101066558695394E-101 ] ) elif ( n == 128 ): x = np.array ( [ \ -15.2918197668827409717467886552E+00, \ -14.7338424735892990556131447177E+00, \ -14.2739813047878355625094356564E+00, \ -13.8652069844762415897768433203E+00, \ -13.4895564126231418263791177750E+00, \ -13.1377747880276511010650586719E+00, \ -12.8043120820671312950137141654E+00, \ -12.4855125853494481606990566084E+00, \ -12.1788086198312463132740693095E+00, \ -11.8823101188783115808359168093E+00, \ -11.5945750547414517467820845908E+00, \ -11.3144716442899779172120028451E+00, \ -11.0410909760196333842428986719E+00, \ -10.7736891151614406713116609896E+00, \ -10.5116473299148686173941369279E+00, \ -10.2544439284709307170245436605E+00, \ -10.0016337989301228460111363000E+00, \ -9.75283321343916867454942614151E+00, \ -9.50770832327905657695490182674E+00, \ -9.26596630029617592185364037517E+00, \ -9.02734841339478834482665573280E+00, \ -8.79162454488868640635040291427E+00, \ -8.55858879506450828896030380072E+00, \ -8.32805592079014664500802003672E+00, \ -8.09985842150789607545794348110E+00, \ -7.87384413353543446678710891884E+00, \ -7.64987422768100656113184995327E+00, \ -7.42782152995230111565739552073E+00, \ -7.20756910338733385441779947109E+00, \ -6.98900904264477401185223744438E+00, \ -6.77204144325592885820688621877E+00, \ -6.55657351526448288962578894289E+00, \ -6.34251881700177947172938955573E+00, \ -6.12979658942216202462059597877E+00, \ -5.91833117508581167511681743446E+00, \ -5.70805150876808626177490879113E+00, \ -5.49889066897390948452218926009E+00, \ -5.29078548147717957643674180866E+00, \ -5.08367616748933990673505368300E+00, \ -4.87750603026481441216755173491E+00, \ -4.67222117493263892214567470373E+00, \ -4.46777025714858268344631831723E+00, \ -4.26410425682551915674979043600E+00, \ -4.06117627374927282427754765790E+00, \ -3.85894134234428182659062673118E+00, \ -3.65735626323530809623058740618E+00, \ -3.45637944957173748220943445337E+00, \ -3.25597078635065934665290567700E+00, \ -3.05609150120268005595784091684E+00, \ -2.85670404529740528265184910544E+00, \ -2.65777198318948399631081621992E+00, \ -2.45925989056573940193677619199E+00, \ -2.26113325897306228028420817752E+00, \ -2.06335840670856597768175136750E+00, \ -1.86590239514059869664912407799E+00, \ -1.66873294980372363048660121191E+00, \ -1.47181838567448600067837560546E+00, \ -1.27512753608915832143251082623E+00, \ -1.07862968481090893047100757570E+00, \ -0.882294500792981406000508343227E+00, \ -0.686091975217334872045286432691E+00, \ -0.489992360415458918089044385637E+00, \ -0.293966110300295702813351867404E+00, \ -0.0979838219558189543137713246862E+00, \ 0.0979838219558189543137713246862E+00, \ 0.293966110300295702813351867404E+00, \ 0.489992360415458918089044385637E+00, \ 0.686091975217334872045286432691E+00, \ 0.882294500792981406000508343227E+00, \ 1.07862968481090893047100757570E+00, \ 1.27512753608915832143251082623E+00, \ 1.47181838567448600067837560546E+00, \ 1.66873294980372363048660121191E+00, \ 1.86590239514059869664912407799E+00, \ 2.06335840670856597768175136750E+00, \ 2.26113325897306228028420817752E+00, \ 2.45925989056573940193677619199E+00, \ 2.65777198318948399631081621992E+00, \ 2.85670404529740528265184910544E+00, \ 3.05609150120268005595784091684E+00, \ 3.25597078635065934665290567700E+00, \ 3.45637944957173748220943445337E+00, \ 3.65735626323530809623058740618E+00, \ 3.85894134234428182659062673118E+00, \ 4.06117627374927282427754765790E+00, \ 4.26410425682551915674979043600E+00, \ 4.46777025714858268344631831723E+00, \ 4.67222117493263892214567470373E+00, \ 4.87750603026481441216755173491E+00, \ 5.08367616748933990673505368300E+00, \ 5.29078548147717957643674180866E+00, \ 5.49889066897390948452218926009E+00, \ 5.70805150876808626177490879113E+00, \ 5.91833117508581167511681743446E+00, \ 6.12979658942216202462059597877E+00, \ 6.34251881700177947172938955573E+00, \ 6.55657351526448288962578894289E+00, \ 6.77204144325592885820688621877E+00, \ 6.98900904264477401185223744438E+00, \ 7.20756910338733385441779947109E+00, \ 7.42782152995230111565739552073E+00, \ 7.64987422768100656113184995327E+00, \ 7.87384413353543446678710891884E+00, \ 8.09985842150789607545794348110E+00, \ 8.32805592079014664500802003672E+00, \ 8.55858879506450828896030380072E+00, \ 8.79162454488868640635040291427E+00, \ 9.02734841339478834482665573280E+00, \ 9.26596630029617592185364037517E+00, \ 9.50770832327905657695490182674E+00, \ 9.75283321343916867454942614151E+00, \ 10.0016337989301228460111363000E+00, \ 10.2544439284709307170245436605E+00, \ 10.5116473299148686173941369279E+00, \ 10.7736891151614406713116609896E+00, \ 11.0410909760196333842428986719E+00, \ 11.3144716442899779172120028451E+00, \ 11.5945750547414517467820845908E+00, \ 11.8823101188783115808359168093E+00, \ 12.1788086198312463132740693095E+00, \ 12.4855125853494481606990566084E+00, \ 12.8043120820671312950137141654E+00, \ 13.1377747880276511010650586719E+00, \ 13.4895564126231418263791177750E+00, \ 13.8652069844762415897768433203E+00, \ 14.2739813047878355625094356564E+00, \ 14.7338424735892990556131447177E+00, \ 15.2918197668827409717467886552E+00 ] ) w = np.array ( [ \ 1.79906598010928472082336338805E-102, \ 2.60817240240911107924885148459E-95, \ 1.40468977131508863479865725345E-89, \ 1.2612494833385383033093221663E-84, \ 3.4012300869366371268669286673E-80, \ 3.75121586880472499656274624235E-76, \ 2.04158579724398501580069247379E-72, \ 6.21424416183031366240930730224E-69, \ 1.15615516409637521334725409468E-65, \ 1.40446725774048726044186592003E-62, \ 1.17197850121298051738559888373E-59, \ 6.9930729240519559879874741506E-57, \ 3.08207738333929868710425541163E-54, \ 1.03048625205569473422672330856E-51, \ 2.67274375173606785452021989916E-49, \ 5.48021702897879649820616283051E-47, \ 9.02804013878664400917961564574E-45, \ 1.21177953413059190735434940091E-42, \ 1.34149748176436936696556841563E-40, \ 1.2380855579763680376188381669E-38, \ 9.6167080679675069775952182446E-37, \ 6.33991352636648906076753997388E-35, \ 3.57437889587942107216457034803E-33, \ 1.73510302028206120881601688138E-31, \ 7.29654500676840425381868704321E-30, \ 2.67292362005807324017266437183E-28, \ 8.5728304837693537445493254974E-27, \ 2.41840345964766496960390574396E-25, \ 6.02598403200645428864656987226E-24, \ 1.33136785903358960440599429474E-22, \ 2.61745758393481115586873166674E-21, \ 4.59400767732972159221172605389E-20, \ 7.22010731692829201964437734131E-19, \ 1.01893323042329252403658204469E-17, \ 1.2945481593393715343954569556E-16, \ 1.4842238375138564829118955689E-15, \ 1.53904973035354581424981070383E-14, \ 1.44634732119041656320590928428E-13, \ 1.23421448660055669081623604437E-12, \ 9.58031650873585770862066358548E-12, \ 6.77578048777455378630839649193E-11, \ 4.37318665984840344563217253619E-10, \ 2.57939722942639480114980569527E-9, \ 1.39219071529351788119578816175E-8, \ 6.88458112215435009064406266312E-8, \ 3.12287298617890308197944991751E-7, \ 1.30074700323819923351375586698E-6, \ 4.97992453259098701134099270598E-6, \ 0.0000175404858480939050383677619791E+00, \ 0.0000568874376004024109270187885882E+00, \ 0.000170014088262809409409897155763E+00, \ 0.000468551537808411365479802126842E+00, \ 0.00119156381445716723911680561041E+00, \ 0.00279783940160578927319080368252E+00, \ 0.00606886240692588762066801419927E+00, \ 0.0121669188644693394910166328856E+00, \ 0.0225543101678244224102498222492E+00, \ 0.0386739548106369026550248867136E+00, \ 0.061360721004490065664651069257E+00, \ 0.090108678376448919548057439804E+00, \ 0.122503273164135694618664605611E+00, \ 0.154210435298354383363527713284E+00, \ 0.179773083907799264988697956102E+00, \ 0.194097611864087756977697028723E+00, \ 0.194097611864087756977697028723E+00, \ 0.179773083907799264988697956102E+00, \ 0.154210435298354383363527713284E+00, \ 0.122503273164135694618664605611E+00, \ 0.090108678376448919548057439804E+00, \ 0.061360721004490065664651069257E+00, \ 0.0386739548106369026550248867136E+00, \ 0.0225543101678244224102498222492E+00, \ 0.0121669188644693394910166328856E+00, \ 0.00606886240692588762066801419927E+00, \ 0.00279783940160578927319080368252E+00, \ 0.00119156381445716723911680561041E+00, \ 0.000468551537808411365479802126842E+00, \ 0.000170014088262809409409897155763E+00, \ 0.0000568874376004024109270187885882E+00, \ 0.0000175404858480939050383677619791E+00, \ 4.97992453259098701134099270598E-06, \ 1.30074700323819923351375586698E-06, \ 3.12287298617890308197944991751E-07, \ 6.88458112215435009064406266312E-08, \ 1.39219071529351788119578816175E-08, \ 2.57939722942639480114980569527E-09, \ 4.37318665984840344563217253619E-10, \ 6.77578048777455378630839649193E-11, \ 9.58031650873585770862066358548E-12, \ 1.23421448660055669081623604437E-12, \ 1.44634732119041656320590928428E-13, \ 1.53904973035354581424981070383E-14, \ 1.4842238375138564829118955689E-15, \ 1.2945481593393715343954569556E-16, \ 1.01893323042329252403658204469E-17, \ 7.22010731692829201964437734131E-19, \ 4.59400767732972159221172605389E-20, \ 2.61745758393481115586873166674E-21, \ 1.33136785903358960440599429474E-22, \ 6.02598403200645428864656987226E-24, \ 2.41840345964766496960390574396E-25, \ 8.5728304837693537445493254974E-27, \ 2.67292362005807324017266437183E-28, \ 7.29654500676840425381868704321E-30, \ 1.73510302028206120881601688138E-31, \ 3.57437889587942107216457034803E-33, \ 6.33991352636648906076753997388E-35, \ 9.6167080679675069775952182446E-37, \ 1.2380855579763680376188381669E-38, \ 1.34149748176436936696556841563E-40, \ 1.21177953413059190735434940091E-42, \ 9.02804013878664400917961564574E-45, \ 5.48021702897879649820616283051E-47, \ 2.67274375173606785452021989916E-49, \ 1.03048625205569473422672330856E-51, \ 3.08207738333929868710425541163E-54, \ 6.9930729240519559879874741506E-57, \ 1.17197850121298051738559888373E-59, \ 1.40446725774048726044186592003E-62, \ 1.15615516409637521334725409468E-65, \ 6.21424416183031366240930730224E-69, \ 2.04158579724398501580069247379E-72, \ 3.75121586880472499656274624235E-76, \ 3.4012300869366371268669286673E-80, \ 1.2612494833385383033093221663E-84, \ 1.40468977131508863479865725345E-89, \ 2.60817240240911107924885148459E-95, \ 1.79906598010928472082336338805E-102 ] ) elif ( n == 129 ): x = np.array ( [ \ -15.3550496746831285549167746019E+00, \ -14.7978308964903080628845608050E+00, \ -14.3386115290089672811362217078E+00, \ -13.9304208664791805435265533989E+00, \ -13.5553179661308567022816946453E+00, \ -13.2040593596741921982903144147E+00, \ -12.8711017789036282758938040681E+00, \ -12.5527939524445397878411009214E+00, \ -12.2465713150240016840404064819E+00, \ -11.9505460927691823148587203418E+00, \ -11.6632780120689523111895976521E+00, \ -11.3836366735119364919041401601E+00, \ -11.1107142851416459382067369906E+00, \ -10.8437678377155441232588867872E+00, \ -10.5821793789735138638177686355E+00, \ -10.3254278845735933555309803756E+00, \ -10.0730688225840385168071109595E+00, \ -9.82471897583315292981163227664E+00, \ -9.58004495076523054718996925368E+00, \ -9.33875432946329683313144773753E+00, \ -9.10058875441877630705419698871E+00, \ -8.86531845144460445006059884245E+00, \ -8.63273783950843552405601767759E+00, \ -8.40266197362535012572889592790E+00, \ -8.17492363437398978801516910338E+00, \ -7.94937092512605027069441566240E+00, \ -7.72586527212128476858225880726E+00, \ -7.50427974726352240601473698475E+00, \ -7.28449765174015372725258835236E+00, \ -7.06641131216039069912389691607E+00, \ -6.84992105116014925339717178568E+00, \ -6.63493430223598850302862096202E+00, \ -6.42136484458510366813184121466E+00, \ -6.20913213839958724139275362341E+00, \ -5.99816074472179863235247556956E+00, \ -5.78837981685588271189500366573E+00, \ -5.57972265262736517721195076411E+00, \ -5.37212629862206810544406569124E+00, \ -5.16553119901808798749445925424E+00, \ -4.95988088282680494441019859192E+00, \ -4.75512168433945660698412105871E+00, \ -4.55120249237992751786552441506E+00, \ -4.34807452462720039287086617988E+00, \ -4.14569112381985885943227755134E+00, \ -3.94400757311174034591077592589E+00, \ -3.74298092822942697020355662873E+00, \ -3.54256986440235708810942555303E+00, \ -3.34273453630584653564135188865E+00, \ -3.14343644948499981855157130224E+00, \ -2.94463834192045889859029200431E+00, \ -2.74630407456093830886162508356E+00, \ -2.54839852978722422234239962660E+00, \ -2.35088751689161374336515868011E+00, \ -2.15373768375879465132813086025E+00, \ -1.95691643402151503173496953711E+00, \ -1.76039184903921457004681976795E+00, \ -1.56413261411186298656139617983E+00, \ -1.36810794839605047973791359079E+00, \ -1.17228753803712318264391216760E+00, \ -0.976641472070867557126534700881E+00, \ -0.781140180681760289238140546741E+00, \ -0.585754375432805697119652981369E+00, \ -0.390454991105046004780513867383E+00, \ -0.195213128803407573801607754230E+00, \ 0.0E+00, \ 0.195213128803407573801607754230E+00, \ 0.390454991105046004780513867383E+00, \ 0.585754375432805697119652981369E+00, \ 0.781140180681760289238140546741E+00, \ 0.976641472070867557126534700881E+00, \ 1.17228753803712318264391216760E+00, \ 1.36810794839605047973791359079E+00, \ 1.56413261411186298656139617983E+00, \ 1.76039184903921457004681976795E+00, \ 1.95691643402151503173496953711E+00, \ 2.15373768375879465132813086025E+00, \ 2.35088751689161374336515868011E+00, \ 2.54839852978722422234239962660E+00, \ 2.74630407456093830886162508356E+00, \ 2.94463834192045889859029200431E+00, \ 3.14343644948499981855157130224E+00, \ 3.34273453630584653564135188865E+00, \ 3.54256986440235708810942555303E+00, \ 3.74298092822942697020355662873E+00, \ 3.94400757311174034591077592589E+00, \ 4.14569112381985885943227755134E+00, \ 4.34807452462720039287086617988E+00, \ 4.55120249237992751786552441506E+00, \ 4.75512168433945660698412105871E+00, \ 4.95988088282680494441019859192E+00, \ 5.16553119901808798749445925424E+00, \ 5.37212629862206810544406569124E+00, \ 5.57972265262736517721195076411E+00, \ 5.78837981685588271189500366573E+00, \ 5.99816074472179863235247556956E+00, \ 6.20913213839958724139275362341E+00, \ 6.42136484458510366813184121466E+00, \ 6.63493430223598850302862096202E+00, \ 6.84992105116014925339717178568E+00, \ 7.06641131216039069912389691607E+00, \ 7.28449765174015372725258835236E+00, \ 7.50427974726352240601473698475E+00, \ 7.72586527212128476858225880726E+00, \ 7.94937092512605027069441566240E+00, \ 8.17492363437398978801516910338E+00, \ 8.40266197362535012572889592790E+00, \ 8.63273783950843552405601767759E+00, \ 8.86531845144460445006059884245E+00, \ 9.10058875441877630705419698871E+00, \ 9.33875432946329683313144773753E+00, \ 9.58004495076523054718996925368E+00, \ 9.82471897583315292981163227664E+00, \ 10.0730688225840385168071109595E+00, \ 10.3254278845735933555309803756E+00, \ 10.5821793789735138638177686355E+00, \ 10.8437678377155441232588867872E+00, \ 11.1107142851416459382067369906E+00, \ 11.3836366735119364919041401601E+00, \ 11.6632780120689523111895976521E+00, \ 11.9505460927691823148587203418E+00, \ 12.2465713150240016840404064819E+00, \ 12.5527939524445397878411009214E+00, \ 12.8711017789036282758938040681E+00, \ 13.2040593596741921982903144147E+00, \ 13.5553179661308567022816946453E+00, \ 13.9304208664791805435265533989E+00, \ 14.3386115290089672811362217078E+00, \ 14.7978308964903080628845608050E+00, \ 15.3550496746831285549167746019E+00 ] ) w = np.array ( [ \ 2.58755395082114927399064139631E-103, \ 3.93601845908067608811461078697E-96, \ 2.20725529577484588586177997021E-90, \ 2.05563087297774646200941835216E-85, \ 5.73584763407311509769038083955E-81, \ 6.53456499014096713882711627986E-77, \ 3.66903606454555600244832281797E-73, \ 1.15105101975113879079427442365E-69, \ 2.20553774145133363585421051568E-66, \ 2.75763663311195533797446164671E-63, \ 2.36731747071610805241477009401E-60, \ 1.45257860403230704544333281907E-57, \ 6.58119121529392093666305170751E-55, \ 2.26137732951303228667152914802E-52, \ 6.02643011329776195986432204924E-50, \ 1.26938407638088455004457398255E-47, \ 2.14791778799787733305388107076E-45, \ 2.96092183537878053158423564486E-43, \ 3.36616090532826422441501486485E-41, \ 3.19014783528482307711547124192E-39, \ 2.54439796712780366695746038013E-37, \ 1.72239465322100711581154624691E-35, \ 9.97105538735197785176257533162E-34, \ 4.97009943352064894027841342072E-32, \ 2.14620630607238052957787041268E-30, \ 8.07377921555793000987040030256E-29, \ 2.65936924028161851577004868287E-27, \ 7.70515053183270746145645250031E-26, \ 1.97204966381589933881729892459E-24, \ 4.47579713475437089012921294273E-23, \ 9.0403370335874459959906960673E-22, \ 1.63036407035294103578729410788E-20, \ 2.63320491826449443345354482912E-19, \ 3.81944198027838553902522199764E-18, \ 4.98833273307808866457667338365E-17, \ 5.88022772755071728094452091844E-16, \ 6.27023947714728862011748531319E-15, \ 6.06072571359080078068964155295E-14, \ 5.32049070753884105044682362639E-13, \ 4.24955065877498808023415505556E-12, \ 3.09330203932473692244204789801E-11, \ 2.05524352987860630455845773203E-10, \ 1.2482251818681431772545606389E-09, \ 6.93896714453731562418029048785E-09, \ 3.53518234605234028369262582274E-08, \ 1.65252704577539544523562160076E-07, \ 7.09535030601389014268064639021E-07, \ 2.80106033677073567813925250808E-06, \ 0.0000101764715414468349837840217278E+00, \ 0.0000340541841724020078441933069804E+00, \ 0.000105047486997647220847004754607E+00, \ 0.000298922505941519029186629138321E+00, \ 0.000785197220610268688197653195861E+00, \ 0.00190506673927936544347937172051E+00, \ 0.00427162074179231114560048384305E+00, \ 0.00885609926394363549300290104701E+00, \ 0.0169845117091580731620255503875E+00, \ 0.0301436534848915408822025025241E+00, \ 0.0495245901368945546436264039895E+00, \ 0.0753454506416603410859342903275E+00, \ 0.106172669789632918045101372957E+00, \ 0.138604146980788427972651263139E+00, \ 0.167654732143619067997522798882E+00, \ 0.187923095463858179335367694936E+00, \ 0.195208341719164170910088609838E+00, \ 0.187923095463858179335367694936E+00, \ 0.167654732143619067997522798882E+00, \ 0.138604146980788427972651263139E+00, \ 0.106172669789632918045101372957E+00, \ 0.0753454506416603410859342903275E+00, \ 0.0495245901368945546436264039895E+00, \ 0.0301436534848915408822025025241E+00, \ 0.0169845117091580731620255503875E+00, \ 0.00885609926394363549300290104701E+00, \ 0.00427162074179231114560048384305E+00, \ 0.00190506673927936544347937172051E+00, \ 0.000785197220610268688197653195861E+00, \ 0.000298922505941519029186629138321E+00, \ 0.000105047486997647220847004754607E+00, \ 0.0000340541841724020078441933069804E+00, \ 0.0000101764715414468349837840217278E+00, \ 2.80106033677073567813925250808E-06, \ 7.09535030601389014268064639021E-07, \ 1.65252704577539544523562160076E-07, \ 3.53518234605234028369262582274E-08, \ 6.93896714453731562418029048785E-09, \ 1.2482251818681431772545606389E-09, \ 2.05524352987860630455845773203E-10, \ 3.09330203932473692244204789801E-11, \ 4.24955065877498808023415505556E-12, \ 5.32049070753884105044682362639E-13, \ 6.06072571359080078068964155295E-14, \ 6.27023947714728862011748531319E-15, \ 5.88022772755071728094452091844E-16, \ 4.98833273307808866457667338365E-17, \ 3.81944198027838553902522199764E-18, \ 2.63320491826449443345354482912E-19, \ 1.63036407035294103578729410788E-20, \ 9.0403370335874459959906960673E-22, \ 4.47579713475437089012921294273E-23, \ 1.97204966381589933881729892459E-24, \ 7.70515053183270746145645250031E-26, \ 2.65936924028161851577004868287E-27, \ 8.07377921555793000987040030256E-29, \ 2.14620630607238052957787041268E-30, \ 4.97009943352064894027841342072E-32, \ 9.97105538735197785176257533162E-34, \ 1.72239465322100711581154624691E-35, \ 2.54439796712780366695746038013E-37, \ 3.19014783528482307711547124192E-39, \ 3.36616090532826422441501486485E-41, \ 2.96092183537878053158423564486E-43, \ 2.14791778799787733305388107076E-45, \ 1.26938407638088455004457398255E-47, \ 6.02643011329776195986432204924E-50, \ 2.26137732951303228667152914802E-52, \ 6.58119121529392093666305170751E-55, \ 1.45257860403230704544333281907E-57, \ 2.36731747071610805241477009401E-60, \ 2.75763663311195533797446164671E-63, \ 2.20553774145133363585421051568E-66, \ 1.15105101975113879079427442365E-69, \ 3.66903606454555600244832281797E-73, \ 6.53456499014096713882711627986E-77, \ 5.73584763407311509769038083955E-81, \ 2.05563087297774646200941835216E-85, \ 2.20725529577484588586177997021E-90, \ 3.93601845908067608811461078697E-96, \ 2.58755395082114927399064139631E-103 ] ) else: print ( '' ) print ( 'HERMITE_SET - Fatal error!' ) print ( ' Illegal value of N = %d' % ( n ) ) print ( ' Legal values are 1:20, 31/32/33, 63/64/65, 127/128/129.' ) exit ( 'HERMITE_SET - Fatal error!' ), \ return x, w def hermite_set_test ( ): #*****************************************************************************80 # ## HERMITE_SET_TEST tests HERMITE_SET. # # Licensing: # # This code is distributed under the GNU LGPL license. # # Modified: # # 12 June 2015 # # Author: # # John Burkardt # import platform print ( '' ) print ( 'HERMITE_SET_TEST' ) print ( ' Python version: %s' % ( platform.python_version ( ) ) ) print ( ' HERMITE_SET sets a Hermite quadrature rule over (-oo,+oo).' ) print ( '' ) print ( ' Index X W' ) print ( '' ) for n in range ( 1, 11 ): x, w = hermite_set ( n ) print ( '' ) for i in range ( 0, n ): print ( ' %2d %24.16g %24.16g' % ( i, x[i], w[i] ) ) # # Terminate. # print ( '' ) print ( 'HERMITE_SET_TEST:' ) print ( ' Normal end of execution.' ) return if ( __name__ == '__main__' ): from timestamp import timestamp timestamp ( ) hermite_set_test ( ) timestamp ( )