From b13d4d5945e605cf2e51913dafe74125aa5c523f Mon Sep 17 00:00:00 2001 From: Christopher Rackauckas Date: Thu, 26 Jul 2018 21:23:20 -0700 Subject: [PATCH] modernize tableaus --- src/tableaus/feagin_tableaus.jl | 1280 ++++++++++++------------ src/tableaus/high_order_rk_tableaus.jl | 308 +++--- src/tableaus/low_order_rk_tableaus.jl | 126 +-- src/tableaus/rkc_tableaus.jl | 2 +- src/tableaus/rkn_tableaus.jl | 14 +- src/tableaus/sdirk_tableaus.jl | 2 +- src/tableaus/symplectic_tableaus.jl | 168 ++-- src/tableaus/verner_tableaus.jl | 1244 +++++++++++------------ 8 files changed, 1572 insertions(+), 1572 deletions(-) diff --git a/src/tableaus/feagin_tableaus.jl b/src/tableaus/feagin_tableaus.jl index 31d05d8b8a..48279d11d4 100644 --- a/src/tableaus/feagin_tableaus.jl +++ b/src/tableaus/feagin_tableaus.jl @@ -125,7 +125,7 @@ end constructFeagin10 """ -Base.@pure function Feagin10ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} +function Feagin10ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} adaptiveConst = T(0.002777777777777778) a0100 = T(0.1) @@ -274,104 +274,104 @@ function Feagin10ConstantCache(T::Type,T2::Type) adaptiveConst = T(1//360) a0100 = T(1//10) - a0200 = T(parse(BigFloat,"-0.915176561375291440520015019275342154318951387664369720564660")) - a0201 = T(parse(BigFloat,"1.45453440217827322805250021715664459117622483736537873607016")) - - a0300 = T(parse(BigFloat,"0.202259190301118170324681949205488413821477543637878380814562")) - a0302 = T(parse(BigFloat,"0.606777570903354510974045847616465241464432630913635142443687")) - - a0400 = T(parse(BigFloat,"0.184024714708643575149100693471120664216774047979591417844635")) - a0402 = T(parse(BigFloat,"0.197966831227192369068141770510388793370637287463360401555746")) - a0403 = T(parse(BigFloat,"-0.0729547847313632629185146671595558023015011608914382961421311")) - - a0500 = T(parse(BigFloat,"0.0879007340206681337319777094132125475918886824944548534041378")) - a0503 = T(parse(BigFloat,"0.410459702520260645318174895920453426088035325902848695210406")) - a0504 = T(parse(BigFloat,"0.482713753678866489204726942976896106809132737721421333413261")) - - a0600 = T(parse(BigFloat,"0.0859700504902460302188480225945808401411132615636600222593880")) - a0603 = T(parse(BigFloat,"0.330885963040722183948884057658753173648240154838402033448632")) - a0604 = T(parse(BigFloat,"0.489662957309450192844507011135898201178015478433790097210790")) - a0605 = T(parse(BigFloat,"-0.0731856375070850736789057580558988816340355615025188195854775")) - - a0700 = T(parse(BigFloat,"0.120930449125333720660378854927668953958938996999703678812621")) - a0704 = T(parse(BigFloat,"0.260124675758295622809007617838335174368108756484693361887839")) - a0705 = T(parse(BigFloat,"0.0325402621549091330158899334391231259332716675992700000776101")) - a0706 = T(parse(BigFloat,"-0.0595780211817361001560122202563305121444953672762930724538856")) - - a0800 = T(parse(BigFloat,"0.110854379580391483508936171010218441909425780168656559807038")) - a0805 = T(parse(BigFloat,"-0.0605761488255005587620924953655516875526344415354339234619466")) - a0806 = T(parse(BigFloat,"0.321763705601778390100898799049878904081404368603077129251110")) - a0807 = T(parse(BigFloat,"0.510485725608063031577759012285123416744672137031752354067590")) - - a0900 = T(parse(BigFloat,"0.112054414752879004829715002761802363003717611158172229329393")) - a0905 = T(parse(BigFloat,"-0.144942775902865915672349828340980777181668499748506838876185")) - a0906 = T(parse(BigFloat,"-0.333269719096256706589705211415746871709467423992115497968724")) - a0907 = T(parse(BigFloat,"0.499269229556880061353316843969978567860276816592673201240332")) - a0908 = T(parse(BigFloat,"0.509504608929686104236098690045386253986643232352989602185060")) - - a1000 = T(parse(BigFloat,"0.113976783964185986138004186736901163890724752541486831640341")) - a1005 = T(parse(BigFloat,"-0.0768813364203356938586214289120895270821349023390922987406384")) - a1006 = T(parse(BigFloat,"0.239527360324390649107711455271882373019741311201004119339563")) - a1007 = T(parse(BigFloat,"0.397774662368094639047830462488952104564716416343454639902613")) - a1008 = T(parse(BigFloat,"0.0107558956873607455550609147441477450257136782823280838547024")) - a1009 = T(parse(BigFloat,"-0.327769124164018874147061087350233395378262992392394071906457")) - - a1100 = T(parse(BigFloat,"0.0798314528280196046351426864486400322758737630423413945356284")) - a1105 = T(parse(BigFloat,"-0.0520329686800603076514949887612959068721311443881683526937298")) - a1106 = T(parse(BigFloat,"-0.0576954146168548881732784355283433509066159287152968723021864")) - a1107 = T(parse(BigFloat,"0.194781915712104164976306262147382871156142921354409364738090")) - a1108 = T(parse(BigFloat,"0.145384923188325069727524825977071194859203467568236523866582")) - a1109 = T(parse(BigFloat,"-0.0782942710351670777553986729725692447252077047239160551335016")) - a1110 = T(parse(BigFloat,"-0.114503299361098912184303164290554670970133218405658122674674")) - - a1200 = T(parse(BigFloat,"0.985115610164857280120041500306517278413646677314195559520529")) - a1203 = T(parse(BigFloat,"0.330885963040722183948884057658753173648240154838402033448632")) - a1204 = T(parse(BigFloat,"0.489662957309450192844507011135898201178015478433790097210790")) - a1205 = T(parse(BigFloat,"-1.37896486574843567582112720930751902353904327148559471526397")) - a1206 = T(parse(BigFloat,"-0.861164195027635666673916999665534573351026060987427093314412")) - a1207 = T(parse(BigFloat,"5.78428813637537220022999785486578436006872789689499172601856")) - a1208 = T(parse(BigFloat,"3.28807761985103566890460615937314805477268252903342356581925")) - a1209 = T(parse(BigFloat,"-2.38633905093136384013422325215527866148401465975954104585807")) - a1210 = T(parse(BigFloat,"-3.25479342483643918654589367587788726747711504674780680269911")) - a1211 = T(parse(BigFloat,"-2.16343541686422982353954211300054820889678036420109999154887")) - - a1300 = T(parse(BigFloat,"0.895080295771632891049613132336585138148156279241561345991710")) - a1302 = T(parse(BigFloat,"0.197966831227192369068141770510388793370637287463360401555746")) - a1303 = T(parse(BigFloat,"-0.0729547847313632629185146671595558023015011608914382961421311")) - a1305 = T(parse(BigFloat,"-0.851236239662007619739049371445966793289359722875702227166105")) - a1306 = T(parse(BigFloat,"0.398320112318533301719718614174373643336480918103773904231856")) - a1307 = T(parse(BigFloat,"3.63937263181035606029412920047090044132027387893977804176229")) - a1308 = T(parse(BigFloat,"1.54822877039830322365301663075174564919981736348973496313065")) - a1309 = T(parse(BigFloat,"-2.12221714704053716026062427460427261025318461146260124401561")) - a1310 = T(parse(BigFloat,"-1.58350398545326172713384349625753212757269188934434237975291")) - a1311 = T(parse(BigFloat,"-1.71561608285936264922031819751349098912615880827551992973034")) - a1312 = T(parse(BigFloat,"-0.0244036405750127452135415444412216875465593598370910566069132")) - - a1400 = T(parse(BigFloat,"-0.915176561375291440520015019275342154318951387664369720564660")) - a1401 = T(parse(BigFloat,"1.45453440217827322805250021715664459117622483736537873607016")) - a1404 = T(parse(BigFloat,"-0.777333643644968233538931228575302137803351053629547286334469")) - a1406 = T(parse(BigFloat,"-0.0910895662155176069593203555807484200111889091770101799647985")) - a1412 = T(parse(BigFloat,"0.0910895662155176069593203555807484200111889091770101799647985")) - a1413 = T(parse(BigFloat,"0.777333643644968233538931228575302137803351053629547286334469")) + a0200 = T(big"-0.915176561375291440520015019275342154318951387664369720564660") + a0201 = T(big"1.45453440217827322805250021715664459117622483736537873607016") + + a0300 = T(big"0.202259190301118170324681949205488413821477543637878380814562") + a0302 = T(big"0.606777570903354510974045847616465241464432630913635142443687") + + a0400 = T(big"0.184024714708643575149100693471120664216774047979591417844635") + a0402 = T(big"0.197966831227192369068141770510388793370637287463360401555746") + a0403 = T(big"-0.0729547847313632629185146671595558023015011608914382961421311") + + a0500 = T(big"0.0879007340206681337319777094132125475918886824944548534041378") + a0503 = T(big"0.410459702520260645318174895920453426088035325902848695210406") + a0504 = T(big"0.482713753678866489204726942976896106809132737721421333413261") + + a0600 = T(big"0.0859700504902460302188480225945808401411132615636600222593880") + a0603 = T(big"0.330885963040722183948884057658753173648240154838402033448632") + a0604 = T(big"0.489662957309450192844507011135898201178015478433790097210790") + a0605 = T(big"-0.0731856375070850736789057580558988816340355615025188195854775") + + a0700 = T(big"0.120930449125333720660378854927668953958938996999703678812621") + a0704 = T(big"0.260124675758295622809007617838335174368108756484693361887839") + a0705 = T(big"0.0325402621549091330158899334391231259332716675992700000776101") + a0706 = T(big"-0.0595780211817361001560122202563305121444953672762930724538856") + + a0800 = T(big"0.110854379580391483508936171010218441909425780168656559807038") + a0805 = T(big"-0.0605761488255005587620924953655516875526344415354339234619466") + a0806 = T(big"0.321763705601778390100898799049878904081404368603077129251110") + a0807 = T(big"0.510485725608063031577759012285123416744672137031752354067590") + + a0900 = T(big"0.112054414752879004829715002761802363003717611158172229329393") + a0905 = T(big"-0.144942775902865915672349828340980777181668499748506838876185") + a0906 = T(big"-0.333269719096256706589705211415746871709467423992115497968724") + a0907 = T(big"0.499269229556880061353316843969978567860276816592673201240332") + a0908 = T(big"0.509504608929686104236098690045386253986643232352989602185060") + + a1000 = T(big"0.113976783964185986138004186736901163890724752541486831640341") + a1005 = T(big"-0.0768813364203356938586214289120895270821349023390922987406384") + a1006 = T(big"0.239527360324390649107711455271882373019741311201004119339563") + a1007 = T(big"0.397774662368094639047830462488952104564716416343454639902613") + a1008 = T(big"0.0107558956873607455550609147441477450257136782823280838547024") + a1009 = T(big"-0.327769124164018874147061087350233395378262992392394071906457") + + a1100 = T(big"0.0798314528280196046351426864486400322758737630423413945356284") + a1105 = T(big"-0.0520329686800603076514949887612959068721311443881683526937298") + a1106 = T(big"-0.0576954146168548881732784355283433509066159287152968723021864") + a1107 = T(big"0.194781915712104164976306262147382871156142921354409364738090") + a1108 = T(big"0.145384923188325069727524825977071194859203467568236523866582") + a1109 = T(big"-0.0782942710351670777553986729725692447252077047239160551335016") + a1110 = T(big"-0.114503299361098912184303164290554670970133218405658122674674") + + a1200 = T(big"0.985115610164857280120041500306517278413646677314195559520529") + a1203 = T(big"0.330885963040722183948884057658753173648240154838402033448632") + a1204 = T(big"0.489662957309450192844507011135898201178015478433790097210790") + a1205 = T(big"-1.37896486574843567582112720930751902353904327148559471526397") + a1206 = T(big"-0.861164195027635666673916999665534573351026060987427093314412") + a1207 = T(big"5.78428813637537220022999785486578436006872789689499172601856") + a1208 = T(big"3.28807761985103566890460615937314805477268252903342356581925") + a1209 = T(big"-2.38633905093136384013422325215527866148401465975954104585807") + a1210 = T(big"-3.25479342483643918654589367587788726747711504674780680269911") + a1211 = T(big"-2.16343541686422982353954211300054820889678036420109999154887") + + a1300 = T(big"0.895080295771632891049613132336585138148156279241561345991710") + a1302 = T(big"0.197966831227192369068141770510388793370637287463360401555746") + a1303 = T(big"-0.0729547847313632629185146671595558023015011608914382961421311") + a1305 = T(big"-0.851236239662007619739049371445966793289359722875702227166105") + a1306 = T(big"0.398320112318533301719718614174373643336480918103773904231856") + a1307 = T(big"3.63937263181035606029412920047090044132027387893977804176229") + a1308 = T(big"1.54822877039830322365301663075174564919981736348973496313065") + a1309 = T(big"-2.12221714704053716026062427460427261025318461146260124401561") + a1310 = T(big"-1.58350398545326172713384349625753212757269188934434237975291") + a1311 = T(big"-1.71561608285936264922031819751349098912615880827551992973034") + a1312 = T(big"-0.0244036405750127452135415444412216875465593598370910566069132") + + a1400 = T(big"-0.915176561375291440520015019275342154318951387664369720564660") + a1401 = T(big"1.45453440217827322805250021715664459117622483736537873607016") + a1404 = T(big"-0.777333643644968233538931228575302137803351053629547286334469") + a1406 = T(big"-0.0910895662155176069593203555807484200111889091770101799647985") + a1412 = T(big"0.0910895662155176069593203555807484200111889091770101799647985") + a1413 = T(big"0.777333643644968233538931228575302137803351053629547286334469") a1500 = T(1//10) - a1502 = T(parse(BigFloat,"-0.157178665799771163367058998273128921867183754126709419409654")) - a1514 = T(parse(BigFloat,"0.157178665799771163367058998273128921867183754126709419409654")) + a1502 = T(big"-0.157178665799771163367058998273128921867183754126709419409654") + a1514 = T(big"0.157178665799771163367058998273128921867183754126709419409654") - a1600 = T(parse(BigFloat,"0.181781300700095283888472062582262379650443831463199521664945")) + a1600 = T(big"0.181781300700095283888472062582262379650443831463199521664945") a1601 = T(27//40) - a1602 = T(parse(BigFloat,"0.342758159847189839942220553413850871742338734703958919937260")) - a1604 = T(parse(BigFloat,"0.259111214548322744512977076191767379267783684543182428778156")) - a1605 = T(parse(BigFloat,"-0.358278966717952089048961276721979397739750634673268802484271")) - a1606 = T(parse(BigFloat,"-1.04594895940883306095050068756409905131588123172378489286080")) - a1607 = T(parse(BigFloat,"0.930327845415626983292300564432428777137601651182965794680397")) - a1608 = T(parse(BigFloat,"1.77950959431708102446142106794824453926275743243327790536000")) + a1602 = T(big"0.342758159847189839942220553413850871742338734703958919937260") + a1604 = T(big"0.259111214548322744512977076191767379267783684543182428778156") + a1605 = T(big"-0.358278966717952089048961276721979397739750634673268802484271") + a1606 = T(big"-1.04594895940883306095050068756409905131588123172378489286080") + a1607 = T(big"0.930327845415626983292300564432428777137601651182965794680397") + a1608 = T(big"1.77950959431708102446142106794824453926275743243327790536000") a1609 = T(1//10) - a1610 = T(parse(BigFloat,"-0.282547569539044081612477785222287276408489375976211189952877")) - a1611 = T(parse(BigFloat,"-0.159327350119972549169261984373485859278031542127551931461821")) - a1612 = T(parse(BigFloat,"-0.145515894647001510860991961081084111308650130578626404945571")) - a1613 = T(parse(BigFloat,"-0.259111214548322744512977076191767379267783684543182428778156")) - a1614 = T(parse(BigFloat,"-0.342758159847189839942220553413850871742338734703958919937260")) + a1610 = T(big"-0.282547569539044081612477785222287276408489375976211189952877") + a1611 = T(big"-0.159327350119972549169261984373485859278031542127551931461821") + a1612 = T(big"-0.145515894647001510860991961081084111308650130578626404945571") + a1613 = T(big"-0.259111214548322744512977076191767379267783684543182428778156") + a1614 = T(big"-0.342758159847189839942220553413850871742338734703958919937260") a1615 = T(-27//40) b1 = T(1//30) @@ -382,10 +382,10 @@ function Feagin10ConstantCache(T::Type,T2::Type) b6 = T(0) b7 = T(1//25) b8 = T(0) - b9 = T(parse(BigFloat,"0.189237478148923490158306404106012326238162346948625830327194")) - b10 = T(parse(BigFloat,"0.277429188517743176508360262560654340428504319718040836339472")) - b11 = T(parse(BigFloat,"0.277429188517743176508360262560654340428504319718040836339472")) - b12 = T(parse(BigFloat,"0.189237478148923490158306404106012326238162346948625830327194")) + b9 = T(big"0.189237478148923490158306404106012326238162346948625830327194") + b10 = T(big"0.277429188517743176508360262560654340428504319718040836339472") + b11 = T(big"0.277429188517743176508360262560654340428504319718040836339472") + b12 = T(big"0.189237478148923490158306404106012326238162346948625830327194") b13 = T(-1//25) b14 = T(-1//20) b15 = T(-1//30) @@ -393,19 +393,19 @@ function Feagin10ConstantCache(T::Type,T2::Type) b17 = T(1//30) c1 = T2(1//10) - c2 = T2(parse(BigFloat,"0.539357840802981787532485197881302436857273449701009015505500")) - c3 = T2(parse(BigFloat,"0.809036761204472681298727796821953655285910174551513523258250")) - c4 = T2(parse(BigFloat,"0.309036761204472681298727796821953655285910174551513523258250")) - c5 = T2(parse(BigFloat,"0.981074190219795268254879548310562080489056746118724882027805")) + c2 = T2(big"0.539357840802981787532485197881302436857273449701009015505500") + c3 = T2(big"0.809036761204472681298727796821953655285910174551513523258250") + c4 = T2(big"0.309036761204472681298727796821953655285910174551513523258250") + c5 = T2(big"0.981074190219795268254879548310562080489056746118724882027805") c6 = T2(5//6) - c7 = T2(parse(BigFloat,"0.354017365856802376329264185948796742115824053807373968324184")) - c8 = T2(parse(BigFloat,"0.882527661964732346425501486979669075182867844268052119663791")) - c9 = T2(parse(BigFloat,"0.642615758240322548157075497020439535959501736363212695909875")) - c10 = T2(parse(BigFloat,"0.357384241759677451842924502979560464040498263636787304090125")) - c11 = T2(parse(BigFloat,"0.117472338035267653574498513020330924817132155731947880336209")) + c7 = T2(big"0.354017365856802376329264185948796742115824053807373968324184") + c8 = T2(big"0.882527661964732346425501486979669075182867844268052119663791") + c9 = T2(big"0.642615758240322548157075497020439535959501736363212695909875") + c10 = T2(big"0.357384241759677451842924502979560464040498263636787304090125") + c11 = T2(big"0.117472338035267653574498513020330924817132155731947880336209") c12 = T2(5//6) - c13 = T2(parse(BigFloat,"0.309036761204472681298727796821953655285910174551513523258250")) - c14 = T2(parse(BigFloat,"0.539357840802981787532485197881302436857273449701009015505500")) + c13 = T2(big"0.309036761204472681298727796821953655285910174551513523258250") + c14 = T2(big"0.539357840802981787532485197881302436857273449701009015505500") c15 = T2(1//10) c16 = T2(1) Feagin10ConstantCache(adaptiveConst,a0100,a0200,a0201,a0300,a0302,a0400,a0402,a0403,a0500,a0503,a0504,a0600,a0603,a0604,a0605,a0700,a0704,a0705,a0706,a0800,a0805,a0806,a0807,a0900,a0905,a0906,a0907,a0908,a1000,a1005,a1006,a1007,a1008,a1009,a1100,a1105,a1106,a1107,a1108,a1109,a1110,a1200,a1203,a1204,a1205,a1206,a1207,a1208,a1209,a1210,a1211,a1300,a1302,a1303,a1305,a1306,a1307,a1308,a1309,a1310,a1311,a1312,a1400,a1401,a1404,a1406,a1412,a1413,a1500,a1502,a1514,a1600,a1601,a1602,a1604,a1605,a1606,a1607,a1608,a1609,a1610,a1611,a1612,a1613,a1614,a1615,b1,b2,b3,b4,b5,b6,b7,b8,b9,b10,b11,b12,b13,b14,b15,b16,b17,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,c14,c15,c16) @@ -638,7 +638,7 @@ end constructFeagin12 """ -Base.@pure function Feagin12ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} +function Feagin12ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} adaptiveConst = T(49//640) c1 = T2(1//5) c2 = T2(5//9) @@ -899,21 +899,21 @@ function Feagin12ConstantCache(T::Type,T2::Type) c3 = T2(5//6) c4 = T2(1//3) c5 = T2(1) - c6 = T2(parse(BigFloat,"0.671835709170513812712245661002797570438953420568682550710222")) - c7 = T2(parse(BigFloat,"0.288724941110620201935458488967024976908118598341806976469674")) + c6 = T2(big"0.671835709170513812712245661002797570438953420568682550710222") + c7 = T2(big"0.288724941110620201935458488967024976908118598341806976469674") c8 = T2(9//16) c9 = T2(5//6) - c10 = T2(parse(BigFloat,"0.947695431179199287562380162101836721649589325892740646458322")) - c11 = T2(parse(BigFloat,"0.0548112876863802643887753674810754475842153612931128785028369")) - c12 = T2(parse(BigFloat,"0.0848880518607165350639838930162674302064148175640019542045934")) - c13 = T2(parse(BigFloat,"0.265575603264642893098114059045616835297201264164077621448665")) + c10 = T2(big"0.947695431179199287562380162101836721649589325892740646458322") + c11 = T2(big"0.0548112876863802643887753674810754475842153612931128785028369") + c12 = T2(big"0.0848880518607165350639838930162674302064148175640019542045934") + c13 = T2(big"0.265575603264642893098114059045616835297201264164077621448665") c14 = T2(1//2) - c15 = T2(parse(BigFloat,"0.734424396735357106901885940954383164702798735835922378551335")) - c16 = T2(parse(BigFloat,"0.915111948139283464936016106983732569793585182435998045795407")) - c17 = T2(parse(BigFloat,"0.947695431179199287562380162101836721649589325892740646458322")) + c15 = T2(big"0.734424396735357106901885940954383164702798735835922378551335") + c16 = T2(big"0.915111948139283464936016106983732569793585182435998045795407") + c17 = T2(big"0.947695431179199287562380162101836721649589325892740646458322") c18 = T2(5//6) - c19 = T2(parse(BigFloat,"0.288724941110620201935458488967024976908118598341806976469674")) - c20 = T2(parse(BigFloat,"0.671835709170513812712245661002797570438953420568682550710222")) + c19 = T2(big"0.288724941110620201935458488967024976908118598341806976469674") + c20 = T2(big"0.671835709170513812712245661002797570438953420568682550710222") c21 = T2(1//3) c22 = T2(5//9) c23 = T2(1//5) @@ -931,12 +931,12 @@ function Feagin12ConstantCache(T::Type,T2::Type) b10 = T(1//10) b11 = T(1//14) b12 = T(0) - b13 = T(parse(BigFloat,"0.138413023680782974005350203145033146748813640089941234591267")) - b14 = T(parse(BigFloat,"0.215872690604931311708935511140681138965472074195773051123019")) - b15 = T(parse(BigFloat,"0.243809523809523809523809523809523809523809523809523809523810")) - b16 = T(parse(BigFloat,"0.215872690604931311708935511140681138965472074195773051123019")) - b17 = T(parse(BigFloat,"0.138413023680782974005350203145033146748813640089941234591267")) - b18 = T(parse(BigFloat,"-0.0714285714285714285714285714285714285714285714285714285714286")) + b13 = T(big"0.138413023680782974005350203145033146748813640089941234591267") + b14 = T(big"0.215872690604931311708935511140681138965472074195773051123019") + b15 = T(big"0.243809523809523809523809523809523809523809523809523809523810") + b16 = T(big"0.215872690604931311708935511140681138965472074195773051123019") + b17 = T(big"0.138413023680782974005350203145033146748813640089941234591267") + b18 = T(big"-0.0714285714285714285714285714285714285714285714285714285714286") b19 = T(-1//10) b20 = T(-1//20) b21 = T(-1//20) @@ -947,8 +947,8 @@ function Feagin12ConstantCache(T::Type,T2::Type) a0100 = T(1//5) - a0200 = T(parse(BigFloat,"-0.216049382716049382716049382716049382716049382716049382716049")) - a0201 = T(parse(BigFloat,"0.771604938271604938271604938271604938271604938271604938271605")) + a0200 = T(big"-0.216049382716049382716049382716049382716049382716049382716049") + a0201 = T(big"0.771604938271604938271604938271604938271604938271604938271605") a0300 = T(5//24) a0302 = T(5//8) @@ -961,180 +961,180 @@ function Feagin12ConstantCache(T::Type,T2::Type) a0503 = T(2//5) a0504 = T(1//2) - a0600 = T(parse(BigFloat,"0.103364471650010477570395435690481791543342708330349879244197")) - a0603 = T(parse(BigFloat,"0.124053094528946761061581889237115328211074784955180298044074")) - a0604 = T(parse(BigFloat,"0.483171167561032899288836480451962508724109257517289177302380")) - a0605 = T(parse(BigFloat,"-0.0387530245694763252085681443767620580395733302341368038804290")) - - a0700 = T(parse(BigFloat,"0.124038261431833324081904585980175168140024670698633612292480")) - a0704 = T(parse(BigFloat,"0.217050632197958486317846256953159942875916353757734167684657")) - a0705 = T(parse(BigFloat,"0.0137455792075966759812907801835048190594443990939408530842918")) - a0706 = T(parse(BigFloat,"-0.0661095317267682844455831341498149531672668252085016565917546")) - - a0800 = T(parse(BigFloat,"0.0914774894856882983144991846980432197088832099976660100090486")) - a0805 = T(parse(BigFloat,"-0.00544348523717469689965754944144838611346156873847009178068318")) - a0806 = T(parse(BigFloat,"0.0680716801688453518578515120895103863112751730758794372203952")) - a0807 = T(parse(BigFloat,"0.408394315582641046727306852653894780093303185664924644551239")) - - a0900 = T(parse(BigFloat,"0.0890013652502551018954509355423841780143232697403434118692699")) - a0905 = T(parse(BigFloat,"0.00499528226645532360197793408420692800405891149406814091955810")) - a0906 = T(parse(BigFloat,"0.397918238819828997341739603001347156083435060931424970826304")) - a0907 = T(parse(BigFloat,"0.427930210752576611068192608300897981558240730580396406312359")) - a0908 = T(parse(BigFloat,"-0.0865117637557827005740277475955029103267246394128995965941585")) - - a1000 = T(parse(BigFloat,"0.0695087624134907543112693906409809822706021061685544615255758")) - a1005 = T(parse(BigFloat,"0.129146941900176461970759579482746551122871751501482634045487")) - a1006 = T(parse(BigFloat,"1.53073638102311295076342566143214939031177504112433874313011")) - a1007 = T(parse(BigFloat,"0.577874761129140052546751349454576715334892100418571882718036")) - a1008 = T(parse(BigFloat,"-0.951294772321088980532340837388859453930924498799228648050949")) - a1009 = T(parse(BigFloat,"-0.408276642965631951497484981519757463459627174520978426909934")) - - a1100 = T(parse(BigFloat,"0.0444861403295135866269453507092463581620165501018684152933313")) - a1105 = T(parse(BigFloat,"-0.00380476867056961731984232686574547203016331563626856065717964")) - a1106 = T(parse(BigFloat,"0.0106955064029624200721262602809059154469206077644957399593972")) - a1107 = T(parse(BigFloat,"0.0209616244499904333296674205928919920806734650660039898074652")) - a1108 = T(parse(BigFloat,"-0.0233146023259321786648561431551978077665337818756053603898847")) - a1109 = T(parse(BigFloat,"0.00263265981064536974369934736325334761174975280887405725010964")) - a1110 = T(parse(BigFloat,"0.00315472768977025060103545855572111407955208306374459723959783")) - - a1200 = T(parse(BigFloat,"0.0194588815119755475588801096525317761242073762016273186231215")) - a1208 = T(parse(BigFloat,"0.0000678512949171812509306121653452367476194364781259165332321534")) - a1209 = T(parse(BigFloat,"-0.0000429795859049273623271005330230162343568863387724883603675550")) - a1210 = T(parse(BigFloat,"0.0000176358982260285155407485928953302139937553442829975734148981")) - a1211 = T(parse(BigFloat,"0.0653866627415027051009595231385181033549511358787382098351924")) - - a1300 = T(parse(BigFloat,"0.206836835664277105916828174798272361078909196043446411598231")) - a1308 = T(parse(BigFloat,"0.0166796067104156472828045866664696450306326505094792505215514")) - a1309 = T(parse(BigFloat,"-0.00879501563200710214457024178249986591130234990219959208704979")) - a1310 = T(parse(BigFloat,"0.00346675455362463910824462315246379209427513654098596403637231")) - a1311 = T(parse(BigFloat,"-0.861264460105717678161432562258351242030270498966891201799225")) - a1312 = T(parse(BigFloat,"0.908651882074050281096239478469262145034957129939256789178785")) - - a1400 = T(parse(BigFloat,"0.0203926084654484010091511314676925686038504449562413004562382")) - a1408 = T(parse(BigFloat,"0.0869469392016685948675400555583947505833954460930940959577347")) - a1409 = T(parse(BigFloat,"-0.0191649630410149842286436611791405053287170076602337673587681")) - a1410 = T(parse(BigFloat,"0.00655629159493663287364871573244244516034828755253746024098838")) - a1411 = T(parse(BigFloat,"0.0987476128127434780903798528674033899738924968006632201445462")) - a1412 = T(parse(BigFloat,"0.00535364695524996055083260173615567408717110247274021056118319")) - a1413 = T(parse(BigFloat,"0.301167864010967916837091303817051676920059229784957479998077")) - - a1500 = T(parse(BigFloat,"0.228410433917778099547115412893004398779136994596948545722283")) - a1508 = T(parse(BigFloat,"-0.498707400793025250635016567442511512138603770959682292383042")) - a1509 = T(parse(BigFloat,"0.134841168335724478552596703792570104791700727205981058201689")) - a1510 = T(parse(BigFloat,"-0.0387458244055834158439904226924029230935161059142806805674360")) - a1511 = T(parse(BigFloat,"-1.27473257473474844240388430824908952380979292713250350199641")) - a1512 = T(parse(BigFloat,"1.43916364462877165201184452437038081875299303577911839630524")) - a1513 = T(parse(BigFloat,"-0.214007467967990254219503540827349569639028092344812795499026")) - a1514 = T(parse(BigFloat,"0.958202417754430239892724139109781371059908874605153648768037")) - - a1600 = T(parse(BigFloat,"2.00222477655974203614249646012506747121440306225711721209798")) - a1608 = T(parse(BigFloat,"2.06701809961524912091954656438138595825411859673341600679555")) - a1609 = T(parse(BigFloat,"0.623978136086139541957471279831494466155292316167021080663140")) - a1610 = T(parse(BigFloat,"-0.0462283685500311430283203554129062069391947101880112723185773")) - a1611 = T(parse(BigFloat,"-8.84973288362649614860075246727118949286604835457092701094630")) - a1612 = T(parse(BigFloat,"7.74257707850855976227437225791835589560188590785037197433615")) - a1613 = T(parse(BigFloat,"-0.588358519250869210993353314127711745644125882130941202896436")) - a1614 = T(parse(BigFloat,"-1.10683733362380649395704708016953056176195769617014899442903")) - a1615 = T(parse(BigFloat,"-0.929529037579203999778397238291233214220788057511899747507074")) - - a1700 = T(parse(BigFloat,"3.13789533412073442934451608989888796808161259330322100268310")) - a1705 = T(parse(BigFloat,"0.129146941900176461970759579482746551122871751501482634045487")) - a1706 = T(parse(BigFloat,"1.53073638102311295076342566143214939031177504112433874313011")) - a1707 = T(parse(BigFloat,"0.577874761129140052546751349454576715334892100418571882718036")) - a1708 = T(parse(BigFloat,"5.42088263055126683050056840891857421941300558851862156403363")) - a1709 = T(parse(BigFloat,"0.231546926034829304872663800877643660904880180835945693836936")) - a1710 = T(parse(BigFloat,"0.0759292995578913560162301311785251873561801342333194895292058")) - a1711 = T(parse(BigFloat,"-12.3729973380186513287414553402595806591349822617535905976253")) - a1712 = T(parse(BigFloat,"9.85455883464769543935957209317369202080367765721777101906955")) - a1713 = T(parse(BigFloat,"0.0859111431370436529579357709052367772889980495122329601159540")) - a1714 = T(parse(BigFloat,"-5.65242752862643921117182090081762761180392602644189218673969")) - a1715 = T(parse(BigFloat,"-1.94300935242819610883833776782364287728724899124166920477873")) - a1716 = T(parse(BigFloat,"-0.128352601849404542018428714319344620742146491335612353559923")) - - a1800 = T(parse(BigFloat,"1.38360054432196014878538118298167716825163268489922519995564")) - a1805 = T(parse(BigFloat,"0.00499528226645532360197793408420692800405891149406814091955810")) - a1806 = T(parse(BigFloat,"0.397918238819828997341739603001347156083435060931424970826304")) - a1807 = T(parse(BigFloat,"0.427930210752576611068192608300897981558240730580396406312359")) - a1808 = T(parse(BigFloat,"-1.30299107424475770916551439123047573342071475998399645982146")) - a1809 = T(parse(BigFloat,"0.661292278669377029097112528107513072734573412294008071500699")) - a1810 = T(parse(BigFloat,"-0.144559774306954349765969393688703463900585822441545655530145")) - a1811 = T(parse(BigFloat,"-6.96576034731798203467853867461083919356792248105919255460819")) - a1812 = T(parse(BigFloat,"6.65808543235991748353408295542210450632193197576935120716437")) - a1813 = T(parse(BigFloat,"-1.66997375108841486404695805725510845049807969199236227575796")) - a1814 = T(parse(BigFloat,"2.06413702318035263832289040301832647130604651223986452170089")) - a1815 = T(parse(BigFloat,"-0.674743962644306471862958129570837723192079875998405058648892")) - a1816 = T(parse(BigFloat,"-0.00115618834794939500490703608435907610059605754935305582045729")) - a1817 = T(parse(BigFloat,"-0.00544057908677007389319819914241631024660726585015012485938593")) - - a1900 = T(parse(BigFloat,"0.951236297048287669474637975894973552166903378983475425758226")) - a1904 = T(parse(BigFloat,"0.217050632197958486317846256953159942875916353757734167684657")) - a1905 = T(parse(BigFloat,"0.0137455792075966759812907801835048190594443990939408530842918")) - a1906 = T(parse(BigFloat,"-0.0661095317267682844455831341498149531672668252085016565917546")) - a1908 = T(parse(BigFloat,"0.152281696736414447136604697040747131921486432699422112099617")) - a1909 = T(parse(BigFloat,"-0.337741018357599840802300793133998004354643424457539667670080")) - a1910 = T(parse(BigFloat,"-0.0192825981633995781534949199286824400469353110630787982121133")) - a1911 = T(parse(BigFloat,"-3.68259269696866809932409015535499603576312120746888880201882")) - a1912 = T(parse(BigFloat,"3.16197870406982063541533528419683854018352080342887002331312")) - a1913 = T(parse(BigFloat,"-0.370462522106885290716991856022051125477943482284080569177386")) - a1914 = T(parse(BigFloat,"-0.0514974200365440434996434456698127984941168616474316871020314")) - a1915 = T(parse(BigFloat,"-0.000829625532120152946787043541792848416659382675202720677536554")) - a1916 = T(parse(BigFloat,"0.00000279801041419278598986586589070027583961355402640879503213503")) - a1917 = T(parse(BigFloat,"0.0418603916412360287969841020776788461794119440689356178942252")) - a1918 = T(parse(BigFloat,"0.279084255090877355915660874555379649966282167560126269290222")) - - a2000 = T(parse(BigFloat,"0.103364471650010477570395435690481791543342708330349879244197")) - a2003 = T(parse(BigFloat,"0.124053094528946761061581889237115328211074784955180298044074")) - a2004 = T(parse(BigFloat,"0.483171167561032899288836480451962508724109257517289177302380")) - a2005 = T(parse(BigFloat,"-0.0387530245694763252085681443767620580395733302341368038804290")) - a2007 = T(parse(BigFloat,"-0.438313820361122420391059788940960176420682836652600698580091")) - a2009 = T(parse(BigFloat,"-0.218636633721676647685111485017151199362509373698288330593486")) - a2010 = T(parse(BigFloat,"-0.0312334764394719229981634995206440349766174759626578122323015")) - a2017 = T(parse(BigFloat,"0.0312334764394719229981634995206440349766174759626578122323015")) - a2018 = T(parse(BigFloat,"0.218636633721676647685111485017151199362509373698288330593486")) - a2019 = T(parse(BigFloat,"0.438313820361122420391059788940960176420682836652600698580091")) + a0600 = T(big"0.103364471650010477570395435690481791543342708330349879244197") + a0603 = T(big"0.124053094528946761061581889237115328211074784955180298044074") + a0604 = T(big"0.483171167561032899288836480451962508724109257517289177302380") + a0605 = T(big"-0.0387530245694763252085681443767620580395733302341368038804290") + + a0700 = T(big"0.124038261431833324081904585980175168140024670698633612292480") + a0704 = T(big"0.217050632197958486317846256953159942875916353757734167684657") + a0705 = T(big"0.0137455792075966759812907801835048190594443990939408530842918") + a0706 = T(big"-0.0661095317267682844455831341498149531672668252085016565917546") + + a0800 = T(big"0.0914774894856882983144991846980432197088832099976660100090486") + a0805 = T(big"-0.00544348523717469689965754944144838611346156873847009178068318") + a0806 = T(big"0.0680716801688453518578515120895103863112751730758794372203952") + a0807 = T(big"0.408394315582641046727306852653894780093303185664924644551239") + + a0900 = T(big"0.0890013652502551018954509355423841780143232697403434118692699") + a0905 = T(big"0.00499528226645532360197793408420692800405891149406814091955810") + a0906 = T(big"0.397918238819828997341739603001347156083435060931424970826304") + a0907 = T(big"0.427930210752576611068192608300897981558240730580396406312359") + a0908 = T(big"-0.0865117637557827005740277475955029103267246394128995965941585") + + a1000 = T(big"0.0695087624134907543112693906409809822706021061685544615255758") + a1005 = T(big"0.129146941900176461970759579482746551122871751501482634045487") + a1006 = T(big"1.53073638102311295076342566143214939031177504112433874313011") + a1007 = T(big"0.577874761129140052546751349454576715334892100418571882718036") + a1008 = T(big"-0.951294772321088980532340837388859453930924498799228648050949") + a1009 = T(big"-0.408276642965631951497484981519757463459627174520978426909934") + + a1100 = T(big"0.0444861403295135866269453507092463581620165501018684152933313") + a1105 = T(big"-0.00380476867056961731984232686574547203016331563626856065717964") + a1106 = T(big"0.0106955064029624200721262602809059154469206077644957399593972") + a1107 = T(big"0.0209616244499904333296674205928919920806734650660039898074652") + a1108 = T(big"-0.0233146023259321786648561431551978077665337818756053603898847") + a1109 = T(big"0.00263265981064536974369934736325334761174975280887405725010964") + a1110 = T(big"0.00315472768977025060103545855572111407955208306374459723959783") + + a1200 = T(big"0.0194588815119755475588801096525317761242073762016273186231215") + a1208 = T(big"0.0000678512949171812509306121653452367476194364781259165332321534") + a1209 = T(big"-0.0000429795859049273623271005330230162343568863387724883603675550") + a1210 = T(big"0.0000176358982260285155407485928953302139937553442829975734148981") + a1211 = T(big"0.0653866627415027051009595231385181033549511358787382098351924") + + a1300 = T(big"0.206836835664277105916828174798272361078909196043446411598231") + a1308 = T(big"0.0166796067104156472828045866664696450306326505094792505215514") + a1309 = T(big"-0.00879501563200710214457024178249986591130234990219959208704979") + a1310 = T(big"0.00346675455362463910824462315246379209427513654098596403637231") + a1311 = T(big"-0.861264460105717678161432562258351242030270498966891201799225") + a1312 = T(big"0.908651882074050281096239478469262145034957129939256789178785") + + a1400 = T(big"0.0203926084654484010091511314676925686038504449562413004562382") + a1408 = T(big"0.0869469392016685948675400555583947505833954460930940959577347") + a1409 = T(big"-0.0191649630410149842286436611791405053287170076602337673587681") + a1410 = T(big"0.00655629159493663287364871573244244516034828755253746024098838") + a1411 = T(big"0.0987476128127434780903798528674033899738924968006632201445462") + a1412 = T(big"0.00535364695524996055083260173615567408717110247274021056118319") + a1413 = T(big"0.301167864010967916837091303817051676920059229784957479998077") + + a1500 = T(big"0.228410433917778099547115412893004398779136994596948545722283") + a1508 = T(big"-0.498707400793025250635016567442511512138603770959682292383042") + a1509 = T(big"0.134841168335724478552596703792570104791700727205981058201689") + a1510 = T(big"-0.0387458244055834158439904226924029230935161059142806805674360") + a1511 = T(big"-1.27473257473474844240388430824908952380979292713250350199641") + a1512 = T(big"1.43916364462877165201184452437038081875299303577911839630524") + a1513 = T(big"-0.214007467967990254219503540827349569639028092344812795499026") + a1514 = T(big"0.958202417754430239892724139109781371059908874605153648768037") + + a1600 = T(big"2.00222477655974203614249646012506747121440306225711721209798") + a1608 = T(big"2.06701809961524912091954656438138595825411859673341600679555") + a1609 = T(big"0.623978136086139541957471279831494466155292316167021080663140") + a1610 = T(big"-0.0462283685500311430283203554129062069391947101880112723185773") + a1611 = T(big"-8.84973288362649614860075246727118949286604835457092701094630") + a1612 = T(big"7.74257707850855976227437225791835589560188590785037197433615") + a1613 = T(big"-0.588358519250869210993353314127711745644125882130941202896436") + a1614 = T(big"-1.10683733362380649395704708016953056176195769617014899442903") + a1615 = T(big"-0.929529037579203999778397238291233214220788057511899747507074") + + a1700 = T(big"3.13789533412073442934451608989888796808161259330322100268310") + a1705 = T(big"0.129146941900176461970759579482746551122871751501482634045487") + a1706 = T(big"1.53073638102311295076342566143214939031177504112433874313011") + a1707 = T(big"0.577874761129140052546751349454576715334892100418571882718036") + a1708 = T(big"5.42088263055126683050056840891857421941300558851862156403363") + a1709 = T(big"0.231546926034829304872663800877643660904880180835945693836936") + a1710 = T(big"0.0759292995578913560162301311785251873561801342333194895292058") + a1711 = T(big"-12.3729973380186513287414553402595806591349822617535905976253") + a1712 = T(big"9.85455883464769543935957209317369202080367765721777101906955") + a1713 = T(big"0.0859111431370436529579357709052367772889980495122329601159540") + a1714 = T(big"-5.65242752862643921117182090081762761180392602644189218673969") + a1715 = T(big"-1.94300935242819610883833776782364287728724899124166920477873") + a1716 = T(big"-0.128352601849404542018428714319344620742146491335612353559923") + + a1800 = T(big"1.38360054432196014878538118298167716825163268489922519995564") + a1805 = T(big"0.00499528226645532360197793408420692800405891149406814091955810") + a1806 = T(big"0.397918238819828997341739603001347156083435060931424970826304") + a1807 = T(big"0.427930210752576611068192608300897981558240730580396406312359") + a1808 = T(big"-1.30299107424475770916551439123047573342071475998399645982146") + a1809 = T(big"0.661292278669377029097112528107513072734573412294008071500699") + a1810 = T(big"-0.144559774306954349765969393688703463900585822441545655530145") + a1811 = T(big"-6.96576034731798203467853867461083919356792248105919255460819") + a1812 = T(big"6.65808543235991748353408295542210450632193197576935120716437") + a1813 = T(big"-1.66997375108841486404695805725510845049807969199236227575796") + a1814 = T(big"2.06413702318035263832289040301832647130604651223986452170089") + a1815 = T(big"-0.674743962644306471862958129570837723192079875998405058648892") + a1816 = T(big"-0.00115618834794939500490703608435907610059605754935305582045729") + a1817 = T(big"-0.00544057908677007389319819914241631024660726585015012485938593") + + a1900 = T(big"0.951236297048287669474637975894973552166903378983475425758226") + a1904 = T(big"0.217050632197958486317846256953159942875916353757734167684657") + a1905 = T(big"0.0137455792075966759812907801835048190594443990939408530842918") + a1906 = T(big"-0.0661095317267682844455831341498149531672668252085016565917546") + a1908 = T(big"0.152281696736414447136604697040747131921486432699422112099617") + a1909 = T(big"-0.337741018357599840802300793133998004354643424457539667670080") + a1910 = T(big"-0.0192825981633995781534949199286824400469353110630787982121133") + a1911 = T(big"-3.68259269696866809932409015535499603576312120746888880201882") + a1912 = T(big"3.16197870406982063541533528419683854018352080342887002331312") + a1913 = T(big"-0.370462522106885290716991856022051125477943482284080569177386") + a1914 = T(big"-0.0514974200365440434996434456698127984941168616474316871020314") + a1915 = T(big"-0.000829625532120152946787043541792848416659382675202720677536554") + a1916 = T(big"0.00000279801041419278598986586589070027583961355402640879503213503") + a1917 = T(big"0.0418603916412360287969841020776788461794119440689356178942252") + a1918 = T(big"0.279084255090877355915660874555379649966282167560126269290222") + + a2000 = T(big"0.103364471650010477570395435690481791543342708330349879244197") + a2003 = T(big"0.124053094528946761061581889237115328211074784955180298044074") + a2004 = T(big"0.483171167561032899288836480451962508724109257517289177302380") + a2005 = T(big"-0.0387530245694763252085681443767620580395733302341368038804290") + a2007 = T(big"-0.438313820361122420391059788940960176420682836652600698580091") + a2009 = T(big"-0.218636633721676647685111485017151199362509373698288330593486") + a2010 = T(big"-0.0312334764394719229981634995206440349766174759626578122323015") + a2017 = T(big"0.0312334764394719229981634995206440349766174759626578122323015") + a2018 = T(big"0.218636633721676647685111485017151199362509373698288330593486") + a2019 = T(big"0.438313820361122420391059788940960176420682836652600698580091") a2100 = T(29//150) a2102 = T(11//50) a2103 = T(-2//25) - a2106 = T(parse(BigFloat,"0.0984256130499315928152900286856048243348202521491288575952143")) - a2107 = T(parse(BigFloat,"-0.196410889223054653446526504390100417677539095340135532418849")) - a2109 = T(parse(BigFloat,"0.436457930493068729391826122587949137609670676712525034763317")) - a2110 = T(parse(BigFloat,"0.0652613721675721098560370939805555698350543810708414716730270")) - a2117 = T(parse(BigFloat,"-0.0652613721675721098560370939805555698350543810708414716730270")) - a2118 = T(parse(BigFloat,"-0.436457930493068729391826122587949137609670676712525034763317")) - a2119 = T(parse(BigFloat,"0.196410889223054653446526504390100417677539095340135532418849")) - a2120 = T(parse(BigFloat,"-0.0984256130499315928152900286856048243348202521491288575952143")) - - a2200 = T(parse(BigFloat,"-0.216049382716049382716049382716049382716049382716049382716049")) - a2201 = T(parse(BigFloat,"0.771604938271604938271604938271604938271604938271604938271605")) + a2106 = T(big"0.0984256130499315928152900286856048243348202521491288575952143") + a2107 = T(big"-0.196410889223054653446526504390100417677539095340135532418849") + a2109 = T(big"0.436457930493068729391826122587949137609670676712525034763317") + a2110 = T(big"0.0652613721675721098560370939805555698350543810708414716730270") + a2117 = T(big"-0.0652613721675721098560370939805555698350543810708414716730270") + a2118 = T(big"-0.436457930493068729391826122587949137609670676712525034763317") + a2119 = T(big"0.196410889223054653446526504390100417677539095340135532418849") + a2120 = T(big"-0.0984256130499315928152900286856048243348202521491288575952143") + + a2200 = T(big"-0.216049382716049382716049382716049382716049382716049382716049") + a2201 = T(big"0.771604938271604938271604938271604938271604938271604938271605") a2204 = T(-2//3) - a2206 = T(parse(BigFloat,"-0.390696469295978451446999802258495981249099665294395945559163")) - a2220 = T(parse(BigFloat,"0.390696469295978451446999802258495981249099665294395945559163")) + a2206 = T(big"-0.390696469295978451446999802258495981249099665294395945559163") + a2220 = T(big"0.390696469295978451446999802258495981249099665294395945559163") a2221 = T(2//3) a2300 = T(1//5) - a2302 = T(parse(BigFloat,"-0.164609053497942386831275720164609053497942386831275720164609")) - a2322 = T(parse(BigFloat,"0.164609053497942386831275720164609053497942386831275720164609")) + a2302 = T(big"-0.164609053497942386831275720164609053497942386831275720164609") + a2322 = T(big"0.164609053497942386831275720164609053497942386831275720164609") - a2400 = T(parse(BigFloat,"1.47178724881110408452949550989023611293535315518571691939396")) + a2400 = T(big"1.47178724881110408452949550989023611293535315518571691939396") a2401 = T(63//80) a2402 = T(91//216) a2404 = T(7//24) - a2406 = T(parse(BigFloat,"0.348600717628329563206854421629657569274689947367847465753757")) - a2407 = T(parse(BigFloat,"0.229499544768994849582890233710555447073823569666506700662510")) - a2408 = T(parse(BigFloat,"5.79046485790481979159831978177003471098279506036722411333192")) - a2409 = T(parse(BigFloat,"0.418587511856506868874073759426596207226461447604248151080016")) - a2410 = T(parse(BigFloat,"0.307039880222474002649653817490106690389251482313213999386651")) - a2411 = T(parse(BigFloat,"-4.68700905350603332214256344683853248065574415794742040470287")) - a2412 = T(parse(BigFloat,"3.13571665593802262152038152399873856554395436199962915429076")) - a2413 = T(parse(BigFloat,"1.40134829710965720817510506275620441055845017313930508348898")) - a2414 = T(parse(BigFloat,"-5.52931101439499023629010306005764336421276055777658156400910")) - a2415 = T(parse(BigFloat,"-0.853138235508063349309546894974784906188927508039552519557498")) - a2416 = T(parse(BigFloat,"0.103575780373610140411804607167772795518293914458500175573749")) - a2417 = T(parse(BigFloat,"-0.140474416950600941142546901202132534870665923700034957196546")) - a2418 = T(parse(BigFloat,"-0.418587511856506868874073759426596207226461447604248151080016")) - a2419 = T(parse(BigFloat,"-0.229499544768994849582890233710555447073823569666506700662510")) - a2420 = T(parse(BigFloat,"-0.348600717628329563206854421629657569274689947367847465753757")) + a2406 = T(big"0.348600717628329563206854421629657569274689947367847465753757") + a2407 = T(big"0.229499544768994849582890233710555447073823569666506700662510") + a2408 = T(big"5.79046485790481979159831978177003471098279506036722411333192") + a2409 = T(big"0.418587511856506868874073759426596207226461447604248151080016") + a2410 = T(big"0.307039880222474002649653817490106690389251482313213999386651") + a2411 = T(big"-4.68700905350603332214256344683853248065574415794742040470287") + a2412 = T(big"3.13571665593802262152038152399873856554395436199962915429076") + a2413 = T(big"1.40134829710965720817510506275620441055845017313930508348898") + a2414 = T(big"-5.52931101439499023629010306005764336421276055777658156400910") + a2415 = T(big"-0.853138235508063349309546894974784906188927508039552519557498") + a2416 = T(big"0.103575780373610140411804607167772795518293914458500175573749") + a2417 = T(big"-0.140474416950600941142546901202132534870665923700034957196546") + a2418 = T(big"-0.418587511856506868874073759426596207226461447604248151080016") + a2419 = T(big"-0.229499544768994849582890233710555447073823569666506700662510") + a2420 = T(big"-0.348600717628329563206854421629657569274689947367847465753757") a2421 = T(-7//24) a2422 = T(-91//216) a2423 = T(-63//80) @@ -1543,7 +1543,7 @@ end constructFeagin14 """ -Base.@pure function Feagin14ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} +function Feagin14ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} adaptiveConst = T(1//1000) c1 = T2(1//9) c2 = T2(5//9) @@ -1989,31 +1989,31 @@ function Feagin14ConstantCache(T::Type,T2::Type) c3 = T2(5//6) c4 = T2(1//3) c5 = T2(1) - c6 = T2(parse(BigFloat,"0.669986979272772921764683785505998513938845229638460353285142")) - c7 = T2(parse(BigFloat,"0.297068384213818357389584716808219413223332094698915687379168")) + c6 = T2(big"0.669986979272772921764683785505998513938845229638460353285142") + c7 = T2(big"0.297068384213818357389584716808219413223332094698915687379168") c8 = T2(8//11) - c9 = T2(parse(BigFloat,"0.140152799042188765276187487966946717629806463082532936287323")) - c10 = T2(parse(BigFloat,"0.700701039770150737151099854830749337941407049265546408969222")) + c9 = T2(big"0.140152799042188765276187487966946717629806463082532936287323") + c10 = T2(big"0.700701039770150737151099854830749337941407049265546408969222") c11 = T2(4//11) - c12 = T2(parse(BigFloat,"0.263157894736842105263157894736842105263157894736842105263158")) - c13 = T2(parse(BigFloat,"0.0392172246650270859125196642501208648863714315266128052078483")) - c14 = T2(parse(BigFloat,"0.812917502928376762983393159278036506189612372617238550774312")) + c12 = T2(big"0.263157894736842105263157894736842105263157894736842105263158") + c13 = T2(big"0.0392172246650270859125196642501208648863714315266128052078483") + c14 = T2(big"0.812917502928376762983393159278036506189612372617238550774312") c15 = T2(1//6) c16 = T2(9//10) - c17 = T2(parse(BigFloat,"0.0641299257451966923312771193896682809481096651615083225402924")) - c18 = T2(parse(BigFloat,"0.204149909283428848927744634301023405027149505241333751628870")) - c19 = T2(parse(BigFloat,"0.395350391048760565615671369827324372352227297456659450554577")) - c20 = T2(parse(BigFloat,"0.604649608951239434384328630172675627647772702543340549445423")) - c21 = T2(parse(BigFloat,"0.795850090716571151072255365698976594972850494758666248371130")) - c22 = T2(parse(BigFloat,"0.935870074254803307668722880610331719051890334838491677459708")) + c17 = T2(big"0.0641299257451966923312771193896682809481096651615083225402924") + c18 = T2(big"0.204149909283428848927744634301023405027149505241333751628870") + c19 = T2(big"0.395350391048760565615671369827324372352227297456659450554577") + c20 = T2(big"0.604649608951239434384328630172675627647772702543340549445423") + c21 = T2(big"0.795850090716571151072255365698976594972850494758666248371130") + c22 = T2(big"0.935870074254803307668722880610331719051890334838491677459708") c23 = T2(1//6) - c24 = T2(parse(BigFloat,"0.812917502928376762983393159278036506189612372617238550774312")) - c25 = T2(parse(BigFloat,"0.0392172246650270859125196642501208648863714315266128052078483")) + c24 = T2(big"0.812917502928376762983393159278036506189612372617238550774312") + c25 = T2(big"0.0392172246650270859125196642501208648863714315266128052078483") c26 = T2(4//11) - c27 = T2(parse(BigFloat,"0.700701039770150737151099854830749337941407049265546408969222")) - c28 = T2(parse(BigFloat,"0.140152799042188765276187487966946717629806463082532936287323")) - c29 = T2(parse(BigFloat,"0.297068384213818357389584716808219413223332094698915687379168")) - c30 = T2(parse(BigFloat,"0.669986979272772921764683785505998513938845229638460353285142")) + c27 = T2(big"0.700701039770150737151099854830749337941407049265546408969222") + c28 = T2(big"0.140152799042188765276187487966946717629806463082532936287323") + c29 = T2(big"0.297068384213818357389584716808219413223332094698915687379168") + c30 = T2(big"0.669986979272772921764683785505998513938845229638460353285142") c31 = T2(1//3) c32 = T2(5//9) c33 = T2(1//9) @@ -2036,12 +2036,12 @@ function Feagin14ConstantCache(T::Type,T2::Type) b15 = T(15//256) b16 = T(33//512) b17 = T(0) - b18 = T(parse(BigFloat,"0.105352113571753019691496032887878162227673083080523884041670")) - b19 = T(parse(BigFloat,"0.170561346241752182382120338553874085887555487802790804737501")) - b20 = T(parse(BigFloat,"0.206229397329351940783526485701104894741914286259542454077972")) - b21 = T(parse(BigFloat,"0.206229397329351940783526485701104894741914286259542454077972")) - b22 = T(parse(BigFloat,"0.170561346241752182382120338553874085887555487802790804737501")) - b23 = T(parse(BigFloat,"0.105352113571753019691496032887878162227673083080523884041670")) + b18 = T(big"0.105352113571753019691496032887878162227673083080523884041670") + b19 = T(big"0.170561346241752182382120338553874085887555487802790804737501") + b20 = T(big"0.206229397329351940783526485701104894741914286259542454077972") + b21 = T(big"0.206229397329351940783526485701104894741914286259542454077972") + b22 = T(big"0.170561346241752182382120338553874085887555487802790804737501") + b23 = T(big"0.105352113571753019691496032887878162227673083080523884041670") b24 = T(-33//512) b25 = T(-15//256) b26 = T(-27//512) @@ -2071,346 +2071,346 @@ function Feagin14ConstantCache(T::Type,T2::Type) a0503 = T(2//5) a0504 = T(1//2) - a0600 = T(parse(BigFloat,"0.103484561636679776672993546511910344499744798201971316606663")) - a0603 = T(parse(BigFloat,"0.122068887306407222589644082868962077139592714834162134741275")) - a0604 = T(parse(BigFloat,"0.482574490331246622475134780125688112865919023850168049679402")) - a0605 = T(parse(BigFloat,"-0.0381409600015606999730886240005620205664113072478411477421970")) - - a0700 = T(parse(BigFloat,"0.124380526654094412881516420868799316268491466359671423163289")) - a0704 = T(parse(BigFloat,"0.226120282197584301422238662979202901196752320742633143965145")) - a0705 = T(parse(BigFloat,"0.0137885887618080880607695837016477814530969417491493385363543")) - a0706 = T(parse(BigFloat,"-0.0672210133996684449749399507414305856950086341525382182856200")) - a0800 = T(parse(BigFloat,"0.0936919065659673815530885456083005933866349695217750085655603")) - a0805 = T(parse(BigFloat,"-0.00613406843450510987229498995641664735620914507128858871007099")) - a0806 = T(parse(BigFloat,"0.216019825625503063708860097659866573490979433278117320188668")) - a0807 = T(parse(BigFloat,"0.423695063515761937337619073960976753205867469544123532683116")) - - - a0900 = T(parse(BigFloat,"0.0838479812409052664616968791372814085980533139224911131069335")) - a0905 = T(parse(BigFloat,"-0.0117949367100973814319755056031295775367961960590736150777613")) - a0906 = T(parse(BigFloat,"-0.247299020568812652339473838743194598325992840353340132697498")) - a0907 = T(parse(BigFloat,"0.0978080858367729012259313014081291665503740655476733940756599")) - a0908 = T(parse(BigFloat,"0.217590689243420631360008651767860318344168120024782176879989")) - - a1000 = T(parse(BigFloat,"0.0615255359769428227954562389614314714333423969064821107453940")) - a1005 = T(parse(BigFloat,"0.00592232780324503308042990005798046524738389560444257136834990")) - a1006 = T(parse(BigFloat,"0.470326159963841112217224303205894113455362530746108825010848")) - a1007 = T(parse(BigFloat,"0.299688863848679000853981837096192399136831121671781279184194")) - a1008 = T(parse(BigFloat,"-0.247656877593994914689992276329810825853958069263947095548189")) - a1009 = T(parse(BigFloat,"0.110895029771437682893999851839061714522445173600678718208625")) - - a1100 = T(parse(BigFloat,"0.0419700073362782579861792864787277787213483656543104611245994")) - a1105 = T(parse(BigFloat,"-0.00317987696266205093901912847692712407988609169703103952205634")) - a1106 = T(parse(BigFloat,"0.806397714906192077260821711520379506393543111567419750119748")) - a1107 = T(parse(BigFloat,"0.0975983126412388979093522850684288851314672048003054550357187")) - a1108 = T(parse(BigFloat,"0.778575578158398909027512446452927238999763460594181964958853")) - a1109 = T(parse(BigFloat,"0.204890423831599428189499202098105603312029235081420653574829")) - a1110 = T(parse(BigFloat,"-1.56261579627468188307070943950527825211462892236424360892806")) - - a1200 = T(parse(BigFloat,"0.0437726782233730163574465242495339811688214967071614123256973")) - a1208 = T(parse(BigFloat,"0.00624365027520195208794358628580933625281631216903095917201250")) - a1209 = T(parse(BigFloat,"0.200043097109577314994435165469647856829066232218264969608768")) - a1210 = T(parse(BigFloat,"-0.00805328367804983036823857162048902911923392887337029314844206")) - a1211 = T(parse(BigFloat,"0.0211517528067396521915711903523399601316877825157550573051221")) - - a1300 = T(parse(BigFloat,"0.0283499250363514563095023591920717312247137654896477097768495")) - a1308 = T(parse(BigFloat,"0.00249163204855817407538949148805995149459884653585417680098222")) - a1309 = T(parse(BigFloat,"0.0230138787854593149638399846373742768772087122638142234223658")) - a1310 = T(parse(BigFloat,"-0.00322155956692977098724476092467120878189463604760620461043308")) - a1311 = T(parse(BigFloat,"0.00988442549447664668946335414487885256040819982786014648129297")) - a1312 = T(parse(BigFloat,"-0.0213010771328887351384307642875927384886634565429572466632092")) - - a1400 = T(parse(BigFloat,"0.343511894290243001049432234735147943083353174980701426268122")) - a1408 = T(parse(BigFloat,"0.210451912023627385609097011999010655788807405225626700040882")) - a1409 = T(parse(BigFloat,"1.03427452057230411936482926828825709938667999698324740166559")) - a1410 = T(parse(BigFloat,"0.00600303645864422487051240448206640574939078092406156945568306")) - a1411 = T(parse(BigFloat,"0.855938125099619537578012106002407728915062652616416005816477")) - a1412 = T(parse(BigFloat,"-0.977235005036766810872264852372525633013107656892839677696022")) - a1413 = T(parse(BigFloat,"-0.660026980479294694616225013856327693720573981219974874776419")) - - a1500 = T(parse(BigFloat,"-0.0143574001672168069538206399935076366657755954378399880691949")) - a1508 = T(parse(BigFloat,"-0.0366253270049039970293685796848974791733119081733552207318285")) - a1509 = T(parse(BigFloat,"0.0350254975636213681976849406979846524346789082471103574920148")) - a1510 = T(parse(BigFloat,"0.0360946016362113508931786658758335239823689929864237671348749")) - a1511 = T(parse(BigFloat,"-0.0265219967553681106351595946834601923649627012457464284442911")) - a1512 = T(parse(BigFloat,"0.0445699011305698119638911537508839908104336323082226770910408")) - a1513 = T(parse(BigFloat,"0.124343093331358243286225595741786448038973408895106741855721")) - a1514 = T(parse(BigFloat,"0.00413829693239480694403512496204335960426192908674476033832967")) - - a1600 = T(parse(BigFloat,"0.356032404425120290975609116398089176264106222379748802654822")) - a1608 = T(parse(BigFloat,"-0.450192758947562595966821779075956175110645100214763601190349")) - a1609 = T(parse(BigFloat,"0.430527907083710898626656292808782917793030154094709462877146")) - a1610 = T(parse(BigFloat,"0.511973029011022237668556960394071692077125787030651386389972")) - a1611 = T(parse(BigFloat,"0.908303638886404260390159124638110213997496214819904630546596")) - a1612 = T(parse(BigFloat,"-1.23921093371933931757372469151534028854413889248605726186520")) - a1613 = T(parse(BigFloat,"-0.649048661671761465141672348879062553905402831967191097656668")) - a1614 = T(parse(BigFloat,"0.251708904586819292210480529948970541404887852931447491219418")) - a1615 = T(parse(BigFloat,"0.779906470345586398810756795282334476023540593411550187024263")) - - a1700 = T(parse(BigFloat,"0.0130935687406513066406881206418834980127470438213192487844956")) - a1712 = T(parse(BigFloat,"-0.0000932053067985113945908461962767108237858631509684667142124826")) - a1713 = T(parse(BigFloat,"0.0505374334262299359640090443138590726770942344716122381702746")) - a1714 = T(parse(BigFloat,"8.04470341944487979109579109610197797641311868930865361048975e-7")) - a1715 = T(parse(BigFloat,"0.000591726029494171190528755742777717259844340971924321528178248")) - a1716 = T(parse(BigFloat,"-4.01614722154557337064691684906375587732264247950093804676867e-7")) - - a1800 = T(parse(BigFloat,"0.0207926484466053012541944544000765652167255206144373407979758")) - a1812 = T(parse(BigFloat,"0.000582695918800085915101902697837284108951406103029871570103075")) - a1813 = T(parse(BigFloat,"-0.00801700732358815939083342186525852746640558465919633524655451")) - a1814 = T(parse(BigFloat,"4.03847643847136940375170821743560570484117290330895506618968e-6")) - a1815 = T(parse(BigFloat,"0.0854609998055506144225056114567535602510114622033622491802597")) - a1816 = T(parse(BigFloat,"-2.04486480935804242706707569691004307904442837552677456232848e-6")) - a1817 = T(parse(BigFloat,"0.105328578824431893399799402979093997354240904235172843146582")) - - - a1900 = T(parse(BigFloat,"1.40153449795736021415446247355771306718486452917597731683689")) - a1912 = T(parse(BigFloat,"-0.230252000984221261616272410367415621261130298274455611733277")) - a1913 = T(parse(BigFloat,"-7.21106840466912905659582237106874247165856493509961561958267")) - a1914 = T(parse(BigFloat,"0.00372901560694836335236995327852132340217759566678662385552634")) - a1915 = T(parse(BigFloat,"-4.71415495727125020678778179392224757011323373221820091641216")) - a1916 = T(parse(BigFloat,"-0.00176367657545349242053841995032797673574903886695600132759652")) - a1917 = T(parse(BigFloat,"7.64130548038698765563029310880237651185173367813936997648198")) - a1918 = T(parse(BigFloat,"3.50602043659751834989896082949744710968212949893375368243588")) - - a2000 = T(parse(BigFloat,"11.9514650694120686799372385830716401674473610826553517297976")) - a2012 = T(parse(BigFloat,"7.79480932108175968783516700231764388220284279598980948538579")) - a2013 = T(parse(BigFloat,"-56.4501393867325792523560991120904281440468100061340556540132")) - a2014 = T(parse(BigFloat,"0.0912376306930644901344530449290276645709607450403673704844997")) - a2015 = T(parse(BigFloat,"-12.7336279925434886201945524309199275038162717529918963305155")) - a2016 = T(parse(BigFloat,"-0.0396895921904719712313542810939736674712383070433147873009352")) - a2017 = T(parse(BigFloat,"54.4392141883570886996225765155307791861438378423305337073797")) - a2018 = T(parse(BigFloat,"-3.64411637921569236846406990361350645806721478409266709351203")) - a2019 = T(parse(BigFloat,"-0.804503249910509910899030787958579499315694913210787878260459")) - - a2100 = T(parse(BigFloat,"-148.809426507100488427838868268647625561930612082148597076690")) - a2112 = T(parse(BigFloat,"-91.7295278291256484357935662402321623495228729036354276506427")) - a2113 = T(parse(BigFloat,"707.656144971598359834575719286335716154821128966649565194286")) - a2114 = T(parse(BigFloat,"-1.10563611857482440905296961311590930801338308942637769555540")) - a2115 = T(parse(BigFloat,"176.134591883811372587859898076055660406999516762301689616841")) - a2116 = T(parse(BigFloat,"0.491384824214880662268898345164454557416884631402764792538746")) - a2117 = T(parse(BigFloat,"-684.278000449814944358237535610895081956077167893600278300805")) - a2118 = T(parse(BigFloat,"27.9910604998398258984224332124380407446002518400668657974589")) - a2119 = T(parse(BigFloat,"13.1939710030282333443670964371153238435064159623744975073252")) - a2120 = T(parse(BigFloat,"1.25128781283980445450114974148056006317268830077396406361417")) - - a2200 = T(parse(BigFloat,"-9.67307946948196763644126118433219395839951408571877262880482")) - a2212 = T(parse(BigFloat,"-4.46990150858505531443846227701960360497830681408751431146712")) - a2213 = T(parse(BigFloat,"45.5127128690952681968241950400052751178905907817398483534845")) - a2214 = T(parse(BigFloat,"-0.0713085086183826912791492024438246129930559805352394367050813")) - a2215 = T(parse(BigFloat,"11.2273614068412741582590624479939384207826800776794485051540")) - a2216 = T(parse(BigFloat,"0.126244376717622724516237912909138809361786889819105426371393")) - a2217 = T(parse(BigFloat,"-43.5439339549483313605810624907242107623814304467621407753424")) - a2218 = T(parse(BigFloat,"0.787174307543058978398792994996550902064546091443233850464377")) - a2219 = T(parse(BigFloat,"0.532264696744684215669300708603886690785395776821503851830821")) - a2220 = T(parse(BigFloat,"0.422422733996325326010225127471388772575086538809603346825334")) - a2221 = T(parse(BigFloat,"0.0859131249503067107308438031499859443441115056294154956487671")) - - a2300 = T(parse(BigFloat,"-10.0664032447054702403396606900426891472202824757968765569183")) - a2308 = T(parse(BigFloat,"-0.0366253270049039970293685796848974791733119081733552207318285")) - a2309 = T(parse(BigFloat,"0.0350254975636213681976849406979846524346789082471103574920148")) - a2310 = T(parse(BigFloat,"0.0360946016362113508931786658758335239823689929864237671348749")) - a2311 = T(parse(BigFloat,"-0.0265219967553681106351595946834601923649627012457464284442911")) - a2312 = T(parse(BigFloat,"-6.27088972181464143590553149478871603839356122957396018530209")) - a2313 = T(parse(BigFloat,"48.2079237442562989090702103008195063923492593141636117832993")) - a2314 = T(parse(BigFloat,"-0.0694471689136165640882395180583732834557754169149088630301342")) - a2315 = T(parse(BigFloat,"12.6810690204850295698341370913609807066108483811412127009785")) - a2316 = T(parse(BigFloat,"0.0119671168968323754838161435501011294100927813964199613229864")) - a2317 = T(parse(BigFloat,"-46.7249764992482408003358268242662695593201321659795608950429")) - a2318 = T(parse(BigFloat,"1.33029613326626711314710039298216591399033511191227101321435")) - a2319 = T(parse(BigFloat,"1.00766787503398298353438903619926657771162717793661719708370")) - a2320 = T(parse(BigFloat,"0.0209512051933665091664122388475480702892770753864487241177616")) - a2321 = T(parse(BigFloat,"0.0210134706331264177317735424331396407424412188443757490871603")) - a2322 = T(parse(BigFloat,"0.00952196014417121794175101542454575907376360233658356240547761")) - - a2400 = T(parse(BigFloat,"-409.478081677743708772589097409370357624424341606752069725341")) - a2408 = T(parse(BigFloat,"0.210451912023627385609097011999010655788807405225626700040882")) - a2409 = T(parse(BigFloat,"1.03427452057230411936482926828825709938667999698324740166559")) - a2410 = T(parse(BigFloat,"0.00600303645864422487051240448206640574939078092406156945568306")) - a2411 = T(parse(BigFloat,"0.855938125099619537578012106002407728915062652616416005816477")) - a2412 = T(parse(BigFloat,"-250.516998547447860492777657729316130386584050420782075966990")) - a2413 = T(parse(BigFloat,"1946.42466652388427766053750328264758595829850895761428240231")) - a2414 = T(parse(BigFloat,"-3.04503882102310365506105809086860882786950544097602101685174")) - a2415 = T(parse(BigFloat,"490.626379528281713521208265299168083841598542274061671576230")) - a2416 = T(parse(BigFloat,"1.56647589531270907115484067013597445739595615245966775329993")) - a2417 = T(parse(BigFloat,"-1881.97428994011173362217267377035870619215906638453056643641")) - a2418 = T(parse(BigFloat,"75.2592224724847175278837713643303149821620618914245864351135")) - a2419 = T(parse(BigFloat,"34.5734356980331067622434344736554689696728644793551014989002")) - a2420 = T(parse(BigFloat,"3.21147679440968961435417361847073755169022966748891627882572")) - a2421 = T(parse(BigFloat,"-0.460408041738414391307201404237058848867245095265382820823055")) - a2422 = T(parse(BigFloat,"-0.0870718339841810522431884137957986245724252047388936572215438")) - a2423 = T(parse(BigFloat,"-7.39351814158303067567016952195521063999185773249132944724553")) - - a2500 = T(parse(BigFloat,"3.43347475853550878921093496257596781120623891072008459930197")) - a2508 = T(parse(BigFloat,"0.00249163204855817407538949148805995149459884653585417680098222")) - a2509 = T(parse(BigFloat,"0.0230138787854593149638399846373742768772087122638142234223658")) - a2510 = T(parse(BigFloat,"-0.00322155956692977098724476092467120878189463604760620461043308")) - a2511 = T(parse(BigFloat,"0.00988442549447664668946335414487885256040819982786014648129297")) - a2512 = T(parse(BigFloat,"2.16252799377922507788307841904757354045759225335732707916530")) - a2513 = T(parse(BigFloat,"-16.2699864546457421328065640660139489006987552040228852402716")) - a2514 = T(parse(BigFloat,"-0.128534502120524552843583417470935010538029037542654506231743")) - a2515 = T(parse(BigFloat,"-8.98915042666504253089307820833379330486511746063552853023189")) - a2516 = T(parse(BigFloat,"-0.00348595363232025333387080201851013650192401767250513765000963")) - a2517 = T(parse(BigFloat,"15.7936194113339807536235187388695574135853387025139738341334")) - a2518 = T(parse(BigFloat,"-0.574403330914095065628165482017335820148383663195675408024658")) - a2519 = T(parse(BigFloat,"-0.345602039021393296692722496608124982535237228827655306030152")) - a2520 = T(parse(BigFloat,"-0.00662241490206585091731619991383757781133067992707418687587487")) - a2521 = T(parse(BigFloat,"-0.00777788129242204164032546458607364309759347209626759111946150")) - a2522 = T(parse(BigFloat,"-0.00356084192402274913338827232697437364675240818791706587952939")) - a2523 = T(parse(BigFloat,"4.79282506449930799649797749629840189457296934139359048988332")) - a2524 = T(parse(BigFloat,"0.153725464873068577844576387402512082757034273069877432944621")) - - a2600 = T(parse(BigFloat,"32.3038520871985442326994734440031535091364975047784630088983")) - a2605 = T(parse(BigFloat,"-0.00317987696266205093901912847692712407988609169703103952205634")) - a2606 = T(parse(BigFloat,"0.806397714906192077260821711520379506393543111567419750119748")) - a2607 = T(parse(BigFloat,"0.0975983126412388979093522850684288851314672048003054550357187")) - a2608 = T(parse(BigFloat,"0.778575578158398909027512446452927238999763460594181964958853")) - a2609 = T(parse(BigFloat,"0.204890423831599428189499202098105603312029235081420653574829")) - a2610 = T(parse(BigFloat,"-1.56261579627468188307070943950527825211462892236424360892806")) - a2612 = T(parse(BigFloat,"16.3429891882310570648504243973927174708753353504154550405647")) - a2613 = T(parse(BigFloat,"-154.544555293543621230730189631471036399316683669609116705323")) - a2614 = T(parse(BigFloat,"1.56971088703334872692034283417621761466263593582497085955201")) - a2615 = T(parse(BigFloat,"3.27685545087248131321429817269900731165522404974733504794135")) - a2616 = T(parse(BigFloat,"-0.0503489245193653176348040727199783626534081095691632396802451")) - a2617 = T(parse(BigFloat,"153.321151858041665070593767885914694011224363102594556731397")) - a2618 = T(parse(BigFloat,"7.17568186327720495846766484814784143567826308034865369443637")) - a2619 = T(parse(BigFloat,"-2.94036748675300481945917659896930989215320594380777597403592")) - a2620 = T(parse(BigFloat,"-0.0665845946076803144470749676022628870281920493197256887985612")) - a2621 = T(parse(BigFloat,"-0.0462346054990843661229248668562217261176966514016859284197145")) - a2622 = T(parse(BigFloat,"-0.0204198733585679401539388228617269778848579774821581777675337")) - a2623 = T(parse(BigFloat,"-53.3523106438735850515953441165998107974045090495791591218714")) - a2624 = T(parse(BigFloat,"-1.35548714715078654978732186705996404017554501614191325114947")) - a2625 = T(parse(BigFloat,"-1.57196275801232751882901735171459249177687219114442583461866")) - - a2700 = T(parse(BigFloat,"-16.6451467486341512872031294403931758764560371130818978459405")) - a2705 = T(parse(BigFloat,"0.00592232780324503308042990005798046524738389560444257136834990")) - a2706 = T(parse(BigFloat,"0.470326159963841112217224303205894113455362530746108825010848")) - a2707 = T(parse(BigFloat,"0.299688863848679000853981837096192399136831121671781279184194")) - a2708 = T(parse(BigFloat,"-0.247656877593994914689992276329810825853958069263947095548189")) - a2709 = T(parse(BigFloat,"0.110895029771437682893999851839061714522445173600678718208625")) - a2711 = T(parse(BigFloat,"-0.491719043846229147070666628704194097678081907210673044988866")) - a2712 = T(parse(BigFloat,"-11.4743154427289496968389492564352536350842454130853175250727")) - a2713 = T(parse(BigFloat,"80.2593166576230272541702485886484400152793366623589989106256")) - a2714 = T(parse(BigFloat,"-0.384132303980042847625312526759029103746926841342088219165648")) - a2715 = T(parse(BigFloat,"7.28147667468107583471326950926136115767612581862877764249646")) - a2716 = T(parse(BigFloat,"-0.132699384612248379510571708176035274836827341616751884314074")) - a2717 = T(parse(BigFloat,"-81.0799832525730726674679289752255240006070716633632990308935")) - a2718 = T(parse(BigFloat,"-1.25037492835620639521768185656179119962253747492403205797494")) - a2719 = T(parse(BigFloat,"2.59263594969543681023776379504377324994226447359296887778718")) - a2720 = T(parse(BigFloat,"-0.301440298346404539830163997260526875264431537275641495291993")) - a2721 = T(parse(BigFloat,"0.221384460789832337451706451572773791695246839057318414301020")) - a2722 = T(parse(BigFloat,"0.0827577274771892931955989870974693152996276435429809890551210")) - a2723 = T(parse(BigFloat,"18.9960662040611520464672450037243263998175161412237156872211")) - a2724 = T(parse(BigFloat,"0.269231946409639685623468015128334167460051910348912845121977")) - a2725 = T(parse(BigFloat,"1.62674827447066537462989364929628933988125029284183680279020")) - a2726 = T(parse(BigFloat,"0.491719043846229147070666628704194097678081907210673044988866")) - - a2800 = T(parse(BigFloat,"0.0838479812409052664616968791372814085980533139224911131069335")) - a2805 = T(parse(BigFloat,"-0.0117949367100973814319755056031295775367961960590736150777613")) - a2806 = T(parse(BigFloat,"-0.247299020568812652339473838743194598325992840353340132697498")) - a2807 = T(parse(BigFloat,"0.0978080858367729012259313014081291665503740655476733940756599")) - a2808 = T(parse(BigFloat,"0.217590689243420631360008651767860318344168120024782176879989")) - a2810 = T(parse(BigFloat,"0.137585606763325224865659632196787746647447222975084865975440")) - a2811 = T(parse(BigFloat,"0.0439870229715046685058790092341545026046103890294261359042581")) - a2813 = T(parse(BigFloat,"-0.513700813768193341957004456618630303738757363641964030086972")) - a2814 = T(parse(BigFloat,"0.826355691151315508644211308399153458701423158616168576922372")) - a2815 = T(parse(BigFloat,"25.7018139719811832625873882972519939511136556341960074626615")) - a2823 = T(parse(BigFloat,"-25.7018139719811832625873882972519939511136556341960074626615")) - a2824 = T(parse(BigFloat,"-0.826355691151315508644211308399153458701423158616168576922372")) - a2825 = T(parse(BigFloat,"0.513700813768193341957004456618630303738757363641964030086972")) - a2826 = T(parse(BigFloat,"-0.0439870229715046685058790092341545026046103890294261359042581")) - a2827 = T(parse(BigFloat,"-0.137585606763325224865659632196787746647447222975084865975440")) - - a2900 = T(parse(BigFloat,"0.124380526654094412881516420868799316268491466359671423163289")) - a2904 = T(parse(BigFloat,"0.226120282197584301422238662979202901196752320742633143965145")) - a2905 = T(parse(BigFloat,"0.0137885887618080880607695837016477814530969417491493385363543")) - a2906 = T(parse(BigFloat,"-0.0672210133996684449749399507414305856950086341525382182856200")) - a2909 = T(parse(BigFloat,"-0.856238975085428354755349769879501772112121597411563802855067")) - a2910 = T(parse(BigFloat,"-1.96337522866858908928262850028093813988180440518267404553576")) - a2911 = T(parse(BigFloat,"-0.232332822724119401237246257308921847250108199230419994978218")) - a2913 = T(parse(BigFloat,"4.30660719086453349461668936876562947772432562053478092626764")) - a2914 = T(parse(BigFloat,"-2.92722963249465482659787911202390446687687394950633612630592")) - a2915 = T(parse(BigFloat,"-82.3131666397858944454492334105458707735761966428138676971041")) - a2923 = T(parse(BigFloat,"82.3131666397858944454492334105458707735761966428138676971041")) - a2924 = T(parse(BigFloat,"2.92722963249465482659787911202390446687687394950633612630592")) - a2925 = T(parse(BigFloat,"-4.30660719086453349461668936876562947772432562053478092626764")) - a2926 = T(parse(BigFloat,"0.232332822724119401237246257308921847250108199230419994978218")) - a2927 = T(parse(BigFloat,"1.96337522866858908928262850028093813988180440518267404553576")) - a2928 = T(parse(BigFloat,"0.856238975085428354755349769879501772112121597411563802855067")) - - a3000 = T(parse(BigFloat,"0.103484561636679776672993546511910344499744798201971316606663")) - a3003 = T(parse(BigFloat,"0.122068887306407222589644082868962077139592714834162134741275")) - a3004 = T(parse(BigFloat,"0.482574490331246622475134780125688112865919023850168049679402")) - a3005 = T(parse(BigFloat,"-0.0381409600015606999730886240005620205664113072478411477421970")) - a3007 = T(parse(BigFloat,"-0.550499525310802324138388507020508177411414311000037561712836")) - a3009 = T(parse(BigFloat,"-0.711915811585189227887648262043794387578291882406745570495765")) - a3010 = T(parse(BigFloat,"-0.584129605671551340432988730158480872095335329645227595707052")) - a3013 = T(parse(BigFloat,"2.11046308125864932128717300046622750300375054278936987850718")) - a3014 = T(parse(BigFloat,"-0.0837494736739572135525742023001037992695260175335123517729291")) - a3015 = T(parse(BigFloat,"5.10021499072320914075295969043344113107545060862804249161191")) - a3023 = T(parse(BigFloat,"-5.10021499072320914075295969043344113107545060862804249161191")) - a3024 = T(parse(BigFloat,"0.0837494736739572135525742023001037992695260175335123517729291")) - a3025 = T(parse(BigFloat,"-2.11046308125864932128717300046622750300375054278936987850718")) - a3027 = T(parse(BigFloat,"0.584129605671551340432988730158480872095335329645227595707052")) - a3028 = T(parse(BigFloat,"0.711915811585189227887648262043794387578291882406745570495765")) - a3029 = T(parse(BigFloat,"0.550499525310802324138388507020508177411414311000037561712836")) + a0600 = T(big"0.103484561636679776672993546511910344499744798201971316606663") + a0603 = T(big"0.122068887306407222589644082868962077139592714834162134741275") + a0604 = T(big"0.482574490331246622475134780125688112865919023850168049679402") + a0605 = T(big"-0.0381409600015606999730886240005620205664113072478411477421970") + + a0700 = T(big"0.124380526654094412881516420868799316268491466359671423163289") + a0704 = T(big"0.226120282197584301422238662979202901196752320742633143965145") + a0705 = T(big"0.0137885887618080880607695837016477814530969417491493385363543") + a0706 = T(big"-0.0672210133996684449749399507414305856950086341525382182856200") + a0800 = T(big"0.0936919065659673815530885456083005933866349695217750085655603") + a0805 = T(big"-0.00613406843450510987229498995641664735620914507128858871007099") + a0806 = T(big"0.216019825625503063708860097659866573490979433278117320188668") + a0807 = T(big"0.423695063515761937337619073960976753205867469544123532683116") + + + a0900 = T(big"0.0838479812409052664616968791372814085980533139224911131069335") + a0905 = T(big"-0.0117949367100973814319755056031295775367961960590736150777613") + a0906 = T(big"-0.247299020568812652339473838743194598325992840353340132697498") + a0907 = T(big"0.0978080858367729012259313014081291665503740655476733940756599") + a0908 = T(big"0.217590689243420631360008651767860318344168120024782176879989") + + a1000 = T(big"0.0615255359769428227954562389614314714333423969064821107453940") + a1005 = T(big"0.00592232780324503308042990005798046524738389560444257136834990") + a1006 = T(big"0.470326159963841112217224303205894113455362530746108825010848") + a1007 = T(big"0.299688863848679000853981837096192399136831121671781279184194") + a1008 = T(big"-0.247656877593994914689992276329810825853958069263947095548189") + a1009 = T(big"0.110895029771437682893999851839061714522445173600678718208625") + + a1100 = T(big"0.0419700073362782579861792864787277787213483656543104611245994") + a1105 = T(big"-0.00317987696266205093901912847692712407988609169703103952205634") + a1106 = T(big"0.806397714906192077260821711520379506393543111567419750119748") + a1107 = T(big"0.0975983126412388979093522850684288851314672048003054550357187") + a1108 = T(big"0.778575578158398909027512446452927238999763460594181964958853") + a1109 = T(big"0.204890423831599428189499202098105603312029235081420653574829") + a1110 = T(big"-1.56261579627468188307070943950527825211462892236424360892806") + + a1200 = T(big"0.0437726782233730163574465242495339811688214967071614123256973") + a1208 = T(big"0.00624365027520195208794358628580933625281631216903095917201250") + a1209 = T(big"0.200043097109577314994435165469647856829066232218264969608768") + a1210 = T(big"-0.00805328367804983036823857162048902911923392887337029314844206") + a1211 = T(big"0.0211517528067396521915711903523399601316877825157550573051221") + + a1300 = T(big"0.0283499250363514563095023591920717312247137654896477097768495") + a1308 = T(big"0.00249163204855817407538949148805995149459884653585417680098222") + a1309 = T(big"0.0230138787854593149638399846373742768772087122638142234223658") + a1310 = T(big"-0.00322155956692977098724476092467120878189463604760620461043308") + a1311 = T(big"0.00988442549447664668946335414487885256040819982786014648129297") + a1312 = T(big"-0.0213010771328887351384307642875927384886634565429572466632092") + + a1400 = T(big"0.343511894290243001049432234735147943083353174980701426268122") + a1408 = T(big"0.210451912023627385609097011999010655788807405225626700040882") + a1409 = T(big"1.03427452057230411936482926828825709938667999698324740166559") + a1410 = T(big"0.00600303645864422487051240448206640574939078092406156945568306") + a1411 = T(big"0.855938125099619537578012106002407728915062652616416005816477") + a1412 = T(big"-0.977235005036766810872264852372525633013107656892839677696022") + a1413 = T(big"-0.660026980479294694616225013856327693720573981219974874776419") + + a1500 = T(big"-0.0143574001672168069538206399935076366657755954378399880691949") + a1508 = T(big"-0.0366253270049039970293685796848974791733119081733552207318285") + a1509 = T(big"0.0350254975636213681976849406979846524346789082471103574920148") + a1510 = T(big"0.0360946016362113508931786658758335239823689929864237671348749") + a1511 = T(big"-0.0265219967553681106351595946834601923649627012457464284442911") + a1512 = T(big"0.0445699011305698119638911537508839908104336323082226770910408") + a1513 = T(big"0.124343093331358243286225595741786448038973408895106741855721") + a1514 = T(big"0.00413829693239480694403512496204335960426192908674476033832967") + + a1600 = T(big"0.356032404425120290975609116398089176264106222379748802654822") + a1608 = T(big"-0.450192758947562595966821779075956175110645100214763601190349") + a1609 = T(big"0.430527907083710898626656292808782917793030154094709462877146") + a1610 = T(big"0.511973029011022237668556960394071692077125787030651386389972") + a1611 = T(big"0.908303638886404260390159124638110213997496214819904630546596") + a1612 = T(big"-1.23921093371933931757372469151534028854413889248605726186520") + a1613 = T(big"-0.649048661671761465141672348879062553905402831967191097656668") + a1614 = T(big"0.251708904586819292210480529948970541404887852931447491219418") + a1615 = T(big"0.779906470345586398810756795282334476023540593411550187024263") + + a1700 = T(big"0.0130935687406513066406881206418834980127470438213192487844956") + a1712 = T(big"-0.0000932053067985113945908461962767108237858631509684667142124826") + a1713 = T(big"0.0505374334262299359640090443138590726770942344716122381702746") + a1714 = T(big"8.04470341944487979109579109610197797641311868930865361048975e-7") + a1715 = T(big"0.000591726029494171190528755742777717259844340971924321528178248") + a1716 = T(big"-4.01614722154557337064691684906375587732264247950093804676867e-7") + + a1800 = T(big"0.0207926484466053012541944544000765652167255206144373407979758") + a1812 = T(big"0.000582695918800085915101902697837284108951406103029871570103075") + a1813 = T(big"-0.00801700732358815939083342186525852746640558465919633524655451") + a1814 = T(big"4.03847643847136940375170821743560570484117290330895506618968e-6") + a1815 = T(big"0.0854609998055506144225056114567535602510114622033622491802597") + a1816 = T(big"-2.04486480935804242706707569691004307904442837552677456232848e-6") + a1817 = T(big"0.105328578824431893399799402979093997354240904235172843146582") + + + a1900 = T(big"1.40153449795736021415446247355771306718486452917597731683689") + a1912 = T(big"-0.230252000984221261616272410367415621261130298274455611733277") + a1913 = T(big"-7.21106840466912905659582237106874247165856493509961561958267") + a1914 = T(big"0.00372901560694836335236995327852132340217759566678662385552634") + a1915 = T(big"-4.71415495727125020678778179392224757011323373221820091641216") + a1916 = T(big"-0.00176367657545349242053841995032797673574903886695600132759652") + a1917 = T(big"7.64130548038698765563029310880237651185173367813936997648198") + a1918 = T(big"3.50602043659751834989896082949744710968212949893375368243588") + + a2000 = T(big"11.9514650694120686799372385830716401674473610826553517297976") + a2012 = T(big"7.79480932108175968783516700231764388220284279598980948538579") + a2013 = T(big"-56.4501393867325792523560991120904281440468100061340556540132") + a2014 = T(big"0.0912376306930644901344530449290276645709607450403673704844997") + a2015 = T(big"-12.7336279925434886201945524309199275038162717529918963305155") + a2016 = T(big"-0.0396895921904719712313542810939736674712383070433147873009352") + a2017 = T(big"54.4392141883570886996225765155307791861438378423305337073797") + a2018 = T(big"-3.64411637921569236846406990361350645806721478409266709351203") + a2019 = T(big"-0.804503249910509910899030787958579499315694913210787878260459") + + a2100 = T(big"-148.809426507100488427838868268647625561930612082148597076690") + a2112 = T(big"-91.7295278291256484357935662402321623495228729036354276506427") + a2113 = T(big"707.656144971598359834575719286335716154821128966649565194286") + a2114 = T(big"-1.10563611857482440905296961311590930801338308942637769555540") + a2115 = T(big"176.134591883811372587859898076055660406999516762301689616841") + a2116 = T(big"0.491384824214880662268898345164454557416884631402764792538746") + a2117 = T(big"-684.278000449814944358237535610895081956077167893600278300805") + a2118 = T(big"27.9910604998398258984224332124380407446002518400668657974589") + a2119 = T(big"13.1939710030282333443670964371153238435064159623744975073252") + a2120 = T(big"1.25128781283980445450114974148056006317268830077396406361417") + + a2200 = T(big"-9.67307946948196763644126118433219395839951408571877262880482") + a2212 = T(big"-4.46990150858505531443846227701960360497830681408751431146712") + a2213 = T(big"45.5127128690952681968241950400052751178905907817398483534845") + a2214 = T(big"-0.0713085086183826912791492024438246129930559805352394367050813") + a2215 = T(big"11.2273614068412741582590624479939384207826800776794485051540") + a2216 = T(big"0.126244376717622724516237912909138809361786889819105426371393") + a2217 = T(big"-43.5439339549483313605810624907242107623814304467621407753424") + a2218 = T(big"0.787174307543058978398792994996550902064546091443233850464377") + a2219 = T(big"0.532264696744684215669300708603886690785395776821503851830821") + a2220 = T(big"0.422422733996325326010225127471388772575086538809603346825334") + a2221 = T(big"0.0859131249503067107308438031499859443441115056294154956487671") + + a2300 = T(big"-10.0664032447054702403396606900426891472202824757968765569183") + a2308 = T(big"-0.0366253270049039970293685796848974791733119081733552207318285") + a2309 = T(big"0.0350254975636213681976849406979846524346789082471103574920148") + a2310 = T(big"0.0360946016362113508931786658758335239823689929864237671348749") + a2311 = T(big"-0.0265219967553681106351595946834601923649627012457464284442911") + a2312 = T(big"-6.27088972181464143590553149478871603839356122957396018530209") + a2313 = T(big"48.2079237442562989090702103008195063923492593141636117832993") + a2314 = T(big"-0.0694471689136165640882395180583732834557754169149088630301342") + a2315 = T(big"12.6810690204850295698341370913609807066108483811412127009785") + a2316 = T(big"0.0119671168968323754838161435501011294100927813964199613229864") + a2317 = T(big"-46.7249764992482408003358268242662695593201321659795608950429") + a2318 = T(big"1.33029613326626711314710039298216591399033511191227101321435") + a2319 = T(big"1.00766787503398298353438903619926657771162717793661719708370") + a2320 = T(big"0.0209512051933665091664122388475480702892770753864487241177616") + a2321 = T(big"0.0210134706331264177317735424331396407424412188443757490871603") + a2322 = T(big"0.00952196014417121794175101542454575907376360233658356240547761") + + a2400 = T(big"-409.478081677743708772589097409370357624424341606752069725341") + a2408 = T(big"0.210451912023627385609097011999010655788807405225626700040882") + a2409 = T(big"1.03427452057230411936482926828825709938667999698324740166559") + a2410 = T(big"0.00600303645864422487051240448206640574939078092406156945568306") + a2411 = T(big"0.855938125099619537578012106002407728915062652616416005816477") + a2412 = T(big"-250.516998547447860492777657729316130386584050420782075966990") + a2413 = T(big"1946.42466652388427766053750328264758595829850895761428240231") + a2414 = T(big"-3.04503882102310365506105809086860882786950544097602101685174") + a2415 = T(big"490.626379528281713521208265299168083841598542274061671576230") + a2416 = T(big"1.56647589531270907115484067013597445739595615245966775329993") + a2417 = T(big"-1881.97428994011173362217267377035870619215906638453056643641") + a2418 = T(big"75.2592224724847175278837713643303149821620618914245864351135") + a2419 = T(big"34.5734356980331067622434344736554689696728644793551014989002") + a2420 = T(big"3.21147679440968961435417361847073755169022966748891627882572") + a2421 = T(big"-0.460408041738414391307201404237058848867245095265382820823055") + a2422 = T(big"-0.0870718339841810522431884137957986245724252047388936572215438") + a2423 = T(big"-7.39351814158303067567016952195521063999185773249132944724553") + + a2500 = T(big"3.43347475853550878921093496257596781120623891072008459930197") + a2508 = T(big"0.00249163204855817407538949148805995149459884653585417680098222") + a2509 = T(big"0.0230138787854593149638399846373742768772087122638142234223658") + a2510 = T(big"-0.00322155956692977098724476092467120878189463604760620461043308") + a2511 = T(big"0.00988442549447664668946335414487885256040819982786014648129297") + a2512 = T(big"2.16252799377922507788307841904757354045759225335732707916530") + a2513 = T(big"-16.2699864546457421328065640660139489006987552040228852402716") + a2514 = T(big"-0.128534502120524552843583417470935010538029037542654506231743") + a2515 = T(big"-8.98915042666504253089307820833379330486511746063552853023189") + a2516 = T(big"-0.00348595363232025333387080201851013650192401767250513765000963") + a2517 = T(big"15.7936194113339807536235187388695574135853387025139738341334") + a2518 = T(big"-0.574403330914095065628165482017335820148383663195675408024658") + a2519 = T(big"-0.345602039021393296692722496608124982535237228827655306030152") + a2520 = T(big"-0.00662241490206585091731619991383757781133067992707418687587487") + a2521 = T(big"-0.00777788129242204164032546458607364309759347209626759111946150") + a2522 = T(big"-0.00356084192402274913338827232697437364675240818791706587952939") + a2523 = T(big"4.79282506449930799649797749629840189457296934139359048988332") + a2524 = T(big"0.153725464873068577844576387402512082757034273069877432944621") + + a2600 = T(big"32.3038520871985442326994734440031535091364975047784630088983") + a2605 = T(big"-0.00317987696266205093901912847692712407988609169703103952205634") + a2606 = T(big"0.806397714906192077260821711520379506393543111567419750119748") + a2607 = T(big"0.0975983126412388979093522850684288851314672048003054550357187") + a2608 = T(big"0.778575578158398909027512446452927238999763460594181964958853") + a2609 = T(big"0.204890423831599428189499202098105603312029235081420653574829") + a2610 = T(big"-1.56261579627468188307070943950527825211462892236424360892806") + a2612 = T(big"16.3429891882310570648504243973927174708753353504154550405647") + a2613 = T(big"-154.544555293543621230730189631471036399316683669609116705323") + a2614 = T(big"1.56971088703334872692034283417621761466263593582497085955201") + a2615 = T(big"3.27685545087248131321429817269900731165522404974733504794135") + a2616 = T(big"-0.0503489245193653176348040727199783626534081095691632396802451") + a2617 = T(big"153.321151858041665070593767885914694011224363102594556731397") + a2618 = T(big"7.17568186327720495846766484814784143567826308034865369443637") + a2619 = T(big"-2.94036748675300481945917659896930989215320594380777597403592") + a2620 = T(big"-0.0665845946076803144470749676022628870281920493197256887985612") + a2621 = T(big"-0.0462346054990843661229248668562217261176966514016859284197145") + a2622 = T(big"-0.0204198733585679401539388228617269778848579774821581777675337") + a2623 = T(big"-53.3523106438735850515953441165998107974045090495791591218714") + a2624 = T(big"-1.35548714715078654978732186705996404017554501614191325114947") + a2625 = T(big"-1.57196275801232751882901735171459249177687219114442583461866") + + a2700 = T(big"-16.6451467486341512872031294403931758764560371130818978459405") + a2705 = T(big"0.00592232780324503308042990005798046524738389560444257136834990") + a2706 = T(big"0.470326159963841112217224303205894113455362530746108825010848") + a2707 = T(big"0.299688863848679000853981837096192399136831121671781279184194") + a2708 = T(big"-0.247656877593994914689992276329810825853958069263947095548189") + a2709 = T(big"0.110895029771437682893999851839061714522445173600678718208625") + a2711 = T(big"-0.491719043846229147070666628704194097678081907210673044988866") + a2712 = T(big"-11.4743154427289496968389492564352536350842454130853175250727") + a2713 = T(big"80.2593166576230272541702485886484400152793366623589989106256") + a2714 = T(big"-0.384132303980042847625312526759029103746926841342088219165648") + a2715 = T(big"7.28147667468107583471326950926136115767612581862877764249646") + a2716 = T(big"-0.132699384612248379510571708176035274836827341616751884314074") + a2717 = T(big"-81.0799832525730726674679289752255240006070716633632990308935") + a2718 = T(big"-1.25037492835620639521768185656179119962253747492403205797494") + a2719 = T(big"2.59263594969543681023776379504377324994226447359296887778718") + a2720 = T(big"-0.301440298346404539830163997260526875264431537275641495291993") + a2721 = T(big"0.221384460789832337451706451572773791695246839057318414301020") + a2722 = T(big"0.0827577274771892931955989870974693152996276435429809890551210") + a2723 = T(big"18.9960662040611520464672450037243263998175161412237156872211") + a2724 = T(big"0.269231946409639685623468015128334167460051910348912845121977") + a2725 = T(big"1.62674827447066537462989364929628933988125029284183680279020") + a2726 = T(big"0.491719043846229147070666628704194097678081907210673044988866") + + a2800 = T(big"0.0838479812409052664616968791372814085980533139224911131069335") + a2805 = T(big"-0.0117949367100973814319755056031295775367961960590736150777613") + a2806 = T(big"-0.247299020568812652339473838743194598325992840353340132697498") + a2807 = T(big"0.0978080858367729012259313014081291665503740655476733940756599") + a2808 = T(big"0.217590689243420631360008651767860318344168120024782176879989") + a2810 = T(big"0.137585606763325224865659632196787746647447222975084865975440") + a2811 = T(big"0.0439870229715046685058790092341545026046103890294261359042581") + a2813 = T(big"-0.513700813768193341957004456618630303738757363641964030086972") + a2814 = T(big"0.826355691151315508644211308399153458701423158616168576922372") + a2815 = T(big"25.7018139719811832625873882972519939511136556341960074626615") + a2823 = T(big"-25.7018139719811832625873882972519939511136556341960074626615") + a2824 = T(big"-0.826355691151315508644211308399153458701423158616168576922372") + a2825 = T(big"0.513700813768193341957004456618630303738757363641964030086972") + a2826 = T(big"-0.0439870229715046685058790092341545026046103890294261359042581") + a2827 = T(big"-0.137585606763325224865659632196787746647447222975084865975440") + + a2900 = T(big"0.124380526654094412881516420868799316268491466359671423163289") + a2904 = T(big"0.226120282197584301422238662979202901196752320742633143965145") + a2905 = T(big"0.0137885887618080880607695837016477814530969417491493385363543") + a2906 = T(big"-0.0672210133996684449749399507414305856950086341525382182856200") + a2909 = T(big"-0.856238975085428354755349769879501772112121597411563802855067") + a2910 = T(big"-1.96337522866858908928262850028093813988180440518267404553576") + a2911 = T(big"-0.232332822724119401237246257308921847250108199230419994978218") + a2913 = T(big"4.30660719086453349461668936876562947772432562053478092626764") + a2914 = T(big"-2.92722963249465482659787911202390446687687394950633612630592") + a2915 = T(big"-82.3131666397858944454492334105458707735761966428138676971041") + a2923 = T(big"82.3131666397858944454492334105458707735761966428138676971041") + a2924 = T(big"2.92722963249465482659787911202390446687687394950633612630592") + a2925 = T(big"-4.30660719086453349461668936876562947772432562053478092626764") + a2926 = T(big"0.232332822724119401237246257308921847250108199230419994978218") + a2927 = T(big"1.96337522866858908928262850028093813988180440518267404553576") + a2928 = T(big"0.856238975085428354755349769879501772112121597411563802855067") + + a3000 = T(big"0.103484561636679776672993546511910344499744798201971316606663") + a3003 = T(big"0.122068887306407222589644082868962077139592714834162134741275") + a3004 = T(big"0.482574490331246622475134780125688112865919023850168049679402") + a3005 = T(big"-0.0381409600015606999730886240005620205664113072478411477421970") + a3007 = T(big"-0.550499525310802324138388507020508177411414311000037561712836") + a3009 = T(big"-0.711915811585189227887648262043794387578291882406745570495765") + a3010 = T(big"-0.584129605671551340432988730158480872095335329645227595707052") + a3013 = T(big"2.11046308125864932128717300046622750300375054278936987850718") + a3014 = T(big"-0.0837494736739572135525742023001037992695260175335123517729291") + a3015 = T(big"5.10021499072320914075295969043344113107545060862804249161191") + a3023 = T(big"-5.10021499072320914075295969043344113107545060862804249161191") + a3024 = T(big"0.0837494736739572135525742023001037992695260175335123517729291") + a3025 = T(big"-2.11046308125864932128717300046622750300375054278936987850718") + a3027 = T(big"0.584129605671551340432988730158480872095335329645227595707052") + a3028 = T(big"0.711915811585189227887648262043794387578291882406745570495765") + a3029 = T(big"0.550499525310802324138388507020508177411414311000037561712836") a3100 = T(29//150) a3102 = T(11//50) a3103 = T(-2//25) - a3106 = T(parse(BigFloat,"0.109993425580724703919462404865068340845119058295846426463652")) - a3107 = T(parse(BigFloat,"-0.254297048076270161384068506997153122141835626976703920846242")) - a3109 = T(parse(BigFloat,"0.865570777116694254343770343821098281832847401233011859346737")) - a3110 = T(parse(BigFloat,"3.32416449114093083106799552786572018336860092936986407160200")) - a3113 = T(parse(BigFloat,"-12.0102223315977933882352385148661841260301942633996815127277")) - a3114 = T(parse(BigFloat,"0.476601466242493239430442776862061899602963782003580209476163")) - a3115 = T(parse(BigFloat,"-29.0243011221036390525802623213654099596251221332470910692353")) - a3123 = T(parse(BigFloat,"29.0243011221036390525802623213654099596251221332470910692353")) - a3124 = T(parse(BigFloat,"-0.476601466242493239430442776862061899602963782003580209476163")) - a3125 = T(parse(BigFloat,"12.0102223315977933882352385148661841260301942633996815127277")) - a3127 = T(parse(BigFloat,"-3.32416449114093083106799552786572018336860092936986407160200")) - a3128 = T(parse(BigFloat,"-0.865570777116694254343770343821098281832847401233011859346737")) - a3129 = T(parse(BigFloat,"0.254297048076270161384068506997153122141835626976703920846242")) - a3130 = T(parse(BigFloat,"-0.109993425580724703919462404865068340845119058295846426463652")) + a3106 = T(big"0.109993425580724703919462404865068340845119058295846426463652") + a3107 = T(big"-0.254297048076270161384068506997153122141835626976703920846242") + a3109 = T(big"0.865570777116694254343770343821098281832847401233011859346737") + a3110 = T(big"3.32416449114093083106799552786572018336860092936986407160200") + a3113 = T(big"-12.0102223315977933882352385148661841260301942633996815127277") + a3114 = T(big"0.476601466242493239430442776862061899602963782003580209476163") + a3115 = T(big"-29.0243011221036390525802623213654099596251221332470910692353") + a3123 = T(big"29.0243011221036390525802623213654099596251221332470910692353") + a3124 = T(big"-0.476601466242493239430442776862061899602963782003580209476163") + a3125 = T(big"12.0102223315977933882352385148661841260301942633996815127277") + a3127 = T(big"-3.32416449114093083106799552786572018336860092936986407160200") + a3128 = T(big"-0.865570777116694254343770343821098281832847401233011859346737") + a3129 = T(big"0.254297048076270161384068506997153122141835626976703920846242") + a3130 = T(big"-0.109993425580724703919462404865068340845119058295846426463652") a3200 = T(-5//6) a3201 = T(25//18) a3204 = T(-3//4) - a3206 = T(parse(BigFloat,"-0.492529543718026304422682049114021320200214681580657784719074")) - a3230 = T(parse(BigFloat,"0.492529543718026304422682049114021320200214681580657784719074")) + a3206 = T(big"-0.492529543718026304422682049114021320200214681580657784719074") + a3230 = T(big"0.492529543718026304422682049114021320200214681580657784719074") a3231 = T(3//4) a3300 = T(1//9) a3302 = T(-2//9) a3332 = T(2//9) - a3400 = T(parse(BigFloat,"0.285835140388971558796088842163836414852927537894596466840753")) + a3400 = T(big"0.285835140388971558796088842163836414852927537894596466840753") a3401 = T(7//24) a3402 = T(7//32) a3404 = T(21//128) - a3406 = T(parse(BigFloat,"0.218194354945556658327188241581352107093288824322187941141516")) - a3407 = T(parse(BigFloat,"0.180392898478697766863635221946775437719620053641849228562435")) - a3409 = T(parse(BigFloat,"0.205713839404845018859120755122929542277570094982808905393991")) - a3410 = T(parse(BigFloat,"0.242715791581770239970282927959446515762745971386670541948576")) - a3411 = T(parse(BigFloat,"0.246465780813629305833609291181891407799228103869305705137021")) - a3412 = T(parse(BigFloat,"-3.44991940790890824979834154601622662060370460614931644223924")) - a3413 = T(parse(BigFloat,"0.228875562160036081760729060738458584294220372552740218459295")) - a3414 = T(parse(BigFloat,"0.283290599702151415321527419056733335978436595493855789831434")) - a3415 = T(parse(BigFloat,"3.21085125837766640960131490544236787005557320332238705967955")) - a3416 = T(parse(BigFloat,"-0.223538777364845699920233756214162507964125230083674032084065")) - a3417 = T(parse(BigFloat,"-0.707121157204419073518727286207487212130091231955206160635271")) - a3418 = T(parse(BigFloat,"3.21123345150287080408174729202856500893260034443022374267639")) - a3419 = T(parse(BigFloat,"1.40954348309669766030414474301123175769045945573548986335553")) - a3420 = T(parse(BigFloat,"-0.151362053443742613121602276742518111090963026203676055891793")) - a3421 = T(parse(BigFloat,"0.372350574527014276454724080214619984397121028202148298716575")) - a3422 = T(parse(BigFloat,"0.252978746406361336722199907762141285915775728129414319261111")) - a3423 = T(parse(BigFloat,"-3.21085125837766640960131490544236787005557320332238705967955")) - a3424 = T(parse(BigFloat,"-0.283290599702151415321527419056733335978436595493855789831434")) - a3425 = T(parse(BigFloat,"-0.228875562160036081760729060738458584294220372552740218459295")) - a3426 = T(parse(BigFloat,"-0.246465780813629305833609291181891407799228103869305705137021")) - a3427 = T(parse(BigFloat,"-0.242715791581770239970282927959446515762745971386670541948576")) - a3428 = T(parse(BigFloat,"-0.205713839404845018859120755122929542277570094982808905393991")) - a3429 = T(parse(BigFloat,"-0.180392898478697766863635221946775437719620053641849228562435")) - a3430 = T(parse(BigFloat,"-0.218194354945556658327188241581352107093288824322187941141516")) + a3406 = T(big"0.218194354945556658327188241581352107093288824322187941141516") + a3407 = T(big"0.180392898478697766863635221946775437719620053641849228562435") + a3409 = T(big"0.205713839404845018859120755122929542277570094982808905393991") + a3410 = T(big"0.242715791581770239970282927959446515762745971386670541948576") + a3411 = T(big"0.246465780813629305833609291181891407799228103869305705137021") + a3412 = T(big"-3.44991940790890824979834154601622662060370460614931644223924") + a3413 = T(big"0.228875562160036081760729060738458584294220372552740218459295") + a3414 = T(big"0.283290599702151415321527419056733335978436595493855789831434") + a3415 = T(big"3.21085125837766640960131490544236787005557320332238705967955") + a3416 = T(big"-0.223538777364845699920233756214162507964125230083674032084065") + a3417 = T(big"-0.707121157204419073518727286207487212130091231955206160635271") + a3418 = T(big"3.21123345150287080408174729202856500893260034443022374267639") + a3419 = T(big"1.40954348309669766030414474301123175769045945573548986335553") + a3420 = T(big"-0.151362053443742613121602276742518111090963026203676055891793") + a3421 = T(big"0.372350574527014276454724080214619984397121028202148298716575") + a3422 = T(big"0.252978746406361336722199907762141285915775728129414319261111") + a3423 = T(big"-3.21085125837766640960131490544236787005557320332238705967955") + a3424 = T(big"-0.283290599702151415321527419056733335978436595493855789831434") + a3425 = T(big"-0.228875562160036081760729060738458584294220372552740218459295") + a3426 = T(big"-0.246465780813629305833609291181891407799228103869305705137021") + a3427 = T(big"-0.242715791581770239970282927959446515762745971386670541948576") + a3428 = T(big"-0.205713839404845018859120755122929542277570094982808905393991") + a3429 = T(big"-0.180392898478697766863635221946775437719620053641849228562435") + a3430 = T(big"-0.218194354945556658327188241581352107093288824322187941141516") a3431 = T(-21//128) a3432 = T(-7//32) a3433 = T(-7//24) diff --git a/src/tableaus/high_order_rk_tableaus.jl b/src/tableaus/high_order_rk_tableaus.jl index 54f486b0b1..84d47571f0 100644 --- a/src/tableaus/high_order_rk_tableaus.jl +++ b/src/tableaus/high_order_rk_tableaus.jl @@ -64,7 +64,7 @@ end On the Optimization of Some Nine-Stage Seventh-order Runge-Kutta Method, by M. Tanaka, S. Muramatsu and S. Yamashita, Information Processing Society of Japan, Vol. 33, No. 12 (1992) pages 1512-1526. """ -Base.@pure function TanYam7ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} +function TanYam7ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} c1 =T2(0.07816646510113846) c2 =T2(0.1172496976517077) c3 =T2(0.17587454647756157) @@ -302,7 +302,7 @@ end Cheap Error Estimation for Runge-Kutta methods, by Ch. Tsitouras and S.N. Papakostas, Siam Journal on Scientific Computing, Vol. 20, Issue 6, Nov 1999. """ -Base.@pure function TsitPap8ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} +function TsitPap8ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} c1 =T2(0.06338028169014084) c2 =T2(0.1027879458763643) @@ -664,7 +664,7 @@ struct DP8ConstantCache{T,T2} <: OrdinaryDiffEqConstantCache d716::T end -Base.@pure function DP8ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} +function DP8ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} c7 = T2(0.25) c8 = T2(0.3076923076923077) c9 = T2(0.6512820512820513) @@ -768,89 +768,89 @@ function DP8ConstantCache(T::Type,T2::Type) c4 = T2((6-sqrt(6))/10 * c6) c3 = T2(2//3 * c4) c2 = T2(2//3 * c3) - b1 = T(parse(BigFloat," 5.42937341165687622380535766363e-2")) - b6 = T(parse(BigFloat," 4.45031289275240888144113950566")) - b7 = T(parse(BigFloat," 1.89151789931450038304281599044")) - b8 = T(parse(BigFloat,"-5.8012039600105847814672114227")) - b9 = T(parse(BigFloat," 3.1116436695781989440891606237e-1")) - b10 = T(parse(BigFloat,"-1.52160949662516078556178806805e-1")) - b11 = T(parse(BigFloat," 2.01365400804030348374776537501e-1")) - b12 = T(parse(BigFloat," 4.47106157277725905176885569043e-2")) - # bhh1 = T(parse(BigFloat,"0.244094488188976377952755905512")) - # bhh2 = T(parse(BigFloat,"0.733846688281611857341361741547")) - # bhh3 = T(parse(BigFloat,"0.220588235294117647058823529412e-01")) - btilde1 = T(parse(BigFloat,"-1.898007540724076157147023288757e-1")) - btilde6 = T(parse(BigFloat," 4.45031289275240888144113950566")) - btilde7 = T(parse(BigFloat," 1.89151789931450038304281599044")) - btilde8 = T(parse(BigFloat,"-5.8012039600105847814672114227")) - btilde9 = T(parse(BigFloat,"-4.22682321323791962932445679177e-1")) - btilde10 = T(parse(BigFloat,"-1.52160949662516078556178806805e-1")) - btilde11 = T(parse(BigFloat," 2.01365400804030348374776537501e-1")) - btilde12 = T(parse(BigFloat,"2.26517921983608258118062039631e-2")) - er1 = T(parse(BigFloat," 0.1312004499419488073250102996e-01")) - er6 = T(parse(BigFloat,"-0.1225156446376204440720569753e+01")) - er7 = T(parse(BigFloat,"-0.4957589496572501915214079952")) - er8 = T(parse(BigFloat," 0.1664377182454986536961530415e+01")) - er9 = T(parse(BigFloat,"-0.3503288487499736816886487290")) - er10 = T(parse(BigFloat," 0.3341791187130174790297318841")) - er11 = T(parse(BigFloat," 0.8192320648511571246570742613e-01")) - er12 = T(parse(BigFloat,"-0.2235530786388629525884427845e-01")) - a0201 = T(parse(BigFloat," 5.26001519587677318785587544488e-2")) - a0301 = T(parse(BigFloat," 1.97250569845378994544595329183e-2")) - a0302 = T(parse(BigFloat," 5.91751709536136983633785987549e-2")) - a0401 = T(parse(BigFloat," 2.95875854768068491816892993775e-2")) - a0403 = T(parse(BigFloat," 8.87627564304205475450678981324e-2")) - a0501 = T(parse(BigFloat," 2.41365134159266685502369798665e-1")) - a0503 = T(parse(BigFloat,"-8.84549479328286085344864962717e-1")) - a0504 = T(parse(BigFloat," 9.24834003261792003115737966543e-1")) - a0601 = T(parse(BigFloat," 3.7037037037037037037037037037e-2")) - a0604 = T(parse(BigFloat," 1.70828608729473871279604482173e-1")) - a0605 = T(parse(BigFloat," 1.25467687566822425016691814123e-1")) - a0701 = T(parse(BigFloat," 3.7109375e-2")) - a0704 = T(parse(BigFloat," 1.70252211019544039314978060272e-1")) - a0705 = T(parse(BigFloat," 6.02165389804559606850219397283e-2")) - a0706 = T(parse(BigFloat,"-1.7578125e-2")) - a0801 = T(parse(BigFloat," 3.70920001185047927108779319836e-2")) - a0804 = T(parse(BigFloat," 1.70383925712239993810214054705e-1")) - a0805 = T(parse(BigFloat," 1.07262030446373284651809199168e-1")) - a0806 = T(parse(BigFloat,"-1.53194377486244017527936158236e-2")) - a0807 = T(parse(BigFloat," 8.27378916381402288758473766002e-3")) - a0901 = T(parse(BigFloat," 6.24110958716075717114429577812e-1")) - a0904 = T(parse(BigFloat,"-3.36089262944694129406857109825")) - a0905 = T(parse(BigFloat,"-8.68219346841726006818189891453e-1")) - a0906 = T(parse(BigFloat," 2.75920996994467083049415600797e1")) - a0907 = T(parse(BigFloat," 2.01540675504778934086186788979e1")) - a0908 = T(parse(BigFloat,"-4.34898841810699588477366255144e1")) - a1001 = T(parse(BigFloat," 4.77662536438264365890433908527e-1")) - a1004 = T(parse(BigFloat,"-2.48811461997166764192642586468e0")) - a1005 = T(parse(BigFloat,"-5.90290826836842996371446475743e-1")) - a1006 = T(parse(BigFloat," 2.12300514481811942347288949897e1")) - a1007 = T(parse(BigFloat," 1.52792336328824235832596922938e1")) - a1008 = T(parse(BigFloat,"-3.32882109689848629194453265587e1")) - a1009 = T(parse(BigFloat,"-2.03312017085086261358222928593e-2")) - a1101 = T(parse(BigFloat,"-9.3714243008598732571704021658e-1")) - a1104 = T(parse(BigFloat," 5.18637242884406370830023853209e0")) - a1105 = T(parse(BigFloat," 1.09143734899672957818500254654e0")) - a1106 = T(parse(BigFloat,"-8.14978701074692612513997267357e0")) - a1107 = T(parse(BigFloat,"-1.85200656599969598641566180701e1")) - a1108 = T(parse(BigFloat," 2.27394870993505042818970056734e1")) - a1109 = T(parse(BigFloat," 2.49360555267965238987089396762e0")) - a1110 = T(parse(BigFloat,"-3.0467644718982195003823669022e0")) - a1201 = T(parse(BigFloat," 2.27331014751653820792359768449e0")) - a1204 = T(parse(BigFloat," -1.05344954667372501984066689879e1")) - a1205 = T(parse(BigFloat," -2.00087205822486249909675718444e0")) - a1206 = T(parse(BigFloat," -1.79589318631187989172765950534e1")) - a1207 = T(parse(BigFloat," 2.79488845294199600508499808837e1")) - a1208 = T(parse(BigFloat," -2.85899827713502369474065508674e0")) - a1209 = T(parse(BigFloat," -8.87285693353062954433549289258e0")) - a1210 = T(parse(BigFloat," 1.23605671757943030647266201528e1")) - a1211 = T(parse(BigFloat," 6.43392746015763530355970484046e-1")) + b1 = T(big" 5.42937341165687622380535766363e-2") + b6 = T(big" 4.45031289275240888144113950566") + b7 = T(big" 1.89151789931450038304281599044") + b8 = T(big"-5.8012039600105847814672114227") + b9 = T(big" 3.1116436695781989440891606237e-1") + b10 = T(big"-1.52160949662516078556178806805e-1") + b11 = T(big" 2.01365400804030348374776537501e-1") + b12 = T(big" 4.47106157277725905176885569043e-2") + # bhh1 = T(big"0.244094488188976377952755905512") + # bhh2 = T(big"0.733846688281611857341361741547") + # bhh3 = T(big"0.220588235294117647058823529412e-01") + btilde1 = T(big"-1.898007540724076157147023288757e-1") + btilde6 = T(big" 4.45031289275240888144113950566") + btilde7 = T(big" 1.89151789931450038304281599044") + btilde8 = T(big"-5.8012039600105847814672114227") + btilde9 = T(big"-4.22682321323791962932445679177e-1") + btilde10 = T(big"-1.52160949662516078556178806805e-1") + btilde11 = T(big" 2.01365400804030348374776537501e-1") + btilde12 = T(big"2.26517921983608258118062039631e-2") + er1 = T(big" 0.1312004499419488073250102996e-01") + er6 = T(big"-0.1225156446376204440720569753e+01") + er7 = T(big"-0.4957589496572501915214079952") + er8 = T(big" 0.1664377182454986536961530415e+01") + er9 = T(big"-0.3503288487499736816886487290") + er10 = T(big" 0.3341791187130174790297318841") + er11 = T(big" 0.8192320648511571246570742613e-01") + er12 = T(big"-0.2235530786388629525884427845e-01") + a0201 = T(big" 5.26001519587677318785587544488e-2") + a0301 = T(big" 1.97250569845378994544595329183e-2") + a0302 = T(big" 5.91751709536136983633785987549e-2") + a0401 = T(big" 2.95875854768068491816892993775e-2") + a0403 = T(big" 8.87627564304205475450678981324e-2") + a0501 = T(big" 2.41365134159266685502369798665e-1") + a0503 = T(big"-8.84549479328286085344864962717e-1") + a0504 = T(big" 9.24834003261792003115737966543e-1") + a0601 = T(big" 3.7037037037037037037037037037e-2") + a0604 = T(big" 1.70828608729473871279604482173e-1") + a0605 = T(big" 1.25467687566822425016691814123e-1") + a0701 = T(big" 3.7109375e-2") + a0704 = T(big" 1.70252211019544039314978060272e-1") + a0705 = T(big" 6.02165389804559606850219397283e-2") + a0706 = T(big"-1.7578125e-2") + a0801 = T(big" 3.70920001185047927108779319836e-2") + a0804 = T(big" 1.70383925712239993810214054705e-1") + a0805 = T(big" 1.07262030446373284651809199168e-1") + a0806 = T(big"-1.53194377486244017527936158236e-2") + a0807 = T(big" 8.27378916381402288758473766002e-3") + a0901 = T(big" 6.24110958716075717114429577812e-1") + a0904 = T(big"-3.36089262944694129406857109825") + a0905 = T(big"-8.68219346841726006818189891453e-1") + a0906 = T(big" 2.75920996994467083049415600797e1") + a0907 = T(big" 2.01540675504778934086186788979e1") + a0908 = T(big"-4.34898841810699588477366255144e1") + a1001 = T(big" 4.77662536438264365890433908527e-1") + a1004 = T(big"-2.48811461997166764192642586468e0") + a1005 = T(big"-5.90290826836842996371446475743e-1") + a1006 = T(big" 2.12300514481811942347288949897e1") + a1007 = T(big" 1.52792336328824235832596922938e1") + a1008 = T(big"-3.32882109689848629194453265587e1") + a1009 = T(big"-2.03312017085086261358222928593e-2") + a1101 = T(big"-9.3714243008598732571704021658e-1") + a1104 = T(big" 5.18637242884406370830023853209e0") + a1105 = T(big" 1.09143734899672957818500254654e0") + a1106 = T(big"-8.14978701074692612513997267357e0") + a1107 = T(big"-1.85200656599969598641566180701e1") + a1108 = T(big" 2.27394870993505042818970056734e1") + a1109 = T(big" 2.49360555267965238987089396762e0") + a1110 = T(big"-3.0467644718982195003823669022e0") + a1201 = T(big" 2.27331014751653820792359768449e0") + a1204 = T(big" -1.05344954667372501984066689879e1") + a1205 = T(big" -2.00087205822486249909675718444e0") + a1206 = T(big" -1.79589318631187989172765950534e1") + a1207 = T(big" 2.79488845294199600508499808837e1") + a1208 = T(big" -2.85899827713502369474065508674e0") + a1209 = T(big" -8.87285693353062954433549289258e0") + a1210 = T(big" 1.23605671757943030647266201528e1") + a1211 = T(big" 6.43392746015763530355970484046e-1") c14,c15,c16,a1401,a1407,a1408,a1409,a1410,a1411,a1412,a1413,a1501,a1506,a1507,a1508,a1511,a1512,a1513,a1514,a1601,a1606,a1607,a1608,a1609,a1613,a1614,a1615 = DP8Interp(T,T2) d401,d406,d407,d408,d409,d410,d411,d412,d413,d414,d415,d416,d501,d506,d507,d508,d509,d510,d511,d512,d513,d514,d515,d516,d601,d606,d607,d608,d609,d610,d611,d612,d613,d614,d615,d616,d701,d706,d707,d708,d709,d710,d711,d712,d713,d714,d715,d716 = DP8Interp_polyweights(T) DP8ConstantCache(c7,c8,c9,c10,c11,c6,c5,c4,c3,c2,b1,b6,b7,b8,b9,b10,b11,b12,btilde1,btilde6,btilde7,btilde8,btilde9,btilde10,btilde11,btilde12,er1,er6,er7,er8,er9,er10,er11,er12,a0201,a0301,a0302,a0401,a0403,a0501,a0503,a0504,a0601,a0604,a0605,a0701,a0704,a0705,a0706,a0801,a0804,a0805,a0806,a0807,a0901,a0904,a0905,a0906,a0907,a0908,a1001,a1004,a1005,a1006,a1007,a1008,a1009,a1101,a1104,a1105,a1106,a1107,a1108,a1109,a1110,a1201,a1204,a1205,a1206,a1207,a1208,a1209,a1210,a1211,c14,c15,c16,a1401,a1407,a1408,a1409,a1410,a1411,a1412,a1413,a1501,a1506,a1507,a1508,a1511,a1512,a1513,a1514,a1601,a1606,a1607,a1608,a1609,a1613,a1614,a1615,d401,d406,d407,d408,d409,d410,d411,d412,d413,d414,d415,d416,d501,d506,d507,d508,d509,d510,d511,d512,d513,d514,d515,d516,d601,d606,d607,d608,d609,d610,d611,d612,d613,d614,d615,d616,d701,d706,d707,d708,d709,d710,d711,d712,d713,d714,d715,d716) end -Base.@pure function DP8Interp(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} +function DP8Interp(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} c14 = T2(0.1) c15 = T2(0.2) c16 = T2(0.7777777777777778) @@ -886,35 +886,35 @@ function DP8Interp(T::Type,T2::Type) c14 = T2(1//10) c15 = T2(2//10) c16 = T2(7//9) - a1401 = T(parse(BigFloat," 5.61675022830479523392909219681e-2")) - a1407 = T(parse(BigFloat," 2.53500210216624811088794765333e-1")) - a1408 = T(parse(BigFloat,"-2.46239037470802489917441475441e-1")) - a1409 = T(parse(BigFloat,"-1.24191423263816360469010140626e-1")) - a1410 = T(parse(BigFloat," 1.5329179827876569731206322685e-1")) - a1411 = T(parse(BigFloat," 8.20105229563468988491666602057e-3")) - a1412 = T(parse(BigFloat," 7.56789766054569976138603589584e-3")) - a1413 = T(parse(BigFloat,"-8.298e-3")) - a1501 = T(parse(BigFloat," 3.18346481635021405060768473261e-2")) - a1506 = T(parse(BigFloat," 2.83009096723667755288322961402e-2")) - a1507 = T(parse(BigFloat," 5.35419883074385676223797384372e-2")) - a1508 = T(parse(BigFloat,"-5.49237485713909884646569340306e-2")) - a1511 = T(parse(BigFloat,"-1.08347328697249322858509316994e-4")) - a1512 = T(parse(BigFloat," 3.82571090835658412954920192323e-4")) - a1513 = T(parse(BigFloat,"-3.40465008687404560802977114492e-4")) - a1514 = T(parse(BigFloat," 1.41312443674632500278074618366e-1")) - a1601 = T(parse(BigFloat,"-4.28896301583791923408573538692e-1")) - a1606 = T(parse(BigFloat,"-4.69762141536116384314449447206e0")) - a1607 = T(parse(BigFloat," 7.68342119606259904184240953878e0")) - a1608 = T(parse(BigFloat," 4.06898981839711007970213554331e0")) - a1609 = T(parse(BigFloat," 3.56727187455281109270669543021e-1")) - a1613 = T(parse(BigFloat,"-1.39902416515901462129418009734e-3")) - a1614 = T(parse(BigFloat," 2.9475147891527723389556272149e0")) - a1615 = T(parse(BigFloat,"-9.15095847217987001081870187138e0")) + a1401 = T(big" 5.61675022830479523392909219681e-2") + a1407 = T(big" 2.53500210216624811088794765333e-1") + a1408 = T(big"-2.46239037470802489917441475441e-1") + a1409 = T(big"-1.24191423263816360469010140626e-1") + a1410 = T(big" 1.5329179827876569731206322685e-1") + a1411 = T(big" 8.20105229563468988491666602057e-3") + a1412 = T(big" 7.56789766054569976138603589584e-3") + a1413 = T(big"-8.298e-3") + a1501 = T(big" 3.18346481635021405060768473261e-2") + a1506 = T(big" 2.83009096723667755288322961402e-2") + a1507 = T(big" 5.35419883074385676223797384372e-2") + a1508 = T(big"-5.49237485713909884646569340306e-2") + a1511 = T(big"-1.08347328697249322858509316994e-4") + a1512 = T(big" 3.82571090835658412954920192323e-4") + a1513 = T(big"-3.40465008687404560802977114492e-4") + a1514 = T(big" 1.41312443674632500278074618366e-1") + a1601 = T(big"-4.28896301583791923408573538692e-1") + a1606 = T(big"-4.69762141536116384314449447206e0") + a1607 = T(big" 7.68342119606259904184240953878e0") + a1608 = T(big" 4.06898981839711007970213554331e0") + a1609 = T(big" 3.56727187455281109270669543021e-1") + a1613 = T(big"-1.39902416515901462129418009734e-3") + a1614 = T(big" 2.9475147891527723389556272149e0") + a1615 = T(big"-9.15095847217987001081870187138e0") return c14,c15,c16,a1401,a1407,a1408,a1409,a1410,a1411,a1412,a1413,a1501,a1506,a1507,a1508,a1511,a1512,a1513,a1514,a1601,a1606,a1607,a1608,a1609,a1613,a1614,a1615 end -Base.@pure function DP8Interp_polyweights(::Type{T}) where T<:CompiledFloats +function DP8Interp_polyweights(::Type{T}) where T<:CompiledFloats d401 = T(-8.428938276109013) d406 = T(0.5667149535193777) d407 = T(-3.0689499459498917) @@ -969,54 +969,54 @@ end function DP8Interp_polyweights(T::Type) - d401 = T(parse(BigFloat,"-0.84289382761090128651353491142e+01")) - d406 = T(parse(BigFloat," 0.56671495351937776962531783590e+00")) - d407 = T(parse(BigFloat,"-0.30689499459498916912797304727e+01")) - d408 = T(parse(BigFloat," 0.23846676565120698287728149680e+01")) - d409 = T(parse(BigFloat," 0.21170345824450282767155149946e+01")) - d410 = T(parse(BigFloat,"-0.87139158377797299206789907490e+00")) - d411 = T(parse(BigFloat," 0.22404374302607882758541771650e+01")) - d412 = T(parse(BigFloat," 0.63157877876946881815570249290e+00")) - d413 = T(parse(BigFloat,"-0.88990336451333310820698117400e-01")) - d414 = T(parse(BigFloat," 0.18148505520854727256656404962e+02")) - d415 = T(parse(BigFloat,"-0.91946323924783554000451984436e+01")) - d416 = T(parse(BigFloat,"-0.44360363875948939664310572000e+01")) - d501 = T(parse(BigFloat," 0.10427508642579134603413151009e+02")) - d506 = T(parse(BigFloat," 0.24228349177525818288430175319e+03")) - d507 = T(parse(BigFloat," 0.16520045171727028198505394887e+03")) - d508 = T(parse(BigFloat,"-0.37454675472269020279518312152e+03")) - d509 = T(parse(BigFloat,"-0.22113666853125306036270938578e+02")) - d510 = T(parse(BigFloat," 0.77334326684722638389603898808e+01")) - d511 = T(parse(BigFloat,"-0.30674084731089398182061213626e+02")) - d512 = T(parse(BigFloat,"-0.93321305264302278729567221706e+01")) - d513 = T(parse(BigFloat," 0.15697238121770843886131091075e+02")) - d514 = T(parse(BigFloat,"-0.31139403219565177677282850411e+02")) - d515 = T(parse(BigFloat,"-0.93529243588444783865713862664e+01")) - d516 = T(parse(BigFloat," 0.35816841486394083752465898540e+02")) - d601 = T(parse(BigFloat," 0.19985053242002433820987653617e+02")) - d606 = T(parse(BigFloat,"-0.38703730874935176555105901742e+03")) - d607 = T(parse(BigFloat,"-0.18917813819516756882830838328e+03")) - d608 = T(parse(BigFloat," 0.52780815920542364900561016686e+03")) - d609 = T(parse(BigFloat,"-0.11573902539959630126141871134e+02")) - d610 = T(parse(BigFloat," 0.68812326946963000169666922661e+01")) - d611 = T(parse(BigFloat,"-0.10006050966910838403183860980e+01")) - d612 = T(parse(BigFloat," 0.77771377980534432092869265740e+00")) - d613 = T(parse(BigFloat,"-0.27782057523535084065932004339e+01")) - d614 = T(parse(BigFloat,"-0.60196695231264120758267380846e+02")) - d615 = T(parse(BigFloat," 0.84320405506677161018159903784e+02")) - d616 = T(parse(BigFloat," 0.11992291136182789328035130030e+02")) - d701 = T(parse(BigFloat,"-0.25693933462703749003312586129e+02")) - d706 = T(parse(BigFloat,"-0.15418974869023643374053993627e+03")) - d707 = T(parse(BigFloat,"-0.23152937917604549567536039109e+03")) - d708 = T(parse(BigFloat," 0.35763911791061412378285349910e+03")) - d709 = T(parse(BigFloat," 0.93405324183624310003907691704e+02")) - d710 = T(parse(BigFloat,"-0.37458323136451633156875139351e+02")) - d711 = T(parse(BigFloat," 0.10409964950896230045147246184e+03")) - d712 = T(parse(BigFloat," 0.29840293426660503123344363579e+02")) - d713 = T(parse(BigFloat,"-0.43533456590011143754432175058e+02")) - d714 = T(parse(BigFloat," 0.96324553959188282948394950600e+02")) - d715 = T(parse(BigFloat,"-0.39177261675615439165231486172e+02")) - d716 = T(parse(BigFloat,"-0.14972683625798562581422125276e+03")) + d401 = T(big"-0.84289382761090128651353491142e+01") + d406 = T(big" 0.56671495351937776962531783590e+00") + d407 = T(big"-0.30689499459498916912797304727e+01") + d408 = T(big" 0.23846676565120698287728149680e+01") + d409 = T(big" 0.21170345824450282767155149946e+01") + d410 = T(big"-0.87139158377797299206789907490e+00") + d411 = T(big" 0.22404374302607882758541771650e+01") + d412 = T(big" 0.63157877876946881815570249290e+00") + d413 = T(big"-0.88990336451333310820698117400e-01") + d414 = T(big" 0.18148505520854727256656404962e+02") + d415 = T(big"-0.91946323924783554000451984436e+01") + d416 = T(big"-0.44360363875948939664310572000e+01") + d501 = T(big" 0.10427508642579134603413151009e+02") + d506 = T(big" 0.24228349177525818288430175319e+03") + d507 = T(big" 0.16520045171727028198505394887e+03") + d508 = T(big"-0.37454675472269020279518312152e+03") + d509 = T(big"-0.22113666853125306036270938578e+02") + d510 = T(big" 0.77334326684722638389603898808e+01") + d511 = T(big"-0.30674084731089398182061213626e+02") + d512 = T(big"-0.93321305264302278729567221706e+01") + d513 = T(big" 0.15697238121770843886131091075e+02") + d514 = T(big"-0.31139403219565177677282850411e+02") + d515 = T(big"-0.93529243588444783865713862664e+01") + d516 = T(big" 0.35816841486394083752465898540e+02") + d601 = T(big" 0.19985053242002433820987653617e+02") + d606 = T(big"-0.38703730874935176555105901742e+03") + d607 = T(big"-0.18917813819516756882830838328e+03") + d608 = T(big" 0.52780815920542364900561016686e+03") + d609 = T(big"-0.11573902539959630126141871134e+02") + d610 = T(big" 0.68812326946963000169666922661e+01") + d611 = T(big"-0.10006050966910838403183860980e+01") + d612 = T(big" 0.77771377980534432092869265740e+00") + d613 = T(big"-0.27782057523535084065932004339e+01") + d614 = T(big"-0.60196695231264120758267380846e+02") + d615 = T(big" 0.84320405506677161018159903784e+02") + d616 = T(big" 0.11992291136182789328035130030e+02") + d701 = T(big"-0.25693933462703749003312586129e+02") + d706 = T(big"-0.15418974869023643374053993627e+03") + d707 = T(big"-0.23152937917604549567536039109e+03") + d708 = T(big" 0.35763911791061412378285349910e+03") + d709 = T(big" 0.93405324183624310003907691704e+02") + d710 = T(big"-0.37458323136451633156875139351e+02") + d711 = T(big" 0.10409964950896230045147246184e+03") + d712 = T(big" 0.29840293426660503123344363579e+02") + d713 = T(big"-0.43533456590011143754432175058e+02") + d714 = T(big" 0.96324553959188282948394950600e+02") + d715 = T(big"-0.39177261675615439165231486172e+02") + d716 = T(big"-0.14972683625798562581422125276e+03") return d401,d406,d407,d408,d409,d410,d411,d412,d413,d414,d415,d416,d501,d506,d507,d508,d509,d510,d511,d512,d513,d514,d515,d516,d601,d606,d607,d608,d609,d610,d611,d612,d613,d614,d615,d616,d701,d706,d707,d708,d709,d710,d711,d712,d713,d714,d715,d716 end diff --git a/src/tableaus/low_order_rk_tableaus.jl b/src/tableaus/low_order_rk_tableaus.jl index e1e23d527e..cb53b1a3b7 100644 --- a/src/tableaus/low_order_rk_tableaus.jl +++ b/src/tableaus/low_order_rk_tableaus.jl @@ -17,7 +17,7 @@ constructBogakiShampine3() Constructs the tableau object for the Bogakai-Shampine Order 2/3 method. """ -Base.@pure function BS3ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} +function BS3ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} a21 = T(0.5) a32 = T(0.75) a41 = T(0.2222222222222222) @@ -80,7 +80,7 @@ struct OwrenZen3ConstantCache{T,T2} <: OrdinaryDiffEqConstantCache r32::T end -Base.@pure function OwrenZen3ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} +function OwrenZen3ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} a21 = T(0.5217391304347826) a31 = T(-0.18133333333333335) a32 = T(0.9813333333333333) @@ -104,7 +104,7 @@ Base.@pure function OwrenZen3ConstantCache(::Type{T},::Type{T2}) where {T<:Compi r13,r12,r23,r22,r33,r32) end -Base.@pure function OwrenZen3ConstantCache(::Type{T},::Type{T2}) where {T,T2} +function OwrenZen3ConstantCache(::Type{T},::Type{T2}) where {T,T2} a21 = T(12//23) a31 = T(-68//375) a32 = T(368//375) @@ -168,7 +168,7 @@ struct OwrenZen4ConstantCache{T,T2} <: OrdinaryDiffEqConstantCache r62::T end -Base.@pure function OwrenZen4ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} +function OwrenZen4ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} a21 = T(0.16666666666666666) a31 = T(0.03214024835646457) a32 = T(0.26515704894083275) @@ -215,7 +215,7 @@ Base.@pure function OwrenZen4ConstantCache(::Type{T},::Type{T2}) where {T<:Compi r54,r53,r52,r64,r63,r62) end -Base.@pure function OwrenZen4ConstantCache(::Type{T},::Type{T2}) where {T,T2} +function OwrenZen4ConstantCache(::Type{T},::Type{T2}) where {T,T2} a21 = T(1//6) a31 = T(44//1369) a32 = T(363//1369) @@ -331,7 +331,7 @@ struct OwrenZen5ConstantCache{T,T2} <: OrdinaryDiffEqConstantCache r82::T end -Base.@pure function OwrenZen5ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} +function OwrenZen5ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} a21 = T(0.16666666666666666) a31 = T(0.0625) a32 = T(0.1875) @@ -412,7 +412,7 @@ Base.@pure function OwrenZen5ConstantCache(::Type{T},::Type{T2}) where {T<:Compi r62,r75,r74,r73,r72,r85,r84,r83,r82) end -Base.@pure function OwrenZen5ConstantCache(::Type{T},::Type{T2}) where {T,T2} +function OwrenZen5ConstantCache(::Type{T},::Type{T2}) where {T,T2} a21 = T(1//6) a31 = T(1//16) a32 = T(3//16) @@ -553,7 +553,7 @@ struct Tsit5ConstantCache{T,T2} <: OrdinaryDiffEqConstantCache r74::T end -Base.@pure function Tsit5ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} +function Tsit5ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} c1 = T2(0.161) c2 = T2(0.327) c3 = T2(0.9) @@ -604,43 +604,43 @@ function Tsit5ConstantCache(T::Type,T2::Type) c1 = T2(161//1000) c2 = T2(327//1000) c3 = T2(9//10) - c4 = T2(parse(BigFloat,".9800255409045096857298102862870245954942137979563024768854764293221195950761080302604")) + c4 = T2(big".9800255409045096857298102862870245954942137979563024768854764293221195950761080302604") c5 = T2(1) c6 = T2(1) a21= T(161//1000) - a31= T(parse(BigFloat,"-.8480655492356988544426874250230774675121177393430391537369234245294192976164141156943e-2")) - a32= T(parse(BigFloat,".3354806554923569885444268742502307746751211773934303915373692342452941929761641411569")) - a41= T(parse(BigFloat,"2.897153057105493432130432594192938764924887287701866490314866693455023795137503079289")) - a42= T(parse(BigFloat,"-6.359448489975074843148159912383825625952700647415626703305928850207288721235210244366")) - a43= T(parse(BigFloat,"4.362295432869581411017727318190886861027813359713760212991062156752264926097707165077")) - a51= T(parse(BigFloat,"5.325864828439256604428877920840511317836476253097040101202360397727981648835607691791")) - a52= T(parse(BigFloat,"-11.74888356406282787774717033978577296188744178259862899288666928009020615663593781589")) - a53= T(parse(BigFloat,"7.495539342889836208304604784564358155658679161518186721010132816213648793440552049753")) - a54= T(parse(BigFloat,"-.9249506636175524925650207933207191611349983406029535244034750452930469056411389539635e-1")) - a61= T(parse(BigFloat,"5.861455442946420028659251486982647890394337666164814434818157239052507339770711679748")) - a62= T(parse(BigFloat,"-12.92096931784710929170611868178335939541780751955743459166312250439928519268343184452")) - a63= T(parse(BigFloat,"8.159367898576158643180400794539253485181918321135053305748355423955009222648673734986")) - a64= T(parse(BigFloat,"-.7158497328140099722453054252582973869127213147363544882721139659546372402303777878835e-1")) - a65= T(parse(BigFloat,"-.2826905039406838290900305721271224146717633626879770007617876201276764571291579142206e-1")) - a71= T(parse(BigFloat,".9646076681806522951816731316512876333711995238157997181903319145764851595234062815396e-1")) + a31= T(big"-.8480655492356988544426874250230774675121177393430391537369234245294192976164141156943e-2") + a32= T(big".3354806554923569885444268742502307746751211773934303915373692342452941929761641411569") + a41= T(big"2.897153057105493432130432594192938764924887287701866490314866693455023795137503079289") + a42= T(big"-6.359448489975074843148159912383825625952700647415626703305928850207288721235210244366") + a43= T(big"4.362295432869581411017727318190886861027813359713760212991062156752264926097707165077") + a51= T(big"5.325864828439256604428877920840511317836476253097040101202360397727981648835607691791") + a52= T(big"-11.74888356406282787774717033978577296188744178259862899288666928009020615663593781589") + a53= T(big"7.495539342889836208304604784564358155658679161518186721010132816213648793440552049753") + a54= T(big"-.9249506636175524925650207933207191611349983406029535244034750452930469056411389539635e-1") + a61= T(big"5.861455442946420028659251486982647890394337666164814434818157239052507339770711679748") + a62= T(big"-12.92096931784710929170611868178335939541780751955743459166312250439928519268343184452") + a63= T(big"8.159367898576158643180400794539253485181918321135053305748355423955009222648673734986") + a64= T(big"-.7158497328140099722453054252582973869127213147363544882721139659546372402303777878835e-1") + a65= T(big"-.2826905039406838290900305721271224146717633626879770007617876201276764571291579142206e-1") + a71= T(big".9646076681806522951816731316512876333711995238157997181903319145764851595234062815396e-1") a72= T(1//100) - a73= T(parse(BigFloat,".4798896504144995747752495322905965199130404621990332488332634944254542060153074523509")) - a74= T(parse(BigFloat,"1.379008574103741893192274821856872770756462643091360525934940067397245698027561293331")) - a75= T(parse(BigFloat,"-3.290069515436080679901047585711363850115683290894936158531296799594813811049925401677")) - a76= T(parse(BigFloat,"2.324710524099773982415355918398765796109060233222962411944060046314465391054716027841")) - # b1 = T(parse(BigFloat,".9468075576583945807478876255758922856117527357724631226139574065785592789071067303271e-1")) - # b2 = T(parse(BigFloat,".9183565540343253096776363936645313759813746240984095238905939532922955247253608687270e-2")) - # b3 = T(parse(BigFloat,".4877705284247615707855642599631228241516691959761363774365216240304071651579571959813")) - # b4 = T(parse(BigFloat,"1.234297566930478985655109673884237654035539930748192848315425833500484878378061439761")) - # b5 = T(parse(BigFloat,"-2.707712349983525454881109975059321670689605166938197378763992255714444407154902012702")) - # b6 = T(parse(BigFloat,"1.866628418170587035753719399566211498666255505244122593996591602841258328965767580089")) + a73= T(big".4798896504144995747752495322905965199130404621990332488332634944254542060153074523509") + a74= T(big"1.379008574103741893192274821856872770756462643091360525934940067397245698027561293331") + a75= T(big"-3.290069515436080679901047585711363850115683290894936158531296799594813811049925401677") + a76= T(big"2.324710524099773982415355918398765796109060233222962411944060046314465391054716027841") + # b1 = T(big".9468075576583945807478876255758922856117527357724631226139574065785592789071067303271e-1") + # b2 = T(big".9183565540343253096776363936645313759813746240984095238905939532922955247253608687270e-2") + # b3 = T(big".4877705284247615707855642599631228241516691959761363774365216240304071651579571959813") + # b4 = T(big"1.234297566930478985655109673884237654035539930748192848315425833500484878378061439761") + # b5 = T(big"-2.707712349983525454881109975059321670689605166938197378763992255714444407154902012702") + # b6 = T(big"1.866628418170587035753719399566211498666255505244122593996591602841258328965767580089") # b7 = T(1//66) - btilde1 = T(parse(BigFloat,"-1.780011052225771443378550607539534775944678804333659557637450799792588061629796e-03")) - btilde2 = T(parse(BigFloat,"-8.164344596567469032236360633546862401862537590159047610940604670770447527463931e-04")) - btilde3 = T(parse(BigFloat,"7.880878010261996010314727672526304238628733777103128603258129604952959142646516e-03")) - btilde4 = T(parse(BigFloat,"-1.44711007173262907537165147972635116720922712343167677619514233896760819649515e-01")) - btilde5 = T(parse(BigFloat,"5.823571654525552250199376106520421794260781239567387797673045438803694038950012e-01")) - btilde6 = T(parse(BigFloat,"-4.580821059291869466616365188325542974428047279788398179474684434732070620889539e-01")) + btilde1 = T(big"-1.780011052225771443378550607539534775944678804333659557637450799792588061629796e-03") + btilde2 = T(big"-8.164344596567469032236360633546862401862537590159047610940604670770447527463931e-04") + btilde3 = T(big"7.880878010261996010314727672526304238628733777103128603258129604952959142646516e-03") + btilde4 = T(big"-1.44711007173262907537165147972635116720922712343167677619514233896760819649515e-01") + btilde5 = T(big"5.823571654525552250199376106520421794260781239567387797673045438803694038950012e-01") + btilde6 = T(big"-4.580821059291869466616365188325542974428047279788398179474684434732070620889539e-01") btilde7 = T(1//66) r11,r12,r13,r14,r22,r23,r24,r32,r33,r34,r42,r43,r44,r52,r53,r54,r62,r63,r64,r72,r73,r74 = Tsit5Interp(T) @@ -703,30 +703,30 @@ simplifying assumption Ch. Tsitouras """ function Tsit5Interp(T::Type) - r11 = T(parse(BigFloat,"0.999999999999999974283372471559910888475488471328")) - r12 = T(parse(BigFloat,"-2.763706197274825911336735930481400260916070804192")) - r13 = T(parse(BigFloat,"2.91325546182191274375068099306808")) + r11 = T(big"0.999999999999999974283372471559910888475488471328") + r12 = T(big"-2.763706197274825911336735930481400260916070804192") + r13 = T(big"2.91325546182191274375068099306808") r14 = T(-1.0530884977290216) - r22 = T(parse(BigFloat,"0.13169999999999999727")) - r23 = T(parse(BigFloat,"-0.22339999999999999818")) + r22 = T(big"0.13169999999999999727") + r23 = T(big"-0.22339999999999999818") r24 = T(0.1017) - r32 = T(parse(BigFloat,"3.93029623689475152850687446709813398")) - r33 = T(parse(BigFloat,"-5.94103387213150473470249202589458001")) - r34 = T(parse(BigFloat,"2.490627285651252793")) + r32 = T(big"3.93029623689475152850687446709813398") + r33 = T(big"-5.94103387213150473470249202589458001") + r34 = T(big"2.490627285651252793") - r42 = T(parse(BigFloat,"-12.411077166933676983734381540685453484102414134010752")) - r43 = T(parse(BigFloat,"30.3381886302823215981729903691836576")) - r44 = T(parse(BigFloat,"-16.54810288924490272")) + r42 = T(big"-12.411077166933676983734381540685453484102414134010752") + r43 = T(big"30.3381886302823215981729903691836576") + r44 = T(big"-16.54810288924490272") - r52 = T(parse(BigFloat,"37.50931341651103919496903965334519631242339792120440212")) - r53 = T(parse(BigFloat,"-88.1789048947664011014276693541209817")) - r54 = T(parse(BigFloat,"47.37952196281928122")) + r52 = T(big"37.50931341651103919496903965334519631242339792120440212") + r53 = T(big"-88.1789048947664011014276693541209817") + r54 = T(big"47.37952196281928122") - r62 = T(parse(BigFloat,"-27.896526289197287805948263144598643896")) - r63 = T(parse(BigFloat,"65.09189467479367152629021928716553658")) - r64 = T(parse(BigFloat,"-34.87065786149660974")) + r62 = T(big"-27.896526289197287805948263144598643896") + r63 = T(big"65.09189467479367152629021928716553658") + r64 = T(big"-34.87065786149660974") r72 = T(1.5) r73 = T(-4) @@ -866,7 +866,7 @@ end An Efficient Runge-Kutta (4,5) Pair by P.Bogacki and L.F.Shampine Computers and Mathematics with Applications, Vol. 32, No. 6, 1996, pages 15 to 28 """ -Base.@pure function BS5ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} +function BS5ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} c1 =T2(0.16666666666666666) c2 =T2(0.2222222222222222) c3 =T2(0.42857142857142855) @@ -999,7 +999,7 @@ Used in the lazy construction of the dense output k9, k10, k11 are not computed until called in the dense routine """ -Base.@pure function BS5Interp(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} +function BS5Interp(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} c6 = T2(0.5) c7 = T2(0.8333333333333334) @@ -1269,7 +1269,7 @@ struct DP5ConstantCache{T,T2} <: OrdinaryDiffEqConstantCache d7::T end -Base.@pure function DP5ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} +function DP5ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} a21 = T(0.2) a31 = T(0.075) a32 = T(0.225) @@ -1312,7 +1312,7 @@ Base.@pure function DP5ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFlo DP5ConstantCache(a21,a31,a32,a41,a42,a43,a51,a52,a53,a54,a61,a62,a63,a64,a65,a71,a73,a74,a75,a76,btilde1,btilde3,btilde4,btilde5,btilde6,btilde7,c1,c2,c3,c4,c5,c6,d1,d3,d4,d5,d6,d7) end -Base.@pure function DP5_dense_ds(::Type{T}) where T<:CompiledFloats +function DP5_dense_ds(::Type{T}) where T<:CompiledFloats d1 = T(-1.1270175653862835) d3 = T(2.675424484351598) d4 = T(-5.685526961588504) @@ -1420,7 +1420,7 @@ struct Anas5ConstantCache{T,T2} <: OrdinaryDiffEqConstantCache b6::T end -Base.@pure function Anas5ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} +function Anas5ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} a21 = T(0.1) a31 = T(-0.2222222222222222) a32 = T(0.5555555555555556) @@ -1449,7 +1449,7 @@ Base.@pure function Anas5ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledF Anas5ConstantCache(a21,a31,a32,a41,a42,a43,a51,a52,a53,a54,a61,a62,a63,a64,a65,c2,c3,c4,c5,c6,b1,b3,b4,b5,b6) end -Base.@pure function Anas5ConstantCache(::Type{T},::Type{T2}) where {T,T2} +function Anas5ConstantCache(::Type{T},::Type{T2}) where {T,T2} a21 = T(1//10) a31 = T(-2//9) a32 = T(5//9) diff --git a/src/tableaus/rkc_tableaus.jl b/src/tableaus/rkc_tableaus.jl index 3dd06cfb5e..4968009247 100644 --- a/src/tableaus/rkc_tableaus.jl +++ b/src/tableaus/rkc_tableaus.jl @@ -1,4 +1,4 @@ -Base.@pure function ROCK2ConstantCache(::Type{T}, ::Type{T2}, zprev) where {T, T2} +function ROCK2ConstantCache(::Type{T}, ::Type{T2}, zprev) where {T, T2} ms = SVector{46, Int}(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20, 22,24,26,28,30,33,36,39,43,47,51,56,61,66,72,78,85,93, 102,112,123,135,148,163,180,198,) diff --git a/src/tableaus/rkn_tableaus.jl b/src/tableaus/rkn_tableaus.jl index 096449a423..66f542b79e 100644 --- a/src/tableaus/rkn_tableaus.jl +++ b/src/tableaus/rkn_tableaus.jl @@ -9,7 +9,7 @@ struct IRKN3ConstantCache{T,T2} <: OrdinaryDiffEqConstantCache bbar2::T end -Base.@pure function IRKN3ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} +function IRKN3ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} bconst1 = T(1.5) bconst2 = T(-0.5) c1 = T2(0.5) @@ -49,7 +49,7 @@ struct IRKN4ConstantCache{T,T2} <: OrdinaryDiffEqConstantCache bbar3::T end -Base.@pure function IRKN4ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} +function IRKN4ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} bconst1 = T(1.5) bconst2 = T(-0.5) c1 = T2(0.25) @@ -198,7 +198,7 @@ function ERKN4ConstantCache(T::Type,T2::Type) ERKN4ConstantCache(c1, c2, c3, a21, a31, a32, a41, a42, a43, b1, b2, b3, b4, bp1, bp2, bp3, bp4, btilde1, btilde2, btilde3, btilde4, bptilde1, bptilde2, bptilde3, bptilde4) end -Base.@pure function ERKN4ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} +function ERKN4ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} ERKN4ConstantCache( T2(0.25), T2(0.7), @@ -284,7 +284,7 @@ function ERKN5ConstantCache(T::Type,T2::Type) ERKN5ConstantCache(c1, c2, c3, a21, a31, a32, a41, a42, a43, b1, b2, b3, b4, bp1, bp2, bp3, bp4, btilde1, btilde2, btilde3, btilde4) end -Base.@pure function ERKN5ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} +function ERKN5ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} ERKN5ConstantCache( T2(0.5), T2(0.2714285714285714), @@ -398,7 +398,7 @@ struct DPRKN6ConstantCache{T,T2} <: OrdinaryDiffEqConstantCache rp61::T end -Base.@pure function DPRKN6ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} +function DPRKN6ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} c1 = T2(0.12929590313670442) c2 = T2(0.25859180627340883) c3 = T2(0.67029708261548) @@ -754,7 +754,7 @@ function DPRKN8ConstantCache(T::Type,T2::Type) DPRKN8ConstantCache(c1, c2, c3, c4, c5, c6, c7, c8, a21, a31, a32, a41, a42, a43, a51, a52, a53, a54, a61, a62, a63, a64, a65, a71, a72, a73, a74, a75, a76, a81, a82, a83, a84, a85, a86, a87, a91, a93, a94, a95, a96, a97, b1, b3, b4, b5, b6, b7, bp1, bp3, bp4, bp5, bp6, bp7, bp8, btilde1, btilde3, btilde4, btilde5, btilde6, btilde7, bptilde1, bptilde3, bptilde4, bptilde5, bptilde6, bptilde7, bptilde8, bptilde9) end -Base.@pure function DPRKN8ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} +function DPRKN8ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} DPRKN8ConstantCache( T2(0.05), T2(0.1), @@ -1292,7 +1292,7 @@ function DPRKN12ConstantCache(T::Type,T2::Type) DPRKN12ConstantCache(c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c11, c12, c13, c14, c15, c16, a21, a31, a32, a41, a42, a43, a51, a53, a54, a61, a63, a64, a65, a71, a73, a74, a75, a76, a81, a84, a85, a86, a87, a91, a93, a94, a95, a96, a97, a98, a101, a103, a104, a105, a106, a107, a108, a109, a111, a113, a114, a115, a116, a117, a118, a119, a1110, a121, a123, a124, a125, a126, a127, a128, a129, a1210, a1211, a131, a133, a134, a135, a136, a137, a138, a139, a1310, a1311, a1312, a141, a143, a144, a145, a146, a147, a148, a149, a1410, a1411, a1412, a1413, a151, a153, a154, a155, a156, a157, a158, a159, a1510, a1511, a1512, a1513, a1514, a161, a163, a164, a165, a166, a167, a168, a169, a1610, a1611, a1612, a1613, a1614, a1615, a171, a173, a174, a175, a176, a177, a178, a179, a1710, a1711, a1712, a1713, a1714, a1715, b1, b7, b8, b9, b10, b11, b12, b13, b14, b15, bp1, bp7, bp8, bp9, bp10, bp11, bp12, bp13, bp14, bp15, bp16, bp17, btilde1, btilde7, btilde8, btilde9, btilde10, btilde11, btilde12, btilde13, btilde14, btilde15, bptilde1, bptilde7, bptilde8, bptilde9, bptilde10, bptilde11, bptilde12, bptilde13, bptilde14, bptilde15, bptilde16, bptilde17) end -Base.@pure function DPRKN12ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} +function DPRKN12ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} DPRKN12ConstantCache( T2(2.0e-2), T2(4.0e-2), diff --git a/src/tableaus/sdirk_tableaus.jl b/src/tableaus/sdirk_tableaus.jl index 1752f63ee8..bfe589fd89 100644 --- a/src/tableaus/sdirk_tableaus.jl +++ b/src/tableaus/sdirk_tableaus.jl @@ -185,7 +185,7 @@ dt = c2 ((1 + (-4θ + 3θ^2)) + (6θ*(1-θ)/c2)*γ) ((-2θ + 3θ^2) + (6θ*(1-θ)/c2)*γ) =# -Base.@pure function KenCarp3Tableau(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} +function KenCarp3Tableau(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} γ = T(0.435866521508459) a31 = T(0.2576482460664272) a32 = -T(0.09351476757488625) diff --git a/src/tableaus/symplectic_tableaus.jl b/src/tableaus/symplectic_tableaus.jl index bafb6c0afa..0dabbf24df 100644 --- a/src/tableaus/symplectic_tableaus.jl +++ b/src/tableaus/symplectic_tableaus.jl @@ -5,7 +5,7 @@ struct Symplectic2ConstantCache{T,T2} <: OrdinaryDiffEqConstantCache b2::T end -Base.@pure function PseudoVerletLeapfrogConstantCache(T,T2) +function PseudoVerletLeapfrogConstantCache(T,T2) a1 = T(1) a2 = T(0) b1 = T(1//2) @@ -13,7 +13,7 @@ Base.@pure function PseudoVerletLeapfrogConstantCache(T,T2) Symplectic2ConstantCache{T,T2}(a1,a2,b1,b2) end -Base.@pure function McAte2ConstantCache(T,T2) +function McAte2ConstantCache(T,T2) a2 = T(1 - (1/2)*sqrt(T(2))) a1 = T(1 - a2) b2 = T(1/(2*(1-a2))) @@ -21,7 +21,7 @@ Base.@pure function McAte2ConstantCache(T,T2) Symplectic2ConstantCache{T,T2}(a1,a2,b1,b2) end -Base.@pure function VerletLeapfrogConstantCache(T,T2) +function VerletLeapfrogConstantCache(T,T2) a1 = T(1//2) a2 = T(1//2) b1 = T(0) @@ -38,7 +38,7 @@ struct Symplectic3ConstantCache{T,T2} <: OrdinaryDiffEqConstantCache b3::T end -Base.@pure function Ruth3ConstantCache(T,T2) +function Ruth3ConstantCache(T,T2) a1 = T(2//3) a2 = T(-2//3) a3 = T(1) @@ -48,7 +48,7 @@ Base.@pure function Ruth3ConstantCache(T,T2) Symplectic3ConstantCache{T,T2}(a1,a2,a3,b1,b2,b3) end -Base.@pure function McAte3ConstantCache(T,T2) +function McAte3ConstantCache(T,T2) a1 = T(0.9196615230173999) a2 = T(0.25/a1 - a1/2) a3 = T(1 - a1 - a2) @@ -69,7 +69,7 @@ struct Symplectic4ConstantCache{T,T2} <: OrdinaryDiffEqConstantCache b4::T end -Base.@pure function CandyRoz4ConstantCache(T,T2) +function CandyRoz4ConstantCache(T,T2) a1 = T((2 + T(2)^(1//3) + T(2)^(-1//3))/6) a2 = T((1 - T(2)^(1//3) - T(2)^(-1//3))/6) a3 = T(a2) @@ -81,7 +81,7 @@ Base.@pure function CandyRoz4ConstantCache(T,T2) Symplectic4ConstantCache{T,T2}(a1,a2,a3,a4,b1,b2,b3,b4) end -Base.@pure function McAte4ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} +function McAte4ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} a1 =T( 0.515352837431122936) a2 =T(-0.085782019412973646) a3 =T( 0.441583023616466524) @@ -93,15 +93,15 @@ Base.@pure function McAte4ConstantCache(::Type{T},::Type{T2}) where {T<:Compiled Symplectic4ConstantCache{T,T2}(a1,a2,a3,a4,b1,b2,b3,b4) end -Base.@pure function McAte4ConstantCache(T::Type,T2::Type) - a1 =T(parse(BigFloat,"0.515352837431122936")) - a2 =T(parse(BigFloat,"-0.085782019412973646")) - a3 =T(parse(BigFloat," 0.441583023616466524")) - a4 =T(parse(BigFloat," 0.128846158365384185")) - b1 =T(parse(BigFloat," 0.134496199277431089")) - b2 =T(parse(BigFloat,"-0.224819803079420806")) - b3 =T(parse(BigFloat," 0.756320000515668291")) - b4 =T(parse(BigFloat," 0.334003603286321425")) +function McAte4ConstantCache(T::Type,T2::Type) + a1 =T(big"0.515352837431122936") + a2 =T(big"-0.085782019412973646") + a3 =T(big" 0.441583023616466524") + a4 =T(big" 0.128846158365384185") + b1 =T(big" 0.134496199277431089") + b2 =T(big"-0.224819803079420806") + b3 =T(big" 0.756320000515668291") + b4 =T(big" 0.334003603286321425") Symplectic4ConstantCache{T,T2}(a1,a2,a3,a4,b1,b2,b3,b4) end @@ -118,7 +118,7 @@ struct Symplectic45ConstantCache{T,T2} <: OrdinaryDiffEqConstantCache b5::T end -Base.@pure function CalvoSanz4ConstantCache(T,T2) +function CalvoSanz4ConstantCache(T,T2) a1= T(0.205177661542290) a2= T(0.403021281604210) a3=-T(0.12092087633891) @@ -135,7 +135,7 @@ end # Broken # http://epubs.siam.org/doi/pdf/10.1137/0916010 # On the numerical integration of ordinary differential equations by symmetric composition methods -Base.@pure function McAte42ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} +function McAte42ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} a1 =T(0.40518861839525227722) a2 =T(-0.28714404081652408900) a3 = 1 - 2a1 - 2a2 @@ -149,9 +149,9 @@ Base.@pure function McAte42ConstantCache(::Type{T},::Type{T2}) where {T<:Compile Symplectic45ConstantCache{T,T2}(a1,a2,a3,a4,a5,b1,b2,b3,b4,b5) end -Base.@pure function McAte42ConstantCache(T::Type,T2::Type) - a1 =T(parse(BigFloat,"0.40518861839525227722")) - a2 =T(parse(BigFloat,"-0.28714404081652408900")) +function McAte42ConstantCache(T::Type,T2::Type) + a1 =T(big"0.40518861839525227722") + a2 =T(big"-0.28714404081652408900") a3 = 1 - 2a1 - 2a2 a4 = a2 a5 = a1 @@ -178,7 +178,7 @@ struct Symplectic5ConstantCache{T,T2} <: OrdinaryDiffEqConstantCache b6::T end -Base.@pure function McAte5ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} +function McAte5ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} a1=T(0.339839625839110000) a2=T(-0.088601336903027329) a3=T(0.5858564768259621188) @@ -194,19 +194,19 @@ Base.@pure function McAte5ConstantCache(::Type{T},::Type{T2}) where {T<:Compiled Symplectic5ConstantCache{T,T2}(a1,a2,a3,a4,a5,a6,b1,b2,b3,b4,b5,b6) end -Base.@pure function McAte5ConstantCache(T::Type,T2::Type) - a1=T(parse(BigFloat,"0.339839625839110000")) - a2=T(parse(BigFloat,"-0.088601336903027329")) - a3=T(parse(BigFloat,"0.5858564768259621188")) - a4=T(parse(BigFloat,"-0.603039356536491888")) - a5=T(parse(BigFloat,"0.3235807965546976394")) - a6=T(parse(BigFloat,"0.4423637942197494587")) - b1=T(parse(BigFloat,"0.1193900292875672758")) - b2=T(parse(BigFloat,"0.6989273703824752308")) - b3=T(parse(BigFloat,"-0.1713123582716007754")) - b4=T(parse(BigFloat,"0.4012695022513534480")) - b5=T(parse(BigFloat,"0.0107050818482359840")) - b6=T(parse(BigFloat,"-0.0589796254980311632")) +function McAte5ConstantCache(T::Type,T2::Type) + a1=T(big"0.339839625839110000") + a2=T(big"-0.088601336903027329") + a3=T(big"0.5858564768259621188") + a4=T(big"-0.603039356536491888") + a5=T(big"0.3235807965546976394") + a6=T(big"0.4423637942197494587") + b1=T(big"0.1193900292875672758") + b2=T(big"0.6989273703824752308") + b3=T(big"-0.1713123582716007754") + b4=T(big"0.4012695022513534480") + b5=T(big"0.0107050818482359840") + b6=T(big"-0.0589796254980311632") Symplectic5ConstantCache{T,T2}(a1,a2,a3,a4,a5,a6,b1,b2,b3,b4,b5,b6) end @@ -229,7 +229,7 @@ struct Symplectic6ConstantCache{T,T2} <: OrdinaryDiffEqConstantCache b8::T end -Base.@pure function Yoshida6ConstantCache(T,T2) +function Yoshida6ConstantCache(T,T2) a1=T( 0.78451361047756) a2=T( 0.23557321335936) a3=T(-1.1776799841789) @@ -272,7 +272,7 @@ struct Symplectic62ConstantCache{T,T2} <: OrdinaryDiffEqConstantCache b10::T end -Base.@pure function KahanLi6ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} +function KahanLi6ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} a1=T(0.39216144400731413927925056) a2=T(0.33259913678935943859974864) a3=T(-0.70624617255763935980996482) @@ -296,12 +296,12 @@ Base.@pure function KahanLi6ConstantCache(::Type{T},::Type{T2}) where {T<:Compil Symplectic62ConstantCache{T,T2}(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,b1,b2,b3,b4,b5,b6,b7,b8,b9,b10) end -Base.@pure function KahanLi6ConstantCache(T::Type,T2::Type) - a1=T(parse(BigFloat,"0.39216144400731413927925056")) - a2=T(parse(BigFloat,"0.33259913678935943859974864")) - a3=T(parse(BigFloat,"-0.70624617255763935980996482")) - a4=T(parse(BigFloat,"0.08221359629355080023149045")) - a5=T(parse(BigFloat,"0.79854399093482996339895035")) +function KahanLi6ConstantCache(T::Type,T2::Type) + a1=T(big"0.39216144400731413927925056") + a2=T(big"0.33259913678935943859974864") + a3=T(big"-0.70624617255763935980996482") + a4=T(big"0.08221359629355080023149045") + a5=T(big"0.79854399093482996339895035") a6= a4 a7= a3 a8= a2 @@ -355,7 +355,7 @@ struct McAte8ConstantCache{T,T2} <: OrdinaryDiffEqConstantCache b16::T end -Base.@pure function McAte8ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} +function McAte8ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} a1=T(0.74167036435061295344822780) a2=T(-0.40910082580003159399730010) a3=T(0.19075471029623837995387626) @@ -392,15 +392,15 @@ Base.@pure function McAte8ConstantCache(::Type{T},::Type{T2}) where {T<:Compiled b1,b2,b3,b4,b5,b6,b7,b8,b9,b10,b11,b12,b13,b14,b15,b16) end -Base.@pure function McAte8ConstantCache(T::Type,T2::Type) - a1=T(parse(BigFloat,"0.74167036435061295344822780")) - a2=T(parse(BigFloat,"-0.40910082580003159399730010")) - a3=T(parse(BigFloat,"0.19075471029623837995387626")) - a4=T(parse(BigFloat,"-0.57386247111608226665638773")) - a5=T(parse(BigFloat,"0.29906418130365592384446354")) - a6=T(parse(BigFloat,"0.33462491824529818378495798")) - a7=T(parse(BigFloat,"0.31529309239676659663205666")) - a8=T(parse(BigFloat,"-0.79688793935291635401978884")) +function McAte8ConstantCache(T::Type,T2::Type) + a1=T(big"0.74167036435061295344822780") + a2=T(big"-0.40910082580003159399730010") + a3=T(big"0.19075471029623837995387626") + a4=T(big"-0.57386247111608226665638773") + a5=T(big"0.29906418130365592384446354") + a6=T(big"0.33462491824529818378495798") + a7=T(big"0.31529309239676659663205666") + a8=T(big"-0.79688793935291635401978884") a9=a7 a10=a6 a11=a5 @@ -468,7 +468,7 @@ struct KahanLi8ConstantCache{T,T2} <: OrdinaryDiffEqConstantCache b18::T end -Base.@pure function KahanLi8ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} +function KahanLi8ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} a1=T(0.13020248308889008087881763) a2=T(0.56116298177510838456196441) a3=T(-0.38947496264484728640807860) @@ -509,16 +509,16 @@ Base.@pure function KahanLi8ConstantCache(::Type{T},::Type{T2}) where {T<:Compil b1,b2,b3,b4,b5,b6,b7,b8,b9,b10,b11,b12,b13,b14,b15,b16,b17,b18) end -Base.@pure function KahanLi8ConstantCache(T::Type,T2::Type) - a1=T(parse(BigFloat,"0.13020248308889008087881763")) - a2=T(parse(BigFloat,"0.56116298177510838456196441")) - a3=T(parse(BigFloat,"-0.38947496264484728640807860")) - a4=T(parse(BigFloat,"0.15884190655515560089621075")) - a5=T(parse(BigFloat,"-0.39590389413323757733623154")) - a6=T(parse(BigFloat,"0.18453964097831570709183254")) - a7=T(parse(BigFloat,"0.25837438768632204729397911")) - a8=T(parse(BigFloat,"0.29501172360931029887096624")) - a9=T(parse(BigFloat,"-0.60550853383003451169892108")) +function KahanLi8ConstantCache(T::Type,T2::Type) + a1=T(big"0.13020248308889008087881763") + a2=T(big"0.56116298177510838456196441") + a3=T(big"-0.38947496264484728640807860") + a4=T(big"0.15884190655515560089621075") + a5=T(big"-0.39590389413323757733623154") + a6=T(big"0.18453964097831570709183254") + a7=T(big"0.25837438768632204729397911") + a8=T(big"0.29501172360931029887096624") + a9=T(big"-0.60550853383003451169892108") a10=a8 a11=a7 a12=a6 @@ -625,7 +625,7 @@ struct SofSpa10ConstantCache{T,T2} <: OrdinaryDiffEqConstantCache b36::T end -Base.@pure function SofSpa10ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} +function SofSpa10ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} a1=T(0.07879572252168641926390768) a2=T(0.31309610341510852776481247) a3=T(0.02791838323507806610952027) @@ -706,25 +706,25 @@ Base.@pure function SofSpa10ConstantCache(::Type{T},::Type{T2}) where {T<:Compil b35,b36) end -Base.@pure function SofSpa10ConstantCache(T::Type,T2::Type) - a1=T(parse(BigFloat,"0.07879572252168641926390768")) - a2=T(parse(BigFloat,"0.31309610341510852776481247")) - a3=T(parse(BigFloat,"0.02791838323507806610952027")) - a4=T(parse(BigFloat,"-0.22959284159390709415121340")) - a5=T(parse(BigFloat,"0.13096206107716486317465686")) - a6=T(parse(BigFloat,"-0.26973340565451071434460973")) - a7=T(parse(BigFloat,"0.07497334315589143566613711")) - a8=T(parse(BigFloat,"0.11199342399981020488957508")) - a9=T(parse(BigFloat,"0.36613344954622675119314812")) - a10=T(parse(BigFloat,"-0.39910563013603589787862981")) - a11=T(parse(BigFloat,"0.10308739852747107731580277")) - a12=T(parse(BigFloat,"0.41143087395589023782070412")) - a13=T(parse(BigFloat,"-0.00486636058313526176219566")) - a14=T(parse(BigFloat,"-0.39203335370863990644808194")) - a15=T(parse(BigFloat,"0.05194250296244964703718290")) - a16=T(parse(BigFloat,"0.05066509075992449633587434")) - a17=T(parse(BigFloat,"0.04967437063972987905456880")) - a18=T(parse(BigFloat,"0.04931773575959453791768001")) +function SofSpa10ConstantCache(T::Type,T2::Type) + a1=T(big"0.07879572252168641926390768") + a2=T(big"0.31309610341510852776481247") + a3=T(big"0.02791838323507806610952027") + a4=T(big"-0.22959284159390709415121340") + a5=T(big"0.13096206107716486317465686") + a6=T(big"-0.26973340565451071434460973") + a7=T(big"0.07497334315589143566613711") + a8=T(big"0.11199342399981020488957508") + a9=T(big"0.36613344954622675119314812") + a10=T(big"-0.39910563013603589787862981") + a11=T(big"0.10308739852747107731580277") + a12=T(big"0.41143087395589023782070412") + a13=T(big"-0.00486636058313526176219566") + a14=T(big"-0.39203335370863990644808194") + a15=T(big"0.05194250296244964703718290") + a16=T(big"0.05066509075992449633587434") + a17=T(big"0.04967437063972987905456880") + a18=T(big"0.04931773575959453791768001") a19=a17 a20=a16 a21=a15 diff --git a/src/tableaus/verner_tableaus.jl b/src/tableaus/verner_tableaus.jl index b7d65c8b1a..4303776319 100644 --- a/src/tableaus/verner_tableaus.jl +++ b/src/tableaus/verner_tableaus.jl @@ -129,7 +129,7 @@ end From Verner's Website """ -Base.@pure function Vern6ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} +function Vern6ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} c1 =T2(0.06) c2 =T2(0.09593333333333333) c3 =T2(0.1439) @@ -243,7 +243,7 @@ function Vern6ConstantCache(T::Type,T2::Type) Vern6ConstantCache(c1,c2,c3,c4,c5,c6,a21,a31,a32,a41,a43,a51,a53,a54,a61,a63,a64,a65,a71,a73,a74,a75,a76,a81,a83,a84,a85,a86,a87,a91,a94,a95,a96,a97,a98,btilde1,btilde4,btilde5,btilde6,btilde7,btilde8,btilde9,c10,a1001,a1004,a1005,a1006,a1007,a1008,a1009,c11,a1101,a1102,a1103,a1104,a1105,a1106,a1107,a1108,a1109,a1110,c12,a1201,a1202,a1203,a1204,a1205,a1206,a1207,a1208,a1209,a1210,a1211,r011,r012,r013,r014,r015,r016,r042,r043,r044,r045,r046,r052,r053,r054,r055,r056,r062,r063,r064,r065,r066,r072,r073,r074,r075,r076,r082,r083,r084,r085,r086,r092,r093,r094,r095,r096,r102,r103,r104,r105,r106,r112,r113,r114,r115,r116,r122,r123,r124,r125,r126) end -Base.@pure function Vern6Interp(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} +function Vern6Interp(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} # Extra stages for Order 5 c10 = T2(0.5) a1001 = T(0.016524159013572806) @@ -321,7 +321,7 @@ end Coefficients for the polynomial bᵢΘ = ri1*Θ + ri2*Θ^2 + ri3*Θ^3 + ... """ -Base.@pure function Vern6Interp_polyweights(::Type{T}) where T<:CompiledFloats +function Vern6Interp_polyweights(::Type{T}) where T<:CompiledFloats r011 = T(1) r012 = T(-7.778593856495576) r013 = T(27.0524385722671) @@ -635,7 +635,7 @@ struct Vern7ConstantCache{T,T2} <: OrdinaryDiffEqConstantCache r167::T end -Base.@pure function Vern7ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} +function Vern7ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} c2 = T2(0.005) c3 = T2(0.10888888888888888) c4 = T2(0.16333333333333333) @@ -775,7 +775,7 @@ function Vern7ConstantCache(T::Type,T2::Type) Vern7ConstantCache(c2,c3,c4,c5,c6,c7,c8,a021,a031,a032,a041,a043,a051,a053,a054,a061,a063,a064,a065,a071,a073,a074,a075,a076,a081,a083,a084,a085,a086,a087,a091,a093,a094,a095,a096,a097,a098,a101,a103,a104,a105,a106,a107,b1,b4,b5,b6,b7,b8,b9,btilde1,btilde4,btilde5,btilde6,btilde7,btilde8,btilde9,btilde10,c11,a1101,a1104,a1105,a1106,a1107,a1108,a1109,c12,a1201,a1204,a1205,a1206,a1207,a1208,a1209,a1211,c13,a1301,a1304,a1305,a1306,a1307,a1308,a1309,a1311,a1312,c14,a1401,a1404,a1405,a1406,a1407,a1408,a1409,a1411,a1412,a1413,c15,a1501,a1504,a1505,a1506,a1507,a1508,a1509,a1511,a1512,a1513,c16,a1601,a1604,a1605,a1606,a1607,a1608,a1609,a1611,a1612,a1613,r011,r012,r013,r014,r015,r016,r017,r042,r043,r044,r045,r046,r047,r052,r053,r054,r055,r056,r057,r062,r063,r064,r065,r066,r067,r072,r073,r074,r075,r076,r077,r082,r083,r084,r085,r086,r087,r092,r093,r094,r095,r096,r097,r112,r113,r114,r115,r116,r117,r122,r123,r124,r125,r126,r127,r132,r133,r134,r135,r136,r137,r142,r143,r144,r145,r146,r147,r152,r153,r154,r155,r156,r157,r162,r163,r164,r165,r166,r167) end -Base.@pure function Vern7Interp(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} +function Vern7Interp(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} c11 = T2(1) a1101 = T(0.04715561848627222) a1104 = T(0.25750564298434153) @@ -841,69 +841,69 @@ end function Vern7Interp(T::Type,T2::Type) c11 = T2(1) - a1101 = T(parse(BigFloat," .4715561848627222170431765108838175679569e-1")) - a1104 = T(parse(BigFloat," .2575056429843415189596436101037687580986")) - a1105 = T(parse(BigFloat," .2621665397741262047713863095764527711129")) - a1106 = T(parse(BigFloat," .1521609265673855740323133199165117535523")) - a1107 = T(parse(BigFloat," .4939969170032484246907175893227876844296")) - a1108 = T(parse(BigFloat,"-.2943031171403250441557244744092703429139")) - a1109 = T(parse(BigFloat," .8131747232495109999734599440136761892478e-1")) + a1101 = big" .4715561848627222170431765108838175679569e-1" + a1104 = big" .2575056429843415189596436101037687580986" + a1105 = big" .2621665397741262047713863095764527711129" + a1106 = big" .1521609265673855740323133199165117535523" + a1107 = big" .4939969170032484246907175893227876844296" + a1108 = big"-.2943031171403250441557244744092703429139" + a1109 = big" .8131747232495109999734599440136761892478e-1" c12 = T2(29//100) - a1201 = T(parse(BigFloat," .5232227691599689815470932256735029887614e-1")) - a1204 = T(parse(BigFloat," .2249586182670571550244187743667190903405")) - a1205 = T(parse(BigFloat," .1744370924877637539031751304611402542578e-1")) - a1206 = T(parse(BigFloat,"-.7669379876829393188009028209348812321417e-2")) - a1207 = T(parse(BigFloat," .3435896044073284645684381456417912794447e-1")) - a1208 = T(parse(BigFloat,"-.4102097230093949839125144540100346681769e-1")) - a1209 = T(parse(BigFloat," .2565113300520561655297104906598973655221e-1")) - a1211 = T(parse(BigFloat,"-.160443457e-1")) + a1201 = big" .5232227691599689815470932256735029887614e-1" + a1204 = big" .2249586182670571550244187743667190903405" + a1205 = big" .1744370924877637539031751304611402542578e-1" + a1206 = big"-.7669379876829393188009028209348812321417e-2" + a1207 = big" .3435896044073284645684381456417912794447e-1" + a1208 = big"-.4102097230093949839125144540100346681769e-1" + a1209 = big" .2565113300520561655297104906598973655221e-1" + a1211 = big"-.160443457e-1" c13 = T2(1//8) - a1301 = T(parse(BigFloat," .5305334125785908638834747243817578898946e-1")) - a1304 = T(parse(BigFloat," .1219530101140188607092225622195251463666")) - a1305 = T(parse(BigFloat," .1774684073760249704011573985936092552347e-1")) - a1306 = T(parse(BigFloat,"-.5928372667681494328907467430302313286925e-3")) - a1307 = T(parse(BigFloat," .8381833970853750873624781948796072714855e-2")) - a1308 = T(parse(BigFloat,"-.1293369259698611956700998079778496462996e-1")) - a1309 = T(parse(BigFloat," .9412056815253860804791356641605087829772e-2")) - a1311 = T(parse(BigFloat,"-.5353253107275676032399320754008272222345e-2")) - a1312 = T(parse(BigFloat,"-.6666729992455811078380186481263955324311e-1")) + a1301 = big" .5305334125785908638834747243817578898946e-1" + a1304 = big" .1219530101140188607092225622195251463666" + a1305 = big" .1774684073760249704011573985936092552347e-1" + a1306 = big"-.5928372667681494328907467430302313286925e-3" + a1307 = big" .8381833970853750873624781948796072714855e-2" + a1308 = big"-.1293369259698611956700998079778496462996e-1" + a1309 = big" .9412056815253860804791356641605087829772e-2" + a1311 = big"-.5353253107275676032399320754008272222345e-2" + a1312 = big"-.6666729992455811078380186481263955324311e-1" c14 = T2(1//4) - a1401 = T(parse(BigFloat," .3887903257436303686399931060834951327899e-1")) - a1404 = T(parse(BigFloat,"-.2440320330830131517910045090190069290791e-2")) - a1405 = T(parse(BigFloat,"-.1392891721467262281273220992320214734208e-2")) - a1406 = T(parse(BigFloat,"-.4744629155868013465038358934145339168472e-3")) - a1407 = T(parse(BigFloat," .3920793241315951369383517310870803393356e-3")) - a1408 = T(parse(BigFloat,"-.4055473328512800136385880031750264996936e-3")) - a1409 = T(parse(BigFloat," .1989709314771672628794304728258886009267e-3")) - a1411 = T(parse(BigFloat,"-.1027819879317916884712606136811051029682e-3")) - a1412 = T(parse(BigFloat," .3385661513870266715302548402957613704604e-1")) - a1413 = T(parse(BigFloat," .1814893063199928004309543737509423302792")) + a1401 = big" .3887903257436303686399931060834951327899e-1" + a1404 = big"-.2440320330830131517910045090190069290791e-2" + a1405 = big"-.1392891721467262281273220992320214734208e-2" + a1406 = big"-.4744629155868013465038358934145339168472e-3" + a1407 = big" .3920793241315951369383517310870803393356e-3" + a1408 = big"-.4055473328512800136385880031750264996936e-3" + a1409 = big" .1989709314771672628794304728258886009267e-3" + a1411 = big"-.1027819879317916884712606136811051029682e-3" + a1412 = big" .3385661513870266715302548402957613704604e-1" + a1413 = big" .1814893063199928004309543737509423302792" c15 = T2(53//100) - a1501 = T(parse(BigFloat," .5723681204690012909606837582140921695189e-1")) - a1504 = T(parse(BigFloat," .2226594806676118099285816235023183680020")) - a1505 = T(parse(BigFloat," .1234486420018689904911221497830317287757")) - a1506 = T(parse(BigFloat," .4006332526666490875113688731927762275433e-1")) - a1507 = T(parse(BigFloat,"-.5269894848581452066926326838943832327366e-1")) - a1508 = T(parse(BigFloat," .4765971214244522856887315416093212596338e-1")) - a1509 = T(parse(BigFloat,"-.2138895885042213036387863538386958914368e-1")) - a1511 = T(parse(BigFloat," .1519389106403640165459624646184297766866e-1")) - a1512 = T(parse(BigFloat," .1206054671628965554251364472502413614358")) - a1513 = T(parse(BigFloat,"-.2277942301618737288237298052574548913451e-1")) + a1501 = big" .5723681204690012909606837582140921695189e-1" + a1504 = big" .2226594806676118099285816235023183680020" + a1505 = big" .1234486420018689904911221497830317287757" + a1506 = big" .4006332526666490875113688731927762275433e-1" + a1507 = big"-.5269894848581452066926326838943832327366e-1" + a1508 = big" .4765971214244522856887315416093212596338e-1" + a1509 = big"-.2138895885042213036387863538386958914368e-1" + a1511 = big" .1519389106403640165459624646184297766866e-1" + a1512 = big" .1206054671628965554251364472502413614358" + a1513 = big"-.2277942301618737288237298052574548913451e-1" c16 = T2(79//100) - a1601 = T(parse(BigFloat," .5137203880275681426595607279552927584506e-1")) - a1604 = T(parse(BigFloat," .5414214473439405582401399378307410450482")) - a1605 = T(parse(BigFloat," .3503998066921840081154745647747846804810")) - a1606 = T(parse(BigFloat," .1419311226969218216861835872156617148040")) - a1607 = T(parse(BigFloat," .1052737747842942254816302629823570359198")) - a1608 = T(parse(BigFloat,"-.3108184780587401700842726199589213259835e-1")) - a1609 = T(parse(BigFloat,"-.7401883149519145061791854716430279714483e-2")) - a1611 = T(parse(BigFloat,"-.6377932504865363437569726480040013149706e-2")) - a1612 = T(parse(BigFloat,"-.1732549590836186403386348310205265959935")) - a1613 = T(parse(BigFloat,"-.1822815677762202619429607513861847306420")) + a1601 = big" .5137203880275681426595607279552927584506e-1" + a1604 = big" .5414214473439405582401399378307410450482" + a1605 = big" .3503998066921840081154745647747846804810" + a1606 = big" .1419311226969218216861835872156617148040" + a1607 = big" .1052737747842942254816302629823570359198" + a1608 = big"-.3108184780587401700842726199589213259835e-1" + a1609 = big"-.7401883149519145061791854716430279714483e-2" + a1611 = big"-.6377932504865363437569726480040013149706e-2" + a1612 = big"-.1732549590836186403386348310205265959935" + a1613 = big"-.1822815677762202619429607513861847306420" return c11,a1101,a1104,a1105,a1106,a1107,a1108,a1109,c12,a1201,a1204,a1205,a1206,a1207,a1208,a1209,a1211,c13,a1301,a1304,a1305,a1306,a1307,a1308,a1309,a1311,a1312,c14,a1401,a1404,a1405,a1406,a1407,a1408,a1409,a1411,a1412,a1413,c15,a1501,a1504,a1505,a1506,a1507,a1508,a1509,a1511,a1512,a1513,c16,a1601,a1604,a1605,a1606,a1607,a1608,a1609,a1611,a1612,a1613 end -Base.@pure function Vern7Interp_polyweights(::Type{T}) where T<:CompiledFloats +function Vern7Interp_polyweights(::Type{T}) where T<:CompiledFloats r011 = T(1) r012 = T(-8.413387198332767) r013 = T(33.675508884490895) @@ -987,85 +987,85 @@ Base.@pure function Vern7Interp_polyweights(::Type{T}) where T<:CompiledFloats end function Vern7Interp_polyweights(T::Type) - r011 = T(parse(BigFloat," 1")) - r012 = T(parse(BigFloat,"-8.413387198332767469319987751201351965810")) - r013 = T(parse(BigFloat," 33.67550888449089654479469983556967202215")) - r014 = T(parse(BigFloat,"-70.80159089484886164618905961010838757357")) - r015 = T(parse(BigFloat," 80.64695108301297872968868805293298389704")) - r016 = T(parse(BigFloat,"-47.19413969837521580145883430419406103536")) - r017 = T(parse(BigFloat," 11.13381344253924186418881142808952641234")) - r042 = T(parse(BigFloat," 8.754921980674397160629587282876763437696")) - r043 = T(parse(BigFloat,"-88.45968286997709426134300934922618655402")) - r044 = T(parse(BigFloat," 346.9017638429916309499891288356321692825")) - r045 = T(parse(BigFloat,"-629.2580030059837046812187141184986252218")) - r046 = T(parse(BigFloat," 529.6773755604192983874116479833480529304")) - r047 = T(parse(BigFloat,"-167.3588698651401860365089970240284051167")) - r052 = T(parse(BigFloat," 8.913387586637921662996190126913331844214")) - r053 = T(parse(BigFloat,"-90.06081846893217794712014609702916991513")) - r054 = T(parse(BigFloat," 353.1807459217057824951538014683541349020")) - r055 = T(parse(BigFloat,"-640.6476819744374433668701027882567716886")) - r056 = T(parse(BigFloat," 539.2646279047155261551781390920363285084")) - r057 = T(parse(BigFloat,"-170.3880944299154827945664954924414008798")) - r062 = T(parse(BigFloat," 5.173312029847800338889849068990984974299")) - r063 = T(parse(BigFloat,"-52.27111590005538823385270070373176751689")) - r064 = T(parse(BigFloat," 204.9853867374073094711024260808085419491")) - r065 = T(parse(BigFloat,"-371.8306118563602890875634623992262437796")) - r066 = T(parse(BigFloat," 312.9880934374529000210073972654145891826")) - r067 = T(parse(BigFloat,"-98.89290352172494693555119599233959305606")) - r072 = T(parse(BigFloat," 16.79537744079695986364946329034055578253")) - r073 = T(parse(BigFloat,"-169.7004000005972744435739149730966805754")) - r074 = T(parse(BigFloat," 665.4937727009246303131700313781960584913")) - r075 = T(parse(BigFloat,"-1207.163889233600728395392916633015853882")) - r076 = T(parse(BigFloat," 1016.129151581854603280159105697386989470")) - r077 = T(parse(BigFloat,"-321.0600155723749421933210511704882816019")) - r082 = T(parse(BigFloat,"-10.00599753609866476866352971232058330270")) - r083 = T(parse(BigFloat," 101.1005433052275068199636113246449312792")) - r084 = T(parse(BigFloat,"-396.4739151237843754958939772727577263768")) - r085 = T(parse(BigFloat," 719.1787707014182914108130834128646525498")) - r086 = T(parse(BigFloat,"-605.3681033918824350795711030652978269725")) - r087 = T(parse(BigFloat," 191.2743989279793520691961908384572824802")) - r092 = T(parse(BigFloat," 2.764708833638599139713222853969606774131")) - r093 = T(parse(BigFloat,"-27.93460263739046178114640484830267988046")) - r094 = T(parse(BigFloat," 109.5477918613789217803046856340175757800")) - r095 = T(parse(BigFloat,"-198.7128113064482116421691972646370773711")) - r096 = T(parse(BigFloat," 167.2663357164031670694252647113936863857")) - r097 = T(parse(BigFloat,"-52.85010499525706346613022509203974406942")) - r112 = T(parse(BigFloat,"-2.169632028016350481156919876642428429100")) - r113 = T(parse(BigFloat," 22.01669603756987625585768587320929912766")) - r114 = T(parse(BigFloat,"-86.90152427798948350846176288615482496306")) - r115 = T(parse(BigFloat," 159.2238897386147443720253338471077193471")) - r116 = T(parse(BigFloat,"-135.9618306534587908363115231453760181702")) - r117 = T(parse(BigFloat," 43.79240118328000419804718618785625308759")) - r122 = T(parse(BigFloat,"-4.890070188793803933769786966428026149549")) - r123 = T(parse(BigFloat," 22.75407737425176120799532459991506803585")) - r124 = T(parse(BigFloat,"-30.78034218537730965082079824005797506535")) - r125 = T(parse(BigFloat,"-2.797194317207249021142015125037024035537")) - r126 = T(parse(BigFloat," 31.36945663750840183161406140272783187147")) - r127 = T(parse(BigFloat,"-15.65592732038180043387678567111987465689")) - r132 = T(parse(BigFloat," 10.86217092955196715517224349929627754387")) - r133 = T(parse(BigFloat,"-50.54297141782710697188187875653305700081")) - r134 = T(parse(BigFloat," 68.37148040407511827604242008548181691494")) - r135 = T(parse(BigFloat," 6.213326521632409162585500428935637861213")) - r136 = T(parse(BigFloat,"-69.68006323194158104163196358466588618336")) - r137 = T(parse(BigFloat," 34.77605679450919341971367832748521086414")) - r142 = T(parse(BigFloat,"-11.37286691922922915922346687401389055763")) - r143 = T(parse(BigFloat," 130.7905807824671644130452602841032046030")) - r144 = T(parse(BigFloat,"-488.6511367778560207543260583489312609826")) - r145 = T(parse(BigFloat," 832.2148793276440873476229585070779183432")) - r146 = T(parse(BigFloat,"-664.7743368554426242883314487337054193624")) - r147 = T(parse(BigFloat," 201.7928804424166224412127551654694479565")) - r152 = T(parse(BigFloat,"-5.919778732715006698693070786679427540601")) - r153 = T(parse(BigFloat," 63.27679965889218829298274978013773800731")) - r154 = T(parse(BigFloat,"-265.4326820887379575820873554556433306580")) - r155 = T(parse(BigFloat," 520.1009254140610824835871087519714692468")) - r156 = T(parse(BigFloat,"-467.4121095339020118993777963241667608460")) - r157 = T(parse(BigFloat," 155.3868452824017054035883640343803117904")) - r162 = T(parse(BigFloat,"-10.49214619796182281022379415510181241136")) - r163 = T(parse(BigFloat," 105.3553852518801101042787230303396283676")) - r164 = T(parse(BigFloat,"-409.4397501198893846479834816688367917005")) - r165 = T(parse(BigFloat," 732.8314489076540326880337353277812147333")) - r166 = T(parse(BigFloat,"-606.3044574733512377981129469949015057785")) - r167 = T(parse(BigFloat," 188.0495196316683024640077644607192667895")) + r011 = big" 1" + r012 = big"-8.413387198332767469319987751201351965810" + r013 = big" 33.67550888449089654479469983556967202215" + r014 = big"-70.80159089484886164618905961010838757357" + r015 = big" 80.64695108301297872968868805293298389704" + r016 = big"-47.19413969837521580145883430419406103536" + r017 = big" 11.13381344253924186418881142808952641234" + r042 = big" 8.754921980674397160629587282876763437696" + r043 = big"-88.45968286997709426134300934922618655402" + r044 = big" 346.9017638429916309499891288356321692825" + r045 = big"-629.2580030059837046812187141184986252218" + r046 = big" 529.6773755604192983874116479833480529304" + r047 = big"-167.3588698651401860365089970240284051167" + r052 = big" 8.913387586637921662996190126913331844214" + r053 = big"-90.06081846893217794712014609702916991513" + r054 = big" 353.1807459217057824951538014683541349020" + r055 = big"-640.6476819744374433668701027882567716886" + r056 = big" 539.2646279047155261551781390920363285084" + r057 = big"-170.3880944299154827945664954924414008798" + r062 = big" 5.173312029847800338889849068990984974299" + r063 = big"-52.27111590005538823385270070373176751689" + r064 = big" 204.9853867374073094711024260808085419491" + r065 = big"-371.8306118563602890875634623992262437796" + r066 = big" 312.9880934374529000210073972654145891826" + r067 = big"-98.89290352172494693555119599233959305606" + r072 = big" 16.79537744079695986364946329034055578253" + r073 = big"-169.7004000005972744435739149730966805754" + r074 = big" 665.4937727009246303131700313781960584913" + r075 = big"-1207.163889233600728395392916633015853882" + r076 = big" 1016.129151581854603280159105697386989470" + r077 = big"-321.0600155723749421933210511704882816019" + r082 = big"-10.00599753609866476866352971232058330270" + r083 = big" 101.1005433052275068199636113246449312792" + r084 = big"-396.4739151237843754958939772727577263768" + r085 = big" 719.1787707014182914108130834128646525498" + r086 = big"-605.3681033918824350795711030652978269725" + r087 = big" 191.2743989279793520691961908384572824802" + r092 = big" 2.764708833638599139713222853969606774131" + r093 = big"-27.93460263739046178114640484830267988046" + r094 = big" 109.5477918613789217803046856340175757800" + r095 = big"-198.7128113064482116421691972646370773711" + r096 = big" 167.2663357164031670694252647113936863857" + r097 = big"-52.85010499525706346613022509203974406942" + r112 = big"-2.169632028016350481156919876642428429100" + r113 = big" 22.01669603756987625585768587320929912766" + r114 = big"-86.90152427798948350846176288615482496306" + r115 = big" 159.2238897386147443720253338471077193471" + r116 = big"-135.9618306534587908363115231453760181702" + r117 = big" 43.79240118328000419804718618785625308759" + r122 = big"-4.890070188793803933769786966428026149549" + r123 = big" 22.75407737425176120799532459991506803585" + r124 = big"-30.78034218537730965082079824005797506535" + r125 = big"-2.797194317207249021142015125037024035537" + r126 = big" 31.36945663750840183161406140272783187147" + r127 = big"-15.65592732038180043387678567111987465689" + r132 = big" 10.86217092955196715517224349929627754387" + r133 = big"-50.54297141782710697188187875653305700081" + r134 = big" 68.37148040407511827604242008548181691494" + r135 = big" 6.213326521632409162585500428935637861213" + r136 = big"-69.68006323194158104163196358466588618336" + r137 = big" 34.77605679450919341971367832748521086414" + r142 = big"-11.37286691922922915922346687401389055763" + r143 = big" 130.7905807824671644130452602841032046030" + r144 = big"-488.6511367778560207543260583489312609826" + r145 = big" 832.2148793276440873476229585070779183432" + r146 = big"-664.7743368554426242883314487337054193624" + r147 = big" 201.7928804424166224412127551654694479565" + r152 = big"-5.919778732715006698693070786679427540601" + r153 = big" 63.27679965889218829298274978013773800731" + r154 = big"-265.4326820887379575820873554556433306580" + r155 = big" 520.1009254140610824835871087519714692468" + r156 = big"-467.4121095339020118993777963241667608460" + r157 = big" 155.3868452824017054035883640343803117904" + r162 = big"-10.49214619796182281022379415510181241136" + r163 = big" 105.3553852518801101042787230303396283676" + r164 = big"-409.4397501198893846479834816688367917005" + r165 = big" 732.8314489076540326880337353277812147333" + r166 = big"-606.3044574733512377981129469949015057785" + r167 = big" 188.0495196316683024640077644607192667895" return r011,r012,r013,r014,r015,r016,r017,r042,r043,r044,r045,r046,r047,r052,r053,r054,r055,r056,r057,r062,r063,r064,r065,r066,r067,r072,r073,r074,r075,r076,r077,r082,r083,r084,r085,r086,r087,r092,r093,r094,r095,r096,r097,r112,r113,r114,r115,r116,r117,r122,r123,r124,r125,r126,r127,r132,r133,r134,r135,r136,r137,r142,r143,r144,r145,r146,r147,r152,r153,r154,r155,r156,r157,r162,r163,r164,r165,r166,r167 end @@ -1364,7 +1364,7 @@ struct Vern8ConstantCache{T,T2} <: OrdinaryDiffEqConstantCache r218::T end -Base.@pure function Vern8ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} +function Vern8ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} c2 = T2(0.05) c3 = T2(0.1065625) c4 = T2(0.15984375) @@ -1664,103 +1664,103 @@ end function Vern8Interp(T::Type,T2::Type) c14 = T2(1) - a1401 = T(parse(BigFloat," .4427989419007951074716746668098518862111e-1")) - a1406 = T(parse(BigFloat," .3541049391724448744815552028733568354121")) - a1407 = T(parse(BigFloat," .2479692154956437828667629415370663023884")) - a1408 = T(parse(BigFloat,"-15.69420203883808405099207034271191213468")) - a1409 = T(parse(BigFloat," 25.08406496555856261343930031237186278518")) - a1410 = T(parse(BigFloat,"-31.73836778626027646833156112007297739997")) - a1411 = T(parse(BigFloat," 22.93828327398878395231483560344797018313")) - a1412 = T(parse(BigFloat,"-.2361324633071542145259900641263517600737")) - c15 = T2(parse(BigFloat," .3110177634953863863927417318829099695921")) - a1501 = T(parse(BigFloat," .4620700646754963101730413150238116432863e-1")) - a1506 = T(parse(BigFloat," .4503904160842480866828520384400679697151e-1")) - a1507 = T(parse(BigFloat," .2336816697713424410788701065340221126565")) - a1508 = T(parse(BigFloat," 37.83901368421067410780338220861855254153")) - a1509 = T(parse(BigFloat,"-15.94911328945424610266139490307397370835")) - a1510 = T(parse(BigFloat," 23.02836835181610285142510596329590091940")) - a1511 = T(parse(BigFloat,"-44.85578507769412524816130998016948002745")) - a1512 = T(parse(BigFloat,"-.6379858768647444009509067402330140781326e-1")) - a1514 = T(parse(BigFloat,"-.1259503554386166268241032464519842162533e-1")) + a1401 = big" .4427989419007951074716746668098518862111e-1" + a1406 = big" .3541049391724448744815552028733568354121" + a1407 = big" .2479692154956437828667629415370663023884" + a1408 = big"-15.69420203883808405099207034271191213468" + a1409 = big" 25.08406496555856261343930031237186278518" + a1410 = big"-31.73836778626027646833156112007297739997" + a1411 = big" 22.93828327398878395231483560344797018313" + a1412 = big"-.2361324633071542145259900641263517600737" + c15 = T2(big".3110177634953863863927417318829099695921") + a1501 = big" .4620700646754963101730413150238116432863e-1" + a1506 = big" .4503904160842480866828520384400679697151e-1" + a1507 = big" .2336816697713424410788701065340221126565" + a1508 = big" 37.83901368421067410780338220861855254153" + a1509 = big"-15.94911328945424610266139490307397370835" + a1510 = big" 23.02836835181610285142510596329590091940" + a1511 = big"-44.85578507769412524816130998016948002745" + a1512 = big"-.6379858768647444009509067402330140781326e-1" + a1514 = big"-.1259503554386166268241032464519842162533e-1" c16 = T2(69//400) - a1601 = T(parse(BigFloat," .5037946855482040993065158747220696112586e-1")) - a1606 = T(parse(BigFloat," .4109836131046079339916530614028848248545e-1")) - a1607 = T(parse(BigFloat," .1718054153348195783296309209549424619697")) - a1608 = T(parse(BigFloat," 4.61410531998151886974342237185977124648")) - a1609 = T(parse(BigFloat,"-1.791667883085396449712744996746836471721")) - a1610 = T(parse(BigFloat," 2.531658930485041408462243518792913614971")) - a1611 = T(parse(BigFloat,"-5.32497786020573071925718815977276269909")) - a1612 = T(parse(BigFloat,"-.3065532595385634734924449496356513113607e-1")) - a1614 = T(parse(BigFloat,"-.5254479979429613570549519094377878106127e-2")) - a1615 = T(parse(BigFloat,"-.8399194644224792997538653464258058697156e-1")) + a1601 = big" .5037946855482040993065158747220696112586e-1" + a1606 = big" .4109836131046079339916530614028848248545e-1" + a1607 = big" .1718054153348195783296309209549424619697" + a1608 = big" 4.61410531998151886974342237185977124648" + a1609 = big"-1.791667883085396449712744996746836471721" + a1610 = big" 2.531658930485041408462243518792913614971" + a1611 = big"-5.32497786020573071925718815977276269909" + a1612 = big"-.3065532595385634734924449496356513113607e-1" + a1614 = big"-.5254479979429613570549519094377878106127e-2" + a1615 = big"-.8399194644224792997538653464258058697156e-1" c17 = T2(7846//10000) - a1701 = T(parse(BigFloat," .4082897132997079620207118756242653796386e-1")) - a1706 = T(parse(BigFloat," .4244479514247632218892086657732332485609")) - a1707 = T(parse(BigFloat," .2326091531275234539465100096964845486081")) - a1708 = T(parse(BigFloat," 2.677982520711806062780528871014035962908")) - a1709 = T(parse(BigFloat," .7420826657338945216477607044022963622057")) - a1710 = T(parse(BigFloat," .1460377847941461193920992339731312296021")) - a1711 = T(parse(BigFloat,"-3.579344509890565218033356743825917680543")) - a1712 = T(parse(BigFloat," .1138844389600173704531638716149985665239")) - a1714 = T(parse(BigFloat," .1267790651033190047378693537615687232109e-1")) - a1715 = T(parse(BigFloat,"-.7443436349946674429752785032561552478382e-1")) - a1716 = T(parse(BigFloat," .4782748079757851554575511473876987663388e-1")) + a1701 = big" .4082897132997079620207118756242653796386e-1" + a1706 = big" .4244479514247632218892086657732332485609" + a1707 = big" .2326091531275234539465100096964845486081" + a1708 = big" 2.677982520711806062780528871014035962908" + a1709 = big" .7420826657338945216477607044022963622057" + a1710 = big" .1460377847941461193920992339731312296021" + a1711 = big"-3.579344509890565218033356743825917680543" + a1712 = big" .1138844389600173704531638716149985665239" + a1714 = big" .1267790651033190047378693537615687232109e-1" + a1715 = big"-.7443436349946674429752785032561552478382e-1" + a1716 = big" .4782748079757851554575511473876987663388e-1" c18 = T2(37//100) - a1801 = T(parse(BigFloat," .5212682393668413629928136927994514676607e-1")) - a1806 = T(parse(BigFloat," .5392508396744797718209106862347065628649e-1")) - a1807 = T(parse(BigFloat," .1660758097434640828541930599928251901718e-1")) - a1808 = T(parse(BigFloat,"-4.454485757926779655418936993298463071587")) - a1809 = T(parse(BigFloat," 6.835218278632146381711296817968152631469")) - a1810 = T(parse(BigFloat,"-8.711334822181993739847172734848837971169")) - a1811 = T(parse(BigFloat," 6.491635839232917053651267142703105653517")) - a1812 = T(parse(BigFloat,"-.7072551809844346422069985227700294651922e-1")) - a1814 = T(parse(BigFloat,"-.1854031491993216429111842937941202966440e-1")) - a1815 = T(parse(BigFloat," .2350402105435384645116542087045962190647e-1")) - a1816 = T(parse(BigFloat," .2344795103407822090556377813402774776461")) - a1817 = T(parse(BigFloat,"-.8241072501152898885823089698097768766651e-1")) + a1801 = big" .5212682393668413629928136927994514676607e-1" + a1806 = big" .5392508396744797718209106862347065628649e-1" + a1807 = big" .1660758097434640828541930599928251901718e-1" + a1808 = big"-4.454485757926779655418936993298463071587" + a1809 = big" 6.835218278632146381711296817968152631469" + a1810 = big"-8.711334822181993739847172734848837971169" + a1811 = big" 6.491635839232917053651267142703105653517" + a1812 = big"-.7072551809844346422069985227700294651922e-1" + a1814 = big"-.1854031491993216429111842937941202966440e-1" + a1815 = big" .2350402105435384645116542087045962190647e-1" + a1816 = big" .2344795103407822090556377813402774776461" + a1817 = big"-.8241072501152898885823089698097768766651e-1" c19 = T2(1//2) - a1901 = T(parse(BigFloat," .5020102870355713598699964419977883461362e-1")) - a1906 = T(parse(BigFloat," .1552209034795498114932226104700567642339")) - a1907 = T(parse(BigFloat," .1264268424089234914713091134864747506300")) - a1908 = T(parse(BigFloat,"-5.14920630353984701704917414605721854951")) - a1909 = T(parse(BigFloat," 8.46834099903692926607453176331494311551")) - a1910 = T(parse(BigFloat,"-10.66213068108149527544209836207095498430")) - a1911 = T(parse(BigFloat," 7.54183322495972836290996201569018333903")) - a1912 = T(parse(BigFloat,"-.743696811383214243944066492459357053774e-1")) - a1914 = T(parse(BigFloat,"-.2055887686618382619339821759221121764364e-1")) - a1915 = T(parse(BigFloat," .775379526471029807261782993777862395844e-1")) - a1916 = T(parse(BigFloat," .1046259220352544296313761971333987587377")) - a1917 = T(parse(BigFloat,"-.1179213306451979352145022687063013455111")) + a1901 = big" .5020102870355713598699964419977883461362e-1" + a1906 = big" .1552209034795498114932226104700567642339" + a1907 = big" .1264268424089234914713091134864747506300" + a1908 = big"-5.14920630353984701704917414605721854951" + a1909 = big" 8.46834099903692926607453176331494311551" + a1910 = big"-10.66213068108149527544209836207095498430" + a1911 = big" 7.54183322495972836290996201569018333903" + a1912 = big"-.743696811383214243944066492459357053774e-1" + a1914 = big"-.2055887686618382619339821759221121764364e-1" + a1915 = big" .775379526471029807261782993777862395844e-1" + a1916 = big" .1046259220352544296313761971333987587377" + a1917 = big"-.1179213306451979352145022687063013455111" c20 = T2(7//10) - a2001 = T(parse(BigFloat," .3737341446457825692757506548800094134977e-1")) - a2006 = T(parse(BigFloat," .3504930705338316406767087468339071089224")) - a2007 = T(parse(BigFloat," .4922652819373025433298989824173484805373")) - a2008 = T(parse(BigFloat," 8.553695439359312242284304421725315855379")) - a2009 = T(parse(BigFloat,"-10.35317299030591348532574006719207803272")) - a2010 = T(parse(BigFloat," 13.83320427252914990351082875460544773493")) - a2011 = T(parse(BigFloat,"-12.28092433078461863729523583784519048012")) - a2012 = T(parse(BigFloat," .1719151595656509762746810113378644307112")) - a2014 = T(parse(BigFloat," .3641583114314496380113822384214528216140e-1")) - a2015 = T(parse(BigFloat," .2961920580288763054890146412520723429115e-1")) - a2016 = T(parse(BigFloat,"-.2651793938627067002647615623738425030047")) - a2017 = T(parse(BigFloat," .942950396173806655317007970358739475630e-1")) + a2001 = big" .3737341446457825692757506548800094134977e-1" + a2006 = big" .3504930705338316406767087468339071089224" + a2007 = big" .4922652819373025433298989824173484805373" + a2008 = big" 8.553695439359312242284304421725315855379" + a2009 = big"-10.35317299030591348532574006719207803272" + a2010 = big" 13.83320427252914990351082875460544773493" + a2011 = big"-12.28092433078461863729523583784519048012" + a2012 = big" .1719151595656509762746810113378644307112" + a2014 = big" .3641583114314496380113822384214528216140e-1" + a2015 = big" .2961920580288763054890146412520723429115e-1" + a2016 = big"-.2651793938627067002647615623738425030047" + a2017 = big" .942950396173806655317007970358739475630e-1" c21 = T2(9//10) - a2101 = T(parse(BigFloat," .3939058345528250943410670634923521987132e-1")) - a2106 = T(parse(BigFloat," .3558516141234424183136697322755323715063")) - a2107 = T(parse(BigFloat," .4197382225952610029372225526720065366258")) - a2108 = T(parse(BigFloat," .872044977807194166293172525204036071060")) - a2109 = T(parse(BigFloat," .898952083487659486126627160171417043611")) - a2110 = T(parse(BigFloat,"-.630580616105988359023456649527853470403")) - a2111 = T(parse(BigFloat,"-1.121887220595483550736681645425215081433")) - a2112 = T(parse(BigFloat," .4298219512400197176967511031829197714867e-1")) - a2114 = T(parse(BigFloat," .1332557566873915707013495891889190564164e-1")) - a2115 = T(parse(BigFloat," .1876227053964148034446101291928097773800e-1")) - a2116 = T(parse(BigFloat,"-.1859411132922105570515379368592596513699")) - a2117 = T(parse(BigFloat," .1773614271924602745226064729836361000042")) + a2101 = big" .3939058345528250943410670634923521987132e-1" + a2106 = big" .3558516141234424183136697322755323715063" + a2107 = big" .4197382225952610029372225526720065366258" + a2108 = big" .872044977807194166293172525204036071060" + a2109 = big" .898952083487659486126627160171417043611" + a2110 = big"-.630580616105988359023456649527853470403" + a2111 = big"-1.121887220595483550736681645425215081433" + a2112 = big" .4298219512400197176967511031829197714867e-1" + a2114 = big" .1332557566873915707013495891889190564164e-1" + a2115 = big" .1876227053964148034446101291928097773800e-1" + a2116 = big"-.1859411132922105570515379368592596513699" + a2117 = big" .1773614271924602745226064729836361000042" return c14,a1401,a1406,a1407,a1408,a1409,a1410,a1411,a1412,c15,a1501,a1506,a1507,a1508,a1509,a1510,a1511,a1512,a1514,c16,a1601,a1606,a1607,a1608,a1609,a1610,a1611,a1612,a1614,a1615,c17,a1701,a1706,a1707,a1708,a1709,a1710,a1711,a1712,a1714,a1715,a1716,c18,a1801,a1806,a1807,a1808,a1809,a1810,a1811,a1812,a1814,a1815,a1816,a1817,c19,a1901,a1906,a1907,a1908,a1909,a1910,a1911,a1912,a1914,a1915,a1916,a1917,c20,a2001,a2006,a2007,a2008,a2009,a2010,a2011,a2012,a2014,a2015,a2016,a2017,c21,a2101,a2106,a2107,a2108,a2109,a2110,a2111,a2112,a2114,a2115,a2116,a2117 end -Base.@pure function Vern8Interp_polyweights(::Type{T}) where T<:CompiledFloats +function Vern8Interp_polyweights(::Type{T}) where T<:CompiledFloats r011 = T(1) r012 = T(-10.039154650554519) r013 = T(53.79210495862331) @@ -1878,119 +1878,119 @@ Base.@pure function Vern8Interp_polyweights(::Type{T}) where T<:CompiledFloats end function Vern8Interp_polyweights(T::Type) - r011 = T(parse(BigFloat," 1")) - r012 = T(parse(BigFloat,"-10.03915465055451898280745009553727015838")) - r013 = T(parse(BigFloat," 53.79210495862331394937504547285261606206")) - r014 = T(parse(BigFloat,"-165.0579057235472167092186792753028629327")) - r015 = T(parse(BigFloat," 298.0264565434610102489744601822776142620")) - r016 = T(parse(BigFloat,"-311.9125448707900689751032283191627986699")) - r017 = T(parse(BigFloat," 174.6059852691171542761046061351126284335")) - r018 = T(parse(BigFloat,"-40.37066163211959429657758663355894180800")) - r062 = T(parse(BigFloat," 158.1976739121776138067531004299642556045")) - r063 = T(parse(BigFloat,"-1543.961417219490013383329186557376850919")) - r064 = T(parse(BigFloat," 6241.398747828780065219699818963300847515")) - r065 = T(parse(BigFloat,"-13136.51615640610824674042591770724411138")) - r066 = T(parse(BigFloat," 15106.94849316959941770760848348143558467")) - r067 = T(parse(BigFloat,"-8996.489626298230413000758717864256649583")) - r068 = T(parse(BigFloat," 2170.776389952444021264933974457050280938")) - r072 = T(parse(BigFloat," 110.7811520079778201620910891542159716196")) - r073 = T(parse(BigFloat,"-1081.190514535617748557462051373884811281")) - r074 = T(parse(BigFloat," 4370.666940459977376891679103587685016930")) - r075 = T(parse(BigFloat,"-9199.113723922197066947453657458673365167")) - r076 = T(parse(BigFloat," 10578.94920962985483690180716390515207397")) - r077 = T(parse(BigFloat,"-6299.975594978841008450271944308599363057")) - r078 = T(parse(BigFloat," 1520.130500554341433782477059435641543286")) - r082 = T(parse(BigFloat,"-7011.442038211314089634068023254940106045")) - r083 = T(parse(BigFloat," 68429.55220744077890209519664603903716349")) - r084 = T(parse(BigFloat,"-276623.5714822198169288202316196287008724")) - r085 = T(parse(BigFloat," 582220.4545548494658856503006312634684934")) - r086 = T(parse(BigFloat,"-669551.5244611245601905652331468068626208")) - r087 = T(parse(BigFloat," 398731.3087623332757943809792249308827732")) - r088 = T(parse(BigFloat,"-96210.47174510666745715793578288559674281")) - r092 = T(parse(BigFloat," 11206.39756984814734031374482605836502113")) - r093 = T(parse(BigFloat,"-109371.0485495066182770525095928736321803")) - r094 = T(parse(BigFloat," 442127.8393698154661543505844693555049508")) - r095 = T(parse(BigFloat,"-930563.7629864562145364082427559715712707")) - r096 = T(parse(BigFloat," 1070145.133585590072636708771436125254933")) - r097 = T(parse(BigFloat,"-637292.8058429046904373075590712408701797")) - r098 = T(parse(BigFloat," 153773.3309185793956820086499888593205888")) - r102 = T(parse(BigFloat,"-14179.23164045568390825368995504736244876")) - r103 = T(parse(BigFloat," 138385.0093196357218693716546019209270760")) - r104 = T(parse(BigFloat,"-559415.5490240869974273158302752589638112")) - r105 = T(parse(BigFloat," 1177423.794699250413603625249340565972051")) - r106 = T(parse(BigFloat,"-1354033.322790821429356166591306087001182")) - r107 = T(parse(BigFloat," 806353.8938825050195016379699232308969498")) - r108 = T(parse(BigFloat,"-194566.3328138133045593670938904445416121")) - r112 = T(parse(BigFloat," 10247.76176792174468727263230424253072668")) - r113 = T(parse(BigFloat,"-100015.0532637523107509874155382267979521")) - r114 = T(parse(BigFloat," 404306.6240143429367125014776377339233105")) - r115 = T(parse(BigFloat,"-850959.9711689702682710993795157496434280")) - r116 = T(parse(BigFloat," 978601.0462088684697300958464199995189771")) - r117 = T(parse(BigFloat,"-582776.4729907748855939796622931794117500")) - r118 = T(parse(BigFloat," 140619.0037156383022701488158207833280861")) - r122 = T(parse(BigFloat,"-105.4930397685096787379931952745881034169")) - r123 = T(parse(BigFloat," 1029.580139580310194120073236423148130618")) - r124 = T(parse(BigFloat,"-4162.034181876452751021493197688100770349")) - r125 = T(parse(BigFloat," 8759.996193602336131526447045580160767641")) - r126 = T(parse(BigFloat,"-10073.96555688604885441046004449728532151")) - r127 = T(parse(BigFloat," 5999.247741473950186438936812025268574829")) - r128 = T(parse(BigFloat,"-1447.567428588892382130036646632729629570")) - r142 = T(parse(BigFloat,"-14.86361337326743122469601010648237947608")) - r143 = T(parse(BigFloat," 145.7635936489486611601020590400812969906")) - r144 = T(parse(BigFloat,"-587.6557063401913588520708808169444817103")) - r145 = T(parse(BigFloat," 1227.372151254555709980234511427063838550")) - r146 = T(parse(BigFloat,"-1394.493105740553645217117387304216418608")) - r147 = T(parse(BigFloat," 816.8562950730668774494805290335070403105")) - r148 = T(parse(BigFloat,"-192.9796145225588132959328212730088960570")) - r152 = T(parse(BigFloat," 14.34968575290546223276673100484047073648")) - r153 = T(parse(BigFloat,"-150.2949344481665658851785896351738227010")) - r154 = T(parse(BigFloat," 629.4812425700290706612346725243246098946")) - r155 = T(parse(BigFloat,"-1352.518207309060677914698908083510085133")) - r156 = T(parse(BigFloat," 1575.896933708880305858556996706058962503")) - r157 = T(parse(BigFloat,"-946.7876580472948045886633971120598201035")) - r158 = T(parse(BigFloat," 229.8729377727072096359824945955196848017")) - r162 = T(parse(BigFloat,"-102.5452470111040085560664290210906322518")) - r163 = T(parse(BigFloat," 1074.032661264680594125263250545103109541")) - r164 = T(parse(BigFloat,"-4498.377917100410634753487685261882069653")) - r165 = T(parse(BigFloat," 9665.320624003280508099125255751992581938")) - r166 = T(parse(BigFloat,"-11261.62224831288113545795903649800929060")) - r167 = T(parse(BigFloat," 6765.902468760784366342575368188597359812")) - r168 = T(parse(BigFloat,"-1642.710341604349689799450723704711058784")) - r172 = T(parse(BigFloat,"-38.13206313286473398334122725888547021750")) - r173 = T(parse(BigFloat," 399.3854658292328681862496726489289700594")) - r174 = T(parse(BigFloat,"-1672.748720491971752312231602599596419744")) - r175 = T(parse(BigFloat," 3594.107254858566583822606674735752304040")) - r176 = T(parse(BigFloat,"-4187.701556802926199931725021751236897492")) - r177 = T(parse(BigFloat," 2515.941280649063720613355430002270532846")) - r178 = T(parse(BigFloat,"-610.8516609091004863949139257772330194915")) - r182 = T(parse(BigFloat,"-66.38279583069588062871084016403504860018")) - r183 = T(parse(BigFloat," 595.8297683881103280237377269355990794854")) - r184 = T(parse(BigFloat,"-2188.737060092971609278770563269347103559")) - r185 = T(parse(BigFloat," 4213.839795282852421559730676511794767863")) - r186 = T(parse(BigFloat,"-4484.035731929196864370162258757955490985")) - r187 = T(parse(BigFloat," 2500.648251425346544829791147364129986790")) - r188 = T(parse(BigFloat,"-571.1622272434449401356158886201861909946")) - r192 = T(parse(BigFloat,"-90.41887573173058787343992868450872085904")) - r193 = T(parse(BigFloat," 931.9503884048153706496188381219698380844")) - r194 = T(parse(BigFloat,"-3962.898377713156165984683269799703910403")) - r195 = T(parse(BigFloat," 8733.317420025551238329244389917866097896")) - r196 = T(parse(BigFloat,"-10445.90818988766053535212385670877957360")) - r197 = T(parse(BigFloat," 6426.218942917598693647793004359979629852")) - r198 = T(parse(BigFloat,"-1592.261308015418013416409177206823360972")) - r202 = T(parse(BigFloat,"-59.73884363038871206457816967313835076801")) - r203 = T(parse(BigFloat," 544.8870146891724527559861176467523778088")) - r204 = T(parse(BigFloat,"-2090.430374926312850791322527518588562537")) - r205 = T(parse(BigFloat," 4194.418982707226648046953315742901721971")) - r206 = T(parse(BigFloat,"-4603.369436819628073439413527693451638704")) - r207 = T(parse(BigFloat," 2619.201413559297614510795648037620577207")) - r208 = T(parse(BigFloat,"-604.9687555793670790184208565420961249773")) - r212 = T(parse(BigFloat,"-59.20053764683937384859682230934791521325")) - r213 = T(parse(BigFloat," 571.7660156218088014286377638724659591261")) - r214 = T(parse(BigFloat,"-2308.949564445360683785335401047607870804")) - r215 = T(parse(BigFloat," 4881.234110686139058221334453291392021952")) - r216 = T(parse(BigFloat,"-5660.118807771202003386701685793459298252")) - r217 = T(parse(BigFloat," 3408.706689037421803199133730396931709513")) - r218 = T(parse(BigFloat,"-833.4379054819676018284720384103746063216")) + r011 = big" 1" + r012 = big"-10.03915465055451898280745009553727015838" + r013 = big" 53.79210495862331394937504547285261606206" + r014 = big"-165.0579057235472167092186792753028629327" + r015 = big" 298.0264565434610102489744601822776142620" + r016 = big"-311.9125448707900689751032283191627986699" + r017 = big" 174.6059852691171542761046061351126284335" + r018 = big"-40.37066163211959429657758663355894180800" + r062 = big" 158.1976739121776138067531004299642556045" + r063 = big"-1543.961417219490013383329186557376850919" + r064 = big" 6241.398747828780065219699818963300847515" + r065 = big"-13136.51615640610824674042591770724411138" + r066 = big" 15106.94849316959941770760848348143558467" + r067 = big"-8996.489626298230413000758717864256649583" + r068 = big" 2170.776389952444021264933974457050280938" + r072 = big" 110.7811520079778201620910891542159716196" + r073 = big"-1081.190514535617748557462051373884811281" + r074 = big" 4370.666940459977376891679103587685016930" + r075 = big"-9199.113723922197066947453657458673365167" + r076 = big" 10578.94920962985483690180716390515207397" + r077 = big"-6299.975594978841008450271944308599363057" + r078 = big" 1520.130500554341433782477059435641543286" + r082 = big"-7011.442038211314089634068023254940106045" + r083 = big" 68429.55220744077890209519664603903716349" + r084 = big"-276623.5714822198169288202316196287008724" + r085 = big" 582220.4545548494658856503006312634684934" + r086 = big"-669551.5244611245601905652331468068626208" + r087 = big" 398731.3087623332757943809792249308827732" + r088 = big"-96210.47174510666745715793578288559674281" + r092 = big" 11206.39756984814734031374482605836502113" + r093 = big"-109371.0485495066182770525095928736321803" + r094 = big" 442127.8393698154661543505844693555049508" + r095 = big"-930563.7629864562145364082427559715712707" + r096 = big" 1070145.133585590072636708771436125254933" + r097 = big"-637292.8058429046904373075590712408701797" + r098 = big" 153773.3309185793956820086499888593205888" + r102 = big"-14179.23164045568390825368995504736244876" + r103 = big" 138385.0093196357218693716546019209270760" + r104 = big"-559415.5490240869974273158302752589638112" + r105 = big" 1177423.794699250413603625249340565972051" + r106 = big"-1354033.322790821429356166591306087001182" + r107 = big" 806353.8938825050195016379699232308969498" + r108 = big"-194566.3328138133045593670938904445416121" + r112 = big" 10247.76176792174468727263230424253072668" + r113 = big"-100015.0532637523107509874155382267979521" + r114 = big" 404306.6240143429367125014776377339233105" + r115 = big"-850959.9711689702682710993795157496434280" + r116 = big" 978601.0462088684697300958464199995189771" + r117 = big"-582776.4729907748855939796622931794117500" + r118 = big" 140619.0037156383022701488158207833280861" + r122 = big"-105.4930397685096787379931952745881034169" + r123 = big" 1029.580139580310194120073236423148130618" + r124 = big"-4162.034181876452751021493197688100770349" + r125 = big" 8759.996193602336131526447045580160767641" + r126 = big"-10073.96555688604885441046004449728532151" + r127 = big" 5999.247741473950186438936812025268574829" + r128 = big"-1447.567428588892382130036646632729629570" + r142 = big"-14.86361337326743122469601010648237947608" + r143 = big" 145.7635936489486611601020590400812969906" + r144 = big"-587.6557063401913588520708808169444817103" + r145 = big" 1227.372151254555709980234511427063838550" + r146 = big"-1394.493105740553645217117387304216418608" + r147 = big" 816.8562950730668774494805290335070403105" + r148 = big"-192.9796145225588132959328212730088960570" + r152 = big" 14.34968575290546223276673100484047073648" + r153 = big"-150.2949344481665658851785896351738227010" + r154 = big" 629.4812425700290706612346725243246098946" + r155 = big"-1352.518207309060677914698908083510085133" + r156 = big" 1575.896933708880305858556996706058962503" + r157 = big"-946.7876580472948045886633971120598201035" + r158 = big" 229.8729377727072096359824945955196848017" + r162 = big"-102.5452470111040085560664290210906322518" + r163 = big" 1074.032661264680594125263250545103109541" + r164 = big"-4498.377917100410634753487685261882069653" + r165 = big" 9665.320624003280508099125255751992581938" + r166 = big"-11261.62224831288113545795903649800929060" + r167 = big" 6765.902468760784366342575368188597359812" + r168 = big"-1642.710341604349689799450723704711058784" + r172 = big"-38.13206313286473398334122725888547021750" + r173 = big" 399.3854658292328681862496726489289700594" + r174 = big"-1672.748720491971752312231602599596419744" + r175 = big" 3594.107254858566583822606674735752304040" + r176 = big"-4187.701556802926199931725021751236897492" + r177 = big" 2515.941280649063720613355430002270532846" + r178 = big"-610.8516609091004863949139257772330194915" + r182 = big"-66.38279583069588062871084016403504860018" + r183 = big" 595.8297683881103280237377269355990794854" + r184 = big"-2188.737060092971609278770563269347103559" + r185 = big" 4213.839795282852421559730676511794767863" + r186 = big"-4484.035731929196864370162258757955490985" + r187 = big" 2500.648251425346544829791147364129986790" + r188 = big"-571.1622272434449401356158886201861909946" + r192 = big"-90.41887573173058787343992868450872085904" + r193 = big" 931.9503884048153706496188381219698380844" + r194 = big"-3962.898377713156165984683269799703910403" + r195 = big" 8733.317420025551238329244389917866097896" + r196 = big"-10445.90818988766053535212385670877957360" + r197 = big" 6426.218942917598693647793004359979629852" + r198 = big"-1592.261308015418013416409177206823360972" + r202 = big"-59.73884363038871206457816967313835076801" + r203 = big" 544.8870146891724527559861176467523778088" + r204 = big"-2090.430374926312850791322527518588562537" + r205 = big" 4194.418982707226648046953315742901721971" + r206 = big"-4603.369436819628073439413527693451638704" + r207 = big" 2619.201413559297614510795648037620577207" + r208 = big"-604.9687555793670790184208565420961249773" + r212 = big"-59.20053764683937384859682230934791521325" + r213 = big" 571.7660156218088014286377638724659591261" + r214 = big"-2308.949564445360683785335401047607870804" + r215 = big" 4881.234110686139058221334453291392021952" + r216 = big"-5660.118807771202003386701685793459298252" + r217 = big" 3408.706689037421803199133730396931709513" + r218 = big"-833.4379054819676018284720384103746063216" return r011,r012,r013,r014,r015,r016,r017,r018,r062,r063,r064,r065,r066,r067,r068,r072,r073,r074,r075,r076,r077,r078,r082,r083,r084,r085,r086,r087,r088,r092,r093,r094,r095,r096,r097,r098,r102,r103,r104,r105,r106,r107,r108,r112,r113,r114,r115,r116,r117,r118,r122,r123,r124,r125,r126,r127,r128,r142,r143,r144,r145,r146,r147,r148,r152,r153,r154,r155,r156,r157,r158,r162,r163,r164,r165,r166,r167,r168,r172,r173,r174,r175,r176,r177,r178,r182,r183,r184,r185,r186,r187,r188,r192,r193,r194,r195,r196,r197,r198,r202,r203,r204,r205,r206,r207,r208,r212,r213,r214,r215,r216,r217,r218 end @@ -2396,7 +2396,7 @@ end """ From Verner's Webiste """ -Base.@pure function Vern9ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} +function Vern9ConstantCache(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} c1 =T2(0.03462) c2 =T2(0.09702435063878045) c3 =T2(0.14553652595817068) @@ -2644,7 +2644,7 @@ function Vern9ConstantCache(T::Type,T2::Type) Vern9ConstantCache(c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,a0201,a0301,a0302,a0401,a0403,a0501,a0503,a0504,a0601,a0604,a0605,a0701,a0704,a0705,a0706,a0801,a0806,a0807,a0901,a0906,a0907,a0908,a1001,a1006,a1007,a1008,a1009,a1101,a1106,a1107,a1108,a1109,a1110,a1201,a1206,a1207,a1208,a1209,a1210,a1211,a1301,a1306,a1307,a1308,a1309,a1310,a1311,a1312,a1401,a1406,a1407,a1408,a1409,a1410,a1411,a1412,a1413,a1501,a1506,a1507,a1508,a1509,a1510,a1511,a1512,a1513,a1514,a1601,a1606,a1607,a1608,a1609,a1610,a1611,a1612,a1613,b1,b8,b9,b10,b11,b12,b13,b14,b15,btilde1,btilde8,btilde9,btilde10,btilde11,btilde12,btilde13,btilde14,btilde15,btilde16,c17,a1701,a1708,a1709,a1710,a1711,a1712,a1713,a1714,a1715,c18,a1801,a1808,a1809,a1810,a1811,a1812,a1813,a1814,a1815,a1817,c19,a1901,a1908,a1909,a1910,a1911,a1912,a1913,a1914,a1915,a1917,a1918,c20,a2001,a2008,a2009,a2010,a2011,a2012,a2013,a2014,a2015,a2017,a2018,a2019,c21,a2101,a2108,a2109,a2110,a2111,a2112,a2113,a2114,a2115,a2117,a2118,a2119,a2120,c22,a2201,a2208,a2209,a2210,a2211,a2212,a2213,a2214,a2215,a2217,a2218,a2219,a2220,a2221,c23,a2301,a2308,a2309,a2310,a2311,a2312,a2313,a2314,a2315,a2317,a2318,a2319,a2320,a2321,c24,a2401,a2408,a2409,a2410,a2411,a2412,a2413,a2414,a2415,a2417,a2418,a2419,a2420,a2421,c25,a2501,a2508,a2509,a2510,a2511,a2512,a2513,a2514,a2515,a2517,a2518,a2519,a2520,a2521,c26,a2601,a2608,a2609,a2610,a2611,a2612,a2613,a2614,a2615,a2617,a2618,a2619,a2620,a2621,r011,r012,r013,r014,r015,r016,r017,r018,r019,r082,r083,r084,r085,r086,r087,r088,r089,r092,r093,r094,r095,r096,r097,r098,r099,r102,r103,r104,r105,r106,r107,r108,r109,r112,r113,r114,r115,r116,r117,r118,r119,r122,r123,r124,r125,r126,r127,r128,r129,r132,r133,r134,r135,r136,r137,r138,r139,r142,r143,r144,r145,r146,r147,r148,r149,r152,r153,r154,r155,r156,r157,r158,r159,r172,r173,r174,r175,r176,r177,r178,r179,r182,r183,r184,r185,r186,r187,r188,r189,r192,r193,r194,r195,r196,r197,r198,r199,r202,r203,r204,r205,r206,r207,r208,r209,r212,r213,r214,r215,r216,r217,r218,r219,r222,r223,r224,r225,r226,r227,r228,r229,r232,r233,r234,r235,r236,r237,r238,r239,r242,r243,r244,r245,r246,r247,r248,r249,r252,r253,r254,r255,r256,r257,r258,r259,r262,r263,r264,r265,r266,r267,r268,r269) end -Base.@pure function Vern9Interp(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} +function Vern9Interp(::Type{T},::Type{T2}) where {T<:CompiledFloats,T2<:CompiledFloats} # FIVE ADDITIONAL STAGES FOR INTERPOLANT OF ORDER 8 c17 = T2(1) a1701 = T(0.014611976858423152) @@ -2789,146 +2789,146 @@ end function Vern9Interp(T::Type,T2::Type) # FIVE ADDITIONAL STAGES FOR INTERPOLANT OF ORDER 8 c17 = T2(1) - a1701 = T(parse(BigFloat," .1461197685842315252051541915018784713459e-1")) - a1708 = T(parse(BigFloat,"-.3915211862331339089410228267288242030810")) - a1709 = T(parse(BigFloat," .2310932500289506415909675644868993669908")) - a1710 = T(parse(BigFloat," .1274766769992852382560589467488989175618")) - a1711 = T(parse(BigFloat," .2246434176204157731566981937082069688984")) - a1712 = T(parse(BigFloat," .5684352689748512932705226972873692126743")) - a1713 = T(parse(BigFloat," .5825871557215827200814768021863420902155e-1")) - a1714 = T(parse(BigFloat," .1364317403482215641609022744494239843327")) - a1715 = T(parse(BigFloat," .3057013983082797397721005067920369646664e-1")) - c18 = T2(parse(BigFloat," .7404185470631561083004100761798676215811")) - a1801 = T(parse(BigFloat," .1549973668189559302279946863304789372788e-1")) - a1808 = T(parse(BigFloat," .3355153219059635054403439303177105512242")) - a1809 = T(parse(BigFloat," .2003613944191860651552622660712101217322")) - a1810 = T(parse(BigFloat," .1252060659283549312946162355194540994211")) - a1811 = T(parse(BigFloat," .2298676393184206750544046308957155868736")) - a1812 = T(parse(BigFloat,"-.2020250653476181447824906889122391003637")) - a1813 = T(parse(BigFloat," .5917103230665456601422111997583025339897e-1")) - a1814 = T(parse(BigFloat,"-.2651834783047638681693835956996437528251e-1")) - a1815 = T(parse(BigFloat,"-.2384094602130971415278110567256446033405e-1")) - a1817 = T(parse(BigFloat," .2718171570208501807097257892166705118335e-1")) + a1701 = big" .1461197685842315252051541915018784713459e-1" + a1708 = big"-.3915211862331339089410228267288242030810" + a1709 = big" .2310932500289506415909675644868993669908" + a1710 = big" .1274766769992852382560589467488989175618" + a1711 = big" .2246434176204157731566981937082069688984" + a1712 = big" .5684352689748512932705226972873692126743" + a1713 = big" .5825871557215827200814768021863420902155e-1" + a1714 = big" .1364317403482215641609022744494239843327" + a1715 = big" .3057013983082797397721005067920369646664e-1" + c18 = T2(big" .7404185470631561083004100761798676215811") + a1801 = big" .1549973668189559302279946863304789372788e-1" + a1808 = big" .3355153219059635054403439303177105512242" + a1809 = big" .2003613944191860651552622660712101217322" + a1810 = big" .1252060659283549312946162355194540994211" + a1811 = big" .2298676393184206750544046308957155868736" + a1812 = big"-.2020250653476181447824906889122391003637" + a1813 = big" .5917103230665456601422111997583025339897e-1" + a1814 = big"-.2651834783047638681693835956996437528251e-1" + a1815 = big"-.2384094602130971415278110567256446033405e-1" + a1817 = big" .2718171570208501807097257892166705118335e-1" c19 = T2(888//1000) - a1901 = T(parse(BigFloat," .1302453943114338366054520296881099431474e-1")) - a1908 = T(parse(BigFloat,"-.7452850902413112085299330666038981625179")) - a1909 = T(parse(BigFloat," .2643867896429300961465132150322749722129")) - a1910 = T(parse(BigFloat," .1313961758372753932588328082078842388890")) - a1911 = T(parse(BigFloat," .2167253815122927263092467187957410643315")) - a1912 = T(parse(BigFloat," .8734117564076052559016338094938888451419")) - a1913 = T(parse(BigFloat," .1185905643935776688228545787724340848142e-1")) - a1914 = T(parse(BigFloat," .5876002941689550612992712203494447529933e-1")) - a1915 = T(parse(BigFloat," .3266518630202087866399279690939423159022e-2")) - a1917 = T(parse(BigFloat,"-.8959308648417929824525368306101792182274e-2")) - a1918 = T(parse(BigFloat," .6941415157202692219907482080827253287034e-1")) + a1901 = big" .1302453943114338366054520296881099431474e-1" + a1908 = big"-.7452850902413112085299330666038981625179" + a1909 = big" .2643867896429300961465132150322749722129" + a1910 = big" .1313961758372753932588328082078842388890" + a1911 = big" .2167253815122927263092467187957410643315" + a1912 = big" .8734117564076052559016338094938888451419" + a1913 = big" .1185905643935776688228545787724340848142e-1" + a1914 = big" .5876002941689550612992712203494447529933e-1" + a1915 = big" .3266518630202087866399279690939423159022e-2" + a1917 = big"-.8959308648417929824525368306101792182274e-2" + a1918 = big" .6941415157202692219907482080827253287034e-1" c20 = T2(696//1000) - a2001 = T(parse(BigFloat," .1397089996925942721283716334050740168797e-1")) - a2008 = T(parse(BigFloat,"-.4665765335957674596054673402956853940520")) - a2009 = T(parse(BigFloat," .2416372787216257077935214889875485248580")) - a2010 = T(parse(BigFloat," .1290363341345674735721677437066933999929")) - a2011 = T(parse(BigFloat," .2216700671735105311080225734522323922813")) - a2012 = T(parse(BigFloat," .6257275123364644931771253383573999863003")) - a2013 = T(parse(BigFloat," .4355312415679284117869124964829805160429e-1")) - a2014 = T(parse(BigFloat," .1011962491667290833450024852274278874501")) - a2015 = T(parse(BigFloat," .1808582254679721049279369742685497400353e-1")) - a2017 = T(parse(BigFloat,"-.2079875587689169691156509689282083267654e-1")) - a2018 = T(parse(BigFloat,"-.9022232517086218976198252891464664868640e-1")) - a2019 = T(parse(BigFloat,"-.1212796735622254216011467740438097427634")) + a2001 = big" .1397089996925942721283716334050740168797e-1" + a2008 = big"-.4665765335957674596054673402956853940520" + a2009 = big" .2416372787216257077935214889875485248580" + a2010 = big" .1290363341345674735721677437066933999929" + a2011 = big" .2216700671735105311080225734522323922813" + a2012 = big" .6257275123364644931771253383573999863003" + a2013 = big" .4355312415679284117869124964829805160429e-1" + a2014 = big" .1011962491667290833450024852274278874501" + a2015 = big" .1808582254679721049279369742685497400353e-1" + a2017 = big"-.2079875587689169691156509689282083267654e-1" + a2018 = big"-.9022232517086218976198252891464664868640e-1" + a2019 = big"-.1212796735622254216011467740438097427634" c21 = T2(487//1000) - a2101 = T(parse(BigFloat," .1604638888318112738641232352800290501904e-1")) - a2108 = T(parse(BigFloat," .9517712399458336651642257453589397190702e-1")) - a2109 = T(parse(BigFloat," .1359187264655317806136927180199100622471")) - a2110 = T(parse(BigFloat," .1237765280959854006935081364365637515893")) - a2111 = T(parse(BigFloat," .2335656264102966047058755123098072346246")) - a2112 = T(parse(BigFloat,"-.9051508172625873314662090873741762206189e-1")) - a2113 = T(parse(BigFloat,"-.2537574270006131028513276914038326155331e-1")) - a2114 = T(parse(BigFloat,"-.1359631696887162048002744757083947500478")) - a2115 = T(parse(BigFloat,"-.4679214284145113075088049469061349990847e-1")) - a2117 = T(parse(BigFloat," .5177958859391748239949773879090325427473e-1")) - a2118 = T(parse(BigFloat," .9672595677476773313884172931875718705561e-1")) - a2119 = T(parse(BigFloat," .1477312690340742769720989417101989769314")) - a2120 = T(parse(BigFloat,"-.1150750712958503934434410263732282100773")) + a2101 = big" .1604638888318112738641232352800290501904e-1" + a2108 = big" .9517712399458336651642257453589397190702e-1" + a2109 = big" .1359187264655317806136927180199100622471" + a2110 = big" .1237765280959854006935081364365637515893" + a2111 = big" .2335656264102966047058755123098072346246" + a2112 = big"-.9051508172625873314662090873741762206189e-1" + a2113 = big"-.2537574270006131028513276914038326155331e-1" + a2114 = big"-.1359631696887162048002744757083947500478" + a2115 = big"-.4679214284145113075088049469061349990847e-1" + a2117 = big" .5177958859391748239949773879090325427473e-1" + a2118 = big" .9672595677476773313884172931875718705561e-1" + a2119 = big" .1477312690340742769720989417101989769314" + a2120 = big"-.1150750712958503934434410263732282100773" # FIVE ADDITIONAL STAGES FOR INTERPOLANT OF ORDER 9 c22 = T2(1//40) - a2201 = T(parse(BigFloat," .1802918623893620731908165792176564180038e-1")) - a2208 = T(parse(BigFloat," .6983601042028873702545973390560096201728e-1")) - a2209 = T(parse(BigFloat,"-.2541247660791663512384395986842781657182e-1")) - a2210 = T(parse(BigFloat," .8487827035463274491721441398893680307535e-2")) - a2211 = T(parse(BigFloat,"-.2427525516089801645451101966852425715128e-2")) - a2212 = T(parse(BigFloat,"-.1047839752893819879012607694745789515746")) - a2213 = T(parse(BigFloat,"-.1473147795248041942353840372690095884761e-1")) - a2214 = T(parse(BigFloat,"-.3916338390816177165706892282751065537530e-1")) - a2215 = T(parse(BigFloat,"-.1005657343293959419073236542225421561652e-1")) - a2217 = T(parse(BigFloat," .1102510392204834322538452331445716455061e-1")) - a2218 = T(parse(BigFloat," .5092830749095398308703438556315975226108e-2")) - a2219 = T(parse(BigFloat," .4759715599420644505591133410826632557391e-1")) - a2220 = T(parse(BigFloat," .3386307003288382751110965442296681690349e-1")) - a2221 = T(parse(BigFloat," .2764422831404797700452373965825845732168e-1")) + a2201 = big" .1802918623893620731908165792176564180038e-1" + a2208 = big" .6983601042028873702545973390560096201728e-1" + a2209 = big"-.2541247660791663512384395986842781657182e-1" + a2210 = big" .8487827035463274491721441398893680307535e-2" + a2211 = big"-.2427525516089801645451101966852425715128e-2" + a2212 = big"-.1047839752893819879012607694745789515746" + a2213 = big"-.1473147795248041942353840372690095884761e-1" + a2214 = big"-.3916338390816177165706892282751065537530e-1" + a2215 = big"-.1005657343293959419073236542225421561652e-1" + a2217 = big" .1102510392204834322538452331445716455061e-1" + a2218 = big" .5092830749095398308703438556315975226108e-2" + a2219 = big" .4759715599420644505591133410826632557391e-1" + a2220 = big" .3386307003288382751110965442296681690349e-1" + a2221 = big" .2764422831404797700452373965825845732168e-1" c23 = T2(15//100) - a2301 = T(parse(BigFloat," .1677431640522778042988664067637191163626e-1")) - a2308 = T(parse(BigFloat," .6220437408820475326702539861577894278533")) - a2309 = T(parse(BigFloat,"-.2060859809768841878234097076241307428139")) - a2310 = T(parse(BigFloat," .1156394989766058889629372195583391792474")) - a2311 = T(parse(BigFloat," .2664101793378358946544219293685167025971e-1")) - a2312 = T(parse(BigFloat,"-.9376810793418770527505892794460093668860")) - a2313 = T(parse(BigFloat,"-.1367806466702160302637074581619101741312")) - a2314 = T(parse(BigFloat,"-.3678480995268296672182605288991379118419")) - a2315 = T(parse(BigFloat,"-.9547871314402478902820445838193201497337e-1")) - a2317 = T(parse(BigFloat," .1013492018422369748729008873270013785313")) - a2318 = T(parse(BigFloat,"-.8911323084568593396468400926074881389560e-1")) - a2319 = T(parse(BigFloat," .4664140988974760478895528270623735057521")) - a2320 = T(parse(BigFloat," .4502736292354579812232681662308722738519")) - a2321 = T(parse(BigFloat," .1838522463326818655346135218242696774099")) + a2301 = big" .1677431640522778042988664067637191163626e-1" + a2308 = big" .6220437408820475326702539861577894278533" + a2309 = big"-.2060859809768841878234097076241307428139" + a2310 = big" .1156394989766058889629372195583391792474" + a2311 = big" .2664101793378358946544219293685167025971e-1" + a2312 = big"-.9376810793418770527505892794460093668860" + a2313 = big"-.1367806466702160302637074581619101741312" + a2314 = big"-.3678480995268296672182605288991379118419" + a2315 = big"-.9547871314402478902820445838193201497337e-1" + a2317 = big" .1013492018422369748729008873270013785313" + a2318 = big"-.8911323084568593396468400926074881389560e-1" + a2319 = big" .4664140988974760478895528270623735057521" + a2320 = big" .4502736292354579812232681662308722738519" + a2321 = big" .1838522463326818655346135218242696774099" c24 = T2(32//100) - a2401 = T(parse(BigFloat," .1071149731491444187554380927165768658192e-1")) - a2408 = T(parse(BigFloat,"-.7094336118221108191937165464264324417735e-1")) - a2409 = T(parse(BigFloat," .1002164900340091596740582334112699697590")) - a2410 = T(parse(BigFloat," .1383453980468025108839271214703390659581")) - a2411 = T(parse(BigFloat," .1796330633578163411338104055485109917477")) - a2412 = T(parse(BigFloat," .9048246545576180974879274948815422276563e-1")) - a2413 = T(parse(BigFloat,"-.5460662294523338383345981122023862069115e-2")) - a2414 = T(parse(BigFloat,"-.3000457905119619782973021046143166498567e-1")) - a2415 = T(parse(BigFloat,"-.1145192026962799093665613252151017277867e-1")) - a2417 = T(parse(BigFloat," .1003394686109385076849515422360600302176e-1")) - a2418 = T(parse(BigFloat,"-.9506485282809046129031027932806241113157e-1")) - a2419 = T(parse(BigFloat," .4853358804093591445756711642658478691640e-1")) - a2420 = T(parse(BigFloat," .8013325919783924638483373011297347396327e-1")) - a2421 = T(parse(BigFloat,"-.1251643326835242045676140618774248455713")) + a2401 = big" .1071149731491444187554380927165768658192e-1" + a2408 = big"-.7094336118221108191937165464264324417735e-1" + a2409 = big" .1002164900340091596740582334112699697590" + a2410 = big" .1383453980468025108839271214703390659581" + a2411 = big" .1796330633578163411338104055485109917477" + a2412 = big" .9048246545576180974879274948815422276563e-1" + a2413 = big"-.5460662294523338383345981122023862069115e-2" + a2414 = big"-.3000457905119619782973021046143166498567e-1" + a2415 = big"-.1145192026962799093665613252151017277867e-1" + a2417 = big" .1003394686109385076849515422360600302176e-1" + a2418 = big"-.9506485282809046129031027932806241113157e-1" + a2419 = big" .4853358804093591445756711642658478691640e-1" + a2420 = big" .8013325919783924638483373011297347396327e-1" + a2421 = big"-.1251643326835242045676140618774248455713" c25 = T2(78//100) - a2501 = T(parse(BigFloat," .1410172088869221367153586187761994182069e-1")) - a2508 = T(parse(BigFloat,"-.3713379753704491105936205420001801316029")) - a2509 = T(parse(BigFloat," .2231265548117180273161442520179150684520")) - a2510 = T(parse(BigFloat," .1287005345918120122888629169443916280865")) - a2511 = T(parse(BigFloat," .2224600659675494761192249831098918110654")) - a2512 = T(parse(BigFloat," .5382853042550701952740528638168708946100")) - a2513 = T(parse(BigFloat," .5417202616988763101781128062036252796548e-1")) - a2514 = T(parse(BigFloat," .1256968791308743925752109039299467082975")) - a2515 = T(parse(BigFloat," .2784492789002054061504430663197543089132e-1")) - a2517 = T(parse(BigFloat,"-.3077409246205059733390460511525401688205e-1")) - a2518 = T(parse(BigFloat," .8569805293689777608077303071761466118035e-2")) - a2519 = T(parse(BigFloat,"-.1535174690587044615794997685221990516897")) - a2520 = T(parse(BigFloat,"-.2179957030548196497189489878038029238243e-1")) - a2521 = T(parse(BigFloat," .1447128819737186799295514239727801525027e-1")) + a2501 = big" .1410172088869221367153586187761994182069e-1" + a2508 = big"-.3713379753704491105936205420001801316029" + a2509 = big" .2231265548117180273161442520179150684520" + a2510 = big" .1287005345918120122888629169443916280865" + a2511 = big" .2224600659675494761192249831098918110654" + a2512 = big" .5382853042550701952740528638168708946100" + a2513 = big" .5417202616988763101781128062036252796548e-1" + a2514 = big" .1256968791308743925752109039299467082975" + a2515 = big" .2784492789002054061504430663197543089132e-1" + a2517 = big"-.3077409246205059733390460511525401688205e-1" + a2518 = big" .8569805293689777608077303071761466118035e-2" + a2519 = big"-.1535174690587044615794997685221990516897" + a2520 = big"-.2179957030548196497189489878038029238243e-1" + a2521 = big" .1447128819737186799295514239727801525027e-1" c26 = T2(96//100) - a2601 = T(parse(BigFloat," .1424600411735646609296566581447532773183e-1")) - a2608 = T(parse(BigFloat,"-.3767107393295407091303982522049390741260")) - a2609 = T(parse(BigFloat," .2252399780730421480874737297000189000070")) - a2610 = T(parse(BigFloat," .1283603076292529988314451246143633426068")) - a2611 = T(parse(BigFloat," .2230238705261692544876826347415151339678")) - a2612 = T(parse(BigFloat," .5463127827750747224899202176094949607118")) - a2613 = T(parse(BigFloat," .5526190791375779994553849469706124289752e-1")) - a2614 = T(parse(BigFloat," .1285613508749982456581494397108686240388")) - a2615 = T(parse(BigFloat," .2857250681296406482698934635829147899039e-1")) - a2617 = T(parse(BigFloat,"-.2398761886357108720930416967644499057175e-1")) - a2618 = T(parse(BigFloat," .5556224458910509454379297181908734648749e-1")) - a2619 = T(parse(BigFloat,"-.1740675650762838674257930398070760254668e-1")) - a2620 = T(parse(BigFloat,"-.3815462365996979065575121886854199471011e-1")) - a2621 = T(parse(BigFloat," .1111878504898917877407531966545730451506e-1")) + a2601 = big" .1424600411735646609296566581447532773183e-1" + a2608 = big"-.3767107393295407091303982522049390741260" + a2609 = big" .2252399780730421480874737297000189000070" + a2610 = big" .1283603076292529988314451246143633426068" + a2611 = big" .2230238705261692544876826347415151339678" + a2612 = big" .5463127827750747224899202176094949607118" + a2613 = big" .5526190791375779994553849469706124289752e-1" + a2614 = big" .1285613508749982456581494397108686240388" + a2615 = big" .2857250681296406482698934635829147899039e-1" + a2617 = big"-.2398761886357108720930416967644499057175e-1" + a2618 = big" .5556224458910509454379297181908734648749e-1" + a2619 = big"-.1740675650762838674257930398070760254668e-1" + a2620 = big"-.3815462365996979065575121886854199471011e-1" + a2621 = big" .1111878504898917877407531966545730451506e-1" return c17,a1701,a1708,a1709,a1710,a1711,a1712,a1713,a1714,a1715,c18,a1801,a1808,a1809,a1810,a1811,a1812,a1813,a1814,a1815,a1817,c19,a1901,a1908,a1909,a1910,a1911,a1912,a1913,a1914,a1915,a1917,a1918,c20,a2001,a2008,a2009,a2010,a2011,a2012,a2013,a2014,a2015,a2017,a2018,a2019,c21,a2101,a2108,a2109,a2110,a2111,a2112,a2113,a2114,a2115,a2117,a2118,a2119,a2120,c22,a2201,a2208,a2209,a2210,a2211,a2212,a2213,a2214,a2215,a2217,a2218,a2219,a2220,a2221,c23,a2301,a2308,a2309,a2310,a2311,a2312,a2313,a2314,a2315,a2317,a2318,a2319,a2320,a2321,c24,a2401,a2408,a2409,a2410,a2411,a2412,a2413,a2414,a2415,a2417,a2418,a2419,a2420,a2421,c25,a2501,a2508,a2509,a2510,a2511,a2512,a2513,a2514,a2515,a2517,a2518,a2519,a2520,a2521,c26,a2601,a2608,a2609,a2610,a2611,a2612,a2613,a2614,a2615,a2617,a2618,a2619,a2620,a2621 end -Base.@pure function Vern9Interp_polyweights(::Type{T}) where T<:CompiledFloats +function Vern9Interp_polyweights(::Type{T}) where T<:CompiledFloats r011 = T(1) r012 = T(-28.330488700617398) r013 = T(257.6535452078578) @@ -3087,157 +3087,157 @@ end function Vern9Interp_polyweights(T::Type) r011 = T(1) - r012 = T(parse(BigFloat,"-28.33048870061739823290767301658881994700")) - r013 = T(parse(BigFloat," 257.6535452078577977252092979905248156497")) - r014 = T(parse(BigFloat,"-1152.154455743457311528752964691951881858")) - r015 = T(parse(BigFloat," 2909.390878345408890936564599116550031880")) - r016 = T(parse(BigFloat,"-4355.005172868188498048946108887283528629")) - r017 = T(parse(BigFloat," 3834.083497036262189455855371796461857871")) - r018 = T(parse(BigFloat,"-1835.419052683407081215583427992189311730")) - r019 = T(parse(BigFloat," 368.7958613829998340610814211036270246107")) - r082 = T(parse(BigFloat," 2.649656243770091212685381903551424676261")) - r083 = T(parse(BigFloat,"-96.30312807816005963630382777245983513008")) - r084 = T(parse(BigFloat," 869.3095462492795755338599928089438369769")) - r085 = T(parse(BigFloat,"-3395.688567551074115525201961265641584358")) - r086 = T(parse(BigFloat," 6796.933987158715680563278170147156885480")) - r087 = T(parse(BigFloat,"-7340.848417712071304684606060804637321789")) - r088 = T(parse(BigFloat," 4082.848896992365666259441580054990759905")) - r089 = T(parse(BigFloat,"-919.2934944890586676320942978986329899642")) - r092 = T(parse(BigFloat,"-1.563945181928732780647121505551017046606")) - r093 = T(parse(BigFloat," 56.84239739272860000194549791973820565214")) - r094 = T(parse(BigFloat,"-513.1052300304284642178552372517916694426")) - r095 = T(parse(BigFloat," 2004.286702110323162741493515173880535381")) - r096 = T(parse(BigFloat,"-4011.853305913929339500285683507736138334")) - r097 = T(parse(BigFloat," 4332.895839278586189971336003691596594090")) - r098 = T(parse(BigFloat,"-2409.879347937144606091337260195738587773")) - r099 = T(parse(BigFloat," 542.6079835318221405169412532400889768401")) - r102 = T(parse(BigFloat,"-.8627103334967223830653368770735555216700")) - r103 = T(parse(BigFloat," 31.35565375185173442495465167501846267906")) - r104 = T(parse(BigFloat,"-283.0413682227354209126847112083546012674")) - r105 = T(parse(BigFloat," 1105.613463426006937052739159664962261462")) - r106 = T(parse(BigFloat,"-2213.036200678452629288185991597653042989")) - r107 = T(parse(BigFloat," 2390.131097754120588994847482867886207858")) - r108 = T(parse(BigFloat,"-1329.348266146873716496636094950745123424")) - r109 = T(parse(BigFloat," 299.3158071265785138462868993727082901209")) - r112 = T(parse(BigFloat,"-1.520295337901214839055193576160469820911")) - r113 = T(parse(BigFloat," 55.25592121120227100440616045452813504748")) - r114 = T(parse(BigFloat,"-498.7844190970740738969945498750124435385")) - r115 = T(parse(BigFloat," 1948.346888525776056658403461666308795237")) - r116 = T(parse(BigFloat,"-3899.882136407551390287649940376076923682")) - r117 = T(parse(BigFloat," 4211.964345158858030803618536151121927765")) - r118 = T(parse(BigFloat,"-2342.619408856117128087568672414857706561")) - r119 = T(parse(BigFloat," 527.4637482204278644179968961638568925209")) - r122 = T(parse(BigFloat,"-3.846938844125523400516071820264700141179")) - r123 = T(parse(BigFloat," 139.8189840986840520353362018994734906611")) - r124 = T(parse(BigFloat,"-1262.118687621600386514715930156791825893")) - r125 = T(parse(BigFloat," 4930.075848057311658057235318456802793199")) - r126 = T(parse(BigFloat,"-9868.219486069539059368988308801366826185")) - r127 = T(parse(BigFloat," 10657.90892434886730229746304583865145121")) - r128 = T(parse(BigFloat,"-5927.738759872814112912292792695856187255")) - r129 = T(parse(BigFloat," 1334.688551172190921099749059976639173619")) - r132 = T(parse(BigFloat,"-.3942713061200141454309326713125653612517")) - r133 = T(parse(BigFloat," 14.32999476067649707020689155180345562459")) - r134 = T(parse(BigFloat,"-129.3540665994558117853022852051786116929")) - r135 = T(parse(BigFloat," 505.2816077002517600897861155496606850457")) - r136 = T(parse(BigFloat,"-1011.390080139433268878243655218566636574")) - r137 = T(parse(BigFloat," 1092.325051781891697669369143688906543465")) - r138 = T(parse(BigFloat,"-607.5317019302810290917918493845279272648")) - r139 = T(parse(BigFloat," 136.7917244480423273434147193694336909663")) - r142 = T(parse(BigFloat,"-.9233145622082101394378429409444333268499")) - r143 = T(parse(BigFloat," 33.55834582309798808260613735851232640640")) - r144 = T(parse(BigFloat,"-302.9246397549735936661321348695774835448")) - r145 = T(parse(BigFloat," 1183.281306967867553342903125095128753568")) - r146 = T(parse(BigFloat,"-2368.498986790111516106072390247333149007")) - r147 = T(parse(BigFloat," 2558.034559755808027369106332027405169828")) - r148 = T(parse(BigFloat,"-1422.733175577880214903071122439856598476")) - r149 = T(parse(BigFloat," 320.3423358787481875842587982911148385364")) - r152 = T(parse(BigFloat,"-.2068862802930053801253649628830330891017")) - r153 = T(parse(BigFloat," 7.519388975651662772174695012120581518594")) - r154 = T(parse(BigFloat,"-67.87605708082904058354114755731111898667")) - r155 = T(parse(BigFloat," 265.1367996984150421661637988925923843021")) - r156 = T(parse(BigFloat,"-530.7074807559025368587558119659212235622")) - r157 = T(parse(BigFloat," 573.1765495641490277116961329189087439579")) - r158 = T(parse(BigFloat,"-318.7905688834868978004500126002971837241")) - r159 = T(parse(BigFloat," 71.77882490212657594681492031347005327988")) - r172 = T(parse(BigFloat,"-.4472441906744099441704338175964823026105")) - r173 = T(parse(BigFloat," 16.44684676010503791623763886833381020592")) - r174 = T(parse(BigFloat,"-154.4086105921295528355180056633078150675")) - r175 = T(parse(BigFloat," 641.8986298540248497333509289273669726482")) - r176 = T(parse(BigFloat,"-1391.939225687982391028602609567895699003")) - r177 = T(parse(BigFloat," 1643.890568302952013019278202625162156841")) - r178 = T(parse(BigFloat,"-1004.065297223317845596795060426393517046")) - r179 = T(parse(BigFloat," 248.6243327770222987362193390543305737239")) - r182 = T(parse(BigFloat,"-.1507876007899797948720901584434839156279")) - r183 = T(parse(BigFloat," 5.527328824824632235316362126620825363280")) - r184 = T(parse(BigFloat,"-51.33833743084618751433903968701557585387")) - r185 = T(parse(BigFloat," 209.6022002703280347991393999433060881829")) - r186 = T(parse(BigFloat,"-442.7692650421825928714839983614217797969")) - r187 = T(parse(BigFloat," 505.0579312588052893780948070449787925777")) - r188 = T(parse(BigFloat,"-295.6336410615619366143935619944592839974")) - r189 = T(parse(BigFloat," 69.70457078142274038253812108643441743987")) - r192 = T(parse(BigFloat,"-.6413652207435296452288504944964177537185")) - r193 = T(parse(BigFloat," 23.51013248624684600263471193689787394701")) - r194 = T(parse(BigFloat,"-218.3642683246972281497485359238725613162")) - r195 = T(parse(BigFloat," 891.5292818535365634586829868055833114383")) - r196 = T(parse(BigFloat,"-1883.290177206007885518558760085145850658")) - r197 = T(parse(BigFloat," 2148.230954488399755970660772306573864434")) - r198 = T(parse(BigFloat,"-1257.458401521712336970840850120592935471")) - r199 = T(parse(BigFloat," 296.4838434449778148523985255750527153802")) - r202 = T(parse(BigFloat," 1.810729313444845732964058528284532356045")) - r203 = T(parse(BigFloat,"-66.37479657295337371220255196726289169374")) - r204 = T(parse(BigFloat," 616.4952025401106511929691356878863855003")) - r205 = T(parse(BigFloat,"-2517.003030777322559684753470471663859295")) - r206 = T(parse(BigFloat," 5316.984175781033401491488704359579721604")) - r207 = T(parse(BigFloat,"-6064.976140789574108556866601189158423779")) - r208 = T(parse(BigFloat," 3550.109538888391317555902194852386816092")) - r209 = T(parse(BigFloat,"-837.0456783831301740195014698000522807852")) - r212 = T(parse(BigFloat,".5176008760353717918864555990277480363987e-1")) - r213 = T(parse(BigFloat,"-1.897337862580348756406065418550014243949")) - r214 = T(parse(BigFloat," 17.62264820793629244181715147639285955422")) - r215 = T(parse(BigFloat,"-71.94907400242465946110661282550878163878")) - r216 = T(parse(BigFloat," 151.9871383765666045085018751235590550206")) - r217 = T(parse(BigFloat,"-173.3686498747860565970136435029707518663")) - r218 = T(parse(BigFloat," 101.4806461521468075879782291473158292931")) - r219 = T(parse(BigFloat,"-23.92713108446217690295957956014097092250")) - r222 = T(parse(BigFloat," 31.32178255668799909977422939838912846070")) - r223 = T(parse(BigFloat,"-355.6570858339106059687054319211280026146")) - r224 = T(parse(BigFloat," 1752.685282489515979253875884672206842255")) - r225 = T(parse(BigFloat,"-4708.092293138363367969732154806019707156")) - r226 = T(parse(BigFloat," 7370.900776193488713149861391844801840850")) - r227 = T(parse(BigFloat,"-6716.504964764565347011489385051202629762")) - r228 = T(parse(BigFloat," 3303.940398161185772296756776169088470785")) - r229 = T(parse(BigFloat,"-678.5938956640391428503413103061359428182")) - r232 = T(parse(BigFloat,"-2.719607334185924760747802644504744092917")) - r233 = T(parse(BigFloat," 86.64045615858264001154848875638486632034")) - r234 = T(parse(BigFloat,"-454.1926030939030807863651114984001402596")) - r235 = T(parse(BigFloat," 1014.749221100543425314268817989377200147")) - r236 = T(parse(BigFloat,"-1133.583456714543865890388885909333783663")) - r237 = T(parse(BigFloat," 610.4671827718666569168001429679645990946")) - r238 = T(parse(BigFloat,"-109.0233499449543802317396567002119357593")) - r239 = T(parse(BigFloat,"-12.33784294340547057337599296127606178639")) - r242 = T(parse(BigFloat," 3.177214801432923432265738869490200556403")) - r243 = T(parse(BigFloat,"-113.8098697715142983214434051918276259885")) - r244 = T(parse(BigFloat," 978.0935981825675014833003847211971070224")) - r245 = T(parse(BigFloat,"-3575.129377623670076451027372711378100786")) - r246 = T(parse(BigFloat," 6764.361519838450570830405988615992045681")) - r247 = T(parse(BigFloat,"-6987.161043852012362644872233028628887679")) - r248 = T(parse(BigFloat," 3751.905762789571137088934326513342858381")) - r249 = T(parse(BigFloat,"-821.4378043648253954175634277881875971878")) - r252 = T(parse(BigFloat," .8772843083465530069477626269697233842708")) - r253 = T(parse(BigFloat,"-31.51810423988375104361582759389916060143")) - r254 = T(parse(BigFloat," 273.1229151353221133842213845530391043248")) - r255 = T(parse(BigFloat,"-993.2198643101781966584366870874238565290")) - r256 = T(parse(BigFloat," 1787.888078312663987193988385659681964836")) - r257 = T(parse(BigFloat,"-1677.394835799640950953367739332661886275")) - r258 = T(parse(BigFloat," 781.3579535062687952504707744453846824540")) - r259 = T(parse(BigFloat,"-141.1134269128985501802080532710905715931")) - r262 = T(parse(BigFloat," 1.719427581798715782378897599231938082126")) - r263 = T(parse(BigFloat,"-62.89867309250732184389962568482931880335")) - r264 = T(parse(BigFloat," 580.3335507873980391019057196688995930872")) - r265 = T(parse(BigFloat,"-2348.110620506760958600472968113883922730")) - r266 = T(parse(BigFloat," 4921.119298612906015908637628774963068611")) - r267 = T(parse(BigFloat,"-5597.912448707916639109910311016358007839")) - r268 = T(parse(BigFloat," 3288.597775149621789973016480733216881572")) - r269 = T(parse(BigFloat,"-782.8483098245396412116558219612402319811")) + r012 = big"-28.33048870061739823290767301658881994700" + r013 = big" 257.6535452078577977252092979905248156497" + r014 = big"-1152.154455743457311528752964691951881858" + r015 = big" 2909.390878345408890936564599116550031880" + r016 = big"-4355.005172868188498048946108887283528629" + r017 = big" 3834.083497036262189455855371796461857871" + r018 = big"-1835.419052683407081215583427992189311730" + r019 = big" 368.7958613829998340610814211036270246107" + r082 = big" 2.649656243770091212685381903551424676261" + r083 = big"-96.30312807816005963630382777245983513008" + r084 = big" 869.3095462492795755338599928089438369769" + r085 = big"-3395.688567551074115525201961265641584358" + r086 = big" 6796.933987158715680563278170147156885480" + r087 = big"-7340.848417712071304684606060804637321789" + r088 = big" 4082.848896992365666259441580054990759905" + r089 = big"-919.2934944890586676320942978986329899642" + r092 = big"-1.563945181928732780647121505551017046606" + r093 = big" 56.84239739272860000194549791973820565214" + r094 = big"-513.1052300304284642178552372517916694426" + r095 = big" 2004.286702110323162741493515173880535381" + r096 = big"-4011.853305913929339500285683507736138334" + r097 = big" 4332.895839278586189971336003691596594090" + r098 = big"-2409.879347937144606091337260195738587773" + r099 = big" 542.6079835318221405169412532400889768401" + r102 = big"-.8627103334967223830653368770735555216700" + r103 = big" 31.35565375185173442495465167501846267906" + r104 = big"-283.0413682227354209126847112083546012674" + r105 = big" 1105.613463426006937052739159664962261462" + r106 = big"-2213.036200678452629288185991597653042989" + r107 = big" 2390.131097754120588994847482867886207858" + r108 = big"-1329.348266146873716496636094950745123424" + r109 = big" 299.3158071265785138462868993727082901209" + r112 = big"-1.520295337901214839055193576160469820911" + r113 = big" 55.25592121120227100440616045452813504748" + r114 = big"-498.7844190970740738969945498750124435385" + r115 = big" 1948.346888525776056658403461666308795237" + r116 = big"-3899.882136407551390287649940376076923682" + r117 = big" 4211.964345158858030803618536151121927765" + r118 = big"-2342.619408856117128087568672414857706561" + r119 = big" 527.4637482204278644179968961638568925209" + r122 = big"-3.846938844125523400516071820264700141179" + r123 = big" 139.8189840986840520353362018994734906611" + r124 = big"-1262.118687621600386514715930156791825893" + r125 = big" 4930.075848057311658057235318456802793199" + r126 = big"-9868.219486069539059368988308801366826185" + r127 = big" 10657.90892434886730229746304583865145121" + r128 = big"-5927.738759872814112912292792695856187255" + r129 = big" 1334.688551172190921099749059976639173619" + r132 = big"-.3942713061200141454309326713125653612517" + r133 = big" 14.32999476067649707020689155180345562459" + r134 = big"-129.3540665994558117853022852051786116929" + r135 = big" 505.2816077002517600897861155496606850457" + r136 = big"-1011.390080139433268878243655218566636574" + r137 = big" 1092.325051781891697669369143688906543465" + r138 = big"-607.5317019302810290917918493845279272648" + r139 = big" 136.7917244480423273434147193694336909663" + r142 = big"-.9233145622082101394378429409444333268499" + r143 = big" 33.55834582309798808260613735851232640640" + r144 = big"-302.9246397549735936661321348695774835448" + r145 = big" 1183.281306967867553342903125095128753568" + r146 = big"-2368.498986790111516106072390247333149007" + r147 = big" 2558.034559755808027369106332027405169828" + r148 = big"-1422.733175577880214903071122439856598476" + r149 = big" 320.3423358787481875842587982911148385364" + r152 = big"-.2068862802930053801253649628830330891017" + r153 = big" 7.519388975651662772174695012120581518594" + r154 = big"-67.87605708082904058354114755731111898667" + r155 = big" 265.1367996984150421661637988925923843021" + r156 = big"-530.7074807559025368587558119659212235622" + r157 = big" 573.1765495641490277116961329189087439579" + r158 = big"-318.7905688834868978004500126002971837241" + r159 = big" 71.77882490212657594681492031347005327988" + r172 = big"-.4472441906744099441704338175964823026105" + r173 = big" 16.44684676010503791623763886833381020592" + r174 = big"-154.4086105921295528355180056633078150675" + r175 = big" 641.8986298540248497333509289273669726482" + r176 = big"-1391.939225687982391028602609567895699003" + r177 = big" 1643.890568302952013019278202625162156841" + r178 = big"-1004.065297223317845596795060426393517046" + r179 = big" 248.6243327770222987362193390543305737239" + r182 = big"-.1507876007899797948720901584434839156279" + r183 = big" 5.527328824824632235316362126620825363280" + r184 = big"-51.33833743084618751433903968701557585387" + r185 = big" 209.6022002703280347991393999433060881829" + r186 = big"-442.7692650421825928714839983614217797969" + r187 = big" 505.0579312588052893780948070449787925777" + r188 = big"-295.6336410615619366143935619944592839974" + r189 = big" 69.70457078142274038253812108643441743987" + r192 = big"-.6413652207435296452288504944964177537185" + r193 = big" 23.51013248624684600263471193689787394701" + r194 = big"-218.3642683246972281497485359238725613162" + r195 = big" 891.5292818535365634586829868055833114383" + r196 = big"-1883.290177206007885518558760085145850658" + r197 = big" 2148.230954488399755970660772306573864434" + r198 = big"-1257.458401521712336970840850120592935471" + r199 = big" 296.4838434449778148523985255750527153802" + r202 = big" 1.810729313444845732964058528284532356045" + r203 = big"-66.37479657295337371220255196726289169374" + r204 = big" 616.4952025401106511929691356878863855003" + r205 = big"-2517.003030777322559684753470471663859295" + r206 = big" 5316.984175781033401491488704359579721604" + r207 = big"-6064.976140789574108556866601189158423779" + r208 = big" 3550.109538888391317555902194852386816092" + r209 = big"-837.0456783831301740195014698000522807852" + r212 = big".5176008760353717918864555990277480363987e-1" + r213 = big"-1.897337862580348756406065418550014243949" + r214 = big" 17.62264820793629244181715147639285955422" + r215 = big"-71.94907400242465946110661282550878163878" + r216 = big" 151.9871383765666045085018751235590550206" + r217 = big"-173.3686498747860565970136435029707518663" + r218 = big" 101.4806461521468075879782291473158292931" + r219 = big"-23.92713108446217690295957956014097092250" + r222 = big" 31.32178255668799909977422939838912846070" + r223 = big"-355.6570858339106059687054319211280026146" + r224 = big" 1752.685282489515979253875884672206842255" + r225 = big"-4708.092293138363367969732154806019707156" + r226 = big" 7370.900776193488713149861391844801840850" + r227 = big"-6716.504964764565347011489385051202629762" + r228 = big" 3303.940398161185772296756776169088470785" + r229 = big"-678.5938956640391428503413103061359428182" + r232 = big"-2.719607334185924760747802644504744092917" + r233 = big" 86.64045615858264001154848875638486632034" + r234 = big"-454.1926030939030807863651114984001402596" + r235 = big" 1014.749221100543425314268817989377200147" + r236 = big"-1133.583456714543865890388885909333783663" + r237 = big" 610.4671827718666569168001429679645990946" + r238 = big"-109.0233499449543802317396567002119357593" + r239 = big"-12.33784294340547057337599296127606178639" + r242 = big" 3.177214801432923432265738869490200556403" + r243 = big"-113.8098697715142983214434051918276259885" + r244 = big" 978.0935981825675014833003847211971070224" + r245 = big"-3575.129377623670076451027372711378100786" + r246 = big" 6764.361519838450570830405988615992045681" + r247 = big"-6987.161043852012362644872233028628887679" + r248 = big" 3751.905762789571137088934326513342858381" + r249 = big"-821.4378043648253954175634277881875971878" + r252 = big" .8772843083465530069477626269697233842708" + r253 = big"-31.51810423988375104361582759389916060143" + r254 = big" 273.1229151353221133842213845530391043248" + r255 = big"-993.2198643101781966584366870874238565290" + r256 = big" 1787.888078312663987193988385659681964836" + r257 = big"-1677.394835799640950953367739332661886275" + r258 = big" 781.3579535062687952504707744453846824540" + r259 = big"-141.1134269128985501802080532710905715931" + r262 = big" 1.719427581798715782378897599231938082126" + r263 = big"-62.89867309250732184389962568482931880335" + r264 = big" 580.3335507873980391019057196688995930872" + r265 = big"-2348.110620506760958600472968113883922730" + r266 = big" 4921.119298612906015908637628774963068611" + r267 = big"-5597.912448707916639109910311016358007839" + r268 = big" 3288.597775149621789973016480733216881572" + r269 = big"-782.8483098245396412116558219612402319811" return r011,r012,r013,r014,r015,r016,r017,r018,r019,r082,r083,r084,r085,r086,r087,r088,r089,r092,r093,r094,r095,r096,r097,r098,r099,r102,r103,r104,r105,r106,r107,r108,r109,r112,r113,r114,r115,r116,r117,r118,r119,r122,r123,r124,r125,r126,r127,r128,r129,r132,r133,r134,r135,r136,r137,r138,r139,r142,r143,r144,r145,r146,r147,r148,r149,r152,r153,r154,r155,r156,r157,r158,r159,r172,r173,r174,r175,r176,r177,r178,r179,r182,r183,r184,r185,r186,r187,r188,r189,r192,r193,r194,r195,r196,r197,r198,r199,r202,r203,r204,r205,r206,r207,r208,r209,r212,r213,r214,r215,r216,r217,r218,r219,r222,r223,r224,r225,r226,r227,r228,r229,r232,r233,r234,r235,r236,r237,r238,r239,r242,r243,r244,r245,r246,r247,r248,r249,r252,r253,r254,r255,r256,r257,r258,r259,r262,r263,r264,r265,r266,r267,r268,r269 end