// // Quadrature roots and weights for half-open Gaussian quadrature over a Gaussian kernel. // // _ infinity // | // | m // | - r*r / 2 --- // | f(r) e r dr ~ > w f(r ) // | --- j j // - j=1 // 0 // // This kind of integral arises from the transformation of two-dimensional Gauss-Hermite quadrature to polar coordinates. // Further documentation can be found at www.jaeckel.org/ANoteOnMultivariateGaussHermiteQuadrature.pdf . // // static const double theRoots1[]={ 1.2533141373155002512078826424 }; static const double theWeights1[]={ 1. }; static const double theRoots2[]={ 0.773065781670047159382757135, 2.1470260431652439071482258307 }; static const double theWeights2[]={ 0.6504641588958124313008320763, 0.3495358411041875686991679237 }; static const double theRoots3[]={ 0.5347631128638935835118756296, 1.5361857381064194003108655564, 2.8663335847008514414945154113 }; static const double theWeights3[]={ 0.3792392976767058160222172697, 0.5479062354069057921541448916, 0.0728544669163883918236378387 }; static const double theRoots4[]={ 0.3961205684809970482046989062, 1.1767346714185921750900701015, 2.2010676629189581946543092946, 3.4836109980286615716953100856 }; static const double theWeights4[]={ 0.2279981086730596270303131898, 0.538464759426994159094177725, 0.2215779133653168055615931299, 0.0119592185346294083139159552 }; static const double theRoots5[]={ 0.3076324155928772815221982364, 0.9378247554538897919742160179, 1.7790644611762612941682239045, 2.7905190576697387627811658909, 4.0321528718400684061500871796 }; static const double theWeights5[]={ 0.1443408187805311674434599723, 0.4525281457006667712861923439, 0.3386613760597634890485538307, 0.0627671501679440848471100343, 0.0017025092910944873746838189 }; static const double theRoots6[]={ 0.2473688371081434478824149173, 0.7687766247136709648158107394, 1.4797235985920085201205234812, 2.331793534325975850375293601, 3.323324938593967009012437826, 4.5304336282124650738890079146 }; static const double theWeights6[]={ 0.0960074401459839582789978588, 0.3592184677420776749038132054, 0.3891035405971090960021547554, 0.1411646010468871709920514213, 0.0142858003958162922392585892, 0.00022015007212580758372416984468037189 }; static const double theRoots7[]={ 0.2042771311612459602514611462, 0.6440449012321885230737232353, 1.2556357906456116571211373223, 1.9938248668958893265718696415, 2.8410802109821325322518745082, 3.8122567332837104388988175477, 4.9899392312013162753772935265 }; static const double theWeights7[]={ 0.0666446487281107865053663691, 0.2802084102488821909887395787, 0.3882701855728983043663094128, 0.2167014855561670524082464605, 0.0453523610020870526211535365, 0.0027963644479311666416237622, 0.00002654444392344646856088007114624285 }; static const double theRoots8[]={ 0.1722692683016568284916911469, 0.5490612726070450227788603835, 1.0820850925540040548023645429, 1.7319740912484120792157125431, 2.4768512256741588803088967131, 3.3140443001805802891113517387, 4.2661291479836491924690315733, 5.4183772561077389004898905699 }; static const double theWeights8[]={ 0.0479575463553061554163340373, 0.2185013638379879712744779212, 0.359524535686762079866269566, 0.270350330724205794938016547, 0.0910436385714712093851562325, 0.0121298437075778724672110776, 0.00048970728729540975022555509398078798, 3.03382939350690230906324539200278e-6 }; static const double theRoots9[]={ 0.1477578873345741552106047698, 0.4748811229407223928274094372, 0.9443290315674026397581812381, 1.5227824399459723365379909204, 2.1881056958276341453007183617, 2.9310850216485922999405529091, 3.7566310225142751342698256291, 4.6912442859816947188942955558, 5.8212119078511331823826186197 }; static const double theWeights9[]={ 0.0355705690155429488845969218, 0.1716149698784690317881068523, 0.3196584855925928374394003726, 0.2982915687987538055295656206, 0.1407176733925655479206870558, 0.0312404145976131482002263529, 0.0028273042904529926148593711, 0.00007868210252923005872667551265826551, 3.3233148045756383077752495361402e-7 }; static const double theRoots10[]={ 0.1285126164707016364197706406, 0.4157241282978185980821108861, 0.8328582698844571161217022945, 1.3520376083239667077108003444, 1.9524725485400070586396108225, 2.6224778545000625612681695761, 3.359817430513738424095167547, 4.1735415384849224935737649954, 5.0922630531315960647161147159, 6.2024811491977645055540584559 }; static const double theWeights10[]={ 0.0270665372887561666343092241, 0.1361913002782001413352409593, 0.2781005208503495874828874733, 0.3049206954472171684651353228, 0.1847200419742236837090651176, 0.0592103047769369088203848724, 0.0091870693147688423735138664, 0.0005916950154463692437198871, 0.00001179988890292258488772926452195612, 3.516519820935085554778658271622e-8 }; static const double theRoots11[]={ 0.1130845488058154268229348492, 0.3677061331133296802840092964, 0.7412164889596188754120197132, 1.2103767331090971373400594628, 1.7563306713970830199947959482, 2.3667334950382137356028558781, 3.036091321060013352633301563, 3.7661913637410706306567062711, 4.5684774212457896658723497682, 5.472734976777985583266293788, 6.5652675509771439322910648905 }; static const double theWeights11[]={ 0.0210493487056254664850621016, 0.1093173281671845332417289869, 0.2393295915990602034851766943, 0.2968407397289745649866668759, 0.2177461725230723884435726917, 0.092075582334498452826289485, 0.0211354993062518603159651368, 0.0023905594492738027899519731, 0.00011350236526017178873005972819192326, 1.67220571183207045298292570545978e-6, 3.61508672356640301189885249669e-9 }; static const double theRoots12[]={ 0.1004973470775439704340045644, 0.3281334480212057200423692304, 0.6648565640987285141580302521, 1.0912855381649539348942792464, 1.590627687799052999172188788, 2.1507533771641365185280637867, 2.7646806551443645740744542285, 3.4306698464144878963916665942, 4.1529394811389434523787824852, 4.9443804982302368908939514337, 5.8354310650967658748636650968, 6.9119867115327596687289528024 }; static const double theWeights12[]={ 0.016679321732944293120642248, 0.0887535650720687764740908554, 0.2050508712142475301109679615, 0.2799607455324125787573545939, 0.2385218418319055840261054095, 0.1251191698859576863591700361, 0.0387195279112305369094768853, 0.0066115498025394212260544881, 0.0005629222942602187504201655, 0.00002025837109098767467841424813479917, 2.2598869037138956464756718347854e-7, 3.6265201520147429466652467307e-10 }; static const double theRoots13[]={ 0.0900724055193410310076611715, 0.2950878793898798228604619168, 0.6004849024557363118052314472, 0.9900550348696501275999717066, 1.4489906221930109011360011691, 1.9658027279508416780742287461, 2.5329283335957261259239704117, 3.1467986558948905870191848045, 3.808029975348347448934619642, 4.5223719548069878898883007382, 5.3036193935355364021293913258, 6.1825604645012989699534200644, 7.2445727431607385421249831081 }; static const double theWeights13[]={ 0.013432860851007116856445332, 0.0728523506387999392281527929, 0.1755780669507141485056136342, 0.2586480486886303698445016385, 0.2482405296708006447434636439, 0.154567288668424843825304802, 0.0605166988038196398378122849, 0.0141837562553499737153324656, 0.0018550122210828014267723165, 0.00012195545268841626609023694163696146, 3.40243297441478953645452379769277e-6, 2.933008643354802550581745964321e-8, 3.56212574129488921410504299e-11 }; static const double theRoots14[]={ 0.0813253598536064033671958828, 0.2671720742988328857184066612, 0.5456613774457232475656026878, 0.9031833523185066125224590551, 1.3267478142066156236436091497, 1.8056979472131458725645575767, 2.332385123399428990586506086, 2.9022926600252117539828338591, 3.5140714066125172778566523977, 4.1698677856833574613289764237, 4.8764292005833321946556043076, 5.6481270368190404622066500716, 6.5159161988607492478300542754, 7.5646023980664064528831977012 }; static const double theWeights14[]={ 0.0109728508297842092732823064, 0.0604193069431513289166120925, 0.1506002823682983267220373339, 0.2357956475284859603961839804, 0.2491448362187812360409622792, 0.1782020381297645425700532278, 0.0843180830942792465423463551, 0.0254145198894085395894156368, 0.0046323265978889642716702003, 0.00047494664449057461928517832774885986, 0.00002461564978573899086067053326492457, 5.4242659360624068557366120914471e-7, 3.67585249615234200829091894029e-9, 3.43522967426315672760781681e-12 }; static const double theRoots15[]={ 0.0739024394947065439340104184, 0.2433477163518331803378770697, 0.4985437057623474734466229502, 0.8280082697500405039193681333, 1.2203713867521806791481043152, 1.665872663571313260877060881, 2.1570547825604944891426162897, 2.6889508349971254581280328199, 3.2590950044310475246228605555, 3.8676203382723841528336238604, 4.5176982338754088540972760836, 5.2167442338364004553059135971, 5.9795010916970713081303780773, 6.8369761238748226317707886647, 7.8733809273302088554701717553 }; static const double theWeights15[]={ 0.0090759958664180294552172305, 0.0505900822850246052258394319, 0.1295751662163003441477128929, 0.2131661108897191199489052679, 0.2436320373257083255654690734, 0.1952326956487469184102290964, 0.1078709339531769460383054547, 0.0398873574253481717716363765, 0.0094798249197200312813664675, 0.0013725878662108031839619054, 0.00011245003619202588423888600417559408, 4.67446937010925398491089606288602e-6, 8.265091843249811563450647158257e-8, 4.4682016150931308979536836447e-10, 3.2597582570428179277764631e-13 }; static const double theRoots16[]={ 0.0675400048592905832208821677, 0.2228296564519962697278920523, 0.4577182194498087142418901454, 0.7624695010883611032155961607, 1.127135843132208673267943631, 1.542848034257612406200723916, 2.0024924217794705989493925248, 2.500947632688688960405493296, 3.035114383161157037714300501, 3.603933267829101709403156757, 4.2085533213486215015339581423, 4.8528510256257912165472599807, 5.544698797946550638061532095, 6.299077723504221015967078339, 7.1469746919447716817082864154, 8.1720031566415380770808353139 }; static const double theWeights16[]={ 0.0075906156296633570254015123, 0.0427361660398409812381853119, 0.1119171417875802245293309962, 0.1917433655549501551527818997, 0.2338164140743743209824025502, 0.2058726024325245464998729842, 0.1293649343278788663998546918, 0.0566382322750980981972186795, 0.0167252959833048651193515088, 0.003195472405452642058241751, 0.00037402692943007016336232423376927152, 0.00002487870992413051232295691707449582, 8.4169338505887138416014818339311e-7, 1.210369406010866710766742931483e-8, 5.286813125964946982373249978e-11, 3.0491881972095794403992539851905319e-14 }; static const double theRoots17[]={ 0.0620380684389885881396169678, 0.2050148627164888280647626638, 0.4220846105462689232488887964, 0.7049486951398390641799110719, 1.0448972166648122938305115235, 1.4339098705346110385846093286, 1.8652948556102704178008918909, 2.3339566030235635077498204571, 2.8364554766129107885116928197, 3.3710066757305300491908577086, 3.937535637378280173259826797, 4.5379046843167455664849443504, 5.1764862670378414889281576084, 5.8614699152743408507432815656, 6.6079863947318484855044123925, 7.4469551431239770486433200403, 8.4613979881828843248491354464 }; static const double theWeights17[]={ 0.0064113342270742847287616501, 0.0363968735262987980315411427, 0.0970796107046410479181060341, 0.1720097866533558826854621578, 0.2213805207683410875114377233, 0.2109034182844078507498955372, 0.1476191394114918190927967981, 0.0744501229319781969809766444, 0.0263405554581409301601335634, 0.0063218933735659308948263556, 0.0009866643403302511301374356, 0.00009474724647110304128488354220618054, 5.18673728707458544444637147496952e-6, 1.4461921627544430508239904513361e-7, 1.71128965664134131390854285646e-9, 6.10699456666971068589450912e-12, 2.815836879520940022430361150628721e-15 }; static const double theRoots18[]={ 0.0572425189937379521013181301, 0.1894336627105330014772197517, 0.3907755725290469857048189916, 0.654158334286548971632098109, 0.971943939454028903296157896, 1.3369004995015318168697351593, 1.742791083727450173781341569, 2.184656092239048731678149521, 2.6589008777507461628018538396, 3.1633001051145730903039756961, 3.6970086314667519976766135714, 4.260655847148133155465091971, 4.8566155532918735384143928897, 5.4896155116368061870959737207, 6.1680673549456150139974525159, 6.9071911010732038180473350946, 7.7378082325133013032242185417, 8.7423615084436605655948200633 }; static const double theWeights18[]={ 0.0054634554657003561781824862, 0.0312313018446836557387297629, 0.0845847589372126348726314744, 0.1541411733827789558005391319, 0.2075761598790986059918381536, 0.2113418461356839218886220869, 0.162058107208212390461852338, 0.0921247764117601897576017386, 0.0379618578030483290410090978, 0.0110279674269950304531137322, 0.0021829271278115487668799169, 0.00028211116069263564906859039398050163, 0.00002250717204720666142637110892983675, 1.02597418939480684142915602505165e-6, 2.383491687160457872488090650471e-8, 2.3447760189565996911686780909e-10, 6.9041338737025706782003027e-13, 2.57044054739024964954411120534979e-16 }; static const double theRoots19[]={ 0.0530329148205618956163524304, 0.1757156129822389754745549569, 0.3630996452410110875705333185, 0.6090626274098077013689192207, 0.9068926448643078158904692344, 1.2500784842104986377672835267, 1.6328434687555194203764652702, 2.0504298055505144055669587027, 2.4992078925876391973801329546, 2.9766944443891336483543786336, 3.4815499234551473133979510714, 4.0136123278330801430451955909, 4.5740239052090585964772233931, 5.1655320016502904299187399737, 5.7931226569181131264153182272, 6.4653634913782166300035556483, 7.1975218182379603848182957367, 8.0203014848393672747674886054, 9.0155820724805673321303067452 }; static const double theWeights19[]={ 0.0046930626369809221834901993, 0.0269846135141442824801496302, 0.0740288110498511261823928275, 0.1381355374728739173014107843, 0.1932876710419251163302409684, 0.2082262572079654451877543669, 0.1725844414934473176787675408, 0.108663020878037297558072455, 0.050991274121041557024842834, 0.017418104778625109396246465, 0.0042105708453765468449167298, 0.0006960280744698953761461289, 0.00007535950435755361673765212725824208, 5.04991302924865759448456314625947e-6, 1.9365207671875063144092957333703e-7, 3.78448743055796592574524472433e-9, 3.123394100351152827487666099e-11, 7.6550649520905313321142307635478351e-14, 2.3219607132857847422825115131665e-17 }; static const double theRoots20[]={ 0.0493139298443318264139046861, 0.1635651780076639458675798142, 0.338499853751569289459451581, 0.5688200073497222226084292162, 0.8486133323905818519557817267, 1.1720206189802703854184612697, 1.533714143992892250034583532, 1.9291749903662652750924730136, 2.3548170841243928697082690811, 2.8080203120283681896508880019, 3.287128449243842404537329557, 3.7914566460467746869567893106, 4.3213478400240531498363952046, 4.8783243852734386440776995412, 5.4654107281972964387769605288, 6.0877827369028366524058293915, 6.7541170764274480106420896487, 7.479698793893224728050891454, 8.2951016477646073139136095945, 9.281659617625997198846809902 }; static const double theWeights20[]={ 0.0040605956641742113653130459, 0.0234643443233459496075568298, 0.0650767358211894963754858369, 0.1238946501038283665221421749, 0.1791110215062575330471115206, 0.2025005663704086782075045056, 0.1794256699563915796584434, 0.1233461961787560464690875508, 0.0647253696645388605700803467, 0.0254046047053163344206853618, 0.0072817963054948591429277089, 0.0014816359333497905500896063, 0.00020675542476797323634776995572704944, 0.00001894580913881298965039159087999498, 1.07660327407140916401166390114891e-6, 3.504466904941892210378975592091e-8, 5.8103432931689221505141589562e-10, 4.05571642721565968652713527e-12, 8.339187819619682035973921155785947e-15, 2.077560340371317499841530302759e-18 }; static const double theRoots21[]={ 0.0460092493138119036720052584, 0.1527441174852147994580126181, 0.3165233154882395755206601011, 0.5327405990786675132279863381, 0.7961743945075411246321212435, 1.101551417852972433023962846, 1.4439718907703343767131192974, 1.81917390675460552189790175, 2.2236659356330728811583480993, 2.6547731758722137214409160167, 3.1106417241299948777400225407, 3.5902366281463064287436235488, 4.0933636734012626845830065559, 4.6207448548587931016460031275, 5.1741885601167815077667305264, 5.7569274988750557653126027241, 6.3742781223656556612283851833, 7.0349922302237436080966353072, 7.7543515422570947045213433593, 8.5627921725895343618711578172, 9.541120748741891230455946771 }; static const double theWeights21[]={ 0.0035365940024946222329646306, 0.0205236642385609661107303789, 0.0574532125455884509370857131, 0.1112739478854932074218375843, 0.1654275250262079971494554231, 0.1949643172756064640466908412, 0.1829976090903409715182315369, 0.13574236611481013113569429, 0.0784700052976235333210781928, 0.0347320325929196655594963348, 0.011529395639375997670947262, 0.0028022305162200213317407196, 0.00048472184254588097984817276220207215, 0.00005764206476785022913689857753992524, 4.5104806377398280178017935110387e-6, 2.1919467499275132902289591921609e-7, 6.10508777935988851129862624857e-9, 8.652828782757200805959538138e-11, 5.1454647412393478259939963e-13, 8.93929860983423505966882141935549e-16, 1.8426975926921610349282060877e-19 }; static const double theRoots22[]={ 0.0430571413473216951041138499, 0.143058543126998500239756406, 0.2967985990126812338072419275, 0.5002542876387130651607362041, 0.7488014691823492216136611742, 1.0376911364292080093966402441, 1.3624252218375206069997659535, 1.719004461653504943706490586, 2.1040642603755322682654961256, 2.5149314705801882640570805776, 2.9496365482148987796599214428, 3.4069104555513379561517582299, 3.8861901524837871734574175528, 4.3876541546488896351858317847, 4.9123130794217782280318832123, 5.4621934387476405794607273923, 6.0406861557374923413258979869, 6.6532122166835744525736406575, 7.3085736964708802468944879672, 8.0220338663168043983657515518, 8.8238869994297742228083511107, 9.7944306729516998579257004179 }; static const double theWeights22[]={ 0.0030988194558909112741723049, 0.0180494599092758899708797889, 0.0509330128427303039289102813, 0.1001120549071538765566575562, 0.1524646768933780930046727891, 0.186262495642756554232275696, 0.1838000822876358253741057333, 0.145668139982670042801264604, 0.0916209125083201116861434557, 0.0450291362020478688031987971, 0.0169818125502674605074583196, 0.0048134711882454958041153508, 0.0010011635034450844116782374, 0.00014851911868894165367781442761689122, 0.00001517695888347239138891722276767804, 1.02220540782354583531732922507357e-6, 4.280321498585083280937094377183e-8, 1.02739051224404241852712419997e-9, 1.253274240702696248017523779e-11, 6.3909114281426042889024230011574923e-14, 9.442116848456673877439513119213e-17, 1.6212935696009791034793677907e-20 }; static const double theRoots23[]={ 0.0404071959005093807830621089, 0.134349278510632958157705561, 0.2790186469642406122659909302, 0.4708864294160517906527500893, 0.7058461492139937432713057608, 0.979616670861797657476229565, 1.2880730582786138290772802993, 1.6274761281143808928204711626, 1.9946077642512589756277366147, 2.3868351764758903312974001142, 2.802130862499182022635279524, 3.2390722267024719689174814166, 3.696840433819151897395010677, 4.1752350845774695886612763508, 4.6747215188617401819187626837, 5.1965329430041942176195252112, 5.7428641306361548466962741816, 6.3172272188631013104315146746, 6.9251209355759906930400724335, 7.5753791772250833549324970321, 8.2832358645526794768596085598, 9.0788415550871950707594267212, 10.04200275162125184779047753 }; static const double theWeights23[]={ 0.0027302766844277533386257191, 0.015953774977678455385831994, 0.0453321366558823706300514003, 0.090247526633773806875626846, 0.1403431179810101346082638361, 0.1768963096393432912336476122, 0.1823459530807571890970737439, 0.1531317978729445807932143036, 0.1037067991973304590478218334, 0.0558691942230566647165390689, 0.0235604041085637933747057148, 0.0076372404719949398815318716, 0.001864073112644894578689067, 0.0003344852169528450244907290172481267, 0.00004288635002847351412526560421533675, 3.7940622696367496962337385490036e-6, 2.2151563155181256290846408389997e-7, 8.04641774406030187186076727557e-9, 1.6751399968564602887741073841e-10, 1.76962117080254405348746086e-12, 7.784580812121728234926984607165394e-15, 9.838523346129804877932318362142e-18, 1.41593964658053526617976786e-21 }; static const double theRoots24[]={ 0.0380178904703297933853985143, 0.1264845900908353550531758288, 0.2629277491702056339489141678, 0.4442391623735381508612294758, 0.6667618621011970587535923346, 0.9266316363943467046612132232, 1.2200675870677559733309807354, 1.5435827851950413348220134531, 1.8941161948365203264692381723, 2.2691017246304783363421120901, 2.6664949583852986672107980529, 3.0847770320180937685947503523, 3.5229519416677565910993242174, 3.980550718193972766620145454, 4.4576548245131504942596327531, 4.9549529597270466097671017568, 5.4738519594251136934343831667, 6.0166776743336992713054240643, 6.5870356935033206571277057467, 7.1904823021906581645826659863, 7.8358693754837365350531409993, 8.5383936218725788897503178368, 9.3280616202451527141324042275, 10.2842062257622031232807023209 }; static const double theWeights24[]={ 0.0024178289236190572856176991, 0.0141676046165593990273955087, 0.0405001645529653122870871267, 0.0815277626161265775597242651, 0.1291113974886768917457429022, 0.1672430900531668334330671435, 0.1791178881609271262901815361, 0.1582746847246644055996409928, 0.1144014641701297736023442037, 0.0668244464035954795053661, 0.0310950903564817045271878596, 0.0113418285290830481802521658, 0.0031845771203628602284536214, 0.000674339186137856763717442, 0.00010514741496069722988586065435178212, 0.00001173344965491752403269257209942786, 9.046664338641093995452001352707e-7, 4.607883901323398433651071803415e-8, 1.46083828114479261002805800595e-9, 2.653188029737445528523595154e-11, 2.4408808567834465057290624e-13, 9.31326596680352336980443379033663e-16, 1.012354096069270845203700134885e-18, 1.22811875267888464693175017e-22 }; static const double theRoots25[]={ 0.0358547501395333918605234509, 0.1193546435929151023054932997, 0.2483115014980647635559389394, 0.4199768745647435341322435177, 0.6310850567309726141828600453, 0.8781431342093375017879963784, 1.1576857775707131875789794666, 1.4664672344691233200975888808, 1.8015879074824344892271517891, 2.1605659282454261153150126194, 2.5413693101226000043968845743, 2.9424244057143267680379743364, 3.3626142693270917220099744712, 3.8012781126994829803544145395, 4.2582215448814526283332033477, 4.7337474913330445951712333177, 5.228720487328003959014145474, 5.744684176463120836279780159, 6.2840673620667774828526175816, 6.8505479743809733343151136543, 7.4497244699804995194463691738, 8.0904562287538307979558312652, 8.7878971026414869527068350609, 9.5719105479032026971408634017, 10.5213725239547577368153445364 }; static const double theWeights25[]={ 0.0021512153226117457463622245, 0.0126363540785395349812787364, 0.0363138852038511708404469991, 0.0738132275938594928972529915, 0.1187709595184581307953802861, 0.1575785104454427161636423888, 0.1745455750611101745700490629, 0.1613199585212586849289193805, 0.1235147833573342886506938709, 0.0775069218087286066669898014, 0.0393510918441327843300103088, 0.015932138766364669588591316, 0.0050619417120641462489147334, 0.0012396358222892995308529157, 0.00022926259969146377977731856678942617, 0.00003126657728707916849358221591654016, 3.05570601840569917480786971628646e-6, 2.0656806226012257669877485116661e-7, 9.23191365454686223521392453755e-9, 2.5685719884739328134046267022e-10, 4.09143462879270430953448663e-12, 3.2947581047247259881666260301611942e-14, 1.0958352549918509158052387203659e-16, 1.02961024826062507489969738561e-19, 1.0584225380149636898315204299314851e-23 }; static const double theRoots26[]={ 0.0338889408249490589788363157, 0.1128672316665771511622164917, 0.2349889914540136731427051694, 0.3978147989145808396535054711, 0.5984203762164884881569313572, 0.833643483660454032627906526, 1.1003071955931141378136221049, 1.3953939914784656018082130158, 1.7161657329937703226291055328, 2.0602359345122091348528261679, 2.4256059644816856360020127476, 2.8106777859094563782776123853, 3.2142545835592510315254149354, 3.6355387299893728479670094893, 4.0741350302954477290858433161, 4.5300666769701375555805751244, 5.0038123696868024920453272666, 5.4963764343643939964779687057, 6.0094112634899272182333081018, 6.5454270662811473291052517303, 7.1081578679649694837206623188, 7.7032324458346998913332381445, 8.3395097058283904993061063033, 9.0320966335879506352178738834, 9.8107151916262280543151708168, 10.7538004579113115278578604705 }; static const double theWeights26[]={ 0.0019223436765404440603882283, 0.0113164837614271188715888766, 0.0326720878141760882551730871, 0.0669789382519036360744713331, 0.1092937006822273150420095499, 0.1480976192776255789985126792, 0.1689967375211550750065289031, 0.1625322065271455452189431541, 0.1309719515881696126496345139, 0.087593653165996983706644981, 0.0480592445353983148223317239, 0.0213503014755416345585265478, 0.0075699652801656690904016726, 0.0021083519201322213186856266, 0.00045313261635458131078778047767443402, 0.00007363871533538855331546590296601292, 8.83548476870400296619910936647308e-6, 7.6054984156003977973540310632241e-7, 4.532490944280835241858035963866e-8, 1.78671813116931192059489539418e-9, 4.384705750154296479149519692e-11, 6.1552510681098816531292787e-13, 4.359126512087648914041118342282307e-15, 1.2696419999549147361781241617165e-17, 1.0358655720481496760255269211e-20, 9.06752679885992608304486546489064e-25 }; static const double theRoots27[]={ 0.0320961823129189368637095369, 0.1069444490964773155834639919, 0.2228066623163194449617078939, 0.3775099842871647648634499179, 0.568428863785257555576167453, 0.7926957009026973034022099776, 1.0473964891283690185783002833, 1.3297280789041870891203335676, 1.6371108340199322704527573516, 1.9672601867475144210060908168, 2.3182256241859840545402661624, 2.6884071264750124238154462084, 3.0765584901171096890150305985, 3.4817855704290850226526923709, 3.9035461271193709884525714991, 4.3416571796288810016464878849, 4.7963159402381747225042475166, 5.2681419277408018199709648289, 5.7582515865471287807670136849, 6.2683844153246231220903991918, 6.8011153282296862420840873726, 7.3602218080588744718047018819, 7.9513537424418727550034120344, 8.583363454741639016808568604, 9.2713082701609598617441361726, 10.0447708137883852089945118447, 10.9817605361572653607494732123 }; static const double theWeights27[]={ 0.0017247748311110802750850436, 0.0101730080035104694672492244, 0.0294913527915636554719311517, 0.060914417443923285289805745, 0.1006340691221516800202338344, 0.138933153455451721415621474, 0.1627767165759321486204243281, 0.162188129714091061858841806, 0.1367881985142295814854197331, 0.0968378922936076365473950821, 0.056944112340861346880292115, 0.0274846529802162352166141315, 0.0107473647319902573848610644, 0.0033565699953284321825684216, 0.0008242220267075284180158451, 0.00015634281233271490910345358383557168, 0.00002244852719722158835094088562954835, 2.38235571785233046855374208064751e-6, 1.8155582310670171948888298928054e-7, 9.58597255869974253928561975064e-9, 3.3490664413007868890660593381e-10, 7.28271300823871573614116618e-12, 9.0500556032105938736432849884668748e-14, 5.6609086740371475035275826304646e-16, 1.450007366461737165981269864824e-18, 1.031665660178681289926930587e-21, 7.7249951996386965248277508194567e-26 }; static const double theRoots28[]={ 0.0304559001414679788564713012, 0.1015200819137350669929689134, 0.2116334551406717565760224645, 0.3588540908165834160096505791, 0.5408185028958985576757763687, 0.7549218441860185620715668435, 0.9984893999724804952582095974, 1.2689182619647220540127672193, 1.563782340774866697501404493, 1.8809021548142661727225063136, 2.2183855053099223809107326894, 2.5746469238139074846953310419, 2.9484136926179471793706136622, 3.3387252742277361764594855999, 3.7449318637517429143433672868, 4.1666969505633134961968333501, 4.6040085305577577579296484649, 5.0572042095015761484716899846, 5.5270172885886382639582134455, 6.0146548459612743612165058529, 6.5219266060001748866218165506, 7.0514591049841099326118931471, 7.607063358108185798599500049, 8.1944031487587644910253331481, 8.822319525918270028545293524, 9.5058182709072682404905392137, 10.2743451797586815961547629369, 11.205498571956128991499737008 }; static const double theWeights28[]={ 0.0015533423410057277689518205, 0.0091776137606416817756768689, 0.0267026689133984027174237589, 0.0555228425085410150395460103, 0.0927372446360257933575828242, 0.1301707031853548770294894632, 0.1561328709466988554290322096, 0.1605568616672847440201094102, 0.1410437299564281403081407038, 0.1050696296999537268022768959, 0.0657464748140059303835236671, 0.0341838911610679431523509429, 0.0145934085900766736436249026, 0.0050498344702574708619269596, 0.0013966120925948761596940997, 0.00030394525508605102742249787916128757, 0.00005114595455120065198991676255729214, 6.52121092883847537129731664457986e-6, 6.1511655700352154230575358272434e-7, 4.169796044450685245719694706795e-8, 1.95944920748515389381744440632e-9, 6.09390925277083665242446651e-11, 1.17920586129150193259573831e-12, 1.3025081141824459636883181655961197e-14, 7.2248684115714748742200222535576e-17, 1.63389498791900613926859283875e-19, 1.01779979926480157988871857e-22, 6.546949244710861998537112551062e-27 }; static const double theRoots29[]={ 0.0289505578221551797009795659, 0.0965375397710233379713509654, 0.2013569326055087030228352049, 0.3416675984964786496087537724, 0.5153365720371274724656335434, 0.719993579788468783882870269, 0.9531814768349072969088265122, 1.2124836309885870610459809155, 1.4956212540005720929393284745, 1.8005206741352019596708842151, 2.1253547864595671194164599785, 2.4685648186684028417609576909, 2.8288688221292308347300876687, 3.205262694368965323895738557, 3.5970186548382686831007977841, 4.0036853234289742303317122471, 4.4250931343649511238802605589, 4.861368938320352943312318485, 5.3129645260989530304508836765, 5.7807058516377016825039965164, 6.2658737702358109233281706489, 6.7703349306216487223359358001, 7.2967571435810161086839198335, 7.8489770943591654831739235009, 8.4326667729467422127824980883, 9.0566523458591914060186073431, 9.735886853339328727442103108, 10.4996819966983704262367486447, 11.425238721519825581582417835 }; static const double theWeights29[]={ 0.0014038687995080640915751917, 0.0083072334176390691876272073, 0.0242487215781703558070011917, 0.050719818872922815562893048, 0.0855445534721726517761637563, 0.1218608563254567722863570267, 0.1492612967453178865212254567, 0.1578879169472958087010123461, 0.1438615492888432190203877978, 0.1121890386964984939962265225, 0.0742388918980713568210672045, 0.0412731748508012137240104898, 0.0190687296252498895778304852, 0.0072357440211163493697413048, 0.0022265538013044185230336198, 0.0005479525100081857397385208, 0.00010619749492689662719382608060441989, 0.00001592779789993012049773885298254247, 1.81165354782152496443623816455746e-6, 1.5256481865693909032791547405541e-7, 9.23941842521018739760097965729e-9, 3.8803730924311371665531468402e-10, 1.07861055781102090201222417e-11, 1.8645736673623206640033566e-13, 1.837593647921568474247554498316217e-15, 9.072376241547238494785071129214e-18, 1.8180829839576568610293588303e-20, 9.952416201294473029565847680908994e-24, 5.5213888612941169767409299824e-28 }; static const double theRoots30[]={ 0.0275651266057367763033801903, 0.0919482056030775231355920888, 0.191880163751334514757706495, 0.3257951198227491347221430319, 0.4917634231815906640263065651, 0.6876244868923303049593137738, 0.9111188859048060892203664988, 1.1600027460958684053689011369, 1.4321375562271135980776760298, 1.7255544173140966804232201058, 2.0384955311264859802296300312, 2.3694376430833205376629272719, 2.7171026693895456649837427855, 3.0804604223266702746978430168, 3.4587276848218574455593735485, 3.8513672143607505006306289706, 4.2580897901012743713746823542, 4.6788622976235069427434571567, 5.1139252100456255347891666429, 5.5638238839472647839478159294, 6.0294602511080376369644078132, 6.5121755894437767148877730385, 7.0138828921198900667269890028, 7.5372829883063518730479341193, 8.0862319570403789512357283278, 8.6664054834398147601412646358, 9.2866120794989494379777859788, 9.961751366526103956625150625, 10.7210038204308203719920856131, 11.641186058624677571754662355 }; static const double theWeights30[]={ 0.0012729520905818820871150807, 0.0075429532228385291922130371, 0.022081719877732171978214708, 0.0464320283197796155121429744, 0.0789969590298037281114159124, 0.114028693929295587857138711, 0.142314302749598562913502303, 0.1544047755927291153763713897, 0.1453892972063891105017175087, 0.1181560153240753848166141052, 0.0822345623047893347029871819, 0.0485695710218688820436697387, 0.0241003115980768934716846136, 0.0099388778997182210979231356, 0.003367267343327575747989499, 0.0009255645169285552129773446, 0.00020359397612414668129952040841659954, 0.00003529407221130909794119530932162649, 4.73857426648206918691065972956579e-6, 4.8284155179841126327462053680793e-7, 3.645178170894010525268652257445e-8, 1.98003362983654364291460765005e-9, 7.460818873545164735356782711e-11, 1.86049399171495310699136491e-12, 2.8836033061625118501324679022114839e-14, 2.5445573316493315677748325492736e-16, 1.122021324338037422845436541764e-18, 1.999279712124529793059390532e-21, 9.65090986250911387543874452171176e-25, 4.6350113592719795672851437049e-29 }; static const double theRoots31[]={ 0.0262866611408020573523617312, 0.0877101086156253180788403937, 0.1831192031490291297905830487, 0.3111015816481082671022186738, 0.4699073863628789960706193865, 0.657563737365688162875302301, 0.871990869026328964361753836, 1.1111047705957137259602059891, 1.3728997742907302106571778387, 1.6555094664552686152375545982, 1.9572476364540157874270051482, 2.276632829368065731402960419, 2.6124007365684141795839382648, 2.963508563758977818792105628, 3.3291350471645961672430455047, 3.7086792337437552837773745902, 4.1017606889267681895222551031, 4.5082235654114256980798445033, 4.9281470541594551230122466743, 5.3618652639501289288674967539, 5.8100007491914037206874516798, 6.2735181394165792040438225392, 6.7538084594246819883787896086, 7.2528225587872620712035455352, 7.7732876451663300310950931536, 8.3190741469220952144448625273, 8.8958578503666473247417493567, 9.5124274907722102011080004526, 10.1836289867418131913284195021, 10.9385145273333241247207405754, 11.8535287691738034839166630155 }; static const double theWeights31[]={ 0.0011578027808793503710551202, 0.0068691718682067457048741416, 0.0201616536412366126711170794, 0.0425958905722973913947288653, 0.0730372306871843780610694983, 0.1066810808192811345191407498, 0.1354077317206450478810009556, 0.150302388772045319742591832, 0.1457852825940948967754935669, 0.1229782299046721597057160077, 0.0895905555718506316448572719, 0.0558951525271445645843767729, 0.0295891906595185811175786546, 0.01315854014010068293105911, 0.0048638395803236031981334206, 0.0014774072514527934095588933, 0.0003642582898093558019642738948074465, 0.00007191267647887379835842500991618531, 0.00001119629021290667509469606415224559, 1.35100883951468619829984102593549e-6, 1.2380724317740639598062265890455e-7, 8.41090920487975695509629625325e-9, 4.1130106962383421524516115349e-10, 1.395434107625071161993934284e-11, 3.132597734486014092646651e-13, 4.367806022665346804844382708234378e-15, 3.4623310939732024118936371453953e-17, 1.36794779295299503132162806389e-19, 2.17423771220801732178125699e-22, 9.2851980246916789917682322938018e-26, 3.874000954262600126426272122e-30 }; static const double theRoots32[]={ 0.0251039573752397179237625539, 0.0837868498578684147670991036, 0.1750010379696606157175483688, 0.2974690963200268055313850309, 0.4496005717530460224447881301, 0.629590872027124613944369481, 0.8355235095909654507845288546, 1.0654621672610750017066685526, 1.3175264417799385495301926369, 1.5899492499075214542776929057, 1.8811167979610683642340391211, 2.1895937591141994853509479378, 2.514137056864273516109857156, 2.8537017234989830493843988976, 3.2074419962047707299332335191, 3.5747103735789027246158213, 3.9550569476268179278935869572, 4.348231056496625508780729768, 4.7541872451901552021176957344, 5.1730977502901792017818750199, 5.6053743553455111307204670986, 6.0517037085759585917902909691, 6.5131024701633870820744307539, 6.9910028061152004555146655686, 7.4873865586145699460031345968, 8.0050019351177715412050238018, 8.5477296343002870388135680057, 9.1212426705774564221139589761, 9.7343083888139336596577393849, 10.4017190204647883445568102119, 11.152401428034382351935207614, 12.0624400320319191902113638133 }; static const double theWeights32[]={ 0.0010561193048893730336506935, 0.0062729470336080161799286182, 0.0184548925870714825819276564, 0.0391563102888242695702395915, 0.0676112161071460685396035857, 0.0998121813041959788753197502, 0.1286276503694608419251436194, 0.1457472509167638373566760722, 0.1452083406575044154124869021, 0.1266993273522720039799013166, 0.096206837253291842973067647, 0.0630869158298956115507868793, 0.0354193738262150063823305383, 0.0168692388122393906132667614, 0.0067489656566258957395953131, 0.0022445485111405181097505893, 0.0006136239791983747116547723, 0.0001362265742394103039857032882125441, 0.00002423000345838371427610752336271613, 3.40086531353055405572613722526712e-6, 3.7018277233506156779357299797757e-7, 3.061981036773936811227085509035e-8, 1.87848795428315635502901786334e-9, 8.297958578206368576988027808e-11, 2.54328816164204450552124148e-12, 5.1563413954005051034618629213449175e-14, 6.48799958235385466338914602993146e-16, 4.634163861571724749307109159881e-18, 1.6454655889234656456496049936e-20, 2.3398603738295766381804420990550109e-23, 8.867236490591689269554212710696e-27, 3.22462048753674585072263046e-31 }; static const double theRoots33[]={ 0.0240072748580803556078913371, 0.0801467266335506389827677228, 0.1674619059861389343673774717, 0.2847943831245779978729479895, 0.4306953920004713626362663321, 0.6035114581725393014508096236, 0.8014745459997619777249522337, 1.0227846364440111136236974048, 1.2656790531109343115163015328, 1.5284863083718707625578531698, 1.8096647701454439229665469412, 2.1078280597187227393215255494, 2.4217598817874088043167314053, 2.7504211765464379880276957076, 3.09295230977905129961438844, 3.4486726824578858299793863868, 3.8170797913378245441614560377, 4.1978495008594783704470373809, 4.5908391566718173795295658023, 4.9960952345122532153243416696, 5.4138675422558015291929865866, 5.8446326922952145444717334549, 6.2891308512582795282208277193, 6.7484220731887006260771371494, 7.2239726745996359187805229242, 7.7177898995020689687161400518, 8.2326385695079124220014587907, 8.7724063377396031475952632994, 9.3427611442368107988994460556, 9.9524477300125363367381592897, 10.6162048820554543235283103603, 11.3628370842145095101678753077, 12.2680796392090251543208014047 }; static const double theWeights33[]={ 0.0009659913527254919246067529, 0.0057434842820709315770614482, 0.0169330574571570731046610396, 0.0360655422415677346851417436, 0.0626685143014413291367245249, 0.0934075790478960827520642646, 0.1220362016742680332638518179, 0.1408790311927986617258562591, 0.1438109130047577223446005464, 0.1293882517827276014348053504, 0.1020224975257430772113950209, 0.0700033687773524157716221866, 0.0414667114401520006845400461, 0.0210234126979866231680789244, 0.0090400395668626133783715661, 0.0032652242211449182119242136, 0.000980560181488047462702649, 0.00024213436437669449404026723680393863, 0.00004857577680890057188968276138994975, 7.81173341924299731461448916462858e-6, 9.9190263385146255943162401211221e-7, 9.773000310871472521632885441583e-8, 7.32095631689804240704898092952e-9, 4.0691196211287633676625386363e-10, 1.628875669704272105444395211e-11, 4.5240441107494009128671991e-13, 8.308571490588183897717160937271512e-15, 9.4618272560357946765495028080655e-17, 6.10706095467401005275022089243e-19, 1.954290336737207213191057325e-21, 2.493296814779239528549903313736192e-24, 8.40880430731230784176541159988e-28, 2.6736359418217857333056214e-32 }; static const double theRoots34[]={ 0.0229881098591217852903890734, 0.0767620145763776612713527481, 0.1604459096098895745382542685, 0.2729866318762317009977774352, 0.4130616663049260899533046268, 0.5791534604023887071319390959, 0.7696290312730478104910811721, 0.9828140507115941942450523639, 1.2170562022359895572957316937, 1.4707754950213693435070449687, 1.7425014004282563012320672769, 2.0308981416176837590419832517, 2.3347802591002581084244184041, 2.653120844463294926494462138, 2.9850547652577793172792603153, 3.3298789620256933466192035846, 3.6870516090563510617546300459, 4.0561916782856905527543919592, 4.4370802857144216929985920958, 4.8296651722497209597634099739, 5.2340698187001433688691593934, 5.6506090826659941996471822403, 6.0798139890870295763718180212, 6.5224696236304046990279165848, 6.9796723891579131498075529912, 7.4529170332170157870266381132, 7.9442316173367282131356250059, 8.4563939801312815387088739114, 8.9932960212312924000661713045, 9.5605987586348334350781567599, 10.1670234326635770823909573996, 10.8272558002794092294489560935, 11.5699808778114898080598982952, 12.4705953981812928275720212534 }; static const double theWeights34[]={ 0.0008858244967539738228685363, 0.0052717345750239891744027581, 0.0155721075223707682826415314, 0.0332821848260100583715013022, 0.0581627553739332432252420866, 0.0874473175826127147757725318, 0.1156765740069394361663945593, 0.1358130516713004473041860957, 0.1417346855424039583413574607, 0.1311301728359689414643984802, 0.1070103939235049420370778314, 0.0765280884249450663028593451, 0.0476068211960147242521451804, 0.0255557084116706891582451491, 0.0117378105364883331841889579, 0.0045717214841550086694176702, 0.0014957439452364225203378684, 0.00040694556128461980475751053616609072, 0.00009107114515873964121518052653075801, 0.00001656519676545787958492974193458711, 2.41654616022221737851693081792475e-6, 2.7849395610636657793808085272816e-7, 2.491682945865228738737873743611e-8, 1.69566789373390941856484647421e-9, 8.564865785407741871978466851e-11, 3.11614679242086843758503233e-12, 7.8654186961490058156867271347414306e-14, 1.312176727334705216885482963900331e-15, 1.3561525307817716231227404402875e-17, 7.9309754562319459475774198049e-20, 2.29335843358198411367092014e-22, 2.63202156578318559279139940986402e-25, 7.9211660857791579492051771571e-29, 2.208603673193250528651651215795412e-33 }; static const double theRoots35[]={ 0.0220390088789048981956111022, 0.0736083755957145269041949055, 0.1539038676885386480104303198, 0.2619657238811173897284318858, 0.3965841971580955573901375688, 0.5563641925361747777627841281, 0.739795681230923821401312912, 0.9453201962426261789592685052, 1.1713886719554996641397608587, 1.4165083130615924549617998614, 1.6792780509651330938102701164, 1.9584134637968983791756751839, 2.2527628059718376802321602223, 2.561316113961948283257069146, 2.8832093661996843546700950825, 3.2177255114595531555998306604, 3.5642939489046464018718736095, 3.922489819601294260086403016, 4.292034303167555875840019539, 4.6727970381807071386093782731, 5.0648018309484038108799168332, 5.4682370232230707791335481768, 5.8834723202229966506959017951, 6.3110846531817930309305578278, 6.7518969845119181980477685385, 7.207036279319476451001619856, 7.6780210057666021204257114252, 8.1668962608240159007840652256, 8.6764499338741606630140253389, 9.2105759508906234589391754584, 9.7749269249531546051698366891, 10.3781999503568528884256569043, 11.0350282975468294010123881328, 11.7739803725591186713120569806, 12.6701243510825113325679953776 }; static const double theWeights35[]={ 0.0008142809506326494096715988, 0.0048500752679025855514158071, 0.0143516005006474178839015569, 0.0307702995535813790790168319, 0.054051628376079583624437354, 0.0819081169306923176781745354, 0.109577130037791381109510889, 0.1306431307428362803001192086, 0.1391081618240893513806429045, 0.1320191511143770487470151423, 0.1111711450668924486155595397, 0.0825707892770184459585840658, 0.053721536045757765386004671, 0.0303880735019191954818932928, 0.0148265606034974791051996229, 0.0061877953383701047903245363, 0.0021896748450433408576443726, 0.0006509350704022457762279155, 0.00016095048759653444939177028572546303, 0.00003274608751462411213112270226637689, 5.41728365599645293961570593285276e-6, 7.1910188736034115648075753535181e-7, 7.544472424220214036387277549458e-8, 6.14776189292088469307416142952e-9, 3.8118614218841895020545156938e-10, 1.754675648419270138435083719e-11, 5.8184213838343169480581635e-13, 1.3382711080287353745925618817259929e-14, 2.03341590075872849576956342701992e-16, 1.912162269276453130135043233928e-18, 1.0157757181104580659795676074e-20, 2.6608086951669741191253829364973446e-23, 2.7538968206077716712061612700253e-26, 7.414810723177378327722346628e-30, 1.818048041697481596744669406741287e-34 }; static const double theRoots36[]={ 0.0211534144800451665091072014, 0.0706643669579258614815069377, 0.1477923594089049764569273755, 0.251660743389605695721364178, 0.3811607332754692383247525823, 0.5350077457247696863409057696, 0.7118037868146244006878983247, 0.9100971725772943881611266084, 1.1284352931798393238629953954, 1.365408165169746190337315306, 1.6196821196714753668567706323, 1.8900241499668038048657505935, 2.175318173422102021446214749, 2.4745748122453386698059264834, 2.786936368931682585339176602, 3.1116785735336107044192690516, 3.4482105017896474142437775999, 3.7960738722470678769705764035, 4.1549427716436958931353833402, 4.5246247607801025273392259996, 4.9050643009564330128020505474, 5.2963495389644768743447854541, 5.6987237344860883781975014354, 6.1126030730549887475797723838, 6.5386033989959591641345071476, 6.9775797458362550550579162122, 7.4306848572629711424638448582, 7.8994570188700806655938596317, 8.385955225292850447245363397, 8.8929749589284517901860869628, 9.424410345892275640590145637, 9.9859044057172610815257376748, 10.5861296418147671678687378638, 11.2396674776279957863383481133, 11.9749725004102385705228389954, 12.8667938391439986452557931261 }; static const double theWeights36[]={ 0.0007502326815262425456069673, 0.0044720557083391535710588142, 0.0132540901793258291953536017, 0.028498647763479690548805755, 0.0502967535546827530794572573, 0.0767649678511890126310705173, 0.103754781531380136953610879, 0.1254444823617736145625087553, 0.1360456376784258454902272999, 0.1321524702225590183101447656, 0.114527136822857848740377324, 0.0880665230180870967024834752, 0.0597036692673490088498803665, 0.0354350143307939156833628061, 0.0182755671093026252614727564, 0.0081268725964260113996960616, 0.0030905746188161236116714641, 0.0009965121732387215360157808, 0.00026995268006545936739687553680040397, 0.00006084057402729996062630337616023409, 0.00001128648546943983940742488403631696, 1.70315849399820487468317969211788e-6, 2.0631340710868798288197811546771e-7, 1.976135753942267099154825590565e-8, 1.47070340333180054900864034944e-9, 8.331042910234832412088901769e-11, 3.50423247173774666080695374e-12, 1.06178675590500448337668448428509844e-13, 2.231045119226632072381547071713853e-15, 3.0950890862562685718541330133207e-17, 2.65461938122568920056432936916e-19, 1.283987825670731952843112512e-21, 3.053993058769060979422209462896618e-24, 2.857216145444344076437390347977e-27, 6.89926314894409730017524359e-31, 1.49155402206903758781288493765511e-35 }; static const double theRoots37[]={ 0.0203255371490788651111067627, 0.0679110321246338753437821035, 0.142072924300249653907999083, 0.2420087264368778003154786649, 0.3667002497223778941477351364, 0.5149628089526891554352220118, 0.6855005914618028147440005824, 0.8769603334903865228015594956, 1.0879794330897746860997147281, 1.3172263410792695326598968872, 1.5634324413306922328944293348, 1.825415672983621197881188551, 2.1020968309674786206609434791, 2.3925098425852108631816796262, 2.6958074326149595680916597548, 3.011263543048685720728338127, 3.3382737421649745361576431544, 3.6763546993892792606974262359, 4.0251436578561156572989907769, 4.384398732701132023897628201, 4.7540008190492766674790099207, 5.1339579271683463045032375089, 5.5244128966402680864594820847, 5.9256557145470276908434197967, 6.33814214090112883614527811, 6.7625211472914460233544138466, 7.1996750222993931519098002364, 7.6507783097777079617684888307, 8.1173858601068890920545152262, 8.6015679489360170353695448923, 9.1061256064716262717070714187, 9.6349516529138221707224915076, 10.1936785641871802151062383898, 10.7909539681885852260711267144, 11.4413081511686031574817710363, 12.1730845995436521697688050801, 13.0607224357098176539436246649 }; static const double theWeights37[]={ 0.0006927240540240537382971925, 0.0041321931584564253384904298, 0.0122646343279695273932858029, 0.0264400329532339667878263461, 0.0468634638602165038690927598, 0.0719922600980396828444004396, 0.0982177120514776750398775615, 0.1202764844539645967638397409, 0.1326471447880544263866824922, 0.1316264494644883130168932823, 0.1171169633844001425680206302, 0.0929736065353500404879706991, 0.0654601279041674697954293895, 0.0406085161680288478628584198, 0.0220415058589621453624327899, 0.0103911551526514590026570376, 0.0042224137398315269497904739, 0.0014670803794296703948643083, 0.00043219181200781494540392225238549336, 0.00010698495111877806046341236196490457, 0.00002203837739113556597832448035755932, 3.73802047379859208485482061067158e-6, 5.1594287234852335163908010657692e-7, 5.718896614247480881918036443594e-8, 5.01427206442893111350128213497e-9, 3.4171908438010011725518563179e-10, 1.772988048765901565547942722e-11, 6.8314884761044159923176542e-13, 1.8960596366325518422791464106287059e-14, 3.64826345202767530268434965029113e-16, 4.631711144552886076192380922135e-18, 3.6315234385015130721647800692e-20, 1.602896743536897611407682e-22, 3.46951598667862853643602547044076e-25, 2.94072958200845083290346685191e-28, 6.3829628697473940975853662e-32, 1.2197959101544321105554715717188e-36 }; static const double theRoots38[]={ 0.0195502482495642698456723, 0.065331558063751373256149956, 0.1367113897663124944999652291, 0.2329536046630390318046400373, 0.3531214898526752474154668447, 0.4961208145271841101459391465, 0.6607490540243529864224638025, 0.8457436755466634088296069227, 1.0498260009143202412418972122, 1.2717386079404438319001272806, 1.5102754003276816662448335566, 1.764304393411870284882294562, 2.0327838941559286619237865134, 2.3147731146608896049129641059, 2.6094384028984625801132199062, 2.9160562694076348262133533591, 3.2340142972781481045207653454, 3.5628108953557486060162569746, 3.902054727660848358926852905, 4.2514645501258386254438348712, 4.6108701257509760198601821887, 4.9802148847735807324850211725, 5.3595610627534318704232780189, 5.7490982093677909320249605922, 6.1491562524708909099549123901, 6.5602247926553067926343300311, 6.9829811131751731885588060083, 7.4183307390920948200035486627, 7.8674666871208028414632304105, 8.3319576476549316899373160285, 8.8138829849987430434362591493, 9.3160475687622231330922040291, 9.8423416687981270301369165382, 10.3983864616759575566736235527, 10.9928045434356571845626966033, 11.6400758231876546064071413257, 12.3684353259822499847763929487, 13.252020767112260260210989456 }; static const double theWeights38[]={ 0.0006409418819123643996383552, 0.0038258081663377212171233583, 0.0113703912205945416281940331, 0.0245707363435355256926084863, 0.0437205388579582232555860258, 0.0675645645981261983191450765, 0.09296755004605148410825891, 0.1151852141787965695770761664, 0.1289990285199738361672521068, 0.1305335036659389033181662581, 0.118990537697619960719685363, 0.0972707926087737819383331108, 0.0709135580131795053113269807, 0.0458222910118456616580027543, 0.0260714190870646882270063871, 0.0129716066172755777716108523, 0.0056032666761493112526870753, 0.0020857080646708810724144846, 0.0006637753097386737541447718, 0.00017911803718900632528244915975284595, 0.00004062133951846178882696919051010044, 7.66820175091290421525376366954768e-6, 1.19228397694279936727087538718202e-6, 1.5091105376821851836230853197108e-7, 1.534521980307546838577030220588e-8, 1.23469552079902661163432474235e-9, 7.723922104243363348871790066e-11, 3.67940463356009851327556181e-12, 1.301727850143264686463392e-13, 3.316978269135272370543598754023654e-15, 5.8574803122081236845108240690549e-17, 6.82035042235734070226330656006e-19, 4.898969673944822643456803026e-21, 1.9774197249790252774483289903785189e-23, 3.9033008250110309474449615730721e-26, 3.0036509766618386959048118831e-29, 5.8732012440946251233120077931134277e-33, 9.94519751819059002037011406316e-38 }; static const double theRoots39[]={ 0.0188229901624301331423159552, 0.0629109869021464227261371621, 0.131677303339210788870797473, 0.2244453100539924741599113249, 0.3403517243583795364439329437, 0.4783843540163419409869237915, 0.6374259329793068660871330431, 0.8162975992439141767233702211, 1.01379888269495845500926752, 1.2287422968546988482386947021, 1.4599816239988464820199140904, 1.7064337878771004676127009088, 1.9670947849564557144927447197, 2.2410504966829685909641191991, 2.5274833686431485085398296301, 2.82567596944500810057853796, 3.1350123842625609268295566621, 3.4549782986349387600335969049, 3.7851605197376554252222139707, 4.1252465874498109295730091528, 4.4750250613492220978126589681, 4.8343870435422459755973072347, 5.2033295218238138886447382006, 5.5819612074023450527669592449, 5.9705117191158545507793605419, 6.3693452704816466853758068973, 6.7789805146646010704252425487, 7.2001190158753183804471186546, 7.6336861641022319273207860813, 8.0808906516009502022744715876, 8.5433127151117931277629502782, 9.0230389628250094459489872238, 9.5228766719007293875925177774, 10.046712532327582118582994394, 10.6001558244960985486103034358, 11.1918040590579831722150529159, 11.8360875626085863198100712169, 12.5611354570946206361513234296, 13.4407922374373760417927496022 }; static const double theWeights39[]={ 0.0005941912765929000359211399, 0.003548891048664550986548396, 0.0105602875851918200190687018, 0.0228700336338707030788666968, 0.0408399192427367968522788549, 0.0634571606405554352889393678, 0.0880010871848739145902374283, 0.1102057035794546038769294863, 0.1251749103586778965517947534, 0.1289602103923336687888213209, 0.1202049688842643286632522907, 0.1009540916089175490005256634, 0.0760027840002601328580648935, 0.0509951748063207709556810399, 0.0303058981802871853715069539, 0.0158487083779821242823199769, 0.0072441334732416074203716723, 0.0028737497172292545803896767, 0.0009821899466416080709215399, 0.00028699852156079597619546500977976768, 0.00007111339602449277148539677113888109, 0.00001481157628726650239157624265187145, 2.56856360575370869326440060778339e-6, 3.6699742282193627732340107027776e-7, 4.270099222280113019987850183208e-8, 3.99272418790152835234213561516e-9, 2.9550681896885622137543562294e-10, 1.700837291811331898825056392e-11, 7.4556410834399869893635007e-13, 2.4272726030711274585211020767339372e-14, 5.6906662985599344423576110276991e-16, 9.242325625111814454345709816294e-18, 9.8904273631943930343332894122e-20, 6.52147083995284767109575102e-22, 2.412057822942989022115369372291526e-24, 4.350680149212321833699283651892e-27, 3.045649093126587374345055462e-30, 5.376108429346143309318410814103207e-34, 8.0849382797793148636692655003e-39 }; static const double theRoots40[]={ 0.0181397005082948378524401474, 0.0606359722334330323317006934, 0.1269434513472307462286323953, 0.2164390131043138745139323638, 0.3283256911587094698388534981, 0.4616658202602770540639830571, 0.6154201396834196186952129424, 0.7884869819405788002346580245, 0.979738733830447933402399561, 1.1880538008120501643399841791, 1.4123431536218229101139772077, 1.6515712395921842703994918331, 1.904771563947685829268915732, 2.1710575826809929973046820647, 2.449629722534865140339086077, 2.7397793944698467868832898938, 3.0408908367045790425390712192, 3.3524415488348845819924663456, 3.6740019883494474860235892024, 4.0052351155523623394403232408, 4.3458963064471791543080867578, 4.6958341153718969959594744337, 5.0549923684127950183947999908, 5.4234141144254907919635562571, 5.8012480669123749816039341972, 6.1887583600945204377578260478, 6.5863387554766470920495281444, 6.9945329390186812994503066073, 7.4140633641907829256248431521, 7.8458724426464351475671330916, 8.2911821789522836171639462041, 8.7515824167468727264720025754, 9.2291654497390674136502960753, 9.7267397590937824085962892799, 10.2481876028098487334880310853, 10.7991058987248692647654543605, 11.3880671009604767374799558523, 12.0294527705330321028828364389, 12.751288602215954184995704258, 13.6271336705727514664042210761 }; static const double theWeights40[]={ 0.000551876060794132463437798, 0.003297993050650623346339405, 0.0098247443293383773861183424, 0.0213197818160926014655424573, 0.0381964199467010583331203923, 0.0596463767660520225561448392, 0.0833116256555750786657969072, 0.1053639045774873834547574373, 0.1212368550486425415148903206, 0.1269861621716086412296155692, 0.120821212136477049501418694, 0.1040335453362978029275591838, 0.0806823279849375942215256422, 0.0560536228597038006576852852, 0.0346821922991377926414411242, 0.0189938110858157461134119408, 0.0091482933459612646237567408, 0.0038495539939282763501754465, 0.0014055075882826572765171724, 0.00044206443593747073950697945506938608, 0.00011887143000050882037289754709155543, 0.00002710855612112422346256132486362821, 5.19757032784332648547461944516875e-6, 8.2994191291484321832721690290889e-7, 1.0922181385606142844350522158499e-7, 1.170873420375285772838005947202e-8, 1.00901722385835954271685601844e-9, 6.884455381213794868137709179e-11, 3.65363396001040353854831011e-12, 1.4769073431616414897320294e-13, 4.433853229326137326952819095434411e-15, 9.5836753583268964502920637072951e-17, 1.434385210500509804797670360023e-18, 1.4134698449768307106623297084e-20, 8.5720509945817582794588092e-23, 2.91072219783710282525084773487796e-25, 4.80650612787263249533472901977e-28, 3.06682460551722064991526966e-31, 4.89668065377803543144218543779782e-35, 6.554385589098533207251297335e-40 }; static const double * const theRoots[] = { theRoots1, theRoots2, theRoots3, theRoots4, theRoots5, theRoots6, theRoots7, theRoots8, theRoots9, theRoots10, theRoots11, theRoots12, theRoots13, theRoots14, theRoots15, theRoots16, theRoots17, theRoots18, theRoots19, theRoots20, theRoots21, theRoots22, theRoots23, theRoots24, theRoots25, theRoots26, theRoots27, theRoots28, theRoots29, theRoots30, theRoots31, theRoots32, theRoots33, theRoots34, theRoots35, theRoots36, theRoots37, theRoots38, theRoots39, theRoots40 }; static const double * const theWeights[] = { theWeights1, theWeights2, theWeights3, theWeights4, theWeights5, theWeights6, theWeights7, theWeights8, theWeights9, theWeights10, theWeights11, theWeights12, theWeights13, theWeights14, theWeights15, theWeights16, theWeights17, theWeights18, theWeights19, theWeights20, theWeights21, theWeights22, theWeights23, theWeights24, theWeights25, theWeights26, theWeights27, theWeights28, theWeights29, theWeights30, theWeights31, theWeights32, theWeights33, theWeights34, theWeights35, theWeights36, theWeights37, theWeights38, theWeights39, theWeights40 };