From 63fee13d471c5494c385d04840e509813a631060 Mon Sep 17 00:00:00 2001 From: Steven Roberts Date: Thu, 26 Oct 2023 16:50:20 -0700 Subject: [PATCH 01/10] Add 3rd order Shu-Osher method --- CHANGELOG.md | 3 +- doc/arkode/guide/source/Butcher.rst | 33 ++++++++++++++++++ doc/arkode/guide/source/Introduction.rst | 3 +- .../figs/arkode/shu_osher_erk_stab_region.png | Bin 0 -> 24768 bytes doc/shared/sundials.bib | 23 ++++++++++++ include/arkode/arkode_butcher_erk.h | 3 +- src/arkode/arkode_butcher_erk.def | 24 +++++++++++++ 7 files changed, 86 insertions(+), 3 deletions(-) create mode 100644 doc/shared/figs/arkode/shu_osher_erk_stab_region.png diff --git a/CHANGELOG.md b/CHANGELOG.md index 4b1c49a4a2..ef5afcc3d2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -27,7 +27,8 @@ Fixed scaling bug in `SUNMatScaleAddI_Sparse` for non-square matrices. Fixed missing soversions in some `SUNLinearSolver` and `SUNNonlinearSolver` CMake targets. -Added the fourth order ERK method `ARKODE_SOFRONIOU_SPALETTA_5_3_4`. +Added the third order ERK method `ARKODE_SHU_OSHER_3_2_3` and the fourth order +ERK method `ARKODE_SOFRONIOU_SPALETTA_5_3_4`. ## Changes to SUNDIALS in release 6.6.1 diff --git a/doc/arkode/guide/source/Butcher.rst b/doc/arkode/guide/source/Butcher.rst index c9166aa55a..98cec7d6c2 100644 --- a/doc/arkode/guide/source/Butcher.rst +++ b/doc/arkode/guide/source/Butcher.rst @@ -297,6 +297,39 @@ method from :cite:p:`KenCarp:03`). region is outlined in blue; the embedding's region is in red. +Shu-Osher-3-2-3 +^^^^^^^^^^^^^^^^^^^^^^^^^^ + +.. index:: Shu-Osher-3-2-3 ERK method + +Accessible via the constant ``ARKODE_SHU_OSHER_3_2_3`` to +:c:func:`ARKStepSetTableNum`, :c:func:`ERKStepSetTableNum` or +:c:func:`ARKodeButcherTable_LoadERK`. +Accessible via the string ``"ARKODE_SHU_OSHER_3_2_3"`` to +:c:func:`ARKStepSetTableName`, :c:func:`ERKStepSetTableName` or +:c:func:`ARKodeButcherTable_LoadERKByName`. +(from :cite:p:`ShOs:88` with embedding from :cite:p:`FCS:2021`). + +.. math:: + + \renewcommand{\arraystretch}{1.5} + \begin{array}{r|ccc} + 0 & 0 & 0 & 0 \\ + 1 & 0 & 0 & 0 \\ + \frac{1}{2} & \frac{1}{4} & \frac{1}{4} & 0 \\ + \hline + 3 & \frac{1}{6} & \frac{1}{6} & \frac{2}{3} \\ + 2 & \frac{291485418878409}{1000000000000000} & \frac{291485418878409}{1000000000000000} & \frac{208514581121591}{500000000000000} + \end{array} + +.. figure:: /figs/arkode/shu_osher_erk_stab_region.png + :scale: 50 % + :align: center + + Linear stability region for the Shu-Osher method. The method's + region is outlined in blue; the embedding's region is in red. + + .. _Butcher.Knoth_Wolke: diff --git a/doc/arkode/guide/source/Introduction.rst b/doc/arkode/guide/source/Introduction.rst index 4fafa4d0bb..8bea3c5196 100644 --- a/doc/arkode/guide/source/Introduction.rst +++ b/doc/arkode/guide/source/Introduction.rst @@ -153,7 +153,8 @@ Fixed scaling bug in ``SUNMatScaleAddI_Sparse`` for non-square matrices. Fixed missing soversions in some ``SUNLinearSolver`` and ``SUNNonlinearSolver`` CMake targets. -Added the fourth order ERK method ``ARKODE_SOFRONIOU_SPALETTA_5_3_4``. +Added the third order ERK method ``ARKODE_SHU_OSHER_3_2_3`` and the fourth order +ERK method ``ARKODE_SOFRONIOU_SPALETTA_5_3_4``. Changes in v5.6.1 ----------------- diff --git a/doc/shared/figs/arkode/shu_osher_erk_stab_region.png b/doc/shared/figs/arkode/shu_osher_erk_stab_region.png new file mode 100644 index 0000000000000000000000000000000000000000..25c75d6ed8cc9eb3921dfb22d5587850dcf37eb6 GIT binary patch literal 24768 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 = 3; + B->p = 2; + + B->A[1][0] = RCONST(1.0); + B->A[2][0] = RCONST(1.0)/RCONST(4.0); + B->A[2][1] = RCONST(1.0)/RCONST(4.0); + + B->b[0] = RCONST(1.0)/RCONST(6.0); + B->b[1] = RCONST(1.0)/RCONST(6.0); + B->b[2] = RCONST(2.0)/RCONST(3.0); + + B->d[0] = RCONST(291485418878409.0)/RCONST(1.0e15); + B->d[1] = RCONST(291485418878409.0)/RCONST(1.0e15); + B->d[2] = RCONST(208514581121591.0)/RCONST(5.0e14); + + B->c[1] = RCONST(1.0); + B->c[2] = RCONST(1.0)/RCONST(2.0); + + return B; + }) + ARK_BUTCHER_TABLE(ARKODE_SOFRONIOU_SPALETTA_5_3_4, { /* Sofroniou-Spaletta-ERK */ ARKodeButcherTable B = ARKodeButcherTable_Alloc(5, SUNTRUE); B->q = 4; From 7472714885d1cac3a2c651c9f4a118e23651439b Mon Sep 17 00:00:00 2001 From: "Daniel R. Reynolds" Date: Fri, 27 Oct 2023 10:23:00 -0500 Subject: [PATCH 02/10] Added high-order embedded ERK methods by Verner, and fixed some minor items in ARKODE Butcher table documentation --- CHANGELOG.md | 7 +- doc/arkode/guide/source/Butcher.rst | 461 ++++++++++++++---- doc/arkode/guide/source/Constants.rst | 22 + doc/arkode/guide/source/Introduction.rst | 7 +- .../figs/arkode/v65b_erk_stab_region.png | Bin 0 -> 24309 bytes .../figs/arkode/v76_erk_stab_region.png | Bin 0 -> 24266 bytes .../figs/arkode/v87_erk_stab_region.png | Bin 0 -> 24575 bytes .../figs/arkode/v98_erk_stab_region.png | Bin 0 -> 24359 bytes doc/shared/sundials.bib | 17 +- include/arkode/arkode_arkstep.h | 2 + include/arkode/arkode_butcher_erk.h | 8 +- include/arkode/arkode_erkstep.h | 2 + src/arkode/arkode_butcher_erk.def | 356 +++++++++++++- .../arkode/CXX_serial/ark_test_butcher.cpp | 4 +- .../arkode/CXX_serial/ark_test_butcher.out | 24 + 15 files changed, 795 insertions(+), 115 deletions(-) create mode 100644 doc/shared/figs/arkode/v65b_erk_stab_region.png create mode 100644 doc/shared/figs/arkode/v76_erk_stab_region.png create mode 100644 doc/shared/figs/arkode/v87_erk_stab_region.png create mode 100644 doc/shared/figs/arkode/v98_erk_stab_region.png diff --git a/CHANGELOG.md b/CHANGELOG.md index ef5afcc3d2..d9ff813a7b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -27,8 +27,11 @@ Fixed scaling bug in `SUNMatScaleAddI_Sparse` for non-square matrices. Fixed missing soversions in some `SUNLinearSolver` and `SUNNonlinearSolver` CMake targets. -Added the third order ERK method `ARKODE_SHU_OSHER_3_2_3` and the fourth order -ERK method `ARKODE_SOFRONIOU_SPALETTA_5_3_4`. +Added the third order ERK method `ARKODE_SHU_OSHER_3_2_3` the fourth order +ERK method `ARKODE_SOFRONIOU_SPALETTA_5_3_4`, the sixth order ERK method +`ARKODE_VERNER_9_5_6`, the seventh order ERK method `ARKODE_VERNER_10_6_7`, +the eighth order ERK method `ARKODE_VERNER_13_7_8`, and the ninth order ERK +method `ARKODE_VERNER_16_8_9`. ## Changes to SUNDIALS in release 6.6.1 diff --git a/doc/arkode/guide/source/Butcher.rst b/doc/arkode/guide/source/Butcher.rst index 98cec7d6c2..47fc67ce32 100644 --- a/doc/arkode/guide/source/Butcher.rst +++ b/doc/arkode/guide/source/Butcher.rst @@ -308,7 +308,7 @@ Accessible via the constant ``ARKODE_SHU_OSHER_3_2_3`` to Accessible via the string ``"ARKODE_SHU_OSHER_3_2_3"`` to :c:func:`ARKStepSetTableName`, :c:func:`ERKStepSetTableName` or :c:func:`ARKodeButcherTable_LoadERKByName`. -(from :cite:p:`ShOs:88` with embedding from :cite:p:`FCS:2021`). +(from :cite:p:`ShOs:88` with embedding from :cite:p:`FCS:21`). .. math:: @@ -388,6 +388,7 @@ Accessible via the string ``"ARKODE_SOFRONIOU_SPALETTA_5_3_4"`` to \frac{3}{5} & -\frac{3}{20} & \frac{3}{4} & 0 & 0 & 0 \\ 1 & \frac{19}{44} & -\frac{15}{44} & \frac{10}{11} & 0 & 0 \\ 1 & \frac{11}{72} & \frac{25}{72} & \frac{25}{72} & \frac{11}{72} & 0 \\ + \hline 4 & \frac{11}{72} & \frac{25}{72} & \frac{25}{72} & \frac{11}{72} & 0 \\ 3 & \frac{1251515}{8970912} & \frac{3710105}{8970912} & \frac{2519695}{8970912} & \frac{61105}{8970912} & \frac{119041}{747576} \\ \end{array} @@ -500,21 +501,27 @@ Accessible via the string ``"ARKODE_ARK437L2SA_ERK_7_3_4"`` to This is the explicit portion of the 4th order additive method (the explicit portion of the ARK4(3)7L[2]SA method from :cite:p:`KenCarp:19`). -.. math:: +.. only:: html - \renewcommand{\arraystretch}{1.5} - \begin{array}{r|ccccccc} - 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ - \frac{247}{1000} & \frac{247}{1000} & 0 & 0 & 0 & 0 & 0 & 0 \\ - \frac{4276536705230}{10142255878289} & \frac{247}{4000} & \frac{2694949928731}{7487940209513} & 0 & 0 & 0 & 0 & 0 \\ - \frac{67}{200} & \frac{464650059369}{8764239774964} & \frac{878889893998}{2444806327765} & -\frac{952945855348}{12294611323341} & 0 & 0 & 0 & 0 \\ - \frac{3}{40} & \frac{476636172619}{8159180917465} & -\frac{1271469283451}{7793814740893} & -\frac{859560642026}{4356155882851} & \frac{1723805262919}{4571918432560} & 0 & 0 & 0 \\ - \frac{7}{10} & \frac{6338158500785}{11769362343261} & -\frac{4970555480458}{10924838743837} & \frac{3326578051521}{2647936831840} & -\frac{880713585975}{1841400956686} & -\frac{1428733748635}{8843423958496} & 0 & 0 \\ - 1 & \frac{760814592956}{3276306540349} & \frac{760814592956}{3276306540349} & -\frac{47223648122716}{6934462133451} & \frac{71187472546993}{9669769126921} & -\frac{13330509492149}{9695768672337} & \frac{11565764226357}{8513123442827} & 0 \\ - \hline - 4 & 0 & 0 & \frac{9164257142617}{17756377923965} & -\frac{10812980402763}{74029279521829} & \frac{1335994250573}{5691609445217} & \frac{2273837961795}{8368240463276} & \frac{247}{2000} \\ - 3 & 0 & 0 & \frac{4469248916618}{8635866897933} & -\frac{621260224600}{4094290005349} & \frac{696572312987}{2942599194819} & \frac{1532940081127}{5565293938103} & \frac{2441}{20000} - \end{array} + .. math:: + + \renewcommand{\arraystretch}{1.5} + \begin{array}{r|ccccccc} + 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ + \frac{247}{1000} & \frac{247}{1000} & 0 & 0 & 0 & 0 & 0 & 0 \\ + \frac{4276536705230}{10142255878289} & \frac{247}{4000} & \frac{2694949928731}{7487940209513} & 0 & 0 & 0 & 0 & 0 \\ + \frac{67}{200} & \frac{464650059369}{8764239774964} & \frac{878889893998}{2444806327765} & -\frac{952945855348}{12294611323341} & 0 & 0 & 0 & 0 \\ + \frac{3}{40} & \frac{476636172619}{8159180917465} & -\frac{1271469283451}{7793814740893} & -\frac{859560642026}{4356155882851} & \frac{1723805262919}{4571918432560} & 0 & 0 & 0 \\ + \frac{7}{10} & \frac{6338158500785}{11769362343261} & -\frac{4970555480458}{10924838743837} & \frac{3326578051521}{2647936831840} & -\frac{880713585975}{1841400956686} & -\frac{1428733748635}{8843423958496} & 0 & 0 \\ + 1 & \frac{760814592956}{3276306540349} & \frac{760814592956}{3276306540349} & -\frac{47223648122716}{6934462133451} & \frac{71187472546993}{9669769126921} & -\frac{13330509492149}{9695768672337} & \frac{11565764226357}{8513123442827} & 0 \\ + \hline + 4 & 0 & 0 & \frac{9164257142617}{17756377923965} & -\frac{10812980402763}{74029279521829} & \frac{1335994250573}{5691609445217} & \frac{2273837961795}{8368240463276} & \frac{247}{2000} \\ + 3 & 0 & 0 & \frac{4469248916618}{8635866897933} & -\frac{621260224600}{4094290005349} & \frac{696572312987}{2942599194819} & \frac{1532940081127}{5565293938103} & \frac{2441}{20000} + \end{array} + +.. only:: latex + + The Butcher table is too large to fit in the PDF version of this documentation. Please see the HTML documentation for the table coefficients. .. figure:: /figs/arkode/stab_region_34.png :scale: 50 % @@ -709,22 +716,29 @@ Accessible via the string ``"ARKODE_ARK548L2SA_ERK_8_4_5"`` to This is the explicit portion of the default 5th order additive method (the explicit portion of the ARK5(4)8L[2]SA method from :cite:p:`KenCarp:03`). -.. math:: +.. only:: html + + .. math:: + + \renewcommand{\arraystretch}{1.5} + \begin{array}{r|cccccccc} + 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ + \frac{41}{100} & \frac{41}{100} & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ + \frac{2935347310677}{11292855782101} & \frac{367902744464}{2072280473677} & \frac{677623207551}{8224143866563} & 0 & 0 & 0 & 0 & 0 & 0 \\ + \frac{1426016391358}{7196633302097} & \frac{1268023523408}{10340822734521} & 0 & \frac{1029933939417}{13636558850479} & 0 & 0 & 0 & 0 & 0 \\ + \frac{92}{100} & \frac{14463281900351}{6315353703477} & 0 & \frac{66114435211212}{5879490589093} & -\frac{54053170152839}{4284798021562} & 0 & 0 & 0 & 0 \\ + \frac{24}{100} & \frac{14090043504691}{34967701212078} & 0 & \frac{15191511035443}{11219624916014} & -\frac{18461159152457}{12425892160975} & -\frac{281667163811}{9011619295870} & 0 & 0 & 0 \\ + \frac{3}{5} & \frac{19230459214898}{13134317526959} & 0 & \frac{21275331358303}{2942455364971} & -\frac{38145345988419}{4862620318723} & -\frac{1}{8} & -\frac{1}{8} & 0 & 0 \\ + 1 & -\frac{19977161125411}{11928030595625} & 0 & -\frac{40795976796054}{6384907823539} & \frac{177454434618887}{12078138498510} & \frac{782672205425}{8267701900261} & -\frac{69563011059811}{9646580694205} & \frac{7356628210526}{4942186776405} & 0 \\ + \hline + 5 & -\frac{872700587467}{9133579230613} & 0 & 0 & \frac{22348218063261}{9555858737531} & -\frac{1143369518992}{8141816002931} & -\frac{39379526789629}{19018526304540} & \frac{32727382324388}{42900044865799} & \frac{41}{200} \\ + 4 & -\frac{975461918565}{9796059967033} & 0 & 0 & \frac{78070527104295}{32432590147079} & -\frac{548382580838}{3424219808633} & -\frac{33438840321285}{15594753105479} & \frac{3629800801594}{4656183773603} & \frac{4035322873751}{18575991585200} + \end{array} + +.. only:: latex + + The Butcher table is too large to fit in the PDF version of this documentation. Please see the HTML documentation for the table coefficients. - \renewcommand{\arraystretch}{1.5} - \begin{array}{r|cccccccc} - 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ - \frac{41}{100} & \frac{41}{100} & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ - \frac{2935347310677}{11292855782101} & \frac{367902744464}{2072280473677} & \frac{677623207551}{8224143866563} & 0 & 0 & 0 & 0 & 0 & 0 \\ - \frac{1426016391358}{7196633302097} & \frac{1268023523408}{10340822734521} & 0 & \frac{1029933939417}{13636558850479} & 0 & 0 & 0 & 0 & 0 \\ - \frac{92}{100} & \frac{14463281900351}{6315353703477} & 0 & \frac{66114435211212}{5879490589093} & -\frac{54053170152839}{4284798021562} & 0 & 0 & 0 & 0 \\ - \frac{24}{100} & \frac{14090043504691}{34967701212078} & 0 & \frac{15191511035443}{11219624916014} & -\frac{18461159152457}{12425892160975} & -\frac{281667163811}{9011619295870} & 0 & 0 & 0 \\ - \frac{3}{5} & \frac{19230459214898}{13134317526959} & 0 & \frac{21275331358303}{2942455364971} & -\frac{38145345988419}{4862620318723} & -\frac{1}{8} & -\frac{1}{8} & 0 & 0 \\ - 1 & -\frac{19977161125411}{11928030595625} & 0 & -\frac{40795976796054}{6384907823539} & \frac{177454434618887}{12078138498510} & \frac{782672205425}{8267701900261} & -\frac{69563011059811}{9646580694205} & \frac{7356628210526}{4942186776405} & 0 \\ - \hline - 5 & -\frac{872700587467}{9133579230613} & 0 & 0 & \frac{22348218063261}{9555858737531} & -\frac{1143369518992}{8141816002931} & -\frac{39379526789629}{19018526304540} & \frac{32727382324388}{42900044865799} & \frac{41}{200} \\ - 4 & -\frac{975461918565}{9796059967033} & 0 & 0 & \frac{78070527104295}{32432590147079} & -\frac{548382580838}{3424219808633} & -\frac{33438840321285}{15594753105479} & \frac{3629800801594}{4656183773603} & \frac{4035322873751}{18575991585200} - \end{array} .. figure:: /figs/arkode/stab_region_9.png :scale: 50 % @@ -754,22 +768,28 @@ Accessible via the string ``"ARKODE_ARK548L2SAb_ERK_8_4_5"`` to This is the explicit portion of the 5th order ARK5(4)8L[2]SA method from :cite:p:`KenCarp:19`. -.. math:: +.. only:: html - \renewcommand{\arraystretch}{1.5} - \begin{array}{r|cccccccc} - 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ - \frac{4}{9} & \frac{4}{9} & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ - \frac{6456083330201}{8509243623797} & \frac{1}{9} & \frac{1183333538310}{1827251437969} & 0 & 0 & 0 & 0 & 0 & 0 \\ - \frac{1632083962415}{14158861528103} & \frac{895379019517}{9750411845327} & \frac{477606656805}{13473228687314} & \frac{-112564739183}{9373365219272} & 0 & 0 & 0 & 0 & 0 \\ - \frac{6365430648612}{17842476412687} & \frac{-4458043123994}{13015289567637} & \frac{-2500665203865}{9342069639922} & \frac{983347055801}{8893519644487} & \frac{2185051477207}{2551468980502} & 0 & 0 & 0 & 0 \\ - \frac{18}{25} & \frac{-167316361917}{17121522574472} & \frac{1605541814917}{7619724128744} & \frac{991021770328}{13052792161721} & \frac{2342280609577}{11279663441611} & \frac{3012424348531}{12792462456678} & 0 & 0 & 0 \\ - \frac{191}{200} & \frac{6680998715867}{14310383562358} & \frac{5029118570809}{3897454228471} & \frac{2415062538259}{6382199904604} & \frac{-3924368632305}{6964820224454} & \frac{-4331110370267}{15021686902756} & \frac{-3944303808049}{11994238218192} & 0 & 0 \\ - 1 & \frac{2193717860234}{3570523412979} & \frac{2193717860234}{3570523412979} & \frac{5952760925747}{18750164281544} & \frac{-4412967128996}{6196664114337} & \frac{4151782504231}{36106512998704} & \frac{572599549169}{6265429158920} & \frac{-457874356192}{11306498036315} & 0 \\ - \hline - 5 & 0 & 0 & \frac{3517720773327}{20256071687669} & \frac{4569610470461}{17934693873752} & \frac{2819471173109}{11655438449929} & \frac{3296210113763}{10722700128969} & \frac{-1142099968913}{5710983926999} & \frac{2}{9} \\ - 4 & 0 & 0 & \frac{520639020421}{8300446712847} & \frac{4550235134915}{17827758688493} & \frac{1482366381361}{6201654941325} & \frac{5551607622171}{13911031047899} & \frac{-5266607656330}{36788968843917} & \frac{1074053359553}{5740751784926} - \end{array} + .. math:: + + \renewcommand{\arraystretch}{1.5} + \begin{array}{r|cccccccc} + 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ + \frac{4}{9} & \frac{4}{9} & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ + \frac{6456083330201}{8509243623797} & \frac{1}{9} & \frac{1183333538310}{1827251437969} & 0 & 0 & 0 & 0 & 0 & 0 \\ + \frac{1632083962415}{14158861528103} & \frac{895379019517}{9750411845327} & \frac{477606656805}{13473228687314} & \frac{-112564739183}{9373365219272} & 0 & 0 & 0 & 0 & 0 \\ + \frac{6365430648612}{17842476412687} & \frac{-4458043123994}{13015289567637} & \frac{-2500665203865}{9342069639922} & \frac{983347055801}{8893519644487} & \frac{2185051477207}{2551468980502} & 0 & 0 & 0 & 0 \\ + \frac{18}{25} & \frac{-167316361917}{17121522574472} & \frac{1605541814917}{7619724128744} & \frac{991021770328}{13052792161721} & \frac{2342280609577}{11279663441611} & \frac{3012424348531}{12792462456678} & 0 & 0 & 0 \\ + \frac{191}{200} & \frac{6680998715867}{14310383562358} & \frac{5029118570809}{3897454228471} & \frac{2415062538259}{6382199904604} & \frac{-3924368632305}{6964820224454} & \frac{-4331110370267}{15021686902756} & \frac{-3944303808049}{11994238218192} & 0 & 0 \\ + 1 & \frac{2193717860234}{3570523412979} & \frac{2193717860234}{3570523412979} & \frac{5952760925747}{18750164281544} & \frac{-4412967128996}{6196664114337} & \frac{4151782504231}{36106512998704} & \frac{572599549169}{6265429158920} & \frac{-457874356192}{11306498036315} & 0 \\ + \hline + 5 & 0 & 0 & \frac{3517720773327}{20256071687669} & \frac{4569610470461}{17934693873752} & \frac{2819471173109}{11655438449929} & \frac{3296210113763}{10722700128969} & \frac{-1142099968913}{5710983926999} & \frac{2}{9} \\ + 4 & 0 & 0 & \frac{520639020421}{8300446712847} & \frac{4550235134915}{17827758688493} & \frac{1482366381361}{6201654941325} & \frac{5551607622171}{13911031047899} & \frac{-5266607656330}{36788968843917} & \frac{1074053359553}{5740751784926} + \end{array} + +.. only:: latex + + The Butcher table is too large to fit in the PDF version of this documentation. Please see the HTML documentation for the table coefficients. .. figure:: /figs/arkode/stab_region_35.png @@ -823,6 +843,107 @@ This is the default 6th order explicit method (from :cite:p:`Ver:78`). +.. _Butcher.Verner-6-5b: + +Verner-9-5-6 +^^^^^^^^^^^^^^ + +.. index:: Verner-9-5-6 ERK method + +Accessible via the constant ``ARKODE_VERNER_9_5_6`` to +:c:func:`ARKStepSetTableNum`, :c:func:`ERKStepSetTableNum` +or :c:func:`ARKodeButcherTable_LoadERK`. +Accessible via the string ``"ARKODE_VERNER_9_5_6"`` to +:c:func:`ARKStepSetTableName`, :c:func:`ERKStepSetTableName` or +:c:func:`ARKodeButcherTable_LoadERKByName`. +This is the 6th order explicit method IIIXb-6(5) from :cite:p:`Ver:10`. + +.. only:: html + + .. math:: + + \renewcommand{\arraystretch}{1.5} + \begin{array}{r|ccccccccc} + 0 & 0& 0& 0& 0& 0& 0& 0& 0& 0\\ + \frac{3}{50} & \frac{3}{50}& 0& 0& 0& 0& 0& 0& 0& 0\\ + \frac{1439}{15000} & \frac{519479}{27000000}& \frac{2070721}{27000000}& 0& 0& 0& 0& 0& 0& 0\\ + \frac{1439}{10000} & \frac{1439}{40000}& 0& \frac{4317}{40000}& 0& 0& 0& 0& 0& 0\\ + \frac{4973}{10000} & \frac{109225017611}{82828840000}& 0& -\frac{417627820623}{82828840000}& \frac{43699198143}{10353605000}& 0& 0& 0& 0& 0\\ + \frac{389}{400} & -\frac{8036815292643907349452552172369}{191934985946683241245914401600}& 0& \frac{246134619571490020064824665}{1543816496655405117602368}& -\frac{13880495956885686234074067279}{113663489566254201783474344}& \frac{755005057777788994734129}{136485922925633667082436}& 0& 0& 0& 0\\ + \frac{1999}{2000} & -\frac{1663299841566102097180506666498880934230261}{30558424506156170307020957791311384232000}& 0& \frac{130838124195285491799043628811093033}{631862949514135618861563657970240}& -\frac{3287100453856023634160618787153901962873}{20724314915376755629135711026851409200}& \frac{2771826790140332140865242520369241}{396438716042723436917079980147600}& -\frac{1799166916139193}{96743806114007800}& 0& 0& 0\\ + 1 & -\frac{832144750039369683895428386437986853923637763}{15222974550069600748763651844667619945204887}& 0& \frac{818622075710363565982285196611368750}{3936576237903728151856072395343129}& -\frac{9818985165491658464841194581385463434793741875}{61642597962658994069869370923196463581866011}& \frac{31796692141848558720425711042548134769375}{4530254033500045975557858016006308628092}& -\frac{14064542118843830075}{766928748264306853644}& -\frac{1424670304836288125}{2782839104764768088217}& 0& 0\\ + 1 & \frac{382735282417}{11129397249634}& 0& 0& \frac{5535620703125000}{21434089949505429}& \frac{13867056347656250}{32943296570459319}& \frac{626271188750}{142160006043}& -\frac{51160788125000}{289890548217}& \frac{163193540017}{946795234}& 0\\ + \hline + 6 & \frac{382735282417}{11129397249634}& 0& 0& \frac{5535620703125000}{21434089949505429}& \frac{13867056347656250}{32943296570459319}& \frac{626271188750}{142160006043}& -\frac{51160788125000}{289890548217}& \frac{163193540017}{946795234}& 0 \\ + 5 & \frac{273361583}{5567482366}& 0& 0& \frac{1964687500000}{8727630165387}& \frac{596054687500}{1269637976277}& \frac{12740367500}{15795556227}& 0& -\frac{4462730789736252634813752317}{7350663039626676022821734166}& \frac{441454562788983500}{7763730504400359099} + \end{array} + + +.. only:: latex + + The Butcher table is too large to fit in the PDF version of this documentation. Please see the HTML documentation for the table coefficients. + + + +.. figure:: /figs/arkode/v65b_erk_stab_region.png + :scale: 75 % + :align: center + + Linear stability region for the Verner-9-5-6 method. The method's + region is outlined in red; the embedding's region is in blue dashed. + + + +.. _Butcher.Verner-7-6: + +Verner-10-6-7 +^^^^^^^^^^^^^^ + +.. index:: Verner-10-6-7 ERK method + +Accessible via the constant ``ARKODE_VERNER_10_6_7`` to +:c:func:`ARKStepSetTableNum`, :c:func:`ERKStepSetTableNum` +or :c:func:`ARKodeButcherTable_LoadERK`. +Accessible via the string ``"ARKODE_VERNER_10_6_7"`` to +:c:func:`ARKStepSetTableName`, :c:func:`ERKStepSetTableName` or +:c:func:`ARKodeButcherTable_LoadERKByName`. +This is the default 7th order explicit method (from :cite:p:`Ver:10`). + +.. only:: html + + .. math:: + + \renewcommand{\arraystretch}{1.5} + \begin{array}{r|cccccccccc} + 0 & 0& 0& 0& 0& 0& 0& 0& 0& 0& 0\\ + \frac{1}{200} & \frac{1}{200}& 0& 0& 0& 0& 0& 0& 0& 0& 0\\ + \frac{49}{450} & -\frac{4361}{4050}& \frac{2401}{2025}& 0& 0& 0& 0& 0& 0& 0& 0\\ + \frac{49}{300} & \frac{49}{1200}& 0& \frac{49}{400}& 0& 0& 0& 0& 0& 0& 0\\ + \frac{911}{2000} & \frac{2454451729}{3841600000}& 0& -\frac{9433712007}{3841600000}& \frac{4364554539}{1920800000}& 0& 0& 0& 0& 0& 0\\ + \frac{3480084980}{5709648941} & -\frac{6187101755456742839167388910402379177523537620}{2324599620333464857202963610201679332423082271}& 0& \frac{27569888999279458303270493567994248533230000}{2551701010245296220859455115479340650299761}& -\frac{37368161901278864592027018689858091583238040000}{4473131870960004275166624817435284159975481033}& \frac{1392547243220807196190880383038194667840000000}{1697219131380493083996999253929006193143549863}& 0& 0& 0& 0& 0\\ + \frac{221}{250} & \frac{11272026205260557297236918526339}{1857697188743815510261537500000}& 0& -\frac{48265918242888069}{1953194276993750}& \frac{26726983360888651136155661781228}{1308381343805114800955157615625}& -\frac{2090453318815827627666994432}{1096684189897834170412307919}& \frac{1148577938985388929671582486744843844943428041509}{1141532118233823914568777901158338927629837500000}& 0& 0& 0& 0\\ + \frac{37}{40} & \frac{1304457204588839386329181466225966641}{108211771565488329642169667802016000}& 0& -\frac{1990261989751005}{40001418792832}& \frac{2392691599894847687194643439066780106875}{58155654089143548047476915856270826016}& -\frac{1870932273351008733802814881998561250}{419326053051486744762255151208232123}& \frac{1043329047173803328972823866240311074041739158858792987034783181}{510851127745017966999893975119259285040213723744255237522144000}& -\frac{311918858557595100410788125}{3171569057622789618800376448}& 0& 0& 0\\ + 1 & \frac{17579784273699839132265404100877911157}{1734023495717116205617154737841023480}& 0& -\frac{18539365951217471064750}{434776548575709731377}& \frac{447448655912568142291911830292656995992000}{12511202807447096607487664209063950964109}& -\frac{65907597316483030274308429593905808000000}{15158061430635748897861852383197382130691}& \frac{273847823027445129865693702689010278588244606493753883568739168819449761}{136252034448398939768371761610231099586032870552034688235302796640584360}& \frac{694664732797172504668206847646718750}{1991875650119463976442052358853258111}& -\frac{19705319055289176355560129234220800}{72595753317320295604316217197876507}& 0& 0\\ + 1 & -\frac{511858190895337044664743508805671}{11367030248263048398341724647960}& 0& \frac{2822037469238841750}{15064746656776439}& -\frac{23523744880286194122061074624512868000}{152723005449262599342117017051789699}& \frac{10685036369693854448650967542704000000}{575558095977344459903303055137999707}& -\frac{6259648732772142303029374363607629515525848829303541906422993}{876479353814142962817551241844706205620792843316435566420120}& \frac{17380896627486168667542032602031250}{13279937889697320236613879977356033}& 0& 0& 0\\ + \hline + 7 & \frac{96762636172307789}{2051985304794103980}& 0& 0& \frac{312188947591288252500000}{1212357694274963646019729}& \frac{13550580884964304000000000000}{51686919683339547115937980629}& \frac{72367769693133178898676076432831566019684378142853445230956642801}{475600216991873963561768100160364792981629064220601844848928537580}& \frac{1619421054120605468750}{3278200730370057108183}& -\frac{66898316144057728000}{227310933007074849597}& \frac{181081444637946577}{2226845467039736466}& 0 \\ + 6 & \frac{117807213929927}{2640907728177740}& 0& 0& \frac{4758744518816629500000}{17812069906509312711137}& \frac{1730775233574080000000000}{7863520414322158392809673}& \frac{2682653613028767167314032381891560552585218935572349997}{12258338284789875762081637252125169126464880985167722660}& \frac{40977117022675781250}{178949401077111131341}& 0& 0& \frac{2152106665253777}{106040260335225546} + \end{array} + +.. only:: latex + + The Butcher table is too large to fit in the PDF version of this documentation. Please see the HTML documentation for the table coefficients. + + +.. figure:: /figs/arkode/v76_erk_stab_region.png + :scale: 75 % + :align: center + + Linear stability region for the Verner-10-6-7 method. The method's + region is outlined in red; the embedding's region is in blue dashed. + + + .. _Butcher.Fehlberg-8-7: Fehlberg-13-7-8 @@ -870,6 +991,117 @@ This is the default 8th order explicit method (from :cite:p:`Butcher:08`). +.. _Butcher.Verner-8-7: + +Verner-13-7-8 +^^^^^^^^^^^^^^ + +.. index:: Verner-13-7-8 ERK method + +Accessible via the constant ``ARKODE_VERNER_13_7_8`` to +:c:func:`ARKStepSetTableNum`, :c:func:`ERKStepSetTableNum` +or :c:func:`ARKodeButcherTable_LoadERK`. +Accessible via the string ``"ARKODE_VERNER_13_7_8"`` to +:c:func:`ARKStepSetTableName`, :c:func:`ERKStepSetTableName` or +:c:func:`ARKodeButcherTable_LoadERKByName`. +This is the 8th order explicit method IIIX-8(7) from :cite:p:`Ver:10`. + + +.. only:: html + + .. math:: + + \renewcommand{\arraystretch}{1.5} + \begin{array}{r|ccccccccccccc} + 0 & 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0\\ + \frac{1}{20} & \frac{1}{20}& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0\\ + \frac{341}{3200} & -\frac{7161}{1024000}& \frac{116281}{1024000}& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0\\ + \frac{1023}{6400} & \frac{1023}{25600}& 0& \frac{3069}{25600}& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0\\ + \frac{39}{100} & \frac{4202367}{11628100}& 0& -\frac{3899844}{2907025}& \frac{3982992}{2907025}& 0& 0& 0& 0& 0& 0& 0& 0& 0\\ + \frac{93}{200} & \frac{5611}{114400}& 0& 0& \frac{31744}{135025}& \frac{923521}{5106400}& 0& 0& 0& 0& 0& 0& 0& 0\\ + \frac{31}{200} & \frac{21173}{343200}& 0& 0& \frac{8602624}{76559175}& -\frac{26782109}{689364000}& \frac{5611}{283500}& 0& 0& 0& 0& 0& 0& 0\\ + \frac{943}{1000} & -\frac{1221101821869329}{690812928000000}& 0& 0& -\frac{125}{2}& -\frac{1024030607959889}{168929280000000}& \frac{1501408353528689}{265697280000000}& \frac{6070139212132283}{92502016000000}& 0& 0& 0& 0& 0& 0\\ + \frac{7067558016280}{7837150160667} & -\frac{1472514264486215803881384708877264246346044433307094207829051978044531801133057155}{1246894801620032001157059621643986024803301558393487900440453636168046069686436608}& 0& 0& -\frac{5172294311085668458375175655246981230039025336933699114138315270772319372469280000}{124619381004809145897278630571215298365257079410236252921850936749076487132995191}& -\frac{12070679258469254807978936441733187949484571516120469966534514296406891652614970375}{2722031154761657221710478184531100699497284085048389015085076961673446140398628096}& \frac{780125155843893641323090552530431036567795592568497182701460674803126770111481625}{183110425412731972197889874507158786859226102980861859505241443073629143100805376}& \frac{664113122959911642134782135839106469928140328160577035357155340392950009492511875}{15178465598586248136333023107295349175279765150089078301139943253016877823170816}& \frac{10332848184452015604056836767286656859124007796970668046446015775000000}{1312703550036033648073834248740727914537972028638950165249582733679393783}& 0& 0& 0& 0& 0\\ + \frac{909}{1000} & -\frac{29055573360337415088538618442231036441314060511}{22674759891089577691327962602370597632000000000}& 0& 0& -\frac{20462749524591049105403365239069}{454251913499893469596231268750}& -\frac{180269259803172281163724663224981097}{38100922558256871086579832832000000}& \frac{21127670214172802870128286992003940810655221489}{4679473877997892906145822697976708633673728000}& \frac{318607235173649312405151265849660869927653414425413}{6714716715558965303132938072935465423910912000000}& \frac{212083202434519082281842245535894}{20022426044775672563822865371173879}& -\frac{2698404929400842518721166485087129798562269848229517793703413951226714583}{469545674913934315077000442080871141884676035902717550325616728175875000000}& 0& 0& 0& 0\\ + \frac{47}{50} & -\frac{2342659845814086836951207140065609179073838476242943917}{1358480961351056777022231400139158760857532162795520000}& 0& 0& -\frac{996286030132538159613930889652}{16353068885996164905464325675}& -\frac{26053085959256534152588089363841}{4377552804565683061011299942400}& \frac{20980822345096760292224086794978105312644533925634933539}{3775889992007550803878727839115494641972212962174156800}& \frac{890722993756379186418929622095833835264322635782294899}{13921242001395112657501941955594013822830119803764736}& \frac{161021426143124178389075121929246710833125}{10997207722131034650667041364346422894371443}& \frac{300760669768102517834232497565452434946672266195876496371874262392684852243925359864884962513}{4655443337501346455585065336604505603760824779615521285751892810315680492364106674524398280000}& -\frac{31155237437111730665923206875}{392862141594230515010338956291}& 0& 0& 0\\ + 1 & -\frac{2866556991825663971778295329101033887534912787724034363}{868226711619262703011213925016143612030669233795338240}& 0& 0& -\frac{16957088714171468676387054358954754000}{143690415119654683326368228101570221}& -\frac{4583493974484572912949314673356033540575}{451957703655250747157313034270335135744}& \frac{2346305388553404258656258473446184419154740172519949575}{256726716407895402892744978301151486254183185289662464}& \frac{1657121559319846802171283690913610698586256573484808662625}{13431480411255146477259155104956093505361644432088109056}& \frac{345685379554677052215495825476969226377187500}{74771167436930077221667203179551347546362089}& -\frac{3205890962717072542791434312152727534008102774023210240571361570757249056167015230160352087048674542196011}{947569549683965814783015124451273604984657747127257615372449205973192657306017239103491074738324033259120}& \frac{40279545832706233433100438588458933210937500}{8896460842799482846916972126377338947215101}& -\frac{6122933601070769591613093993993358877250}{1050517001510235513198246721302027675953}& 0& 0\\ + 1 & -\frac{618675905535482500672800859344538410358660153899637}{203544282118214047100119475340667684874292102389760}& 0& 0& -\frac{4411194916804718600478400319122931000}{40373053902469967450761491269633019}& -\frac{16734711409449292534539422531728520225}{1801243715290088669307203927210237952}& \frac{135137519757054679098042184152749677761254751865630525}{16029587794486289597771326361911895112703716593983488}& \frac{38937568367409876012548551903492196137929710431584875}{340956454090191606099548798001469306974758443147264}& -\frac{6748865855011993037732355335815350667265625}{7002880395717424621213565406715087764770357}& -\frac{1756005520307450928195422767042525091954178296002788308926563193523662404739779789732685671}{348767814578469983605688098046186480904607278021030540735333862087061574934154942830062320}& \frac{53381024589235611084013897674181629296875}{8959357584795694524874969598508592944141}& 0& 0& 0\\ + \hline + 8 & \frac{44901867737754616851973}{1014046409980231013380680}& 0& 0& 0& 0& \frac{791638675191615279648100000}{2235604725089973126411512319}& \frac{3847749490868980348119500000}{15517045062138271618141237517}& -\frac{13734512432397741476562500000}{875132892924995907746928783}& \frac{12274765470313196878428812037740635050319234276006986398294443554969616342274215316330684448207141}{489345147493715517650385834143510934888829280686609654482896526796523353052166757299452852166040}& -\frac{9798363684577739445312500000}{308722986341456031822630699}& \frac{282035543183190840068750}{12295407629873040425991}& -\frac{306814272936976936753}{1299331183183744997286}& 0\\ + 7 & \frac{10835401739407019406577}{244521829356935137978320}& 0& 0& 0& 0& \frac{13908189778321895491375000}{39221135527894265375640567}& \frac{73487947527027243487625000}{296504045773342769773399443}& \frac{68293140641257649609375000}{15353208647806945749946119}& \frac{22060647948996678611017711379974578860522018208949721559448560203338437626022142776381}{1111542009262325874512959185795727215759010577565736079641376621381577236680929558640}& -\frac{547971229495642458203125000}{23237214025700991642563601}& 0& 0& -\frac{28735456870978964189}{79783493704265043693} + \end{array} + +.. only:: latex + + The Butcher table is too large to fit in the PDF version of this documentation. Please see the HTML documentation for the table coefficients. + + +.. figure:: /figs/arkode/v87_erk_stab_region.png + :scale: 75 % + :align: center + + Linear stability region for the Verner-13-7-8 method. The method's + region is outlined in red; the embedding's region is in blue dashed. + + + +.. _Butcher.Verner-9-8: + +Verner-16-8-9 +^^^^^^^^^^^^^^ + +.. index:: Verner-16-8-9 ERK method + +Accessible via the constant ``ARKODE_VERNER_16_8_9`` to +:c:func:`ARKStepSetTableNum`, :c:func:`ERKStepSetTableNum` +or :c:func:`ARKodeButcherTable_LoadERK`. +Accessible via the string ``"ARKODE_VERNER_16_8_9"`` to +:c:func:`ARKStepSetTableName`, :c:func:`ERKStepSetTableName` or +:c:func:`ARKodeButcherTable_LoadERKByName`. +This is the default 9th order explicit method (from :cite:p:`Ver:10`). + + +.. only:: html + + .. math:: + + \renewcommand{\arraystretch}{1.5} + \begin{array}{r|cccccccccccccccc} + 0 & 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0\\ + 0.03462 & 0.03462& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0\\ + 0.09702435063878044594828361677100617517633 & -0.0389335438857287327017042687229284478532& 0.1359578945245091786499878854939346230295& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0\\ + 0.1455365259581706689224254251565092627645 & 0.03638413148954266723060635628912731569111& 0& 0.1091523944686280016918190688673819470733& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0\\ + 0.561 & 2.025763914393969636805657604282571047511& 0& -7.638023836496292020387602153091964592952& 6.173259922102322383581944548809393545442& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0\\ + 0.2290079115904850126662751771814700052182 & 0.05112275589406060872792270881648288397197& 0& 0& 0.1770823794555021537929910813839068684087& 0.00080277624092225014536138698108025283759& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0\\ + 0.5449920884095149873337248228185299947818 & 0.1316006357975216279279871693164256985334& 0& 0& -0.2957276252669636417685183174672273730699& 0.0878137803564295237421124704053886667082& 0.6213052975225274774321435005639430026100& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0\\ + 0.645 & 0.07166666666666666666666666666666666666667& 0& 0& 0& 0& 0.3305533578915319409260346730051472207728& 0.2427799754418013924072986603281861125606& 0& 0& 0& 0& 0& 0& 0& 0& 0\\ + 0.48375 & 0.071806640625& 0& 0& 0& 0& 0.3294380283228177160744825466257672816401& 0.1165190029271822839255174533742327183599& -0.034013671875& 0& 0& 0& 0& 0& 0& 0& 0\\ + 0.06757 & 0.04836757646340646986611287718844085773549& 0& 0& 0& 0& 0.03928989925676163974333190042057047002852& 0.1054740945890344608263649267140088017604& -0.02143865284648312665982642293830533996214& -0.1041229174627194437759832813847147895623& 0& 0& 0& 0& 0& 0& 0\\ + 0.25 & -0.02664561487201478635337289243849737340534& 0& 0& 0& 0& 0.03333333333333333333333333333333333333333& -0.1631072244872467239162704487554706387141& 0.03396081684127761199487954930015522928244& 0.1572319413814626097110769806810024118077& 0.2152267478031879552303534778794770376960& 0& 0& 0& 0& 0& 0\\ + 0.6590650618730998549405331618649220295334 & 0.03689009248708622334786359863227633989718& 0& 0& 0& 0& -0.1465181576725542928653609891758501156785& 0.2242577768172024345345469822625833796001& 0.02294405717066072637090897902753790803034& -0.0035850052905728761357394424889330334334& 0.08669223316444385506869203619044453906053& 0.4383840651968337846196219974168630120572& 0& 0& 0& 0& 0\\ + 0.8206 & -0.4866012215113340846662212357570395295088& 0& 0& 0& 0& -6.304602650282852990657772792012007122988& -0.281245618289472564778284183790118418111& -2.679019236219849057687906597489223155566& 0.518815663924157511565311164615012522024& 1.365353187603341710683633635235238678626& 5.885091088503946585721274891680604830712& 2.802808786272062889819965117517532194812& 0& 0& 0& 0\\ + 0.9012 & 0.4185367457753471441471025246471931649633& 0& 0& 0& 0& 6.724547581906459363100870806514855026676& -0.425444280164611790606983409697113064616& 3.343279153001265577811816947557982637749& 0.617081663117537759528421117507709784737& -0.929966123939932833937749523988800852013& -6.099948804751010722472962837945508844846& -3.002206187889399044804158084895173690015& 0.2553202529443445472336424602988558373637& 0& 0& 0\\ + 1 & -0.779374086122884664644623040843840506343& 0& 0& 0& 0& -13.93734253810777678786523664804936051203& 1.252048853379357320949735183924200895136& -14.69150040801686878191527989293072091588& -0.494705058533141685655191992136962873577& 2.242974909146236657906984549543692874755& 13.36789380382864375813864978592679139881& 14.39665048665068644512236935340272139005& -0.7975813331776800379127866056663258667437& 0.4409353709534277758753793068298041158235& 0& 0\\ + 1 & 2.058051337466886442151242368989994043993& 0& 0& 0& 0& 22.35793772796803295519317565842520212899& 0.90949810997556332745009198137971890783& 35.89110098240264104710550686568482456493& -3.442515027624453437985000403608480262211& -4.865481358036368826566013387928704014496& -18.90980381354342625688427480879773032857& -34.26354448030451782929251177395134170515& 1.264756521695642578827783499806516664686& 0& 0& 0\\ + \hline + 9 & 0.01461197685842315252051541915018784713459& 0& 0& 0& 0& 0& 0& -0.3915211862331339089410228267288242030810& 0.2310932500289506415909675644868993669908& 0.1274766769992852382560589467488989175618& 0.2246434176204157731566981937082069688984& 0.5684352689748512932705226972873692126743& 0.05825871557215827200814768021863420902155& 0.1364317403482215641609022744494239843327& 0.03057013983082797397721005067920369646664& 0\\ + 8 & 0.01996996514886773085518508418098868756464& 0& 0& 0& 0& 0& 0& 2.191499304949330054530747099310837524864& 0.08857071848208438030833722031786358862953& 0.1140560234865965622484956605091432032674& 0.2533163805345107065564577734569651977347& -2.056564386240941011158999594595981300493& 0.3408096799013119935160094894224543812830& 0& 0& 0.04834231373823958314376726739772871714902 + \end{array} + +.. only:: latex + + The Butcher table is too large to fit in the PDF version of this documentation. Please see the HTML documentation for the table coefficients. + + +.. figure:: /figs/arkode/v98_erk_stab_region.png + :scale: 75 % + :align: center + + Linear stability region for the Verner-16-8-9 method. The method's + region is outlined in red; the embedding's region is in blue dashed. + + + .. _Butcher.implicit: @@ -1336,19 +1568,26 @@ Accessible via the string ``"ARKODE_KVAERNO_5_3_4"`` to :c:func:`ARKodeButcherTable_LoadDIRKByName`. Both the method and embedding are A-stable (from :cite:p:`Kva:04`). -.. math:: +.. only:: html + + .. math:: + + \renewcommand{\arraystretch}{1.5} + \begin{array}{r|ccccc} + 0 & 0 & 0 & 0 & 0 & 0 \\ + 0.871733043 & 0.4358665215 & 0.4358665215 & 0 & 0 & 0 \\ + 0.468238744853136 & 0.140737774731968 & -0.108365551378832 & 0.4358665215 & 0 & 0 \\ + 1 & 0.102399400616089 & -0.376878452267324 & 0.838612530151233 & 0.4358665215 & 0 \\ + 1 & 0.157024897860995 & 0.117330441357768 & 0.61667803039168 & -0.326899891110444 & 0.4358665215 \\ + \hline + 4 & 0.157024897860995 & 0.117330441357768 & 0.61667803039168 & -0.326899891110444 & 0.4358665215 \\ + 3 & 0.102399400616089 & -0.376878452267324 & 0.838612530151233 & 0.4358665215 & 0 + \end{array} + +.. only:: latex + + The Butcher table is too large to fit in the PDF version of this documentation. Please see the HTML documentation for the table coefficients. - \renewcommand{\arraystretch}{1.5} - \begin{array}{r|ccccc} - 0 & 0 & 0 & 0 & 0 & 0 \\ - 0.871733043 & 0.4358665215 & 0.4358665215 & 0 & 0 & 0 \\ - 0.468238744853136 & 0.140737774731968 & -0.108365551378832 & 0.4358665215 & 0 & 0 \\ - 1 & 0.102399400616089 & -0.376878452267324 & 0.838612530151233 & 0.4358665215 & 0 \\ - 1 & 0.157024897860995 & 0.117330441357768 & 0.61667803039168 & -0.326899891110444 & 0.4358665215 \\ - \hline - 4 & 0.157024897860995 & 0.117330441357768 & 0.61667803039168 & -0.326899891110444 & 0.4358665215 \\ - 3 & 0.102399400616089 & -0.376878452267324 & 0.838612530151233 & 0.4358665215 & 0 - \end{array} .. figure:: /figs/arkode/stab_region_19.png :scale: 50 % @@ -1554,21 +1793,28 @@ Accessible via the string ``"ARKODE_KVAERNO_7_4_5"`` to Both the method and embedding are A-stable; additionally the method is L-stable (from :cite:p:`Kva:04`). -.. math:: +.. only:: html + + .. math:: + + \renewcommand{\arraystretch}{1.5} + \begin{array}{r|ccccccc} + 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ + 0.52 & 0.26 & 0.26 & 0 & 0 & 0 & 0 & 0 \\ + 1.230333209967908 & 0.13 & 0.84033320996790809 & 0.26 & 0 & 0 & 0 & 0 \\ + 0.895765984350076 & 0.22371961478320505 & 0.47675532319799699 & -0.06470895363112615 & 0.26 & 0 & 0 & 0 \\ + 0.436393609858648 & 0.16648564323248321 & 0.10450018841591720 & 0.03631482272098715 & -0.13090704451073998 & 0.26 & 0 & 0 \\ + 1 & 0.13855640231268224 & 0 & -0.04245337201752043 & 0.02446657898003141 & 0.61943039072480676 & 0.26 & 0 \\ + 1 & 0.13659751177640291 & 0 & -0.05496908796538376 & -0.04118626728321046 & 0.62993304899016403 & 0.06962479448202728 & 0.26 \\ + \hline + 5 & 0.13659751177640291 & 0 & -0.05496908796538376 & -0.04118626728321046 & 0.62993304899016403 & 0.06962479448202728 & 0.26 \\ + 4 & 0.13855640231268224 & 0 & -0.04245337201752043 & 0.02446657898003141 & 0.61943039072480676 & 0.26 & 0 + \end{array} + +.. only:: latex + + The Butcher table is too large to fit in the PDF version of this documentation. Please see the HTML documentation for the table coefficients. - \renewcommand{\arraystretch}{1.5} - \begin{array}{r|ccccccc} - 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ - 0.52 & 0.26 & 0.26 & 0 & 0 & 0 & 0 & 0 \\ - 1.230333209967908 & 0.13 & 0.84033320996790809 & 0.26 & 0 & 0 & 0 & 0 \\ - 0.895765984350076 & 0.22371961478320505 & 0.47675532319799699 & -0.06470895363112615 & 0.26 & 0 & 0 & 0 \\ - 0.436393609858648 & 0.16648564323248321 & 0.10450018841591720 & 0.03631482272098715 & -0.13090704451073998 & 0.26 & 0 & 0 \\ - 1 & 0.13855640231268224 & 0 & -0.04245337201752043 & 0.02446657898003141 & 0.61943039072480676 & 0.26 & 0 \\ - 1 & 0.13659751177640291 & 0 & -0.05496908796538376 & -0.04118626728321046 & 0.62993304899016403 & 0.06962479448202728 & 0.26 \\ - \hline - 5 & 0.13659751177640291 & 0 & -0.05496908796538376 & -0.04118626728321046 & 0.62993304899016403 & 0.06962479448202728 & 0.26 \\ - 4 & 0.13855640231268224 & 0 & -0.04245337201752043 & 0.02446657898003141 & 0.61943039072480676 & 0.26 & 0 - \end{array} .. figure:: /figs/arkode/stab_region_21.png :scale: 50 % @@ -1601,22 +1847,29 @@ default 5th order additive method. Both the method and embedding are A-stable; additionally the method is L-stable (the implicit portion of the ARK5(4)8L[2]SA method from :cite:p:`KenCarp:03`). -.. math:: +.. only:: html + + .. math:: + + \renewcommand{\arraystretch}{1.5} + \begin{array}{r|cccccccc} + 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ + \frac{41}{100} & \frac{41}{200} & \frac{41}{200} & 0 & 0 & 0 & 0 & 0 & 0 \\ + \frac{2935347310677}{11292855782101} & \frac{41}{400} & -\frac{567603406766}{11931857230679} & \frac{41}{200} & 0 & 0 & 0 & 0 & 0 \\ + \frac{1426016391358}{7196633302097} & \frac{683785636431}{9252920307686} & 0 & -\frac{110385047103}{1367015193373} & \frac{41}{200} & 0 & 0 & 0 & 0 \\ + \frac{92}{100} & \frac{3016520224154}{10081342136671} & 0 & \frac{30586259806659}{12414158314087} & -\frac{22760509404356}{11113319521817} & \frac{41}{200} & 0 & 0 & 0 \\ + \frac{24}{100} & \frac{218866479029}{1489978393911} & 0 & \frac{638256894668}{5436446318841} & -\frac{1179710474555}{5321154724896} & -\frac{60928119172}{8023461067671} & \frac{41}{200} & 0 & 0 \\ + \frac{3}{5} & \frac{1020004230633}{5715676835656} & 0 & \frac{25762820946817}{25263940353407} & -\frac{2161375909145}{9755907335909} & -\frac{211217309593}{5846859502534} & -\frac{4269925059573}{7827059040749} & \frac{41}{200} & 0 \\ + 1 & -\frac{872700587467}{9133579230613} & 0 & 0 & \frac{22348218063261}{9555858737531} & -\frac{1143369518992}{8141816002931} & -\frac{39379526789629}{19018526304540} & \frac{32727382324388}{42900044865799} & \frac{41}{200} \\ + \hline + 5 & -\frac{872700587467}{9133579230613} & 0 & 0 & \frac{22348218063261}{9555858737531} & -\frac{1143369518992}{8141816002931} & -\frac{39379526789629}{19018526304540} & \frac{32727382324388}{42900044865799} & \frac{41}{200} \\ + 4 & -\frac{975461918565}{9796059967033} & 0 & 0 & \frac{78070527104295}{32432590147079} & -\frac{548382580838}{3424219808633} & -\frac{33438840321285}{15594753105479} & \frac{3629800801594}{4656183773603} & \frac{4035322873751}{18575991585200} + \end{array} + +.. only:: latex + + The Butcher table is too large to fit in the PDF version of this documentation. Please see the HTML documentation for the table coefficients. - \renewcommand{\arraystretch}{1.5} - \begin{array}{r|cccccccc} - 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ - \frac{41}{100} & \frac{41}{200} & \frac{41}{200} & 0 & 0 & 0 & 0 & 0 & 0 \\ - \frac{2935347310677}{11292855782101} & \frac{41}{400} & -\frac{567603406766}{11931857230679} & \frac{41}{200} & 0 & 0 & 0 & 0 & 0 \\ - \frac{1426016391358}{7196633302097} & \frac{683785636431}{9252920307686} & 0 & -\frac{110385047103}{1367015193373} & \frac{41}{200} & 0 & 0 & 0 & 0 \\ - \frac{92}{100} & \frac{3016520224154}{10081342136671} & 0 & \frac{30586259806659}{12414158314087} & -\frac{22760509404356}{11113319521817} & \frac{41}{200} & 0 & 0 & 0 \\ - \frac{24}{100} & \frac{218866479029}{1489978393911} & 0 & \frac{638256894668}{5436446318841} & -\frac{1179710474555}{5321154724896} & -\frac{60928119172}{8023461067671} & \frac{41}{200} & 0 & 0 \\ - \frac{3}{5} & \frac{1020004230633}{5715676835656} & 0 & \frac{25762820946817}{25263940353407} & -\frac{2161375909145}{9755907335909} & -\frac{211217309593}{5846859502534} & -\frac{4269925059573}{7827059040749} & \frac{41}{200} & 0 \\ - 1 & -\frac{872700587467}{9133579230613} & 0 & 0 & \frac{22348218063261}{9555858737531} & -\frac{1143369518992}{8141816002931} & -\frac{39379526789629}{19018526304540} & \frac{32727382324388}{42900044865799} & \frac{41}{200} \\ - \hline - 5 & -\frac{872700587467}{9133579230613} & 0 & 0 & \frac{22348218063261}{9555858737531} & -\frac{1143369518992}{8141816002931} & -\frac{39379526789629}{19018526304540} & \frac{32727382324388}{42900044865799} & \frac{41}{200} \\ - 4 & -\frac{975461918565}{9796059967033} & 0 & 0 & \frac{78070527104295}{32432590147079} & -\frac{548382580838}{3424219808633} & -\frac{33438840321285}{15594753105479} & \frac{3629800801594}{4656183773603} & \frac{4035322873751}{18575991585200} - \end{array} .. figure:: /figs/arkode/stab_region_22.png :scale: 50 % @@ -1645,22 +1898,28 @@ Both the method and embedding are A-stable; additionally the method is L-stable (this is the implicit portion of the 5th order ARK5(4)8L[2]SA method from :cite:p:`KenCarp:19`). -.. math:: +.. only:: html - \renewcommand{\arraystretch}{1.5} - \begin{array}{r|cccccccc} - 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ - \frac{4}{9} & \frac{2}{9} & \frac{2}{9} & 0 & 0 & 0 & 0 & 0 & 0 \\ - \frac{6456083330201}{8509243623797} & \frac{2366667076620}{8822750406821} & \frac{2366667076620}{8822750406821} & \frac{2}{9} & 0 & 0 & 0 & 0 & 0 \\ - \frac{1632083962415}{14158861528103} & -\frac{257962897183}{4451812247028} & -\frac{257962897183}{4451812247028} & \frac{128530224461}{14379561246022} & \frac{2}{9} & 0 & 0 & 0 & 0 \\ - \frac{6365430648612}{17842476412687} & -\frac{486229321650}{11227943450093} & -\frac{486229321650}{11227943450093} & -\frac{225633144460}{6633558740617} & \frac{1741320951451}{6824444397158} & \frac{2}{9} & 0 & 0 & 0 \\ - \frac{18}{25} & \frac{621307788657}{4714163060173} & \frac{621307788657}{4714163060173} & -\frac{125196015625}{3866852212004} & \frac{940440206406}{7593089888465} & \frac{961109811699}{6734810228204} & \frac{2}{9} & 0 & 0 \\ - \frac{191}{200} & \frac{2036305566805}{6583108094622} & \frac{2036305566805}{6583108094622} & -\frac{3039402635899}{4450598839912} & -\frac{1829510709469}{31102090912115} & -\frac{286320471013}{6931253422520} & \frac{8651533662697}{9642993110008} & \frac{2}{9} & 0 \\ - 1 & 0 & 0 & \frac{3517720773327}{20256071687669} & \frac{4569610470461}{17934693873752} & \frac{2819471173109}{11655438449929} & \frac{3296210113763}{10722700128969} & -\frac{1142099968913}{5710983926999} & \frac{2}{9} \\ - \hline - 5 & 0 & 0 & \frac{3517720773327}{20256071687669} & \frac{4569610470461}{17934693873752} & \frac{2819471173109}{11655438449929} & \frac{3296210113763}{10722700128969} & -\frac{1142099968913}{5710983926999} & \frac{2}{9} \\ - 4 & 0 & 0 & \frac{520639020421}{8300446712847} & \frac{4550235134915}{17827758688493} & \frac{1482366381361}{6201654941325} & \frac{5551607622171}{13911031047899} & -\frac{5266607656330}{36788968843917} & \frac{1074053359553}{5740751784926} - \end{array} + .. math:: + + \renewcommand{\arraystretch}{1.5} + \begin{array}{r|cccccccc} + 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ + \frac{4}{9} & \frac{2}{9} & \frac{2}{9} & 0 & 0 & 0 & 0 & 0 & 0 \\ + \frac{6456083330201}{8509243623797} & \frac{2366667076620}{8822750406821} & \frac{2366667076620}{8822750406821} & \frac{2}{9} & 0 & 0 & 0 & 0 & 0 \\ + \frac{1632083962415}{14158861528103} & -\frac{257962897183}{4451812247028} & -\frac{257962897183}{4451812247028} & \frac{128530224461}{14379561246022} & \frac{2}{9} & 0 & 0 & 0 & 0 \\ + \frac{6365430648612}{17842476412687} & -\frac{486229321650}{11227943450093} & -\frac{486229321650}{11227943450093} & -\frac{225633144460}{6633558740617} & \frac{1741320951451}{6824444397158} & \frac{2}{9} & 0 & 0 & 0 \\ + \frac{18}{25} & \frac{621307788657}{4714163060173} & \frac{621307788657}{4714163060173} & -\frac{125196015625}{3866852212004} & \frac{940440206406}{7593089888465} & \frac{961109811699}{6734810228204} & \frac{2}{9} & 0 & 0 \\ + \frac{191}{200} & \frac{2036305566805}{6583108094622} & \frac{2036305566805}{6583108094622} & -\frac{3039402635899}{4450598839912} & -\frac{1829510709469}{31102090912115} & -\frac{286320471013}{6931253422520} & \frac{8651533662697}{9642993110008} & \frac{2}{9} & 0 \\ + 1 & 0 & 0 & \frac{3517720773327}{20256071687669} & \frac{4569610470461}{17934693873752} & \frac{2819471173109}{11655438449929} & \frac{3296210113763}{10722700128969} & -\frac{1142099968913}{5710983926999} & \frac{2}{9} \\ + \hline + 5 & 0 & 0 & \frac{3517720773327}{20256071687669} & \frac{4569610470461}{17934693873752} & \frac{2819471173109}{11655438449929} & \frac{3296210113763}{10722700128969} & -\frac{1142099968913}{5710983926999} & \frac{2}{9} \\ + 4 & 0 & 0 & \frac{520639020421}{8300446712847} & \frac{4550235134915}{17827758688493} & \frac{1482366381361}{6201654941325} & \frac{5551607622171}{13911031047899} & -\frac{5266607656330}{36788968843917} & \frac{1074053359553}{5740751784926} + \end{array} + +.. only:: latex + + The Butcher table is too large to fit in the PDF version of this documentation. Please see the HTML documentation for the table coefficients. .. figure:: /figs/arkode/stab_region_37.png diff --git a/doc/arkode/guide/source/Constants.rst b/doc/arkode/guide/source/Constants.rst index 95b6a43125..9510f656a0 100644 --- a/doc/arkode/guide/source/Constants.rst +++ b/doc/arkode/guide/source/Constants.rst @@ -106,6 +106,16 @@ contains the ARKODE output constants. +-----------------------------------------------+------------------------------------------------------------+ | :index:`ARKODE_ARK548L2SAb_ERK_8_4_5` | Use the ARK-8-4-5b ERK method. | +-----------------------------------------------+------------------------------------------------------------+ + | :index:`ARKODE_SHU_OSHER_3_2_3` | Use the Shu-Osher-3-2-3 ERK method. | + +-----------------------------------------------+------------------------------------------------------------+ + | :index:`ARKODE_VERNER_9_5_6` | Use the Verner-9-5-6 ERK method. | + +-----------------------------------------------+------------------------------------------------------------+ + | :index:`ARKODE_VERNER_10_6_7` | Use the Verner-10-6-7 ERK method. | + +-----------------------------------------------+------------------------------------------------------------+ + | :index:`ARKODE_VERNER_13_7_8` | Use the Verner-13-7-8 ERK method. | + +-----------------------------------------------+------------------------------------------------------------+ + | :index:`ARKODE_VERNER_16_8_9` | Use the Verner-16-8-9 ERK method. | + +-----------------------------------------------+------------------------------------------------------------+ | :index:`ARKSTEP_DEFAULT_ERK_2` | Use ARKStep's default second-order ERK method | | | (ARKODE_HEUN_EULER_2_1_2). | +-----------------------------------------------+------------------------------------------------------------+ @@ -121,9 +131,15 @@ contains the ARKODE output constants. | :index:`ARKSTEP_DEFAULT_ERK_6` | Use ARKStep's default sixth-order ERK method | | | (ARKODE_VERNER_8_5_6). | +-----------------------------------------------+------------------------------------------------------------+ + | :index:`ARKSTEP_DEFAULT_ERK_7` | Use ARKStep's default seventh-order ERK method | + | | (ARKODE_VERNER_10_6_7). | + +-----------------------------------------------+------------------------------------------------------------+ | :index:`ARKSTEP_DEFAULT_ERK_8` | Use ARKStep's default eighth-order ERK method | | | (ARKODE_FEHLBERG_13_7_8). | +-----------------------------------------------+------------------------------------------------------------+ + | :index:`ARKSTEP_DEFAULT_ERK_9` | Use ARKStep's default ninth-order ERK method | + | | (ARKODE_VERNER_16_8_9). | + +-----------------------------------------------+------------------------------------------------------------+ | :index:`ERKSTEP_DEFAULT_2` | Use ERKStep's default second-order ERK method | | | (ARKODE_HEUN_EULER_2_1_2). | +-----------------------------------------------+------------------------------------------------------------+ @@ -139,9 +155,15 @@ contains the ARKODE output constants. | :index:`ERKSTEP_DEFAULT_6` | Use ERKStep's default sixth-order ERK method | | | (ARKODE_VERNER_8_5_6). | +-----------------------------------------------+------------------------------------------------------------+ + | :index:`ERKSTEP_DEFAULT_7` | Use ERKStep's default seventh-order ERK method | + | | (ARKODE_VERNER_10_6_7). | + +-----------------------------------------------+------------------------------------------------------------+ | :index:`ERKSTEP_DEFAULT_8` | Use ERKStep's default eighth-order ERK method | | | (ARKODE_FEHLBERG_13_7_8). | +-----------------------------------------------+------------------------------------------------------------+ + | :index:`ERKSTEP_DEFAULT_9` | Use ERKStep's default ninth-order ERK method | + | | (ARKODE_VERNER_16_8_9). | + +-----------------------------------------------+------------------------------------------------------------+ | | | +-----------------------------------------------+------------------------------------------------------------+ | **Implicit Butcher table specification** | | diff --git a/doc/arkode/guide/source/Introduction.rst b/doc/arkode/guide/source/Introduction.rst index 8bea3c5196..b8f375697e 100644 --- a/doc/arkode/guide/source/Introduction.rst +++ b/doc/arkode/guide/source/Introduction.rst @@ -153,8 +153,11 @@ Fixed scaling bug in ``SUNMatScaleAddI_Sparse`` for non-square matrices. Fixed missing soversions in some ``SUNLinearSolver`` and ``SUNNonlinearSolver`` CMake targets. -Added the third order ERK method ``ARKODE_SHU_OSHER_3_2_3`` and the fourth order -ERK method ``ARKODE_SOFRONIOU_SPALETTA_5_3_4``. +Added the third order ERK method ``ARKODE_SHU_OSHER_3_2_3``, the fourth order +ERK method ``ARKODE_SOFRONIOU_SPALETTA_5_3_4``, the sixth order ERK method +``ARKODE_VERNER_9_5_6``, the seventh order ERK method ``ARKODE_VERNER_10_6_7``, +the eighth order ERK method ``ARKODE_VERNER_13_7_8``, and the ninth order ERK +method ``ARKODE_VERNER_16_8_9``. Changes in v5.6.1 ----------------- diff --git a/doc/shared/figs/arkode/v65b_erk_stab_region.png b/doc/shared/figs/arkode/v65b_erk_stab_region.png new file mode 100644 index 0000000000000000000000000000000000000000..9246447907302b1e0b85acb937c44f5cda426e4a GIT binary patch literal 24309 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 literal 0 HcmV?d00001 diff --git a/doc/shared/figs/arkode/v76_erk_stab_region.png b/doc/shared/figs/arkode/v76_erk_stab_region.png new file mode 100644 index 0000000000000000000000000000000000000000..69381ed029b8408604b28769afce36ad74e4c82c GIT binary patch literal 24266 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 = 6; + B->p = 5; + + B->A[1][0] = RCONST(3.0)/RCONST(50.0); + B->A[2][0] = RCONST(519479.0)/RCONST(27000000.0); + B->A[2][1] = RCONST(2070721.0)/RCONST(27000000.0); + B->A[3][0] = RCONST(1439.0)/RCONST(40000.0); + B->A[3][2] = RCONST(4317.0)/RCONST(40000.0); + B->A[4][0] = RCONST(109225017611.0)/RCONST(82828840000.0); + B->A[4][2] = RCONST(-417627820623.0)/RCONST(82828840000.0); + B->A[4][3] = RCONST(43699198143.0)/RCONST(10353605000.0); + B->A[5][0] = RCONST(-8036815292643907349452552172369.0)/RCONST(191934985946683241245914401600.0); + B->A[5][2] = RCONST(246134619571490020064824665.0)/RCONST(1543816496655405117602368.0); + B->A[5][3] = RCONST(-13880495956885686234074067279.0)/RCONST(113663489566254201783474344.0); + B->A[5][4] = RCONST(755005057777788994734129.0)/RCONST(136485922925633667082436.0); + B->A[6][0] = RCONST(-1663299841566102097180506666498880934230261.0)/RCONST(30558424506156170307020957791311384232000.0); + B->A[6][2] = RCONST(130838124195285491799043628811093033.0)/RCONST(631862949514135618861563657970240.0); + B->A[6][3] = RCONST(-3287100453856023634160618787153901962873.0)/RCONST(20724314915376755629135711026851409200.0); + B->A[6][4] = RCONST(2771826790140332140865242520369241.0)/RCONST(396438716042723436917079980147600.0); + B->A[6][5] = RCONST(-1799166916139193.0)/RCONST(96743806114007800.0); + B->A[7][0] = RCONST(-832144750039369683895428386437986853923637763.0)/RCONST(15222974550069600748763651844667619945204887.0); + B->A[7][2] = RCONST(818622075710363565982285196611368750.0)/RCONST(3936576237903728151856072395343129.0); + B->A[7][3] = RCONST(-9818985165491658464841194581385463434793741875.0)/RCONST(61642597962658994069869370923196463581866011.0); + B->A[7][4] = RCONST(31796692141848558720425711042548134769375.0)/RCONST(4530254033500045975557858016006308628092.0); + B->A[7][5] = RCONST(-14064542118843830075.0)/RCONST(766928748264306853644.0); + B->A[7][6] = RCONST(-1424670304836288125.0)/RCONST(2782839104764768088217.0); + B->A[8][0] = RCONST(382735282417.0)/RCONST(11129397249634.0); + B->A[8][3] = RCONST(5535620703125000.0)/RCONST(21434089949505429.0); + B->A[8][4] = RCONST(13867056347656250.0)/RCONST(32943296570459319.0); + B->A[8][5] = RCONST(626271188750.0)/RCONST(142160006043.0); + B->A[8][6] = RCONST(-51160788125000.0)/RCONST(289890548217.0); + B->A[8][7] = RCONST(163193540017.0)/RCONST(946795234.0); + + B->b[0] = RCONST(382735282417.0)/RCONST(11129397249634.0); + B->b[3] = RCONST(5535620703125000.0)/RCONST(21434089949505429.0); + B->b[4] = RCONST(13867056347656250.0)/RCONST(32943296570459319.0); + B->b[5] = RCONST(626271188750.0)/RCONST(142160006043.0); + B->b[6] = RCONST(-51160788125000.0)/RCONST(289890548217.0); + B->b[7] = RCONST(163193540017.0)/RCONST(946795234.0); + + B->d[0] = RCONST(273361583.0)/RCONST(5567482366.0); + B->d[3] = RCONST(1964687500000.0)/RCONST(8727630165387.0); + B->d[4] = RCONST(596054687500.0)/RCONST(1269637976277.0); + B->d[5] = RCONST(12740367500.0)/RCONST(15795556227.0); + B->d[7] = RCONST(-4462730789736252634813752317.0)/RCONST(7350663039626676022821734166.0); + B->d[8] = RCONST(441454562788983500.0)/RCONST(7763730504400359099.0); + + B->c[1] = RCONST(3.0)/RCONST(50.0); + B->c[2] = RCONST(1439.0)/RCONST(15000.0); + B->c[3] = RCONST(1439.0)/RCONST(10000.0); + B->c[4] = RCONST(4973.0)/RCONST(10000.0); + B->c[5] = RCONST(389.0)/RCONST(400.0); + B->c[6] = RCONST(1999.0)/RCONST(2000.0); + B->c[7] = RCONST(1.0); + B->c[8] = RCONST(1.0); + return B; + }) + +ARK_BUTCHER_TABLE(ARKODE_VERNER_10_6_7, { /* Verner-7-6 (DOI: 10.1007/s11075-009-9290-3) */ + ARKodeButcherTable B = ARKodeButcherTable_Alloc(10, SUNTRUE); + B->q = 7; + B->p = 6; + + B->A[1][0] = RCONST(1.0)/RCONST(200.0); + B->A[2][0] = RCONST(-4361.0)/RCONST(4050.0); + B->A[2][1] = RCONST(2401.0)/RCONST(2025.0); + B->A[3][0] = RCONST(49.0)/RCONST(1200.0); + B->A[3][2] = RCONST(49.0)/RCONST(400.0); + B->A[4][0] = RCONST(2454451729.0)/RCONST(3841600000.0); + B->A[4][2] = RCONST(-9433712007.0)/RCONST(3841600000.0); + B->A[4][3] = RCONST(4364554539.0)/RCONST(1920800000.0); + B->A[5][0] = RCONST(-6187101755456742839167388910402379177523537620.0)/RCONST(2324599620333464857202963610201679332423082271.0); + B->A[5][2] = RCONST(27569888999279458303270493567994248533230000.0)/RCONST(2551701010245296220859455115479340650299761.0); + B->A[5][3] = RCONST(-37368161901278864592027018689858091583238040000.0)/RCONST(4473131870960004275166624817435284159975481033.0); + B->A[5][4] = RCONST(1392547243220807196190880383038194667840000000.0)/RCONST(1697219131380493083996999253929006193143549863.0); + B->A[6][0] = RCONST(11272026205260557297236918526339.0)/RCONST(1857697188743815510261537500000.0); + B->A[6][2] = RCONST(-48265918242888069.0)/RCONST(1953194276993750.0); + B->A[6][3] = RCONST(26726983360888651136155661781228.0)/RCONST(1308381343805114800955157615625.0); + B->A[6][4] = RCONST(-2090453318815827627666994432.0)/RCONST(1096684189897834170412307919.0); + B->A[6][5] = RCONST(1148577938985388929671582486744843844943428041509.0)/RCONST(1141532118233823914568777901158338927629837500000.0); + B->A[7][0] = RCONST(1304457204588839386329181466225966641.0)/RCONST(108211771565488329642169667802016000.0); + B->A[7][2] = RCONST(-1990261989751005.0)/RCONST(40001418792832.0); + B->A[7][3] = RCONST(2392691599894847687194643439066780106875.0)/RCONST(58155654089143548047476915856270826016.0); + B->A[7][4] = RCONST(-1870932273351008733802814881998561250.0)/RCONST(419326053051486744762255151208232123.0); + B->A[7][5] = RCONST(1043329047173803328972823866240311074041739158858792987034783181.0)/RCONST(510851127745017966999893975119259285040213723744255237522144000.0); + B->A[7][6] = RCONST(-311918858557595100410788125.0)/RCONST(3171569057622789618800376448.0); + B->A[8][0] = RCONST(17579784273699839132265404100877911157.0)/RCONST(1734023495717116205617154737841023480.0); + B->A[8][2] = RCONST(-18539365951217471064750.0)/RCONST(434776548575709731377.0); + B->A[8][3] = RCONST(447448655912568142291911830292656995992000.0)/RCONST(12511202807447096607487664209063950964109.0); + B->A[8][4] = RCONST(-65907597316483030274308429593905808000000.0)/RCONST(15158061430635748897861852383197382130691.0); + B->A[8][5] = RCONST(273847823027445129865693702689010278588244606493753883568739168819449761.0)/RCONST(136252034448398939768371761610231099586032870552034688235302796640584360.0); + B->A[8][6] = RCONST(694664732797172504668206847646718750.0)/RCONST(1991875650119463976442052358853258111.0); + B->A[8][7] = RCONST(-19705319055289176355560129234220800.0)/RCONST(72595753317320295604316217197876507.0); + B->A[9][0] = RCONST(-511858190895337044664743508805671.0)/RCONST(11367030248263048398341724647960.0); + B->A[9][2] = RCONST(2822037469238841750.0)/RCONST(15064746656776439.0); + B->A[9][3] = RCONST(-23523744880286194122061074624512868000.0)/RCONST(152723005449262599342117017051789699.0); + B->A[9][4] = RCONST(10685036369693854448650967542704000000.0)/RCONST(575558095977344459903303055137999707.0); + B->A[9][5] = RCONST(-6259648732772142303029374363607629515525848829303541906422993.0)/RCONST(876479353814142962817551241844706205620792843316435566420120.0); + B->A[9][6] = RCONST(17380896627486168667542032602031250.0)/RCONST(13279937889697320236613879977356033.0); + + B->b[0] = RCONST(96762636172307789.0)/RCONST(2051985304794103980.0); + B->b[3] = RCONST(312188947591288252500000.0)/RCONST(1212357694274963646019729.0); + B->b[4] = RCONST(13550580884964304000000000000.0)/RCONST(51686919683339547115937980629.0); + B->b[5] = RCONST(72367769693133178898676076432831566019684378142853445230956642801.0)/RCONST(475600216991873963561768100160364792981629064220601844848928537580.0); + B->b[6] = RCONST(1619421054120605468750.0)/RCONST(3278200730370057108183.0); + B->b[7] = RCONST(-66898316144057728000.0)/RCONST(227310933007074849597.0); + B->b[8] = RCONST(181081444637946577.0)/RCONST(2226845467039736466.0); + + B->d[0] = RCONST(117807213929927.0)/RCONST(2640907728177740.0); + B->d[3] = RCONST(4758744518816629500000.0)/RCONST(17812069906509312711137.0); + B->d[4] = RCONST(1730775233574080000000000.0)/RCONST(7863520414322158392809673.0); + B->d[5] = RCONST(2682653613028767167314032381891560552585218935572349997.0)/RCONST(12258338284789875762081637252125169126464880985167722660.0); + B->d[6] = RCONST(40977117022675781250.0)/RCONST(178949401077111131341.0); + B->d[9] = RCONST(2152106665253777.0)/RCONST(106040260335225546.0); + + B->c[1] = RCONST(1.0)/RCONST(200.0); + B->c[2] = RCONST(49.0)/RCONST(450.0); + B->c[3] = RCONST(49.0)/RCONST(300.0); + B->c[4] = RCONST(911.0)/RCONST(2000.0); + B->c[5] = RCONST(3480084980.0)/RCONST(5709648941.0); + B->c[6] = RCONST(221.0)/RCONST(250.0); + B->c[7] = RCONST(37.0)/RCONST(40.0); + B->c[8] = RCONST(1.0); + B->c[9] = RCONST(1.0); + return B; + }) + +ARK_BUTCHER_TABLE(ARKODE_VERNER_13_7_8, { /* Verner-8-7 (DOI: 10.1007/s11075-009-9290-3) */ + ARKodeButcherTable B = ARKodeButcherTable_Alloc(13, SUNTRUE); + B->q = 8; + B->p = 7; + + B->A[1][0] = RCONST(1.0)/RCONST(20.0); + B->A[2][0] = RCONST(-7161.0)/RCONST(1024000.0); + B->A[2][1] = RCONST(116281.0)/RCONST(1024000.0); + B->A[3][0] = RCONST(1023.0)/RCONST(25600.0); + B->A[3][2] = RCONST(3069.0)/RCONST(25600.0); + B->A[4][0] = RCONST(4202367.0)/RCONST(11628100.0); + B->A[4][2] = RCONST(-3899844.0)/RCONST(2907025.0); + B->A[4][3] = RCONST(3982992.0)/RCONST(2907025.0); + B->A[5][0] = RCONST(5611.0)/RCONST(114400.0); + B->A[5][3] = RCONST(31744.0)/RCONST(135025.0); + B->A[5][4] = RCONST(923521.0)/RCONST(5106400.0); + B->A[6][0] = RCONST(21173.0)/RCONST(343200.0); + B->A[6][3] = RCONST(8602624.0)/RCONST(76559175.0); + B->A[6][4] = RCONST(-26782109.0)/RCONST(689364000.0); + B->A[6][5] = RCONST(5611.0)/RCONST(283500.0); + B->A[7][0] = RCONST(-1221101821869329.0)/RCONST(690812928000000.0); + B->A[7][3] = RCONST(-125.0)/RCONST(2.0); + B->A[7][4] = RCONST(-1024030607959889.0)/RCONST(168929280000000.0); + B->A[7][5] = RCONST(1501408353528689.0)/RCONST(265697280000000.0); + B->A[7][6] = RCONST(6070139212132283.0)/RCONST(92502016000000.0); + B->A[8][0] = RCONST(-1472514264486215803881384708877264246346044433307094207829051978044531801133057155.0)/RCONST(1246894801620032001157059621643986024803301558393487900440453636168046069686436608.0); + B->A[8][3] = RCONST(-5172294311085668458375175655246981230039025336933699114138315270772319372469280000.0)/RCONST(124619381004809145897278630571215298365257079410236252921850936749076487132995191.0); + B->A[8][4] = RCONST(-12070679258469254807978936441733187949484571516120469966534514296406891652614970375.0)/RCONST(2722031154761657221710478184531100699497284085048389015085076961673446140398628096.0); + B->A[8][5] = RCONST(780125155843893641323090552530431036567795592568497182701460674803126770111481625.0)/RCONST(183110425412731972197889874507158786859226102980861859505241443073629143100805376.0); + B->A[8][6] = RCONST(664113122959911642134782135839106469928140328160577035357155340392950009492511875.0)/RCONST(15178465598586248136333023107295349175279765150089078301139943253016877823170816.0); + B->A[8][7] = RCONST(10332848184452015604056836767286656859124007796970668046446015775000000.0)/RCONST(1312703550036033648073834248740727914537972028638950165249582733679393783.0); + B->A[9][0] = RCONST(-29055573360337415088538618442231036441314060511.0)/RCONST(22674759891089577691327962602370597632000000000.0); + B->A[9][3] = RCONST(-20462749524591049105403365239069.0)/RCONST(454251913499893469596231268750.0); + B->A[9][4] = RCONST(-180269259803172281163724663224981097.0)/RCONST(38100922558256871086579832832000000.0); + B->A[9][5] = RCONST(21127670214172802870128286992003940810655221489.0)/RCONST(4679473877997892906145822697976708633673728000.0); + B->A[9][6] = RCONST(318607235173649312405151265849660869927653414425413.0)/RCONST(6714716715558965303132938072935465423910912000000.0); + B->A[9][7] = RCONST(212083202434519082281842245535894.0)/RCONST(20022426044775672563822865371173879.0); + B->A[9][8] = RCONST(-2698404929400842518721166485087129798562269848229517793703413951226714583.0)/RCONST(469545674913934315077000442080871141884676035902717550325616728175875000000.0); + B->A[10][0] = RCONST(-2342659845814086836951207140065609179073838476242943917.0)/RCONST(1358480961351056777022231400139158760857532162795520000.0); + B->A[10][3] = RCONST(-996286030132538159613930889652.0)/RCONST(16353068885996164905464325675.0); + B->A[10][4] = RCONST(-26053085959256534152588089363841.0)/RCONST(4377552804565683061011299942400.0); + B->A[10][5] = RCONST(20980822345096760292224086794978105312644533925634933539.0)/RCONST(3775889992007550803878727839115494641972212962174156800.0); + B->A[10][6] = RCONST(890722993756379186418929622095833835264322635782294899.0)/RCONST(13921242001395112657501941955594013822830119803764736.0); + B->A[10][7] = RCONST(161021426143124178389075121929246710833125.0)/RCONST(10997207722131034650667041364346422894371443.0); + B->A[10][8] = RCONST(300760669768102517834232497565452434946672266195876496371874262392684852243925359864884962513.0)/RCONST(4655443337501346455585065336604505603760824779615521285751892810315680492364106674524398280000.0); + B->A[10][9] = RCONST(-31155237437111730665923206875.0)/RCONST(392862141594230515010338956291.0); + B->A[11][0] = RCONST(-2866556991825663971778295329101033887534912787724034363.0)/RCONST(868226711619262703011213925016143612030669233795338240.0); + B->A[11][3] = RCONST(-16957088714171468676387054358954754000.0)/RCONST(143690415119654683326368228101570221.0); + B->A[11][4] = RCONST(-4583493974484572912949314673356033540575.0)/RCONST(451957703655250747157313034270335135744.0); + B->A[11][5] = RCONST(2346305388553404258656258473446184419154740172519949575.0)/RCONST(256726716407895402892744978301151486254183185289662464.0); + B->A[11][6] = RCONST(1657121559319846802171283690913610698586256573484808662625.0)/RCONST(13431480411255146477259155104956093505361644432088109056.0); + B->A[11][7] = RCONST(345685379554677052215495825476969226377187500.0)/RCONST(74771167436930077221667203179551347546362089.0); + B->A[11][8] = RCONST(-3205890962717072542791434312152727534008102774023210240571361570757249056167015230160352087048674542196011.0)/RCONST(947569549683965814783015124451273604984657747127257615372449205973192657306017239103491074738324033259120.0); + B->A[11][9] = RCONST(40279545832706233433100438588458933210937500.0)/RCONST(8896460842799482846916972126377338947215101.0); + B->A[11][10] = RCONST(-6122933601070769591613093993993358877250.0)/RCONST(1050517001510235513198246721302027675953.0); + B->A[12][0] = RCONST(-618675905535482500672800859344538410358660153899637.0)/RCONST(203544282118214047100119475340667684874292102389760.0); + B->A[12][3] = RCONST(-4411194916804718600478400319122931000.0)/RCONST(40373053902469967450761491269633019.0); + B->A[12][4] = RCONST(-16734711409449292534539422531728520225.0)/RCONST(1801243715290088669307203927210237952.0); + B->A[12][5] = RCONST(135137519757054679098042184152749677761254751865630525.0)/RCONST(16029587794486289597771326361911895112703716593983488.0); + B->A[12][6] = RCONST(38937568367409876012548551903492196137929710431584875.0)/RCONST(340956454090191606099548798001469306974758443147264.0); + B->A[12][7] = RCONST(-6748865855011993037732355335815350667265625.0)/RCONST(7002880395717424621213565406715087764770357.0); + B->A[12][8] = RCONST(-1756005520307450928195422767042525091954178296002788308926563193523662404739779789732685671.0)/RCONST(348767814578469983605688098046186480904607278021030540735333862087061574934154942830062320.0); + B->A[12][9] = RCONST(53381024589235611084013897674181629296875.0)/RCONST(8959357584795694524874969598508592944141.0); + + B->b[0] = RCONST(44901867737754616851973.0)/RCONST(1014046409980231013380680.0); + B->b[5] = RCONST(791638675191615279648100000.0)/RCONST(2235604725089973126411512319.0); + B->b[6] = RCONST(3847749490868980348119500000.0)/RCONST(15517045062138271618141237517.0); + B->b[7] = RCONST(-13734512432397741476562500000.0)/RCONST(875132892924995907746928783.0); + B->b[8] = RCONST(12274765470313196878428812037740635050319234276006986398294443554969616342274215316330684448207141.0)/RCONST(489345147493715517650385834143510934888829280686609654482896526796523353052166757299452852166040.0); + B->b[9] = RCONST(-9798363684577739445312500000.0)/RCONST(308722986341456031822630699.0); + B->b[10] = RCONST(282035543183190840068750.0)/RCONST(12295407629873040425991.0); + B->b[11] = RCONST(-306814272936976936753.0)/RCONST(1299331183183744997286.0); + + B->d[0] = RCONST(10835401739407019406577.0)/RCONST(244521829356935137978320.0); + B->d[5] = RCONST(13908189778321895491375000.0)/RCONST(39221135527894265375640567.0); + B->d[6] = RCONST(73487947527027243487625000.0)/RCONST(296504045773342769773399443.0); + B->d[7] = RCONST(68293140641257649609375000.0)/RCONST(15353208647806945749946119.0); + B->d[8] = RCONST(22060647948996678611017711379974578860522018208949721559448560203338437626022142776381.0)/RCONST(1111542009262325874512959185795727215759010577565736079641376621381577236680929558640.0); + B->d[9] = RCONST(-547971229495642458203125000.0)/RCONST(23237214025700991642563601.0); + B->d[12] = RCONST(-28735456870978964189.0)/RCONST(79783493704265043693.0); + + B->c[1] = RCONST(1.0)/RCONST(20.0); + B->c[2] = RCONST(341.0)/RCONST(3200.0); + B->c[3] = RCONST(1023.0)/RCONST(6400.0); + B->c[4] = RCONST(39.0)/RCONST(100.0); + B->c[5] = RCONST(93.0)/RCONST(200.0); + B->c[6] = RCONST(31.0)/RCONST(200.0); + B->c[7] = RCONST(943.0)/RCONST(1000.0); + B->c[8] = RCONST(7067558016280.0)/RCONST(7837150160667.0); + B->c[9] = RCONST(909.0)/RCONST(1000.0); + B->c[10] = RCONST(47.0)/RCONST(50.0); + B->c[11] = RCONST(1.0); + B->c[12] = RCONST(1.0); + return B; + }) + +ARK_BUTCHER_TABLE(ARKODE_VERNER_16_8_9, { /* Verner-9-8 (DOI: 10.1007/s11075-009-9290-3) */ + ARKodeButcherTable B = ARKodeButcherTable_Alloc(16, SUNTRUE); + B->q = 9; + B->p = 8; + + B->A[1][0] = RCONST(0.3462e-1); + B->A[2][0] = RCONST(-0.389335438857287327017042687229284478532e-1); + B->A[2][1] = RCONST(0.1359578945245091786499878854939346230295); + B->A[3][0] = RCONST(0.3638413148954266723060635628912731569111e-1); + B->A[3][2] = RCONST(0.1091523944686280016918190688673819470733); + B->A[4][0] = RCONST(2.025763914393969636805657604282571047511); + B->A[4][2] = RCONST(-7.638023836496292020387602153091964592952); + B->A[4][3] = RCONST(6.173259922102322383581944548809393545442); + B->A[5][0] = RCONST(0.5112275589406060872792270881648288397197e-1); + B->A[5][3] = RCONST(0.1770823794555021537929910813839068684087); + B->A[5][4] = RCONST(0.80277624092225014536138698108025283759e-3); + B->A[6][0] = RCONST(0.1316006357975216279279871693164256985334); + B->A[6][3] = RCONST(-0.2957276252669636417685183174672273730699); + B->A[6][4] = RCONST(0.878137803564295237421124704053886667082e-1); + B->A[6][5] = RCONST(0.6213052975225274774321435005639430026100); + B->A[7][0] = RCONST(0.7166666666666666666666666666666666666667e-1); + B->A[7][5] = RCONST(0.3305533578915319409260346730051472207728); + B->A[7][6] = RCONST(0.2427799754418013924072986603281861125606); + B->A[8][0] = RCONST(0.7180664062500000000000000000000000000000e-1); + B->A[8][5] = RCONST(0.3294380283228177160744825466257672816401); + B->A[8][6] = RCONST(0.1165190029271822839255174533742327183599); + B->A[8][7] = RCONST(-0.3401367187500000000000000000000000000000e-1); + B->A[9][0] = RCONST(0.4836757646340646986611287718844085773549e-1); + B->A[9][5] = RCONST(0.3928989925676163974333190042057047002852e-1); + B->A[9][6] = RCONST(0.1054740945890344608263649267140088017604); + B->A[9][7] = RCONST(-0.2143865284648312665982642293830533996214e-1); + B->A[9][8] = RCONST(-0.1041229174627194437759832813847147895623); + B->A[10][0] = RCONST(-0.2664561487201478635337289243849737340534e-1); + B->A[10][5] = RCONST(0.3333333333333333333333333333333333333333e-1); + B->A[10][6] = RCONST(-0.1631072244872467239162704487554706387141); + B->A[10][7] = RCONST(0.3396081684127761199487954930015522928244e-1); + B->A[10][8] = RCONST(0.1572319413814626097110769806810024118077); + B->A[10][9] = RCONST(0.2152267478031879552303534778794770376960); + B->A[11][0] = RCONST(0.3689009248708622334786359863227633989718e-1); + B->A[11][5] = RCONST(-0.1465181576725542928653609891758501156785); + B->A[11][6] = RCONST(0.2242577768172024345345469822625833796001); + B->A[11][7] = RCONST(0.2294405717066072637090897902753790803034e-1); + B->A[11][8] = RCONST(-0.35850052905728761357394424889330334334e-2); + B->A[11][9] = RCONST(0.8669223316444385506869203619044453906053e-1); + B->A[11][10] = RCONST(0.4383840651968337846196219974168630120572); + B->A[12][0] = RCONST(-0.4866012215113340846662212357570395295088); + B->A[12][5] = RCONST(-6.304602650282852990657772792012007122988); + B->A[12][6] = RCONST(-0.281245618289472564778284183790118418111); + B->A[12][7] = RCONST(-2.679019236219849057687906597489223155566); + B->A[12][8] = RCONST(0.518815663924157511565311164615012522024); + B->A[12][9] = RCONST(1.365353187603341710683633635235238678626); + B->A[12][10] = RCONST(5.885091088503946585721274891680604830712); + B->A[12][11] = RCONST(2.802808786272062889819965117517532194812); + B->A[13][0] = RCONST(0.4185367457753471441471025246471931649633); + B->A[13][5] = RCONST(6.724547581906459363100870806514855026676); + B->A[13][6] = RCONST(-0.425444280164611790606983409697113064616); + B->A[13][7] = RCONST(3.343279153001265577811816947557982637749); + B->A[13][8] = RCONST(0.617081663117537759528421117507709784737); + B->A[13][9] = RCONST(-0.929966123939932833937749523988800852013); + B->A[13][10] = RCONST(-6.099948804751010722472962837945508844846); + B->A[13][11] = RCONST(-3.002206187889399044804158084895173690015); + B->A[13][12] = RCONST(0.2553202529443445472336424602988558373637); + B->A[14][0] = RCONST(-0.779374086122884664644623040843840506343); + B->A[14][5] = RCONST(-13.93734253810777678786523664804936051203); + B->A[14][6] = RCONST(1.252048853379357320949735183924200895136); + B->A[14][7] = RCONST(-14.69150040801686878191527989293072091588); + B->A[14][8] = RCONST(-0.494705058533141685655191992136962873577); + B->A[14][9] = RCONST(2.242974909146236657906984549543692874755); + B->A[14][10] = RCONST(13.36789380382864375813864978592679139881); + B->A[14][11] = RCONST(14.39665048665068644512236935340272139005); + B->A[14][12] = RCONST(-0.7975813331776800379127866056663258667437); + B->A[14][13] = RCONST(0.4409353709534277758753793068298041158235); + B->A[15][0] = RCONST(2.058051337466886442151242368989994043993); + B->A[15][5] = RCONST(22.35793772796803295519317565842520212899); + B->A[15][6] = RCONST(0.90949810997556332745009198137971890783); + B->A[15][7] = RCONST(35.89110098240264104710550686568482456493); + B->A[15][8] = RCONST(-3.442515027624453437985000403608480262211); + B->A[15][9] = RCONST(-4.865481358036368826566013387928704014496); + B->A[15][10] = RCONST(-18.90980381354342625688427480879773032857); + B->A[15][11] = RCONST(-34.26354448030451782929251177395134170515); + B->A[15][12] = RCONST(1.264756521695642578827783499806516664686); + + B->b[0] = RCONST(0.1461197685842315252051541915018784713459e-1); + B->b[7] = RCONST(-0.3915211862331339089410228267288242030810); + B->b[8] = RCONST(0.2310932500289506415909675644868993669908); + B->b[9] = RCONST(0.1274766769992852382560589467488989175618); + B->b[10] = RCONST(0.2246434176204157731566981937082069688984); + B->b[11] = RCONST(0.5684352689748512932705226972873692126743); + B->b[12] = RCONST(0.5825871557215827200814768021863420902155e-1); + B->b[13] = RCONST(0.1364317403482215641609022744494239843327); + B->b[14] = RCONST(0.3057013983082797397721005067920369646664e-1); + + B->d[0] = RCONST(0.1996996514886773085518508418098868756464e-1); + B->d[7] = RCONST(2.191499304949330054530747099310837524864); + B->d[8] = RCONST(0.8857071848208438030833722031786358862953e-1); + B->d[9] = RCONST(0.1140560234865965622484956605091432032674); + B->d[10] = RCONST(0.2533163805345107065564577734569651977347); + B->d[11] = RCONST(-2.056564386240941011158999594595981300493); + B->d[12] = RCONST(0.3408096799013119935160094894224543812830); + B->d[15] = RCONST(0.4834231373823958314376726739772871714902e-1); + + B->c[1] = RCONST(0.3462e-1); + B->c[2] = RCONST(0.9702435063878044594828361677100617517633e-1); + B->c[3] = RCONST(0.1455365259581706689224254251565092627645); + B->c[4] = RCONST(0.561); + B->c[5] = RCONST(0.2290079115904850126662751771814700052182); + B->c[6] = RCONST(0.5449920884095149873337248228185299947818); + B->c[7] = RCONST(0.645); + B->c[8] = RCONST(0.48375); + B->c[9] = RCONST(0.6757e-1); + B->c[10] = RCONST(0.25); + B->c[11] = RCONST(0.6590650618730998549405331618649220295334); + B->c[12] = RCONST(0.8206); + B->c[13] = RCONST(0.9012); + B->c[14] = RCONST(1); + B->c[15] = RCONST(1); + return B; + }) + ARK_BUTCHER_TABLE(ARKODE_FEHLBERG_13_7_8, { /* Fehlberg-8-7 */ ARKodeButcherTable B = ARKodeButcherTable_Alloc(13, SUNTRUE); B->q = 8; diff --git a/test/unit_tests/arkode/CXX_serial/ark_test_butcher.cpp b/test/unit_tests/arkode/CXX_serial/ark_test_butcher.cpp index 8ad033603d..3bf3f3e4c1 100644 --- a/test/unit_tests/arkode/CXX_serial/ark_test_butcher.cpp +++ b/test/unit_tests/arkode/CXX_serial/ark_test_butcher.cpp @@ -34,7 +34,9 @@ int main() { "ARKODE_ARK436L2SA_ERK_6_3_4", "ARKODE_SAYFY_ABURUB_6_3_4", "ARKODE_CASH_KARP_6_4_5", "ARKODE_FEHLBERG_6_4_5", "ARKODE_DORMAND_PRINCE_7_4_5", "ARKODE_ARK548L2SA_ERK_8_4_5", "ARKODE_VERNER_8_5_6", "ARKODE_FEHLBERG_13_7_8", "ARKODE_ARK437L2SA_ERK_7_3_4", - "ARKODE_ARK548L2SAb_ERK_8_4_5"}; + "ARKODE_ARK548L2SAb_ERK_8_4_5", "ARKODE_SOFRONIOU_SPALETTA_5_3_4", + "ARKODE_SHU_OSHER_3_2_3", "ARKODE_VERNER_9_5_6", "ARKODE_VERNER_10_6_7", + "ARKODE_VERNER_13_7_8", "ARKODE_VERNER_16_8_9"}; std::vector Tables_DIRK = {"ARKODE_SDIRK_2_1_2", "ARKODE_ARK2_DIRK_3_1_2", "ARKODE_BILLINGTON_3_3_2", "ARKODE_TRBDF2_3_3_2", "ARKODE_KVAERNO_4_2_3", "ARKODE_ARK324L2SA_DIRK_4_2_3", "ARKODE_CASH_5_2_4", "ARKODE_CASH_5_3_4", diff --git a/test/unit_tests/arkode/CXX_serial/ark_test_butcher.out b/test/unit_tests/arkode/CXX_serial/ark_test_butcher.out index 8d7971338b..b7c11bcecf 100644 --- a/test/unit_tests/arkode/CXX_serial/ark_test_butcher.out +++ b/test/unit_tests/arkode/CXX_serial/ark_test_butcher.out @@ -22,6 +22,30 @@ ARKodeButcherTable_CheckOrder: embedding order = 6 Testing method ARKODE_ARK437L2SA_ERK_7_3_4: table matches predicted method/embedding orders of 4/3 Testing method ARKODE_ARK548L2SAb_ERK_8_4_5: table matches predicted method/embedding orders of 5/4 +Testing method ARKODE_SOFRONIOU_SPALETTA_5_3_4: table matches predicted method/embedding orders of 4/3 +Testing method ARKODE_SHU_OSHER_3_2_3: table matches predicted method/embedding orders of 3/2 +Testing method ARKODE_VERNER_9_5_6: table matches predicted method/embedding orders of 6/5 +Testing method ARKODE_VERNER_10_6_7: WARNING: +ARKodeButcherTable_CheckOrder: + method order >= 6; reverting to simplifying assumptions + method order = 6 + + embedding order >= 6; reverting to simplifying assumptions + embedding order = 6 +Testing method ARKODE_VERNER_13_7_8: WARNING: +ARKodeButcherTable_CheckOrder: + method order >= 6; reverting to simplifying assumptions + method order = 6 + + embedding order >= 6; reverting to simplifying assumptions + embedding order = 6 +Testing method ARKODE_VERNER_16_8_9: WARNING: +ARKodeButcherTable_CheckOrder: + method order >= 6; reverting to simplifying assumptions + method order = 6 + + embedding order >= 6; reverting to simplifying assumptions + embedding order = 6 Testing individual DIRK methods: From fcebce2ee72cca8614560df722de6d036b846019 Mon Sep 17 00:00:00 2001 From: "Daniel R. Reynolds" Date: Fri, 27 Oct 2023 10:40:55 -0500 Subject: [PATCH 03/10] Fixed RCONST(1) to RCONST(1.0) --- src/arkode/arkode_butcher_erk.def | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/arkode/arkode_butcher_erk.def b/src/arkode/arkode_butcher_erk.def index d3e59bb0dd..4d4ab3ff9f 100644 --- a/src/arkode/arkode_butcher_erk.def +++ b/src/arkode/arkode_butcher_erk.def @@ -1009,8 +1009,8 @@ ARK_BUTCHER_TABLE(ARKODE_VERNER_16_8_9, { /* Verner-9-8 (DOI: 10.1007/s11075-009 B->c[11] = RCONST(0.6590650618730998549405331618649220295334); B->c[12] = RCONST(0.8206); B->c[13] = RCONST(0.9012); - B->c[14] = RCONST(1); - B->c[15] = RCONST(1); + B->c[14] = RCONST(1.0); + B->c[15] = RCONST(1.0); return B; }) From 3b1dda52daa486796f7262f4dfb3489fb5e8bdf6 Mon Sep 17 00:00:00 2001 From: "Daniel R. Reynolds" Date: Fri, 27 Oct 2023 12:04:46 -0500 Subject: [PATCH 04/10] Updated answers git revision --- test/answers | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/answers b/test/answers index 8f1d469a42..87507b928f 160000 --- a/test/answers +++ b/test/answers @@ -1 +1 @@ -Subproject commit 8f1d469a426ffb562361ab2aa1702ad15194cb2c +Subproject commit 87507b928f64be25cf6f8c0e5dfc0ad697b134d9 From 365642841c25429089a404c8568f5475a041b37c Mon Sep 17 00:00:00 2001 From: "Daniel R. Reynolds" Date: Fri, 27 Oct 2023 13:39:27 -0500 Subject: [PATCH 05/10] Updated erkStep_SetButcherTable and arkStep_SetButcherTables to reflect higher-order options --- src/arkode/arkode_arkstep.c | 9 +++++++-- src/arkode/arkode_erkstep.c | 9 +++++++-- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/src/arkode/arkode_arkstep.c b/src/arkode/arkode_arkstep.c index e1245168e0..ba5e4c3885 100644 --- a/src/arkode/arkode_arkstep.c +++ b/src/arkode/arkode_arkstep.c @@ -2031,14 +2031,19 @@ int arkStep_SetButcherTables(ARKodeMem ark_mem) etable = ARKSTEP_DEFAULT_ERK_6; break; case(7): + etable = ARKSTEP_DEFAULT_ERK_7; + break; case(8): etable = ARKSTEP_DEFAULT_ERK_8; break; + case(9): + etable = ARKSTEP_DEFAULT_ERK_9; + break; default: /* no available method, set default */ arkProcessError(ark_mem, ARK_ILL_INPUT, "ARKODE::ARKStep", "arkStep_SetButcherTables", - "No explicit method at requested order, using q=6."); - etable = ARKSTEP_DEFAULT_ERK_6; + "No explicit method at requested order, using q=9."); + etable = ARKSTEP_DEFAULT_ERK_9; break; } diff --git a/src/arkode/arkode_erkstep.c b/src/arkode/arkode_erkstep.c index f21aa2602b..ebc413e576 100644 --- a/src/arkode/arkode_erkstep.c +++ b/src/arkode/arkode_erkstep.c @@ -957,14 +957,19 @@ int erkStep_SetButcherTable(ARKodeMem ark_mem) etable = ERKSTEP_DEFAULT_6; break; case(7): + etable = ERKSTEP_DEFAULT_7; + break; case(8): etable = ERKSTEP_DEFAULT_8; break; + case(9): + etable = ERKSTEP_DEFAULT_9; + break; default: /* no available method, set default */ arkProcessError(ark_mem, ARK_ILL_INPUT, "ARKODE::ERKStep", "erkStep_SetButcherTable", - "No explicit method at requested order, using q=6."); - etable = ERKSTEP_DEFAULT_6; + "No explicit method at requested order, using q=9."); + etable = ERKSTEP_DEFAULT_9; break; } From 19a729c16085a22c19462e20fa55272f3bbbeae7 Mon Sep 17 00:00:00 2001 From: "Daniel R. Reynolds" Date: Fri, 27 Oct 2023 14:19:01 -0500 Subject: [PATCH 06/10] Replaced color scheme in new stability plots; replaced rational coefficients with 40-digit decimals --- doc/arkode/guide/source/Butcher.rst | 8 +- .../figs/arkode/v65b_erk_stab_region.png | Bin 24309 -> 24305 bytes .../figs/arkode/v76_erk_stab_region.png | Bin 24266 -> 24295 bytes .../figs/arkode/v87_erk_stab_region.png | Bin 24575 -> 24583 bytes .../figs/arkode/v98_erk_stab_region.png | Bin 24359 -> 24583 bytes src/arkode/arkode_butcher_erk.def | 402 +++++++++--------- 6 files changed, 205 insertions(+), 205 deletions(-) diff --git a/doc/arkode/guide/source/Butcher.rst b/doc/arkode/guide/source/Butcher.rst index 47fc67ce32..b9654211f5 100644 --- a/doc/arkode/guide/source/Butcher.rst +++ b/doc/arkode/guide/source/Butcher.rst @@ -890,7 +890,7 @@ This is the 6th order explicit method IIIXb-6(5) from :cite:p:`Ver:10`. :align: center Linear stability region for the Verner-9-5-6 method. The method's - region is outlined in red; the embedding's region is in blue dashed. + region is outlined in blue; the embedding's region is in red. @@ -940,7 +940,7 @@ This is the default 7th order explicit method (from :cite:p:`Ver:10`). :align: center Linear stability region for the Verner-10-6-7 method. The method's - region is outlined in red; the embedding's region is in blue dashed. + region is outlined in blue; the embedding's region is in red. @@ -1041,7 +1041,7 @@ This is the 8th order explicit method IIIX-8(7) from :cite:p:`Ver:10`. :align: center Linear stability region for the Verner-13-7-8 method. The method's - region is outlined in red; the embedding's region is in blue dashed. + region is outlined in blue; the embedding's region is in red. @@ -1098,7 +1098,7 @@ This is the default 9th order explicit method (from :cite:p:`Ver:10`). :align: center Linear stability region for the Verner-16-8-9 method. The method's - region is outlined in red; the embedding's region is in blue dashed. + region is outlined in blue; the embedding's region is in red. diff --git a/doc/shared/figs/arkode/v65b_erk_stab_region.png b/doc/shared/figs/arkode/v65b_erk_stab_region.png index 9246447907302b1e0b85acb937c44f5cda426e4a..8a132997539f83c6747c0fa647d3e091a784d488 100644 GIT binary patch literal 24305 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 literal 24309 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 diff --git a/doc/shared/figs/arkode/v76_erk_stab_region.png b/doc/shared/figs/arkode/v76_erk_stab_region.png index 69381ed029b8408604b28769afce36ad74e4c82c..eed5da6a7cf6f59b922167b3e0fc3e13f76cf8e3 100644 GIT binary patch literal 24295 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 X8ysxc)~uT$uDjRd0HeUz;lh6b^WdYU literal 24266 zcmdqJXH*njv@Kc$i3)8a0!rv6D2N1!isT@TBtbF~1<9b~oCEK+I#I4=A5gdu4pJ9p*lf@AjlCF zf}%EpkT@U+aV!Nfyz^kqBNu*A-Xs{hAqWE&{YPYz-U&w`fbAfS7a z2HxUyS2A$F>T<)~%fi(fQJ2$ElaoJ-)3LS2sav?)>btl)xShqRIA73Bb$9rE#~ z^B6r?(oDN!p!%VZxnEwXme9g?Jo8L>;Wk3lG3OghA4hIqQF~^xzBu^LwB8lj3)l4X zDMI;2m#n)dt~BR1JyK|I#_Q*6Ka*j|EWv+Si0NZ#y!LfGwbkFWP5FRu>fyMs@R#wS zHc=JU7-bkJf>#x*M1Ko1VL9Q~DqaqzN0#mXix=s~GN^--FM7>C#;|j7u{QS4dDgA> zJ2cOYkB|G!SDc>Bo-|=4C#&^fb{u@Sl;%>a<^1ROZ&SCgqMsj~K4#PQbZ>JkCTM%= z^n?O`*t@0AC*KwqNAuC+C`mM@w| z563cUf$GJ){6hPIvbpx>3PqLEXFMjpXKV7#P~bbie?KW=i&@|4>F&P3OfymTapb(; zy5kScjw;E!#?Q-hdIUXZeaD#ce#g`A6p9g3Y(b zzWRQ@Q*0zWXLDu}%Uy=|J5>etR?-h%<>cI~xaL_U#mmbpBXjW6Z{f%i$<0O8Ty6 zC|px+_xr0aroQR-jE77xU-W!+HCscDX8U~zN$CtNi-b;q?Weo+an+^1FOJHeXMR9< z`ohcSSh>85R)Ixp^111r`%J>0Cr7(7s;dWYyxj^c(=RZhPbY3omoW?Yew@!}(3?@?tg^DQv$IpmZ~d%U?cfiruZoJwR^7o)-H!rV)&3g4a^H)qcUrjZ zyK*|diVyF8ySTvZHS9fhWSDdd<|C(kp>n2hlb+vVb?Uov6`jsP-9fD{d*$|Y{y@14 z+bH$^@WEdC2{vINA=7}hZrCh_6*Hbyy@e)zlkLw1n+**Neq<=q7KIlWl~R@LC!f2X z@No~W)B04Zslpk}qRIgvMUAUr(0*>L$bt@MxA z79Zm{l=JfQy=H&hnjfs_DKIv3{lWzk!FW`^$GCZ~P$=+PN3Zo%K1tk#L5~s;c?<`F^XD=Um5|h)Br1>3~Eka@|^2;sol!* z+n5(0a{s=!G0bLr(t{;nc$vFu5`--<#{y6Y{+L-Nod%Y37&et0! zrTyRae)pOmG}P99acrS_<=aeusRK-w^8FJphh9EU;Hz$vJx2Y@>koH-iQV@s^^?OB z@c&g8%~TPdCSGr!(Wuj111{A|pVh^OGJmRTXwdAiMS)+^&~I4i$Y^vbAIcj1_U#+% z1=md1ovz%g9v&WY5*EWAy(Z{w`g(!OEFW}LG^AE6k0=1i?wE;UCsUo?sV6_5_%^gJ>UDGG46n1B$V(XsD|JkCt zW$i93@nRMxPoLH~FtD~|f~vTELt~rON)`V#epNeU8TkF=(k9m}oMBZm&;rOI+EH^i|V&&V#y+>bfyp`JD z9Ggzf*DKIwYi@1rs%^^A%IJzHVacn$y9(PgJ1fh#re(0gtyI8c@t53ib0Rt^d-TWZ z=Jk(lcWm&rolf_E!51S&7ZHFfsj626H?=yy;@eW~I?*i4b*thUgNb`w&_f|bTttq`dnPJ)@EG!(f zIYM5PM71>8>t}yt?Cqb9t+g({T6xJhT*2>|qPm{I@8F$8od@5Q4+jn`XciZePTf53 z>gwwJZsd-}6A8PAS1(=qtSPgX`6^fH`4302s-gLf#8Mf_TZCBFm~4mMLi=1AHtAQj z{UaYEx<&ogXPNwm@4WF~jj?HeCMS3IbQrjeJH+#T1|fR=}GaU-QR>@t|=oK5W;KHSzc+R5Z>{#Q)g;3WMK#c$tsNBs0(QJ+)j z*L?N$25Qh68V@QPMsE5qePVc?q`qK-n?BU8I>5I2GRc%`FRFj?g8O7USa)t8I|s-0 z)ya;XjRo4h?vf>E2t}#^%u>E0?c4nezw(P}^Z47oe4$)TXl+$nD;sh?So}z7lCf;i79WLy<>0nwy)u zMC*2!TM~Ko?PmhBG@ev0*LAUN!j0T)dBoRWe%@!w~5Y*+xX4R5&1Q(xr29~K7E>A);9|f-F$H5`b2;{oVfl{^sV(MQ4cSm@celEEu!m6$1kURaCyf5v+lmBd{gemr35h>cYMJ zy!r9S^fuiowJQ%wwefil=@Ht$ap776x#1Yks=e_q51U<`O1)q#PEG~e$DDZO?j7gr zvb4Q7RO-;%-jcN;j9DX|EVlSaw)Qer#O}qA@LDRE1jQNHw5t|FYYz(6^EkQ+Wi0B$ z=y~;C8N3-qH!iF{%(yASWHW!Aiz>H@DIMZ9#Q5ZYh;wV zEm8R(uqIotCS5A#TagXpAKnH!%FfU;yu7z#2v0=p;yw2ke}CxcAwPEf_!;UN4etI| zZkvl1a|d6mycX62F3;Xrxh3&ry6@V>jk`uHqiezo`i#cee2Klzy<~e}K|X;`a5eo> z3Tm;C66&#?IeS(oDdwcOhN1UNL3ti^X|@TZ4o+wCHlk-YCU+j$Ktg{s{WptT}@F%GntD=F2w*`$d*`z67mBSYMRwj3SFU|OeGveip9=1&QP9*AY zug}etzfst&Y}2cuT;5z7i;>y)hCmUp^Nzb~n7)YaZkcLq<5&e`MFG^9@-1Ap#*@6l z#SUdQAIYbCI~)0`mtt5=7EDpAd_qxkhV^OCzE2Sgqfcm;7Sss7L)NS12O2*+m*;BBelj{6!dGS{SVe_?vbyX3<*#II&~ z6J@ibzM-!+{(8s5WB%dZmS@XExlW%RhMW;{g@p>YKM<46^z_R7x0cn@#BzDh8kfC# z_6(PhBysbXY>{bA_5SxG;U7m9Q;W3xDk?V3+O5Io1nsY+C#sN|fs;B30TmJ@T{f0; zmSKhZ)VF3z7~U+Nh<645wNuDO8S(Ksi*oLfb7wplYcZp{D{Z~f<6aGFKa|ZVU=Qq> z+HzKs*XwicNM1>~%_!#hqalhe@oOK%?+_Al&-uZv@0v0^F=h7M%?^*)oR+#Q3TplD zFw7Ylu=p^c%`nKsu3S%=rz0Ay9o#`!t!h%+6wViE$ zF~TN2K+muiqCUoKBu<%Ci$qaFLqkhT3p_~t!-wULeJ^TL&78{z9HM-eEb)pEmU0F# zTrl9X+}u}E&14{8-@Qv!`cOTBhK2ZRJsly^*rt3SQ6)PZV|q~3+ufa89uVY_mzP)K zl|ldRs23B!{Db+BMf!DVTJUG7Vonm~?-37d&!>9~4mL7NM;d4% z6!>%x_V-9?G8VdPGS(8$fmch&gUzrdb0X zi;1$+9-_R?)vFKF(q?w9z%J}I+mk)OZFg!6@5Kb|Do9;ryXbj#lkSPepQloOT@|52 z&gGuoA-&JOZE~MEqaAv$Wg=C``tG(Wo2~Obocv(r;NZ2jZCO({7KdJanuxODcu&V- z%qaMUUSs*XO82Q3dP;2PZ_4h(_L?ZcYQ5uTr7(lds1wb2PF_8hi;D|VWi7Vlg1+Xj zUv(RYCHGdp*9uR6GU}qnj2=FK2=U?si*v=q@nO4z>402^!ir0N8`4Dq1W%GPJ*pV@Y?cS>kkmMa- z@WnOs|E%#FD0T1}yD!dfT5V9H9g2C8mv`B3&d13ip)4qEVFFXC>tNrI3;DL!v(6B-G zYnpiPH>N_V)c&KjwG8BWy|BObM>M(H(D1a~y}9)#-OPI=9LGBxbgd` z0om>h-_0NO=eM6fHd4r*naSM%*CbrYaq2~@gYUrV>MCR}5*IHHCI=wAG@RY{=?B@sOE4{zNbx(ym<9WO)Bx_%a`DF zo#4p+=d39yDbw%9eoeF7;|tu|VYDK1ohx}ZH8nLI951Wcafg6coare5%;R>FSW^ha z%lFfES9&}2NiUR6@6GzS2TH9yEyCDv67rWW#|94h&J^@#LpIpuQe-uexw1asvJ-IB ziT=SbsU7NetzMZ_dG_lt6p%9c^Xl~XSsi=c_VxJZ9tePt-H=VK4!uyKo@?k26kvZ0 zb>WkEzIf6p2rRmCd0kyPa|W(!(XVDE$pvDP2sB}*Z9}`N+A^^5{>m;t<~)luL+zmy z`rvn~K}7CS4YIbJ>Zi0|)o)rN?CtlZsp&_F-POnK`*6>qIu z9!=L*%~$5XduOoYvVku4CkC?|7Jd$K0KuS6nJZG&(D(-R(&z?pqXpZZuhNX{=1Yfk zWhJPCA-m5u(Y|s8GwBxiRkU{&Uc-25dlw~n3&{ul*^#(6D_vUho00&zX{T)cHyx|1XCQf6HI0)xO>&;;iv~1tn z+F~@_%6?|BjpmBFSJwWW!MB`kMF+P-5+6(XdBWlV$ly^mbmW9cQ%eiA-(dQ{oGGL( zDZ)1V)r$uj4my!`_S>*j>)r@m+6^dT{s3n2&lOd6BA#~1u@x9yp9RPbVy+W z!)x1)jCfYn0dVs%f|hrT@oKX`aLmGv%fuKA2GZ> zH?ULFa|Ua6`SM*Mc`hi}-Uk!GFl>KTS9FBOA0;P7&ISj@60Je@P+aT^D5DlL88w2K z6H$tsJ@*{24?qruE?zW_iqXh^o0au>Ql1F#cv5U;5Wq8Z^6mg40mK0))bx)xV-oHPJ$q@ z^^&m(2cB431Kpurzs^ppZ*#>j3``|0r>@-%bp! zy-Xc<=h9u*>cEv0wX|_FSX}LYM}%PH{deZdFEJ2Bio*>iU2~1c|h4FYhFWtZDddi>abz^R-P56DZlNi7ta_=aF2l4zde z0O=E(bE?ZKDJcOs69|A;9pF+B=_;=ka;ZK_NKCZ0w!RPBbFz~N!5-Sf;qis`jB2{N z-2gB4zB0_Qe+fO&Xz_Vnq-N%r?@nNRT7 z1b~EiKiWh}arD3??17%+f1Lcko#ns3c%GM&V^Ct-0e5D(G>YZ|@B-o@yolsSIgQ1P zyu4}1`!Bjr#(IuGtcE;U+)`89mO^b|QsZ0NaY&Ax{U2_m zP=y2ujtV%~+kn`$wY3G{6r@xzf$#@ZMfStBH5f|(10d6t@Ln{B;CA=!U2rP$b8edH z(tCj9I{tY5Vb0TQs&nGO#d&lmEVsjm0SG-EwmEuF;DnfC&e`g@vVkr%A6)O&H-psE z;qv9?#gUIYt5ajTuVGMpCY7rI>%u%w0pcqsCkI=gx~H$g%?4_HFpmCm7a71SbLJTv zlF2)I%AAZd?jgt~ZACznxJK%a?^V4*ys;UB&lk9(^FZf9Nw|zi~$n4AtPjtk`$Abyu6#*mI4$5^Acl+H6 zh3m_#EHQ_kR_AhR{8OLbOisCg+gX+mIEfhphLz}5F>&|1hIImH zypb*F8pRvSPj`PTh#jm38l63uq6#Ht3J?l{sLPa;4BGP z$R|%~prWxJ0cR18xtgV>HLs_qcf-oc%EkuJ6Jx{Tpo4vwTyeY3aWsp4^vbC8GR0Ce zZ_#Ez6_fCdch~r18dpBj%3Sm8v;G(MkN^Ootj`h9@qU2mipL?$9hD#d^C!RPtwS$= z+SeY4pKO7fa)!&R-!%su#ju%%?X*|~my*f(cK?uPx30eWdcJ7j6xXg<%h&}3{LlQ(6q+a1MC5y01XGY zS8BX`N-hfZ^;bb?!^i`-bh)A`aL*T#@jLoTkQJ_fl7Z3zaswEuLvO{zBjf1+2TqDh zo!}sSO%<#X`sLtQlVnJrH0IyI?WU%tuCBTdCjt7OzcB}e+4PQQ9^m(9qy$P6fK=O< z*PUmT@HYuCXa=m0kDsR*+z72^_Wrmjuz{4}>$AO--q_gaw7m*3Z!`ah2leXHl}E zx_#fI7E$-))hx85d{sV9T zz&5;n@xl_g5U4{6b8{~M8Uhr>Y0amSP^sb-ot>RwS3VLj3;e>B#BH}+ST#>I@#(Z$ z@?v@2o)h59&gE4woj{KPf(WMiRLsdpPw!FjH{g|ypEX!);)r=SG!Mu-Or|?f0Y^@X zNqWv2%$A+dLjADpC0_l)$B?)NA1^PvW~f4d3w0A(ZQrqr+xo8bzrw|TcjEswNc`V@@=IAs>C+3P zdo;}FF>CtL00zU02h10++Y)Gz1uvuzc2{y3$VUE>*)ovFXc-v5%zVzNTZYmdTz>;Xpte z1I6*15-3grPz##+gPqSE7j^l$`#%E4S_51)DIq~eU!PY1aQr^-9BZ?E!ca+dJ)y3X zj4Xq&cfthjE2!zF20tHP&E$)FVVDBr^7;PK{I53vb~~7T+tx*|_x~<(^xH_m{sZUn z4$cQQEKxPYALb2&wtLM^eK>Vu`OI)#5QNE8QHOQl?y2#B5g*-_0F(+VAI&6u$+!&C z@iK6@qN1gcsRp))x&2m~uyz6dVs_TC&ZXex#&`CQ*}NF6)#{gBAL3xe>sxNF5Q#5c zy5#A(4qhpd3&;T%*!Do!1cEfcIx4;#l3KtM6S>R+w;|_Is80xa@vj7)Ye;k1-^5ME+UteFFYADml&jX2 zP=IM}2!`bFzl9iMpvmDzAvv?}WddZPM&RBR!FV#n9ABG~?_^wbh&84*Nv&k91}zS< zvQ9}!4Q)KHtdy8DDZ&d~?tb!dq@BODsp&kL;;AI@n^c>Eb(g_?A6Xjurv%k6LV2fB zF9pNKBG@?g3ulZox0f2(YP54PqmY0VZdf0sLbK1u#JcT1T*Z$cpHKKC%frK?o+{!4 z)PO&mHrYGHNvOTojYd7I5-oV2SNplTE<@T?%_;!`mUUHycy%R93+56TAJt5@A%{C76z#eaHde4o1Z+B~GPy0X%@uh_a@RKf7{Vc@YJ z>i2<{V%Tbtmt)~Xa35@EPN>{ntAK)G*yqm^*pYfVI)}k8fkTA=L{7tOQ0=`0I|T$S zn2{M98=H-(?|%e>wp3vs1DuTpBN2z5S+F#!rJ=_AC(A)wpv>yiFy{%B{05Ysu(=$5 zydDAmu&bQH`ibBmc=3A-0#5$RS~4Qcvf7KkA%Dwl4hNY+^09I#9>@ujC(^1 zf#MeRq!S(W_4QEY0qiw0%^Oy%;f)$Bb|asDC&< zVtm30;0d7jE+r8oYV4msXgzf+9+(4hNPb>kb5qkKn0fE}aSC01eN@E&*cL<)nuQ@C z^ns-s0e4+Q)aBb7)qb$QaPSR;7m%tIwBZ7tAADzT%Wh$y6xz1hmn4$S>H5VumX81S zMd)I{wmTpf-BnQf!j?6@apN}>2)l)vp@&&Y-yy-9clA9H3eXn+RyHIPs&4xYhdgv)ijcJ4f6;)N;X*T=t&F%2@|Qdh z$6(p}>|SHg<8v6z%KM2!*KY5w`OeB3kipe{(SA5*h5w}7Uu?k#<9Q$Cqr@C~y-Vu| zWj;=hICwS3Ihr;PZ-Ix;Vrf0@Yth@w5Z=qfxNt-9?)yaD?B32)<@Q(R~@lRn& z3SzIIzQ}{{sIRL_i4WWv7(QWg9BE%nBSc0cmQkck@xX@BvPln4x!-+v&5|D3rO@$G zG7vcdHS%+-3~F;4VC46|x&&T#=Rum}Dx!-Q(lPa8ODp6VM?qi(5RGZj-Ws5U#Zg)I=k!&qfW-TNagfup4!*U~%xEEg|JXKw%=`jplke`7X3%9I zdjb0II7DPl7N*40L5qb#pX@D&LjacoB-_Tyiu7q_w7fiLQ!sEMPXpHb zAYRb2O8%HEMg&g?pZyGMR@1_=?DyZgm0(WFx-Q&#RgRLOHS3nGSObT-{_qK9~)6P!Kzo8N1_XZguA zWC%=~d)7%8^x|=QSGT1BHZFu3%Mf_%gpe-Q{M9)MH_c5 zy}OUHRdB-+1f}iH{CIPH@wqVU`}v-NwBZPp5V}o@)ta4t_KTLUDKHjSp!D0!e;T(3 zTEIVDmzBeT6#5{wCJmroifMM;8 zTE7nn!C~e~q-Qojp1vlo7vdnfulQy2Kuy6M20c%ylJ}ubLCP9)M{j zr=*1XgHy8p-t!-OYkwDofJEILk7xX`rzJ}#b~b{P688baY(ZuvPj~=-TL?~f+cJl= z`$*Q!7W!_>VZ|(zz=AJjbaueoi`;l2o+v;_j>2%{BKabSQX= z(D)6>299#j$G(=pat23g?a?dGI)48}@u3s86}v*s^;w^8n>TOiu4%{r!hBeUH|v!= zqtAVANIvvd4lI;_Y{#*Tg|avvH(h%3^IjKnTsD;S8F}Biyc}y%b8Yzixdo}RNP9-d zHe>ja3*fN2B4!zNXO(7_=E=t)nyA}4<=S--%S`khD&O~aU$L@LK0wUR!ux!B zZ4apOUD(t@hLke-v68}ZDHaRU z!wq*16Jmo?49`g$-AXgR^$+eAe8KRXjp3~{+@Y9Xx2dOKn%};$-QhnH^!l*$mslc7 ztRVf2-gh_vd0!0QRxuF22w@J4iBqyg)R^uL(fe6KtgPi*z5e2!9wfLLUJ$>%@~gN# z3kqlWp!lD^*RJak5g=G|GCCaMcW^p#g?5x<9BL?R)C6%-xY!|Nks8Yx%Xl`4g$OzR z$k82YL^dMi6rhOFHxf6K6INSV6A{EAgZ`x8gYe>v*Y%!&Co&$%lxN{I$K*Hg=R1-k zvgFgakauq{|1NI!L=g838f>J%KObR4{aJAI@TvEkE5BdVF(8Bo5(FIo*<)TFy{Nb*=3abGMh zgz>eae@Vk71hIrWQ%vKUW{-?Pf^l%$s|H-2hU_FHh$R@5V&a#FNxDLU2(Ao15;5TN zNeKdMd+EJ@tZc(8EZiprZ0g9vOGjf(<9{7SU=czn;Pxr-=a0xruiidK<6 zF&K7n@p9mQfFT#Dyh337&GtqOAw$9scE6H2FQS=wt zI*vrubHtM#>5Dx~*;xljB!HU03XbX_bUfRvg$+3kT9g?b2YT)=~pqB0G>I&MMG5hj`s4DjN_;^B6Qe$njVC0vN zNnFH&vF2)lMzTMw_CMKh-VXu>!*ofDq9b2lAmXFe)vH%^b*%}x=C1)MJJ3MaT1zgp z3*gYIA!mHUA%<(_?uOzHy*?^zrO{h5JJin{e9}}nKS)>)&Z{|Zu5;fCPrFABnSt<5<%UQun7WM$+WLG z+@mnc4It7FeL>S%2dF~O*HlsYNRSP~4SP$0Cj1AeVNYuDH?S@pMS{0uaeHnR*P8Ex zfow`k0K~j`oP5c;{@9J*gVcy%Iwx)2g^p7z9zE)9C5hfyeCN#%`4he5S`m=m!-X6O zt;7V|QPUWNC?|VQli?&e39=Lx^KkRBk5McQc}7c#eMSsz5&?wR*r$|Z87TruB*<%G zEa&)*`m;Cc8>o@jC$OBHH|kZ6Ma9SxU&i|L;aSj6^Uh!LCq+0Zu$)%bW$O;;s@{sl z;m@sb3ZZ{LhrhY5atXcdegyEpz^6%KijE)^1c$RjrPFugB=C`OY~Ze7WS zt!@Pai0bPvB0>mioCLy0ow?quGiMQ52~I*&11Ei~P9pK|(WAR<q(T~ z^nf8YK;Einb%%-|oNyFD4hXTYa~cYRt+rW_;M_Qz#RZ*t@OanZXf4a$1uY^d1*eq%ERGQg_WsXCk5+*I_+U%Yu#p+N-S(SAXkfCy*ehJnVDJQ*td+9H9)xn znlbBHH85A0pMTL~x(hH{fC@Z!H*ZZCdJTE>f`V-9nof$0=F-Ql6SDQc!Z`ULSNs}> zYiVvqiT1yQ$e*_K;XK{^Uo+_djDQa8iLlK#kfO|a?f`T|AEUjW)S8~XITCgRXK_8LI=v&)0D%M z@l=$uXZ$D7Of@dy%pODzTG@b`zqkSLPnh6Fic@RWyc+{A0B8<1(JnZdKx z@eaDS@BwAw^H}vzP7eMMVvxo|mpM9ou$v48=><@|{3Q+{vA*tZ zh*1{7k|5?Hbf=q6KlL63i6FiFF?#yFwW1)=%JY#NC!&ZD!GtKfOpGNg5OjEe6sh9R z(=-S|9iNDhrX~*ClOgV{PjKNFaKKxD^MzyJUJG4^PQV2l5~kprqo5ZVLhGMP_rU`% zudI+9X(t;EjtVD2gkH;s9z(T0fJQs4eV_lRCC5la2O2|!UK2uf&O&w1 z^ekZZ$GMD_&}4iD5sdoksixW4S+oTuU=lEi7C@;-uYpw~xtu;Z9Z_N_MQ>T%+=WSF zz0V7)s6v5pwFfFu;V2&3SHi3vECwoBh4&Vt& zhC#LIKl`Q;#0=XzU;$C5pHeI-oxnvxrTC&ki3}rOeDg_gK1X$68YuJ7l2YBYk*9~0BjS2+-Z%+j4J+; zz@z~J3*yGEP3|y)rY4)D_iM~3Y@xgU#;{mw%_4iaQthi(LBQAzH2061PhkAv7%AV? zMWdf!J|Iq+(1HUmq`aaLa)#@k4tw`2l)Cy6=$xqVWiG?cvMKN}mIM+dl-#4Z1?-DA zpMIqbFdt_&zXJ#5y02POaJIMbqm#2++Q4Ahd#4z|+QWkn)|`rl-6zUolX;BajJ=<5 zrNo~QwIAQmDj#6koeKGU+Ahg$AilhNMI|&LVqoyMC$qBym%PtAmU{z%%B|ep3a&z4 zq0rQ|8Fa94(B0j=6@XG;7Im&b>V{!}3NUR+v`UG$oZllu5DewpQ_oQ)&+_;ejcnm| zDwr|gTs(dh4FgS#50fa$yv(HVFfoySo%druao1&F<9M>vVgVNi@&H_5R@Mz`>#Z7j zHO?ex=i*MPSyGP$^`m^Gm{Y&vG8izDb)%Uyx1sUHix;5!X_(|ItoWS@QU)NaP*4se ztolg+5F1e(9VsmX8&&(7aQzMFDuSr-mJDp+7*v!59VYHz_J^pC=TJiyy91Uf4AfCp zn)BTuV-lp5OQk*NQ0F;o7Av?%_KKfsk*u&?fT#jacoDFGz3sJ&;PHp|*Tq4tHJK5U zm7U$VJp@<7KH{0d0S7>q{XMr!@v{b?U?9Qm07e!>=FxzjzkBy%Y)KM`k@6u=W3^#m zaBv^E4yAUS`7kj)?mpAw1f6-87#e8*?tK*%O6mR!Bh(bQ?afiuzaF5>k{VwN(E<1~ z5VC+Qq7wE@pt9*f+rh5pE;THHxz7#tSU{Aag9h#A1Lpe1*VKtB`7l((fZ#CTb=ZP- zZvnT^JO}FT%_p?l%lW$SQNsi9%+OE}hJm~GUGKAT5=-m&BS= zp_|+s#Sr)?-zQKC@$h^Zxrt$m3zlS+Bd0=wCsKsuJOM&4D=S0gFrjcg$vgMb4REE;lhAL{nkia?LM_glPf=_1>BID;wUK{1|{5yTw9 z&moAgdH)Ilpo#+jfK>_=F4WBkvSnIx`D-fF^C9n-;RulZpzT|~W;P2FLCqmM4)2)- ztm&f40t6>;W*R{=j%O=WXr^?5%TphG=qmsc=qz7B8}1z;b(toWho^LPbi!%_wY58e z@w~3jilfLnNeto04m%D$z@3Zm+47@obF@Mj0SVSkIVA^DFd-GqUJ%5r#dScVY9t&8 zP_483(O3dD&=fN7v(a}YU;v;zfkfk`C}(0OD400p>Psd8VGNc7Bmhxt;IO?F>`sUk ztRQthlZ8KtnCn8~!gQn$K^Q|Ifx;YRK+IL(EjIN}uuKeS_QS{aH~S$)omHc*MSDx8H)P z<-&5FjWCjiQUkK#doNC4k>F&!T>aggJ21pYFp|QsqC0BfW+_zSf7R)sY2Q5|1<_2V zELLLVJuQ5jZ-nFo9*dY?f-xj9<>4W6b3lH{Ka#(Ro+O!u68q>zygfl4$ck%lLWz}3 z;fKfQV9#-K#w|{%x0<@XPMKHbQDJPVCTi3sMnS4P}NS6~)3?DZ0Ou5cQsjZeSJv8B(>xDL8+P340JnS7D zP*(+a020xI5!#?g7os?%m6<(!>K-jZIL}FV+o4@SrV)c^X@rgkXot4HPTPMOJzhi6i-A+=;kuA_&V0`dk14_Sz$|c)T20 zCQbX#V(WVg8Bq7!bGZc|i}Y(UB$&YIvq>3^=CS-Ncf?6BBA1)cAhs<>eDsQOiTbx) zNR1+Sp`>I|4I}U)G)OymBE?pDeCPN{*pYPb$&qH}3#Z!59uew;&uxy%iUHu2r?xL_ z8O3=RiM#*@Na=ksE3qX(LID)*xDmDcsg?5|wCk|J3uPcV5DW#tSV!{FV}8LdZiweH zDj`A^fk(1zmB0TX%mRl=WyYO^Q~BxTMwKXTXdtr30PK4A`ts%rzte~;MVuude|EMC znP1Y%x-oXkbI6ORA`%qk!=C|35$%^gJeX9vqH{-m&r9K)Ec<^ zff0EHo+$Y~{mIfVaj&st_vOf1f0HCXr2o_OW>id$rddYT-yTl~HzEA?nsui6Pc}r5 z1YSMN7^M+3($>ZfOEuk*AiT$(6|et%uh{zd(D~%25kWt3Y;aJ1`yE2d-qYNZnef|* z9Z9D2hz%|^2+(=!$yuo+epK&$1l=Q;kylN3IUGw8nC+%=4hyS{UZvP-zk9?WK|iv@ zHlqk2;E9x@V4lRC zS8gXV`&_>0KQMiNOV9vDNwcqe|O zfeKzFdh#<@+@_a0MI;NNPu#hpiVACWP1CP~A*{s2TbeS2i8>)^kyr?mu}@zLMC9nl zicpe{ma}E9nw>IW23iCoKm9E(WOL}q;TbXnFp@>y@uuy~nls{6RR1sm1Ti-&#%j;Q z^bg~AtfdK+^71GlKxA9==7WIc6**7ZTk>T85;vru&F3PwOlKa{P`oFG++kYbLA2Vl zQ!c|1=0^b}?NY6u{!0ctypmN#r{+q>W38N5MRz>5q3#emUC65WYtQJTO0ALGmrznc zR>sw;l{B^U@sK0CO8wYT75SU3=GJiW5q9Oz$@-~QY$OEc)!U>Prn;++9Q~nYIP%Y( z>$k_B$zs9SB9l{{b7Gwo z^{YC5e{D~?RzCzf>J90$Q$Fhf-U%iQuh=-p?98>`W-nduD(m<$ zF@pC|xB)LIZ+D1M-WD_yU|EV=5_!!IJQAtGj3@E0X?eNL`Qska1X)%%Eb1<|oyeK+ zfGzdzwMJzib}yjcjp4TA&NA0NN=!r#OYei>x}Pz$(K+v7C(gX66xwA0t(HNuOnxz?GArTEii0XL$Qf{aVMF8F~h0&J9vg&$7r;$b}y6fJC$w0QE*zzgEb^ zDMG~5^Pb-^n`eA08?1k?z?qPsrAtW-Ja6Ft;CW@U&D#1I7V(NPWi}x^68lO&soMNO z22EKU7_|L89m?2jwG>MLWfVX2s$;pYpKWJV&oN+1tjGMNm8Bq@l|eQS;Ve4(ur=cm zgm-cK%jqkhlkgV@TnwT&ZrxD)%Wb0~Zcz53NeYC^8DC52u3nJ8bdx0No-C8{2QN>Z z^^#%!WM&1$`hTGC54%e-LGD#Un$laDKTl(i6S=K?Jy9DMCW+;cVkin z*KK!ciISfaB=iZ2#K+`L+${ytxFMz#kh%hD3{@(ZI zy0X@=EK|w>2NC9w99hiG&t=Foj!*F~{Y-@WK$`p3YLh0o0ccC)VSD!pjaQ@?RZap6 zK#3)Z-3T^mIOR_AQK<)@%|V&q_pb1w*1e(emvAP@Z}3hCWy8qjP>Q2|Cm*4w*xDp( zmZc>MmI33AeVTeAH|?-$&K}OL{!TcG;U2uaFV`=kl5qI4vJ7FJ6Z8s{$YP_*Cr%=6 zM;+OEBiNt8&#KRy3SeMYoE0%36n7kgmVt=Im2}2qlf)OaFXwsb-{ev-paI{6JSjOc zXsVj213vYI*eh^P2nB;yv1#*Di}Lrbu(JVZ?{TV&jCsuun;Fq!cSy`U*unuXDT2Q4 zIAxf~32XO)215SHVm%cs8=eG}YJ9Gq<|tq(NPb7|3PlYvT3@Lf55BU_F-ljAiUPP# zBvPP7S7qOZq_qw&JBe0g9GiM7RByutTXeICpF>`O9DaE}{>B%p8$72`@Enn~6jVxB z)fYT~lKK&I(7%8T9Bdn^l%w1Kklp{bMEt8{WtW#BpkV=#Rs7dH{{7~^ zr-`IMn=k% zW`Ey;>>pHOos+JxOpJF(nOadP92}FBv;j|v8JP35MuP?@*=!v@Ky5e%9dn|U6tdOl z;!h<5W^PDv&SP3fRGJw1^%82HfBIUiWI;%q`|4Hew{Om9#|J#Mqo=Ej(S#ceVk{0v z0{s{1m=_Qmp#S59i0u_`-FnYZvAJcQ-xd5`IYj+Z0=XQ*M_Fr-4j@xo)H-heI_ z2IBBN>npwfwUH%nG3P-8=+Fk#6WZ?J(NlGrtzW)GxoHt0WZNM6w`+Rzs6?TINrmnT z3LBwKC!khJmkFvZUIY~=v~B+ZHFnL-5wz=IC*Va1+bIOWQDQTbr2{HkCbSpUCp)eK zvnwBoKBB--2<~#Nb@-*N7^@sA*Q7z3E5%6ECZO@OV`EH&4Jc+ zYvC*R2djXN>^YF2n(+6+^DTfofT|Fh`fH#qo5@5Ljwgx5&1mWBiULXpRacH`A@C~@ zt<{(SB7m9!-Dt=vY<2Y4fAIv!s>P)x#%&P2!_$8NzI1roxBT~~n&0KR3N+lnqkWc5 ze*UBUZ>*Cf)Asu060~ES(SoJb$aVv&9949I2{evF|@y~_)v#(jSM-C2-jfvgj3 z=cxSn@876K8J6}E!b-6v4H|Z6C;D6`c?q6HaS)4FNT9yad~+}y z143eGe^@vA0o}sTYGNEX9}3Dh^vOeiA!cRh4~OTNDBL}!36J~vje`Dby=EXJ)-YuM zXcGwQ5BGId9NJOfwD4T44|FSL zY8U1ZWaD=36{9xLi2y(ST(GAqw8GCdj2{gDtRYv@Ex&~XN#1S3s(D9+g(Spvix7QT zesD^VoBRHC+m{a}DemXr;JhJ_YAbOnO4ROo{)_0SJCnh`y(vGue|NYrbPmhY<%~Us z6MA;`Ls{cS%!=nVuaIlz8=Lc6f%_7>->lQwY})4E{_(nSu!YK%fh!BAY4F|M+XFGG zxa&AD37YKNATI?*AY125#)}t1!ouMXz7<3F#?16Is^5G6{=LP=J4dww1NUL{6 zlarfpV^l29tpBf4t~3zJy^oF-R8&Z)Y(uVO%QB=yOi0R-gsd@?ohZwd%8e0^JV6lXP*E6e}3CJ$G-leJ;So9y84Fb zzD2Y&^`c#P*Iy+nDt7euhu}10aP;Dg8q%Tm*4BQsl+on;?Rv);IrwP^vA$1yVRPtf zoKCvM6hP_a(2!!F{HlajR}02x>=ZpNV)m_DTNsw9fV(7Px&@6HzYT=^oYd59rly@BL<=My%klK~7Sxh;rdG^~hks6t zjMTTYOY6GKeS^{uD+nUaAHUXCj$-+?hw^;d-`@EhOj4XIJL0oPd#~hD z7fu`Mv^ZGV*c>Kf0A+#3H>O?z-xj@z0fB*O8oq3Jn0WhEI`EQ}3Xb8^rv}7_j~;D8 zs@Cd?DY1~2tf$eDBfI702Y^bku^Tkv4ALqG=7Es83S(p==;#<4Hp9gX={!UM7|*nh2lQmTCq1aEJ0K}3DIsym^BI56^DFgA3fQ}eH zf=Yd3_Y045C}PitgfQ(CA1z;cW^;6?CgS0e=288ZGDOU70{TEBZ?h`2Ga}E&*vrGY;5K`rS*O z`VvYEIDdZDPvKSSI-=w|_LKR$sk!-FhEy7cOV7|qMdTRBK$sjmd06^)ShN+uClc<#o^{_`(@*I+gO7F4NNhhJ2z|;5B;8C&+l?DH8r;YT0jqi{gXHtN%lXT`f#02l zv2f+K_5k4RBCgRv6JHNhp>;u__>X_Tpm0(J{(|7>&KSO)N&o(Wi;GLip=Js0ZV=c# zyt7Cv%q!}dLWrhe%$AUlfH~?qzI$u6ml=<|2U?0DXt*EX!xJx@uFdH>BlPX2E@yu@ z`oU2VDm?n4U*bwmh+5UFBCJVfRaB7Lp1LZC_SP~OhjV%g9BTgx3@cPtSAR(o3w7&d zh^xBs@PUPXiX^jpI_s+z?U>9>!L3_4*RK80U)nsKX_ID?GZf|DS)|%7!MtN<5GO3D zYvN>2iYU=p=bAA1YShabpaNew;5zmkCRbx^Nya<*=Di0<4f(ANmAmXKMXr14MhBUi zn5cP;ND*rt>Y)=PeuZeLB|Cg&CD|s&;ePk#Zq?5HE{rqzg{9LoUqbJgAmyxA#l zST>8cs;dR%qHt7eXXh)Aa{id#lqSR`<^FJQjJ+wWxcH0YbH{|+Eahi_kr-Kw#ER_{ zlLgGroXJ&owmAZKDyuwoxm#`H#`Ncnjg1x2$5G_%e(#U7^v=pZV%yKGVr^&@9^}+z zWf9fYlc*4OOOefbSr6Z1bY1CtD?3~Iwb&j`{uo!}7UQwVrb|>4+$|=TWhPc4J?0{B%Q<_ zoK=WaVsdM1!=ckP@IR;qzpY?QLWE#E15_Q z2nHW;3_29AZ=BM>upS5tbF2yOF79e?S5Q$2fH+m}5Jml0t|&aqo^o&z9{OnZTAe!8 zX1eOn(Ur27Q9@uULg9j6my}|^BB^$Ec5EZgLf${$#r$(K(+hK>`k5}pHu3TCa!J>I zPVLwgsM*`o+k5`U*C5)lX63lPX~h6UvP`q@$U=Bnaog1Y{5(}cAQ==`4KvR*V^xNS z9n17%b<+}1Z=p^LnTuS9cfzws9(Gyw@7^1TNF|~2^PY9Ud94ZgnkbQm`eH*#snbj+t&e1s^C&IemTo_M_r4ErWyFnwr*`X0ltZ zr9WX`p+$m2w+0ebPe^p|^7Z}r=1nPDNON<3L{OJ3O*h_6OEV!aOmu!6n&so;BL{-h z@xQOKRYr40PEI5JrS90OHn-KiTcC4cJDq~uAB2P!9udn+OY$}kF~yRMdi~$v}Uj;Xj$ zW7&-*WWzUh?A0T~6b0xD;W%P4a+fD)WASng`wi~Kx_Fd@A;9Ap>--RIZ#hAH|OJnrBUx>3vvYWJ0sijksUjK4sdxICz*vb+xEe20zvyKHrgesQQk|$ z^(7zzxeUrZ)(LXis&G3gW2{ zAWrv`=jY4I$V5>=L;xtcRB;FiUXUeR%Gs=9MA%#e>lvS+nmeZo|M&yx;c*lwmX?;G zp;gY!;KIf9ELh0)JF*#!7^=g?$A}kncyLK^VBK@lGZXDns1RG1>Zi3@X zWTdjde?&4`=n7g7%BXPc&u<^=JHN!JWp|(9$r)V7%`HJpGNzQVopG4VFnEedCmK~< zKgh7;??&hhwGt!{jvU-gA~d)l%>h~Ig+~x*kzQW%C)tY3LuB&X@$t1>T%BoqdxnQI zsFrdsAtJ&R_4HOn)ccJ+iGec!sLO8p`mB2gBbQh*GBW&$sDW@0k2->zA`?Tm*D3K=E)J*}%~6#`n>PQ1k-{?1C**x(S1rb7to;2OQ>Bg^gnO#;Z9|p* z_wmr3g*7xZe0_cIH@9v!4-fwVjWA%P4t7XBHBUgofeA&S9rJYX1_8nd<4PF1jBZZC zZa7@_zN)~bmX;QX++byMp2T714x^oHt2~N|$a6zNaO$X-G(q=ck4O3C%a_@-R7Brr zf9;W%&u221fhH?je{m9Yb#Y)2R~q)Gw4PLY{bDpLrhWQd|r=6SAEG^tEs5k-bV88TCnF++%C zo-&0(nf2|f`+1-D`Mtm2w|(2UZQnnid%L$5>sr@!Ugve3$FU##zMm^lTl3h)b=%hw z1hG+7MOlX+=sXF6_5nRD{*rul<`Dj2uv0nXNDypH)cvZI_ldi3WldGwNIdS}up2i`v5VzhXbME7&PM7p;9jqONxK(Y=i^!es z+=}COQjb6EU~cMUX=}r+XL-e(5I-oab>2x>TugjF_rCoy65=uvl1&^b_X&cVP*pyp z=SKP7>F&ks-1q0FR^-joYVXq64Ptk$582V?P~|YTZWD>rmgaDp#yxh+p7qz()vU`O z9c8tn8MHeiLr0f1Dpm(clmfCVu?V ze54N_@XJ@B;1_MSKxX_iy7T|r52dMKFtr`|&g%4=w{5%Y_|_)JcdClNu|FUn;NA7L z;S0hmBAaM8x^k?Nb)8sRS)5F$_%+u0XL-^${ffJn{q(n5>aR=F^^K|`{=+S)XMc@; z&K72oqyIKYZ`JhUQBuX&$vH7;cE;2izn(nz>2KfLGWAmpvVH%ol$Mft{M#=3^juxb z>G}P&$FI>}BTYlED>#Goi+z^!v+k32^6@=4%yUTSvORI);b*H*&aX6CGGYpx9kg5kHU>TMp{jLPl|NBGJVgiCAZnXNGnFp z{m;sBWB){FL1KJ-uF;k6UtTLN{kT3OwRi8x4K`zXavQn!!yUGZb(B1d+Q`Y0KV24? z3_Kq#9N*vE==uA5L}a8vs(}Po&UDG2W!rBbBaHPuCyQpcAGG=Iob9u`U{v5z`+lA9 z**6q9_l%)myLRq;`s~?QYkGHq>*O&m@8e>=xIUOvYLy)}NPQ;% zx_z@U`uV1NTlbO2`rIA{2cMUWGO8cnxI=PPBH{S$<3m@2XGb^Yj17GICQ$Rnw!63| zL^%F?drrE;VD)aJJ7(w4d;c-`R{zAL(IrG&T->WI@|KP&B`w&vRZC4xV9%aCBf?L7 z7LunDdf(p??2d|wndlEEd2x!QZZ~H7BRgDqSyXSnPGi<8rpa6OYloJY~Lr7ESiP92goZ`BA$5 z*nM_}9!@T|o~wjSt*fAZ+RKwKS`=4)Zc4Ww13`_ zHZ;t&>s9Jv)ZjOt``jt$g(8%52G>leXSl zbzEHDEX{pjGufc2p0D%aHVbBCBvepeO-pfkMz^(WekAcpb3R>|9cIv55G_((m8DXI`vtd3mO3tVPDuepx{4Na?fcUV^L7eTjepH< z>>n7oFp{z`7;ZB0<#j*S;&EXWkpfWqr8NF`0MzqB1 z$Gf%24J$}dXWv|&Z`Rc+TAHfa?R~W5ezCQCeEOyO7j67)Dm1a~Bclee-iH=G2seDInztwh& zgDQ0~@`8%@@7)Vs+^euK{OtAX*ACjUK1;cxfti}oGR~vT_C_n^J8Ub1FfEhLvS~4H zeGDZlyq7xje`VGy2+H3N3gQyK5HK_MHQV~gkt3Wk4;7Jh@34u6JxMdj9*wvd^V2*i zZLJv+oNl6K=j-#w3=Iu)Y&y$>xJ=^6t9i=G@9h|>i;jwjm~S||3D>j4Y}$BMFF4E; z85s79xkaY?=`(GIDn2jGPbYjfGc!{& z;K!qBbF51~Ti=+VZY0}Yv^Y^vEgn+DmDsAqb5WwV@nB7_UDlQMQ$7;>{1xw8Pu|uV zvXff3Zr#G{&9VI3~|LH*u%B(xQuA>*1t#O)(B zv&=S5uOElpYwHyjHReal0+~Zi(wjI#yWcb&o5LrU1`Mr99={HCkc4YBV&ztA`F9G6HOw70iMb_i~I?j^TiESj1iHOua^;paGwb;j?FGrG zK@&;MkdmZp52QF4Z*}-zl#HsUNbj;8{}{1xP|*(+6*Z#5#)YTnA5Gnrh^noPI;f?h@*wU%gb zA)%^qSFc`OokE}4=Jox{zKWv2OjNdNqs2#3H%KTU zC~gZA1(S_UO`)M1)x$+XTTJquk{wD=iT4T#eXOl@PI1sSe&nzed6VYTv+VS4G=-6pR}65cH}0gIeBp!4SbRB-SJvhG zgPc=&4(5Zi-$Pqp4{16-sQ!gyRs`gQz%8LJ;lY}4(b@d$vuL{5(_W_7izI z+Dh=*vu8uKQLaCF4w+A08y>#oF6+bLogRM5w_g6%6UCT>Tw|Us52W6!*w~~EZ7%4q z2+~h8$#=gIa_>x4RaGN7as31F9nsQ`N9SGLQBcRuHb-$J=jNU+UJxA0cqphsF}r#; zVa};qN7{S5T5&^{TmME(Z&NZyOGTOV`SK0(38+}^^GPS3#oqv22xSuxZIX;S-sUv; zYu&_egmNN)lBVs3%Byw@2&jOG}R_k&dVS`M?3X@QxQ17MXjkX?&M|>09QR9P9oi%xQ6qNrB?YsOT$4 z=Uha7@KEagomz`1MPHvp&FBuv;sDP@iu-X&xTuNGSZWS}aOmr?V>|zFI^+}5&h=KG zQ$nq2u1RtYp(YNnpu!?^YEq9x7ucJd7|0I(3ou2e|?jJ-2!b*j8y2xjwxou*vN81}+7|wBFwfVTjH79Wv33{tkUw zgAVhyMz`L_eW$e_|0-b_XL8J>&$DmFV?ugq>8H?#U+d!hUXS+f-np|6n8EAk2R2(E zB0TGtFM;c*uteS16!1$`Rkir?=s;EQczcfPg8EmsQ!hSS7HbTSuf6X3KF0L@&1Ezv z;e7T>Ki+RDa31?TKlG#~opJkt%JkIvxsi~Ad+oPhn??=HOEY0T_2Q&-o!&N&3sVPH zlLMv(YXnUkWXVa*$4ux=U!U&iTG;(+ZRyD~#nX?fzrXXNp+gbn_oe{nN6WcSVYaF1 zdBzIu48`KO4yzXD@3HD^x8ji6a7U%jv{F?cKT`Iczd0kt!_)irD&1_S>yxaX&yPoO z%DQOK??aM8&yaWDVy0h4O5!0Zbtdp=MA=@Cev2{4bxX5Gbe9q^M2?`6v zA=P7f{FvRDS&ti}Lwy@`A3l5-jYh5`Z~DvY^CpPd*=}DGgP4ejk$zTV?_VdS?Ra^4 zZp#b5hU%Y$%Q8q< zH7CWNxu@3GpBP-;s}>YJN_YGA?SYE4l7y+LsSqtXmWExsb`6?Id9P~a^nAMEm`R9N z0G%hdVd#SFthU9b6usoeB2QO$rjFg}VS6qH+iz^Z!x1?dE@Gti_1RcwFWs+Q%pYm@ zB-VK^j3f?HoVvYdoxguMp+;%6TH&iJER>sPRkp~KmXP?|oe_FOP3?AwcFvXd-*f#z z>b|z$0f(bqyH0d%)wLXMh(idW$#@j=ZD1f|w^LZz*ztX8-ZOL`(z&#J)Ai{$^VZqf zqc^yA?b^bxv4Y~}G$UE*-61n;lLQAR@1_?osKp441NX#qpEfk~ni)RfE@@HFnZ~Z! zdtg{XN=HX0KK6WO8=od+5C8Q?-`4$nTcM?2;^RHPqJ<=N%H~jBv6EEDa$3mwoEs#x zl|OU*ZLnfB(nb~Br{bq}Cni49;qtDhb>lXi{}sKqEcVd#fwG90m^6xiWA?X~2%0Ik zXRh7eIa{1P&A0rZb<5p#eM;^`OxNzzZ;Q1Y3QIo@OXtc>f83uIEVYoGtuqFMkEcCo zZ)<63nVg)w+otV(5Tbczvu-1pZ99lvSh zC4aKYUXb{dFDmD|PIdA3_#lJwK)cW5+HZ}Wo65tr5-H1WU$ZP*(@nxTpD1{HU`ug#(IDC6)X=!KpJ7ez zFKlizl-`m9{DI2)XQoLjn$Jhjl5~^w6kz4>%?$tX0b;Z-B-4V=k3;PK~Kb0 z(yrr`4*;=OP_D1P{}v;M%%ukI!BUVCRbzt3^Z-%2iaZZmHCI|Da$5L_js#cB&jJlT zduet1&K-44O>~0}kt$jffs?JDW(_&{&810#4gefppIA0>s=L@b)K=Pcg3@mMrSZrpnjXi3&E_l*+siDe znRq-Ou~@xjYf{p49c)UG6GuJIp`3UBYS)KiSo@efZ0l(}N*y z=BgCNTZhj`^WM3ATjzduczO>2OZ}j|P8eP9kH=EW%XM^*q!2OVS!{qiPJERv-@o+c z=?A6+?(bRsLqobLE*2)spStWTwIgVPHP10 zWtOBDm^OvC==@Xjm-CHzlmUf~n40z?OFZ$Mkj~K+X-z%bIv!GUYZI5xMBWf3jdtpY zRac>Vb$H6D)P=T-Pg0GG42=6E?F~{}katkV_P)?xoEhmqAgmJ0MD40{yHt z0|OR(wSmkaOULZ9$vn93W;_wV07?&1lq@$(Mak%A)6+3J!%NUw8s zvXdd^*2TUu_?+XAW^%zrz%(lKZESVJ(Vz%eSy(=&o0v#;oyoL#$F9sYK#SC7e&Iq#uKi*96UAQh zScoBl`kD#e@7Ut(7Ut*rM_PZai`-?uZ~>K)+5)-#eEQjHxpUH|HP7*4qV(HyMD>}c z_c>%wC2De9sbPL2MIz40eY`*L0R$4Y$thHy>icj<@YG8w?**qs21=Z6Q=%4?FT^t# z@Z1O9FJH5gCM>e zn3)p!S?`#mIlOV>2C8a`6PGX^BnAxbMJNA!e9LOk-wiZKjX8K^^V365PLo~o2M@ZUVFsQFW{r`uH~Z1^j!o2f2?_gb zj*U^HCo>aM=~4%i7lRj_7af_tcvUgYKmRS*d%QtO?&#qA26ft36Uz2rxvr?Ihb zE$5SU69@EhPd(cLn}RW~>v$w>Iv$6ICmI%CsA8Hw2^qkx{Is*y*Ed%dznl*;x3Kt) z1`dom!T}lg>%}MDE*Sqh7J)+0payItrKJ548hEoQe+v=2uRO)`gtoTWm9JUgw@}{I zjUPXLJohci7Oh6>`yJat*Fb!Ur)5eskjjDl;IF5o_-}O+qO0Y1#mfNF6mT9K-ig? z84%tFE`PDBe85AqY)0C`nDh+L-++yV=;1nVk`ES1&|gJe{ROJKlamvb3?N~(jkTm& zx29oLhYFm$eeWI%x$MISBT(!<=fQs?W$f`!LW)H4thI2|(D;auNYHO;YI^qcsXvwB z*ymbV5QPMbOazJ!rOWE|X@3$#keCcT;FavtLKc}+m8a1dyjfIK)Ch8Q99s z2^%bG$*9_1JL*yfJB1N~6bfyrs;k4Fk@vvIKhC;zh#$R)5EzZ6=cL>aI{BF_Wxjx5w`5Xi=lD}ou%QKmmCENL*c#-M~Qw+E6*deHu<_;_Z{POtm*4E=J=nFcH5NL+3{IbrY zAz?_YYpuT}CpUBem@+xdK+7(aDBuarhckMz{7eWSV4UfO7VBRr@8ct#T zI_|>b->j=k4}Hmgu$m>&*|7Tt=@|8fBQ*H7x5QcFu&xYqbu+W4*5()5vM;w$*BQ0L zNIc0zRykO{1WrIy{x~A~<43Bi z?7Be$i%SmB>2QP~`XsCEGP>SJ;gCwLe}8X7n1g3;d<4#ug^jH~T2|kfUs2H)z0AtQ z`may#L#quLhP+~om;}*R_e4?g+*?0DB$h2(pb zN~j-t;@cH|FNjlqq5IFuERY_+5Ar(L^Tx);jLgh#xBh!b`08VKfqBu(Q)_3Z&17?O z6J{06**#=_L-4&tTKD|^YRp*qW>zR~jaKc4e+Y@jj=#fx#mR zWoaN-i;-PQOq+{zNNMe^Z14w2vzLt45!;_}B^KL_+zeWhKPi>{clqqJq4nebD_~#w zZ`E6%uXyxt;*S+rKnDKb-~Z1FLBAG!gGtt>{QALX9qsY7NMWmoa{_PysgYlmmysMIkODGJ6mKm1!}$0k+S3dkx+Tlp}Yao zx)c-vJpxC7NQ_(>y|JDR!YbNb<{dkrpT>lSvh3I)>onW|guRXjNTnEn2$A$TSr=e$ z5K_3^S2rJ@m8VDUWMpJOYgw~lYXd^AZbC zQ~}jA^hpvFM6_vN&_-UkFaX*KwD0gtIo(>u_{7Aap&|9CBIIXiRNx);i#(i7N(|k4 z{A3VMiO!n|VrAb_g6ytc{qNRtZ6SmBD8Rv>RnTOha!jp5a$q5&(Lgy7l#$6tRiiS} z8PvpT-HO%)0gn2(j;F7$kJ?;%wL%m-iwwS&%j-uVf6S}XLgawiF3jwfnFKz3qhtU%q+17`e(sGr}zjt5VF*TrGzDpFTk z7y_G2?y}PoEc>|l$rb-m9v=RW@?e$8JOe4>?1_SazFo{ zN=_ecQ#D=f#!_p^%I;ZamE*^+bQc%3)|R?bk>11WJ`|6O;v>JF+(8XFdhFOi%f^9x zGGKr|Nt1cUui;OJ=d%Dz$N><1^zvTW_m_i!IUzCv1TbYuRTo-P3v4=NxMqt1IDs{h zK?Dv?p^of%vXF8Ati0!MJp~A1H%WbXu#HW?TL>cwn~u|Yn$WR}Y*>rW50D6A_x^_N z4OBLI&z^w5Kzr}xq$HL3W=oX^dJ>ni4MNxBu|oq$HEeu&W`AOB%M1NUuwDui%N==+ z09dXbdleLn=bOWwJ5qEKZcio81YW?>aZ-Ct4!FhXQ8{MOD@(<(raa=}8MqsiJV$TU z?G3s|OI8+MG%*!)ifnB9X+DV(q@QMJ?}58JTb)?^QgWG5fR~zRaIG8(0c(lx{{{54xxP( zRH2VgamHn+*&_WGamtFCCd;5P*RzRG4q)c1f+1noK#j6C+DXVLbtn%H|3}>dS8LwA z0x$vAbs!NpA-HD`_5C2vNetND{wHQ*a1i=AdQR=Mks6tVACStWL&w2>nRg3?B=ygv zy?SK_)KtA=tID%csAO4!TaXvr=Lf@az?sV|@6yj>mOi2c;dB90sry_bLfY}U9LFOdIuK0Ak=4aN8JPJ{FNR>-c++;7 z9I$5Nb|I5uLuvY|=`KONq*sVhcu0aEa)cQl*VOdE3WCnR$M#*gv)VV`XD^pIS`G%-CN_9P4{P-CD9^G_f z`Bwd9`IDss%~O8racrO_>uPI_kgDX)rv{;6Q*zC9x|NEd=_hF)^6@|;$|`ICkk29S z(LBDutLb|}|9cgTF36Kek_owIKw%>YlaltN)~tqCZ?ClUJeDCcg7XjIrTv(jceku7pp?0-wB+%*L4fsq<(Wqh$=bN6az#r!VG=m-ilsv8L+~2qJ3V~SV%w4Xsl@jW zk~8E`caYtjU7ES8lsZZHOr+)*Mg2s$(26%<$F@4LRvjLe2fD>c;k}Xkvpu&PCF8Fm{qs9$Bzo z=pt<*WDfPM@+0;|_*d~>Jg&NTsGrw~R*co)GtDI-zt?ItH;4TW-l&NS{^m?90JD?y z(&ojrud1b(>YcCYa(y{kM;}eh1eGyxZ@nhQ*zR28b8n02My?EtGm|eS>>A!Mz9le* z=BFM#(?|1~-m;bFq|_1}`bO)b^&Dv%_A~MO5$kI$cXvLoZw!AxPfx4>K+@lB*br$W zecWp#t6_aAUkz{nKSyRvJ$gr;TN6}0Jfiz(M$slLn=8@3i$XZvFJp)enMiIv5aEAI zc|h7Bk5PQqb-g)Xy|SL!@hg@uB_c3ni7%Xe;k~9c@g0CjhCRJ)Zt%N`54}IJN+aXB$UXylzh3-G$75|(eMKU%ds%9m@T#`~DilAS z%FNvTVk*{}aZQuCRS)UTDf4P74OK?QDHpG`u*BSNh5fZ5)iaat%#rSZC}P9C#S}Uj zry+~s#^{E;jUFoYDc@#BibuPdmP{1@awIoqGlhTpBQ>$r#{Vu=cKH- zF~9VEj~zfKD6`M{JFmPYST{j$UY0hIB>W_C}R+8eer;WS)(vm)= zkFSD7>C3s7GNeZnWyj0o#zJOqI^P%cvm9;>Gf^ zqrc_rdQ^FjV@y!+L=;iVw;Z`D5KlMO{08UQO=PTbQrV5~Ncqloe^a9wlSr7*gLR-?{58=2z3Sv$v($bn8d+ zITOA2%0_N6^J{KkmwE*&20iM_GiUqQP1La;-E%9wz}MW4k)S_+_vGw*)OVlhsBZLi z!wmLlZV&a%bfUh2VWTpKRz{@ZTUE*(t7=E6ot%OUWKBT+2KZLNM_L-O4*OL(<@7(t z0K%kJ2<|wpM6H#D){>(~jvS{*ofx~OwDywfTH-B(Go>r_^y{7b_dAyQGr<335Wbox zC=B_}5UKfyv2ho?f!%P|fpM8%?DF?t)p}!t!@-pHlTp{g^m2P#MwK4h?;uLq1Do!Y zEDegf6fBSDbc=lOWC-uQjzst%Zw(>7Cv`N2YA*mouw%c426~Syk@aLY>Rr_X{_qM5 z3rk8$iip@C_ck&`)$++d2t&cYRu^r0ALsDX=bOkMIs_IaL3TqZtj4>A4YKSOb;xAe z)X{Pm&xKumd~#+Jw8S+%C62_4={|L&7F&Q$wQ%JhN_^>6etO#B<}V|@~rPy^mOH2G*!?_oVY7VOv& zzlcM=^4OR9Q3|Y?4$=?}TLPJn9(Kj;kT(W0uTl1tAqbuuWekVos7LYylri+%G2=KT zdT#qt?v4s|0q|P%G&tMUs88gqL^^^bu0j!`|JsBPw@%NZ*IEIl0b=rR` z6aP%@@|@G(KkvpdTgOKraL@)adkjARN%@Ii{CS!9o$gX!QU9F(cNj9{KL3^6z^K0$ zDMcarXU~94zt3AVPxPiZ(I$C}rhyIT_eX*uhBxE0hp4w8!vcQ8iCb275vCTjSS;jb zaMlpjL0&iKYn$HwjewX5fPMjX8hvtbRMc3OS3~R}a99oTDyDbVfis!8gZIJDiyGxO zL&2)x@+}1JCkFtc!cTk)LL_KMKr#b1u|n;4c($4m>`QebZTLtHfK!4R%U~(YESorF z4hRU0LO{P4u;=xz%Wy<$YTjQk->_ci3g7vgvFem0LS^+`_NkYEN16~^KEV|8;!9)&?lC6+Aq}F!I{)ksWnXH zNj-Szid&@zo`8SUh!8(QzYm>vx*%+dxgr~;ZP-_yUSlR=Wo_t`9z*Wyg%JoUdM@x7 zBm^qM;_O|TU_d>KzgR1wv?k$Xr#@6Ia0d0&)!kTky?fF6 zaL71u+pO8U>-DQz#kjs_!{CzpI?WJ>I>FU4NV>tg=9;8$)K%+ki?qLkw z&chk)6F}tWr-r6i_Z`Nl)&w>&Q?uO{SSQC`z%);9V_$kCujzSC2}}jn zjSY;%UtIE^J8k?e99>*zIGx#w-Llbv{eI4OvKO$kT0G~Ux*=fs2=(KSy zDBTZzd-z$x%$L1zZ zmd)psERTcTVwbx3m`!DVMh>m_*%TRd!O{BTD@ccq{fy6dg%#Uiz;Ce({q$AJj;dDern7b z|0_H@dFx=I1clO_YyZCc;6z(yA_i#Qu}IZYMGU1Z8{;7^!bP2a_beSMh2TR2wzr$$ ze!{f+w84Fb)bSa6SEj2Ef|ElUf#V!>dhu8WhkoXmDUvQ?=vBa2fm)rfBS`atH8eW#+Dp z>{36{eV471UGuSPiH2?sg#Mp^aubaSH5hCcI$k{5l@Tr91<38+dhg9_cDeKLFum+Q z6QD+U1l(0L*LMfR|8!yGXDcu{U{$g{nC-2Zpvo7V3SMrIkEy$r!VHmtq3{%<93aNI z@F*X3Rpt${1~Qx8YT7|0D;-;wG6zfqkK2U$N8K-l`-j4-9w81#BzSOq5{l?o*vElQ zQ5*EjbKS8G2I;?|yuA9K1<~|EUzDc|E`;hiObk(aHDZN);`waAOcMeis*B^lx|$=43t3M9CkYzk3VF0pRm5X#;W)MLhN%Q?SA@@KCvl z#6g|eT9EYaJ_S`5)N&8|2np+_F`o(wCCAChecLxA7v%o2-%s(>N>@1NomYvir+)RI znverPALM&~w#o7I@l<`55mNJh{I$-WkXsdU-zY=-g524ERHR+^j~7U^d%jra4zZMK ztPm6sa9FfLK-Xma1Yyd+I<77-c>=2wbG`5z9Zvuh>sZq9aSc&?HT$0-o^ z$pOf%A@+;7^sD;#}XDf{^ukrnW82Cs~OVax4LLSQ8{pxh`$mLS&1u_m54e!hT}$c&K4veE!fS4`zwL4?+|+j8(>AXi&_=vGWp04;GH!wm#E4 za;EJS;QV?gx`R5>nMf(BT@Ge_o-!z#SY(4P9N(z9jea$*#UcRKIPThzb4QB@vOaeu zj)#pRmMUWrJP}yQ zD%gQ9BA5ys9vwzqVEvyUL?`h0@PU`O9C|Q+PK!aD=k&kN^Ys}6$6wq-KL7C{08j6~ zcN3FoSt1e6TLYQDJ~RF27)%*;@3H?Xfdl`bDDn>JEdb8D?05RxPxBDOhO1O`_8#rQ z(Ib7zmv-Iy7bauv!%UVR?o+1U`?{Nt`WbnAW?-KWo^3Q+OpJoUzLdbe}8x$bG!rN$DvMjl?)Z65XzrR0)LWvFe^teOsl1>GK zd|%;eC4qAT5A=cJTyIB_1E82=^D&$aaGD=iW8tHW9Z3F$p5ciKB>^ssFw4t<^?~^*1 zI^67q`8^D-rJky?-Q8-B?Pu6}12N^(bT#~&Y3tt?_S>Bk+kzglv}28**s;FCD^mki z*ahSB6=ekqlT51a>C;kPb3ah;!H^WKEQ}fFsOAdECPxNaK0=$a zP)HHQfuh?dBqHK7k`Rtft56hMv$C>c*+{cbBdJ{!w|!SwXlR1h=z$swq;NGgH4BSx z*iO9<0I`QvxZ^}EFmu;KDcj7`Lc5DDWVV6KhTbjXG_2Ioe0#A$_3s_OJ?$*|zxO7a z-vOi>J-gp@2e|d}*DO`~6VMs3p*c|>`e9p^rLJ%_%l+I*M4QZ!z8Ny-+hWgIn^yg` z8@7@<`us&_9UU8^Fi3eZ>7<=H07JByyHa@lb!ES4BVlMV=wp3Q3g=s?KAu_)7HOUp56Y%N%XTvdLHK^DmaZrJ4LK zxB)!H9`Fcu!_-#+IQi_Qv*2FJKtz!4QeR!bt5r50w&FG*VjiFiIh32;0wSFt(Sk5w zob7Kx^ta&UmVHmsFHG+Z~uS2QFnYe9?#vcXQzGXTu1X|ChF;Tf{!Vc zmxyv2Ms~`jb_`C#%0D7jaYz$>Wr44H?Q)x)9#MhgIvmIthmUh33l!##yjR61l+2N1 zqCLs{&jOI_xB{7bhhwfDzPl5>A@!ZT$(x2cBQ>d0strb^wK7r9Nf@6tb0Bl>J?ddhL))&wY{Qh(AxmIGG&yeI?BU?EbO_}(Zb<608 z9$BVDU$|@b+4a1Ivx`R=Oh(IxL$9RSsn=LK`Xb*K3GPQ!_tMcZ9VPXgMW=O5QDHYp$FY$vh$(Xebn*#@YpYmLc4^S;t&uhWV%G>GqLh}og)3c4r^d~cQPfW z|1Z2Mw_ZoIgsOHMW{00w^U2Hq!L7#Kpw1g8<4MTHUA}*)X?bS!v-(&D_ZDhs{kYrq zuyC=)WW_9}z1wH;if{Mh2M>DkA4rF82s{%^5aKyB+#j*}qws|XwHCoopl;^_Jdgw6 zSu;Z$3NZf?HkgujUc;L#w+_?0b8n7gR%={7AuZ_ls`tN>(eBzYk-f-8AyV*W;9Cj$ z`}!m=f8j3TU8`%U3dL)qoe z37u(tdSrd;Ao69i{Y_zf!e5pC&_vmIiNf5jRrI#;w4;A>l})%-w9Lu2uOj|{zrfaP zWQ`{ZM)W@`cLlAAb8BET_`+i!Hw)4HFE^WG6S*Wo$D{8urOTS8!DqiHUenE~ zS@;d;5z?;(7Z&!t6wUex`pW>Vp}>^lkf)^5_Q3 zr*(pI(n+IhNG)JquYKqx-IvWQ+jaS|R0jc};#zI*gOq|w9@D-UnJf2Y{Os^8AX#>a z8NsWVjt*P{V-h8I) z!DA4c7!N%|qutI!<`><1w$jlnLLs=Y$HV23>V`W4T7+pJzxZwO~NR?B8WM-KUg%<+A>PH`}yzBWF~O^Apd&=;ZGn)C^XQ zkgXDqD{nn>k^z$By)uU3j-otWu`CtciRYfPd8J4pZ*w7)Y`vD@oA{n*LYYfu?HZGa zVn=BwhXG>i`aote(ucx6Mu&?Ht1Xr`NkkKO15P==wcB!U%r&y3N-Xjxgh8e_X1`u- zoa9rHyiDk?=xYL6&LMj5Mvf_Ja^=tyGN9Ve8M^YF&}ng9cat@l`$zAC9qDvptf1qc zIi^f**&w`5EPHh4;0lSI7s@A;BF^~jn)z;PB3qSCNBU62Gx&&S;KAwlJN?{1;t~v0 z?+%)-TLi2)N8k|& z`;TNldB1lwnWI`Q<&ECO5UsRlnNiLqPQ8RLdW_p&qEZfxt~Q=PRB zx6)-Dm|zS&NSP_w3MGJQA5VC`wMRs5x1b5%*+!W#_sN%M-gGcf1$~Ctmm#Jax!+!s z>Ml+QO2{{i8V`M}V4(7d1Z{tpK)q*}f24S*c3o?6k@UG`sl&h9R}ox@p;eEqXSVP> z2&XmNI}CM`B3!iXd4uP!S8M3)edc_G+xN9($Ihijy8gZ>FrS$ zNC@Wx8}eZo6mpmla(1P`AKu5o{YjhZ#H@T{Mfv&Pl0j(S6Zg2el&V0ZB#$v^b6GMe zxjlpL^j}}{!xHhhl!GdB#|limV5I8xKJz~-xb};SWABKCWEAt?AE;?*&Op=znF9ne zcrsW~=HWyf+zm%D8<}dm)Zc@*y}7X=<^ODssQ|#UG7=%;M2OjwYpG!0Bj<8k1}s;w zF~h59AjE13XZuD^eD}Ml zs3r-0xZPRF)IGb`*KT^#KJL5F^yJZ_N7$X51!DvpvBj@mX^+v;(p%1;0en}(S970h2M2I7{Dyz`$y z8I(*_3!+b1h9?BlQ7N#eX{7}5;E*aM2jp!EWKtgkxS;mhpGwv_Lcf`XWzfkp4sbe9 z_OIiE+MOQi3&Hmi?0s@nxnrVt0e575f}L1%2(l7}9WiKZk$J|T3np%GF05O&z%_a# zZw244bK_|(a3`@Fd=3mFKfhAht+EOX3=f@jMA2bij?@Q@k*eELopDsx2tjzkc7}icel6AiD}(Oe6ay&opJtPPrG~#-IR5VS zK-eRjfcT((w^i)Uf7yPiTQ2_D>p>9N|88C3&4%R!qr>9(fA$Ce|Mv2Ie{x*Y4;`o2 z?s#iUx9{3*KZB!Nzj|;Vc~NOcQeI87Z7==(Y&R>8xc;~`FZ*fg2eqT`pL)%)=@Kc# zUir2Pjr9q^QTpp*W>@Je>FM>>>nbZ9s#4-D=6X{bb(1hyiCX=8!Fy-Djijr~ncrr! zZ5L_$PEsdZ3Db(7x01+8_&En{kRa|fz!c;cFq0>8?rkMVwEFt=^mMjBWfvEhiHV7u zH*XrUttOT^@GuBcoqh4W^73-n^)3;&5lfp@{9qzkmP!mal|E{Z?$~)8-2AA=O|nN=k|V z9o_Z&_Zc6mY$1`jAF3d!=6kN6sG%cv3W$nglc}LT4bgFaVdN)kdH;7KZ*Ol84-a$m zguJ}G(9q8?Rho;RIePRa9O?xHp01O9^P*JM!f#!j{fe-hTw!LW?ypA7Zhd`Fz<@(u zP>`09k&&`;8Io2+GAx7G9*~lruITyuWpFU_K^8P*#0HX7#e7ak$d+H8*Kaa%RP)xM zgtUDA?C$24)W^3O){A`y4miR6r;`j_8y|?hs6z1-6cW<&-Ah{X);f9U5Y1+!aLw~8 za4(Y{YVb9wLJP!B!mUh0-Tvgbmf!gPn#~UlMOrVVCnujcz8dfOah`LEH_pw?C7rOa zusD49x`!v3e9cOL`negxmGPH|n3x#oo#tjI?3OTlotvHg3xt|@#AP_X!HtH6g&DF@ zX~Kqd9{b;#BH_o590AjbuY@!Be96`pd!a0`3Cq-!dOkYZzx){SYW*^moFn{<{uR$6 z{}s>W{TK9&jg5VLe7wDjRCwW`c64<;c;LW5{vM+jX=!!U)!0th(A1Qf^Y`b~tDgKl zjM(+L@BC$u&GtrjG(*F}x?m{;6{CFN%9Zia(dyvMoL1J>h&wRgh%={7Yr9i=mLb8}k)^|kY1 z!21-Z>-BKL`%J8Ch~ZlOU{!N3J3oBKZ99XjzK@TCJ=%w@9nYUX2b-L%x1F8c3;Snc zmOR;*m>z|OnqRpBe>QH$`Ud%gkwP4UKt*i`8OzNF^WKNzv3$C~c-~i!D z74nrsf`c8wFJto+$`-cEw;HllhGBOSNd211%1e+lI5{~bBqX3nq7rw2Z^Lf&ytMny zg`E?fy+afAJ@Y3B)gF^BVm(MJKGr+1&NntU$9EOuE2mzcX6NFnKWUopw6f&>`g9>! zdaS85>)z9_{GS%W{@~}Qg;=qe!k@`f^;PWAkl3D?kx^#$6Qh)sm6c9bTgxhHjAO9L z>gE5{$hC$;owwmhXHi&bO=&emOS=(8aw_AvPB~PDF%Bz94azV`W4OGTS|xJmAch<> zql1*g#=EQ(O=4qH4w2J@w2=_K_rHDLPw$tVFLPZO|KI#h&;2~lecwm0qe8;M@Bvp> z*9{8!>oEq}`><(F-CQmyIc6EwNOCZe3#t*1$BV4W%~g@bABH%mF@LYGmwATqRYn~$ zascD<4YC4quLs{~fp84)Rd*B^5ay4rD`$@AAaUmoFpF2U=q=7_R;3 zmCn!4^9aT5tJHjz&#&<4h-vk1Vx4rALvH`}?AbmBqvr12)RFtSPM)6j)RXtQAQUWT zu~;a;FI@cIIl+qW*f?-pc($(r4ne+NUN@mD6RsNBcF`u!sYsOq(z`Iw+dLrPds!G2 z1eEFQHr7c!y=*?L-sb zRfU}cKnv5TaR?ycM%Y)kuYk`dd{l%&Ve^2Cat@9bvVRI{pPC(aZw`QiP04{)*)%sA zOe<=Aimzaq@zHSUKj%Z_mAlm!Nn2e#T2xx<;NVbNQlhJ;cklM?$c4`pwrbe3!JxT^ zhYwX6v}=EPiiwD1v#;uh#0DG<40ONcWA5g5$wgzJZoU|_mi-#3kdE|MCN1O$1V8BO ze|mApf6tyhOeWJKy)I28vZtW_*=mqlal2X5@WnX!=3M_4(`pA|8Rj$$4X^I1)k3Km zMi+06&p?YI7K_nBOxwl~+2R7ggtS1b%tB*H7+t;WM?s($G=|MhXpa=CDU!*|7q|V; zL<03AZX_tNeMeGSS{O!yW)l?MAqTIB4%1hPb;|DD1A7O6xuvIv14)v>Hpg&W|29;* zW$w@I=N}l?EQtT|ue#Cya=dhH={X77dySRV(x>Lfe9hpS5?RoTCg$wS3_&W#4Ov%b zHuaMQmEZ|VON0M@!$m{Mw#J{Bc)RYR%!S#>dU6Z_15MX%9E4!_7S!I~d`uZ{< z7jSrs{F$VrB;g00L{xy{Mm)_0nq0o)7F9WGCUYF^*>f9q<$P!jO^itM?WlkBizEaU zs;iImN%WLg89W$UpuHDw$zEHUT>H|rZ&Xu|$${X;9McwCNJKX!T|5K>U9YHk7XsCt zI|&Wkb59Qs+s==*i|pQ#A<#;ibv;B8kB(xlHs_%K+h#I-L5kcp75i><^rDq2I2PEx zhCC%SmE=||!I3?7?3mcWLDbx=O7ZviAGc{!+Q)T7kB9ncUz)331U(J-@dciu3DzBs@=>9R)hS&J;;pr>4LmPowrhANM-h6XN?t|03 z!-Q9!iv}{Z+WK>F?LvPG_!)7-UN&|v^ zb%p%RH#!LqA45;{=Y!}f@k%o_H8l`U`pjObo(h^C$AkPQK5vOp&0ft*q1)u$&d%;d zTS$Ui+uk0AG~44qJs03KIazMDza-v5T%B*2%i=!^6xn1sa7N5QEi-orpZCf=)1-@x1dqZ^=~7<+onDI?s>^d1%_ z4Q>Uu_N^hstR6l=M}yDgI8X&5(o`CK;$cCtece51|k z>M&%rzqCE?ogW%;-(Eu%V&V&Aqfv7oj|oyvo;-<*eMzh_oji-g^zq}zkXHo2cfdZV zL?Fo23%Zt>Ne3H+A&JiG5@GRT(qUTpQ8y^!t*swH%>hgc*3k*dFtc)yA)5)!V$hJlHX|;XERLIEo|Z z>w5>31^8VQKW%GiNdgjrSaNimU?Oj6_78c@>5p5GfM^{@5YGhSK#f$p- zH=M~QP!}!2f@O!pzsLL3aOZS1TsNWX-bCR$9`^D|%F4=u^gSbkE&k*CsVj*Y<9x#X zl|2U{B=j^@bFU^Qf?fOMS1iFshibh^BswIjkRVCP--jPUOBH58?gFYi8eg=pJB@%5 z2Eru}g|m}Wa#j|@#YOdk6^%xNsX$L>XYpm7ZQIT#fY_IR>y3)#xr?Fy_At%T4M=Wy z7!67m^dU|^K`?knK ziV_0LRh&L7UhySh+=Rx~Rwv(?V&hy5^idt`?RW0jVH7=E*0A<7SW<-wOG#QWy~PHk zn0yqG(6-Pr(Ug~@$VtY_@u(^xP(YjW9q(6E;O-09>J9P;I1pH9gqIy{PIS5*72_VA z$%Wh7R9AQpk4h6}XYhz%>d&(7`%XU-G!Z%9l?EvhmrzQ!?|ykzUEI{qSvoQoQc zZol+P0^kI+(Yk8Co}5WekX*IO^@p*sG3xcwo;F4oet|};ESifKkrZ|)W)x?bFCs}1 z6$R2|I3AG|6dDkYAEhA55-F(L9kpG%+1t}aaeC>I&~fa$FT_EO^a%)v02htH=)t2wCxIPvp_=xiZCYB6&w0*q zk-EBCT5Om&T3ViN-vyAhc=2MO%5s1n!gRLEC*#f)%7x*YX!JUSgc^GCx0aS*lx_HY zK6(*ww}?No)%H;Rlfl75>(-@vuJZ{DypocF&PgjP*{KN2=j-P;0Fo9;Mlb93dRDXd zP?58K83+W?ZTU0~=cEY003hjj#Z|?~l-DC8)>IVF9KTyywA<%a#zNN}=gl~h>gtwT z6)Y_+r>kWK$LK*W5~SfF;`?>uIBv=T`p5J0L1XnpQHk&~sE*KSD{!XU*(J_uSzv2Z zU7Vb9v|oa*m2oQxz)xCQI!egDe?KDugo@|)O3{oABzFA7{?GIC$jA{j(Dy+L>9Ouc zlT(Ju%F3FWs6I5+)zyha=MvC+{&~9_6pWx?xeTdfW@ciGB4tLmX!u#K>sh1FVHsIO z$g!T9nzyGn8iZOsS1iMnm6e5pxD#|j_B&EGgV;uFcR8M_uI?lnX#j4vM|5>`esXXy ziJUy_4LEz04PvdaJ#E^%Q9_8BC+}Nm` zBa8!sVv=K4X{-Vx`tDSxA`oB@T;ffYk>~u7S{Raz3pH3VK&r zS&0j~D2uX`^sP)V%ErAMQ)L-_ef>$pr^qg_F@W!hJ=PUt(^U~RMq{z=QYk1U#&A~* zVJSij1cE1RZ6AJ}?#5T(6zI*)&X$*zfzT%Cs5*<<$)^A1!4{TZBgsFBD2O!wI3Rsl X?jTmpRW9M3AmWs@xjj|5*DLlvT_1t= literal 24575 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 ZvfM$enyXyGJ3+)LYjb<5aIaVFe*n4yfq4J` literal 24359 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 = 6; B->p = 5; - B->A[1][0] = RCONST(3.0)/RCONST(50.0); - B->A[2][0] = RCONST(519479.0)/RCONST(27000000.0); - B->A[2][1] = RCONST(2070721.0)/RCONST(27000000.0); - B->A[3][0] = RCONST(1439.0)/RCONST(40000.0); - B->A[3][2] = RCONST(4317.0)/RCONST(40000.0); - B->A[4][0] = RCONST(109225017611.0)/RCONST(82828840000.0); - B->A[4][2] = RCONST(-417627820623.0)/RCONST(82828840000.0); - B->A[4][3] = RCONST(43699198143.0)/RCONST(10353605000.0); - B->A[5][0] = RCONST(-8036815292643907349452552172369.0)/RCONST(191934985946683241245914401600.0); - B->A[5][2] = RCONST(246134619571490020064824665.0)/RCONST(1543816496655405117602368.0); - B->A[5][3] = RCONST(-13880495956885686234074067279.0)/RCONST(113663489566254201783474344.0); - B->A[5][4] = RCONST(755005057777788994734129.0)/RCONST(136485922925633667082436.0); - B->A[6][0] = RCONST(-1663299841566102097180506666498880934230261.0)/RCONST(30558424506156170307020957791311384232000.0); - B->A[6][2] = RCONST(130838124195285491799043628811093033.0)/RCONST(631862949514135618861563657970240.0); - B->A[6][3] = RCONST(-3287100453856023634160618787153901962873.0)/RCONST(20724314915376755629135711026851409200.0); - B->A[6][4] = RCONST(2771826790140332140865242520369241.0)/RCONST(396438716042723436917079980147600.0); - B->A[6][5] = RCONST(-1799166916139193.0)/RCONST(96743806114007800.0); - B->A[7][0] = RCONST(-832144750039369683895428386437986853923637763.0)/RCONST(15222974550069600748763651844667619945204887.0); - B->A[7][2] = RCONST(818622075710363565982285196611368750.0)/RCONST(3936576237903728151856072395343129.0); - B->A[7][3] = RCONST(-9818985165491658464841194581385463434793741875.0)/RCONST(61642597962658994069869370923196463581866011.0); - B->A[7][4] = RCONST(31796692141848558720425711042548134769375.0)/RCONST(4530254033500045975557858016006308628092.0); - B->A[7][5] = RCONST(-14064542118843830075.0)/RCONST(766928748264306853644.0); - B->A[7][6] = RCONST(-1424670304836288125.0)/RCONST(2782839104764768088217.0); - B->A[8][0] = RCONST(382735282417.0)/RCONST(11129397249634.0); - B->A[8][3] = RCONST(5535620703125000.0)/RCONST(21434089949505429.0); - B->A[8][4] = RCONST(13867056347656250.0)/RCONST(32943296570459319.0); - B->A[8][5] = RCONST(626271188750.0)/RCONST(142160006043.0); - B->A[8][6] = RCONST(-51160788125000.0)/RCONST(289890548217.0); - B->A[8][7] = RCONST(163193540017.0)/RCONST(946795234.0); - - B->b[0] = RCONST(382735282417.0)/RCONST(11129397249634.0); - B->b[3] = RCONST(5535620703125000.0)/RCONST(21434089949505429.0); - B->b[4] = RCONST(13867056347656250.0)/RCONST(32943296570459319.0); - B->b[5] = RCONST(626271188750.0)/RCONST(142160006043.0); - B->b[6] = RCONST(-51160788125000.0)/RCONST(289890548217.0); - B->b[7] = RCONST(163193540017.0)/RCONST(946795234.0); - - B->d[0] = RCONST(273361583.0)/RCONST(5567482366.0); - B->d[3] = RCONST(1964687500000.0)/RCONST(8727630165387.0); - B->d[4] = RCONST(596054687500.0)/RCONST(1269637976277.0); - B->d[5] = RCONST(12740367500.0)/RCONST(15795556227.0); - B->d[7] = RCONST(-4462730789736252634813752317.0)/RCONST(7350663039626676022821734166.0); - B->d[8] = RCONST(441454562788983500.0)/RCONST(7763730504400359099.0); - - B->c[1] = RCONST(3.0)/RCONST(50.0); - B->c[2] = RCONST(1439.0)/RCONST(15000.0); - B->c[3] = RCONST(1439.0)/RCONST(10000.0); - B->c[4] = RCONST(4973.0)/RCONST(10000.0); - B->c[5] = RCONST(389.0)/RCONST(400.0); - B->c[6] = RCONST(1999.0)/RCONST(2000.0); - B->c[7] = RCONST(1.0); - B->c[8] = RCONST(1.0); + B->A[1][0] = RCONST(0.06); + B->A[2][0] = RCONST(0.01923996296296296218408805600574851268902); + B->A[2][1] = RCONST(0.07669337037037037008158080197972594760358); + B->A[3][0] = RCONST(0.035975); + B->A[3][2] = RCONST(0.107925); + B->A[4][0] = RCONST(1.318683415233148359391179837984964251518); + B->A[4][2] = RCONST(-5.042058063628561903612990136025473475456); + B->A[4][3] = RCONST(4.220674648395413619539340288611128926277); + B->A[5][0] = RCONST(-41.87259166432750845388000016100704669952); + B->A[5][2] = RCONST(159.432562163137475863550207577645778656); + B->A[5][3] = RCONST(-122.1192135650100425436903606168925762177); + B->A[5][4] = RCONST(5.531743066200053071668207849143072962761); + B->A[6][0] = RCONST(-54.43015693531650356362661113962531089783); + B->A[6][2] = RCONST(207.0672513650184782818541862070560455322); + B->A[6][3] = RCONST(-158.6108137845899932472093496471643447876); + B->A[6][4] = RCONST(6.99181658595024213553870140458457171917); + B->A[6][5] = RCONST(-0.01859723106220323093906721112489321967587); + B->A[7][0] = RCONST(-54.66374178728197819054912542924284934998); + B->A[7][2] = RCONST(207.9528062553893619224254507571458816528); + B->A[7][3] = RCONST(-159.2889574744995115906931459903717041016); + B->A[7][4] = RCONST(7.018743740796944408089075295720249414444); + B->A[7][5] = RCONST(-0.01833878590504572220210022237552038859576); + B->A[7][6] = RCONST(-0.000511948499788209866745436471546781831421); + B->A[8][0] = RCONST(0.0343895786835703570760713887466408777982); + B->A[8][3] = RCONST(0.2582624555633503682372520415810868144035); + B->A[8][4] = RCONST(0.4209371189673536961528554911637911573052); + B->A[8][5] = RCONST(4.405396469669310199890333024086430668831); + B->A[8][6] = RCONST(-176.4831190242986451721662888303399085999); + B->A[8][7] = RCONST(172.3641334014150743314530700445175170898); + + B->b[0] = RCONST(0.0343895786835703570760713887466408777982); + B->b[3] = RCONST(0.2582624555633503682372520415810868144035); + B->b[4] = RCONST(0.4209371189673536961528554911637911573052); + B->b[5] = RCONST(4.405396469669310199890333024086430668831); + B->b[6] = RCONST(-176.4831190242986451721662888303399085999); + B->b[7] = RCONST(172.3641334014150743314530700445175170898); + + B->d[0] = RCONST(0.04909967648382489863179145572757988702506); + B->d[3] = RCONST(0.2251112229516524232408869465871248394251); + B->d[4] = RCONST(0.4694682253029561769253064085205551236868); + B->d[5] = RCONST(0.806579224998886790132246460416354238987); + B->d[7] = RCONST(-0.607119489177795901291290192602900788188); + B->d[8] = RCONST(0.05686113944047568868889186433079885318875); + + B->c[1] = RCONST(0.06); + B->c[2] = RCONST(0.09593333333333333333333333333333333333333); + B->c[3] = RCONST(0.1439); + B->c[4] = RCONST(0.4973); + B->c[5] = RCONST(0.9725); + B->c[6] = RCONST(0.9995); + B->c[7] = RCONST(1.0); + B->c[8] = RCONST(1.0); return B; }) @@ -735,67 +735,67 @@ ARK_BUTCHER_TABLE(ARKODE_VERNER_10_6_7, { /* Verner-7-6 (DOI: 10.1007/s11075-009 B->q = 7; B->p = 6; - B->A[1][0] = RCONST(1.0)/RCONST(200.0); - B->A[2][0] = RCONST(-4361.0)/RCONST(4050.0); - B->A[2][1] = RCONST(2401.0)/RCONST(2025.0); - B->A[3][0] = RCONST(49.0)/RCONST(1200.0); - B->A[3][2] = RCONST(49.0)/RCONST(400.0); - B->A[4][0] = RCONST(2454451729.0)/RCONST(3841600000.0); - B->A[4][2] = RCONST(-9433712007.0)/RCONST(3841600000.0); - B->A[4][3] = RCONST(4364554539.0)/RCONST(1920800000.0); - B->A[5][0] = RCONST(-6187101755456742839167388910402379177523537620.0)/RCONST(2324599620333464857202963610201679332423082271.0); - B->A[5][2] = RCONST(27569888999279458303270493567994248533230000.0)/RCONST(2551701010245296220859455115479340650299761.0); - B->A[5][3] = RCONST(-37368161901278864592027018689858091583238040000.0)/RCONST(4473131870960004275166624817435284159975481033.0); - B->A[5][4] = RCONST(1392547243220807196190880383038194667840000000.0)/RCONST(1697219131380493083996999253929006193143549863.0); - B->A[6][0] = RCONST(11272026205260557297236918526339.0)/RCONST(1857697188743815510261537500000.0); - B->A[6][2] = RCONST(-48265918242888069.0)/RCONST(1953194276993750.0); - B->A[6][3] = RCONST(26726983360888651136155661781228.0)/RCONST(1308381343805114800955157615625.0); - B->A[6][4] = RCONST(-2090453318815827627666994432.0)/RCONST(1096684189897834170412307919.0); - B->A[6][5] = RCONST(1148577938985388929671582486744843844943428041509.0)/RCONST(1141532118233823914568777901158338927629837500000.0); - B->A[7][0] = RCONST(1304457204588839386329181466225966641.0)/RCONST(108211771565488329642169667802016000.0); - B->A[7][2] = RCONST(-1990261989751005.0)/RCONST(40001418792832.0); - B->A[7][3] = RCONST(2392691599894847687194643439066780106875.0)/RCONST(58155654089143548047476915856270826016.0); - B->A[7][4] = RCONST(-1870932273351008733802814881998561250.0)/RCONST(419326053051486744762255151208232123.0); - B->A[7][5] = RCONST(1043329047173803328972823866240311074041739158858792987034783181.0)/RCONST(510851127745017966999893975119259285040213723744255237522144000.0); - B->A[7][6] = RCONST(-311918858557595100410788125.0)/RCONST(3171569057622789618800376448.0); - B->A[8][0] = RCONST(17579784273699839132265404100877911157.0)/RCONST(1734023495717116205617154737841023480.0); - B->A[8][2] = RCONST(-18539365951217471064750.0)/RCONST(434776548575709731377.0); - B->A[8][3] = RCONST(447448655912568142291911830292656995992000.0)/RCONST(12511202807447096607487664209063950964109.0); - B->A[8][4] = RCONST(-65907597316483030274308429593905808000000.0)/RCONST(15158061430635748897861852383197382130691.0); - B->A[8][5] = RCONST(273847823027445129865693702689010278588244606493753883568739168819449761.0)/RCONST(136252034448398939768371761610231099586032870552034688235302796640584360.0); - B->A[8][6] = RCONST(694664732797172504668206847646718750.0)/RCONST(1991875650119463976442052358853258111.0); - B->A[8][7] = RCONST(-19705319055289176355560129234220800.0)/RCONST(72595753317320295604316217197876507.0); - B->A[9][0] = RCONST(-511858190895337044664743508805671.0)/RCONST(11367030248263048398341724647960.0); - B->A[9][2] = RCONST(2822037469238841750.0)/RCONST(15064746656776439.0); - B->A[9][3] = RCONST(-23523744880286194122061074624512868000.0)/RCONST(152723005449262599342117017051789699.0); - B->A[9][4] = RCONST(10685036369693854448650967542704000000.0)/RCONST(575558095977344459903303055137999707.0); - B->A[9][5] = RCONST(-6259648732772142303029374363607629515525848829303541906422993.0)/RCONST(876479353814142962817551241844706205620792843316435566420120.0); - B->A[9][6] = RCONST(17380896627486168667542032602031250.0)/RCONST(13279937889697320236613879977356033.0); - - B->b[0] = RCONST(96762636172307789.0)/RCONST(2051985304794103980.0); - B->b[3] = RCONST(312188947591288252500000.0)/RCONST(1212357694274963646019729.0); - B->b[4] = RCONST(13550580884964304000000000000.0)/RCONST(51686919683339547115937980629.0); - B->b[5] = RCONST(72367769693133178898676076432831566019684378142853445230956642801.0)/RCONST(475600216991873963561768100160364792981629064220601844848928537580.0); - B->b[6] = RCONST(1619421054120605468750.0)/RCONST(3278200730370057108183.0); - B->b[7] = RCONST(-66898316144057728000.0)/RCONST(227310933007074849597.0); - B->b[8] = RCONST(181081444637946577.0)/RCONST(2226845467039736466.0); - - B->d[0] = RCONST(117807213929927.0)/RCONST(2640907728177740.0); - B->d[3] = RCONST(4758744518816629500000.0)/RCONST(17812069906509312711137.0); - B->d[4] = RCONST(1730775233574080000000000.0)/RCONST(7863520414322158392809673.0); - B->d[5] = RCONST(2682653613028767167314032381891560552585218935572349997.0)/RCONST(12258338284789875762081637252125169126464880985167722660.0); - B->d[6] = RCONST(40977117022675781250.0)/RCONST(178949401077111131341.0); - B->d[9] = RCONST(2152106665253777.0)/RCONST(106040260335225546.0); - - B->c[1] = RCONST(1.0)/RCONST(200.0); - B->c[2] = RCONST(49.0)/RCONST(450.0); - B->c[3] = RCONST(49.0)/RCONST(300.0); - B->c[4] = RCONST(911.0)/RCONST(2000.0); - B->c[5] = RCONST(3480084980.0)/RCONST(5709648941.0); - B->c[6] = RCONST(221.0)/RCONST(250.0); - B->c[7] = RCONST(37.0)/RCONST(40.0); - B->c[8] = RCONST(1.0); - B->c[9] = RCONST(1.0); + B->A[1][0] = RCONST(0.005); + B->A[2][0] = RCONST(-1.076790123456790123456790123456790123457); + B->A[2][1] = RCONST(1.185679012345679012345679012345679012346); + B->A[3][0] = RCONST(0.04083333333333333333333333333333333333333); + B->A[3][2] = RCONST(0.1225); + B->A[4][0] = RCONST(0.6389139236255726439495106205868069082499); + B->A[4][2] = RCONST(-2.45567263822365688952231721486896276474); + B->A[4][3] = RCONST(2.272258714598084150537715686368755996227); + B->A[5][0] = RCONST(-2.661577375018756796976049372460693120956); + B->A[5][2] = RCONST(10.80451388645613874928130826447159051895); + B->A[5][3] = RCONST(-8.353914657396199316963247838430106639862); + B->A[5][4] = RCONST(0.8204875949566569071080834874010179191828); + B->A[6][0] = RCONST(6.067741434696771740675558248767629265785); + B->A[6][2] = RCONST(-24.71127363591108760942915978375822305679); + B->A[6][3] = RCONST(20.42751793078889477328630164265632629395); + B->A[6][4] = RCONST(-1.906157978816647169395537275704555213451); + B->A[6][5] = RCONST(1.006172249242067939789535557792987674475); + B->A[7][0] = RCONST(12.05467007625320441377425595419481396675); + B->A[7][2] = RCONST(-49.75478495046898785858502378687262535095); + B->A[7][3] = RCONST(41.14288863860467415634047938510775566101); + B->A[7][4] = RCONST(-4.461760149974003830664059933042153716087); + B->A[7][5] = RCONST(2.042334822239175284863677006796933710575); + B->A[7][6] = RCONST(-0.0983484366540610666085342472797492519021); + B->A[8][0] = RCONST(10.13814652288180795380867493804544210434); + B->A[8][2] = RCONST(-42.64113603171750099818382295779883861542); + B->A[8][3] = RCONST(35.76384003992257021309342235326766967773); + B->A[8][4] = RCONST(-4.348022840392907539808220462873578071594); + B->A[8][5] = RCONST(2.009862268377035743327496675192378461361); + B->A[8][6] = RCONST(0.3487490460338271702767087845131754875183); + B->A[8][7] = RCONST(-0.2714390051048312657577810114162275567651); + B->A[9][0] = RCONST(-45.03007203429867644217665656469762325287); + B->A[9][2] = RCONST(187.3272437654588884470285847783088684082); + B->A[9][3] = RCONST(-154.0288236935018630902050063014030456543); + B->A[9][4] = RCONST(18.56465306347536170505918562412261962891); + B->A[9][5] = RCONST(-7.141809679295079149596858769655227661133); + B->A[9][6] = RCONST(1.3088085781613787439425777847645804286); + + B->b[0] = RCONST(0.04715561848627222024665783806085528340191); + B->b[3] = RCONST(0.2575056429843415317648691598151344805956); + B->b[4] = RCONST(0.2621665397741262393260797125549288466573); + B->b[5] = RCONST(0.1521609265673855848621798259046045131981); + B->b[6] = RCONST(0.4939969170032484924171001239301403984427); + B->b[7] = RCONST(-0.2943031171403250323415079492406221106648); + B->b[8] = RCONST(0.08131747232495110944139327102675451897085); + + B->d[0] = RCONST(0.04460860660634117375034080055229424033314); + B->d[3] = RCONST(0.2671640378571372709259890143584925681353); + B->d[4] = RCONST(0.2201018300177293163244485185714438557625); + B->d[5] = RCONST(0.2188431703143156881186115469972719438374); + B->d[6] = RCONST(0.2289871705411202773561285539472009986639); + B->d[9] = RCONST(0.02029518466335628046337546948052477091551); + + B->c[1] = RCONST(0.005); + B->c[2] = RCONST(0.1088888888888888888888888888888888888889); + B->c[3] = RCONST(0.1633333333333333333333333333333333333333); + B->c[4] = RCONST(0.4555); + B->c[5] = RCONST(0.6095094489978380991601625282783061265945); + B->c[6] = RCONST(0.884); + B->c[7] = RCONST(0.925); + B->c[8] = RCONST(1.0); + B->c[9] = RCONST(1.0); return B; }) @@ -804,94 +804,94 @@ ARK_BUTCHER_TABLE(ARKODE_VERNER_13_7_8, { /* Verner-8-7 (DOI: 10.1007/s11075-009 B->q = 8; B->p = 7; - B->A[1][0] = RCONST(1.0)/RCONST(20.0); - B->A[2][0] = RCONST(-7161.0)/RCONST(1024000.0); - B->A[2][1] = RCONST(116281.0)/RCONST(1024000.0); - B->A[3][0] = RCONST(1023.0)/RCONST(25600.0); - B->A[3][2] = RCONST(3069.0)/RCONST(25600.0); - B->A[4][0] = RCONST(4202367.0)/RCONST(11628100.0); - B->A[4][2] = RCONST(-3899844.0)/RCONST(2907025.0); - B->A[4][3] = RCONST(3982992.0)/RCONST(2907025.0); - B->A[5][0] = RCONST(5611.0)/RCONST(114400.0); - B->A[5][3] = RCONST(31744.0)/RCONST(135025.0); - B->A[5][4] = RCONST(923521.0)/RCONST(5106400.0); - B->A[6][0] = RCONST(21173.0)/RCONST(343200.0); - B->A[6][3] = RCONST(8602624.0)/RCONST(76559175.0); - B->A[6][4] = RCONST(-26782109.0)/RCONST(689364000.0); - B->A[6][5] = RCONST(5611.0)/RCONST(283500.0); - B->A[7][0] = RCONST(-1221101821869329.0)/RCONST(690812928000000.0); - B->A[7][3] = RCONST(-125.0)/RCONST(2.0); - B->A[7][4] = RCONST(-1024030607959889.0)/RCONST(168929280000000.0); - B->A[7][5] = RCONST(1501408353528689.0)/RCONST(265697280000000.0); - B->A[7][6] = RCONST(6070139212132283.0)/RCONST(92502016000000.0); - B->A[8][0] = RCONST(-1472514264486215803881384708877264246346044433307094207829051978044531801133057155.0)/RCONST(1246894801620032001157059621643986024803301558393487900440453636168046069686436608.0); - B->A[8][3] = RCONST(-5172294311085668458375175655246981230039025336933699114138315270772319372469280000.0)/RCONST(124619381004809145897278630571215298365257079410236252921850936749076487132995191.0); - B->A[8][4] = RCONST(-12070679258469254807978936441733187949484571516120469966534514296406891652614970375.0)/RCONST(2722031154761657221710478184531100699497284085048389015085076961673446140398628096.0); - B->A[8][5] = RCONST(780125155843893641323090552530431036567795592568497182701460674803126770111481625.0)/RCONST(183110425412731972197889874507158786859226102980861859505241443073629143100805376.0); - B->A[8][6] = RCONST(664113122959911642134782135839106469928140328160577035357155340392950009492511875.0)/RCONST(15178465598586248136333023107295349175279765150089078301139943253016877823170816.0); - B->A[8][7] = RCONST(10332848184452015604056836767286656859124007796970668046446015775000000.0)/RCONST(1312703550036033648073834248740727914537972028638950165249582733679393783.0); - B->A[9][0] = RCONST(-29055573360337415088538618442231036441314060511.0)/RCONST(22674759891089577691327962602370597632000000000.0); - B->A[9][3] = RCONST(-20462749524591049105403365239069.0)/RCONST(454251913499893469596231268750.0); - B->A[9][4] = RCONST(-180269259803172281163724663224981097.0)/RCONST(38100922558256871086579832832000000.0); - B->A[9][5] = RCONST(21127670214172802870128286992003940810655221489.0)/RCONST(4679473877997892906145822697976708633673728000.0); - B->A[9][6] = RCONST(318607235173649312405151265849660869927653414425413.0)/RCONST(6714716715558965303132938072935465423910912000000.0); - B->A[9][7] = RCONST(212083202434519082281842245535894.0)/RCONST(20022426044775672563822865371173879.0); - B->A[9][8] = RCONST(-2698404929400842518721166485087129798562269848229517793703413951226714583.0)/RCONST(469545674913934315077000442080871141884676035902717550325616728175875000000.0); - B->A[10][0] = RCONST(-2342659845814086836951207140065609179073838476242943917.0)/RCONST(1358480961351056777022231400139158760857532162795520000.0); - B->A[10][3] = RCONST(-996286030132538159613930889652.0)/RCONST(16353068885996164905464325675.0); - B->A[10][4] = RCONST(-26053085959256534152588089363841.0)/RCONST(4377552804565683061011299942400.0); - B->A[10][5] = RCONST(20980822345096760292224086794978105312644533925634933539.0)/RCONST(3775889992007550803878727839115494641972212962174156800.0); - B->A[10][6] = RCONST(890722993756379186418929622095833835264322635782294899.0)/RCONST(13921242001395112657501941955594013822830119803764736.0); - B->A[10][7] = RCONST(161021426143124178389075121929246710833125.0)/RCONST(10997207722131034650667041364346422894371443.0); - B->A[10][8] = RCONST(300760669768102517834232497565452434946672266195876496371874262392684852243925359864884962513.0)/RCONST(4655443337501346455585065336604505603760824779615521285751892810315680492364106674524398280000.0); - B->A[10][9] = RCONST(-31155237437111730665923206875.0)/RCONST(392862141594230515010338956291.0); - B->A[11][0] = RCONST(-2866556991825663971778295329101033887534912787724034363.0)/RCONST(868226711619262703011213925016143612030669233795338240.0); - B->A[11][3] = RCONST(-16957088714171468676387054358954754000.0)/RCONST(143690415119654683326368228101570221.0); - B->A[11][4] = RCONST(-4583493974484572912949314673356033540575.0)/RCONST(451957703655250747157313034270335135744.0); - B->A[11][5] = RCONST(2346305388553404258656258473446184419154740172519949575.0)/RCONST(256726716407895402892744978301151486254183185289662464.0); - B->A[11][6] = RCONST(1657121559319846802171283690913610698586256573484808662625.0)/RCONST(13431480411255146477259155104956093505361644432088109056.0); - B->A[11][7] = RCONST(345685379554677052215495825476969226377187500.0)/RCONST(74771167436930077221667203179551347546362089.0); - B->A[11][8] = RCONST(-3205890962717072542791434312152727534008102774023210240571361570757249056167015230160352087048674542196011.0)/RCONST(947569549683965814783015124451273604984657747127257615372449205973192657306017239103491074738324033259120.0); - B->A[11][9] = RCONST(40279545832706233433100438588458933210937500.0)/RCONST(8896460842799482846916972126377338947215101.0); - B->A[11][10] = RCONST(-6122933601070769591613093993993358877250.0)/RCONST(1050517001510235513198246721302027675953.0); - B->A[12][0] = RCONST(-618675905535482500672800859344538410358660153899637.0)/RCONST(203544282118214047100119475340667684874292102389760.0); - B->A[12][3] = RCONST(-4411194916804718600478400319122931000.0)/RCONST(40373053902469967450761491269633019.0); - B->A[12][4] = RCONST(-16734711409449292534539422531728520225.0)/RCONST(1801243715290088669307203927210237952.0); - B->A[12][5] = RCONST(135137519757054679098042184152749677761254751865630525.0)/RCONST(16029587794486289597771326361911895112703716593983488.0); - B->A[12][6] = RCONST(38937568367409876012548551903492196137929710431584875.0)/RCONST(340956454090191606099548798001469306974758443147264.0); - B->A[12][7] = RCONST(-6748865855011993037732355335815350667265625.0)/RCONST(7002880395717424621213565406715087764770357.0); - B->A[12][8] = RCONST(-1756005520307450928195422767042525091954178296002788308926563193523662404739779789732685671.0)/RCONST(348767814578469983605688098046186480904607278021030540735333862087061574934154942830062320.0); - B->A[12][9] = RCONST(53381024589235611084013897674181629296875.0)/RCONST(8959357584795694524874969598508592944141.0); - - B->b[0] = RCONST(44901867737754616851973.0)/RCONST(1014046409980231013380680.0); - B->b[5] = RCONST(791638675191615279648100000.0)/RCONST(2235604725089973126411512319.0); - B->b[6] = RCONST(3847749490868980348119500000.0)/RCONST(15517045062138271618141237517.0); - B->b[7] = RCONST(-13734512432397741476562500000.0)/RCONST(875132892924995907746928783.0); - B->b[8] = RCONST(12274765470313196878428812037740635050319234276006986398294443554969616342274215316330684448207141.0)/RCONST(489345147493715517650385834143510934888829280686609654482896526796523353052166757299452852166040.0); - B->b[9] = RCONST(-9798363684577739445312500000.0)/RCONST(308722986341456031822630699.0); - B->b[10] = RCONST(282035543183190840068750.0)/RCONST(12295407629873040425991.0); - B->b[11] = RCONST(-306814272936976936753.0)/RCONST(1299331183183744997286.0); - - B->d[0] = RCONST(10835401739407019406577.0)/RCONST(244521829356935137978320.0); - B->d[5] = RCONST(13908189778321895491375000.0)/RCONST(39221135527894265375640567.0); - B->d[6] = RCONST(73487947527027243487625000.0)/RCONST(296504045773342769773399443.0); - B->d[7] = RCONST(68293140641257649609375000.0)/RCONST(15353208647806945749946119.0); - B->d[8] = RCONST(22060647948996678611017711379974578860522018208949721559448560203338437626022142776381.0)/RCONST(1111542009262325874512959185795727215759010577565736079641376621381577236680929558640.0); - B->d[9] = RCONST(-547971229495642458203125000.0)/RCONST(23237214025700991642563601.0); - B->d[12] = RCONST(-28735456870978964189.0)/RCONST(79783493704265043693.0); - - B->c[1] = RCONST(1.0)/RCONST(20.0); - B->c[2] = RCONST(341.0)/RCONST(3200.0); - B->c[3] = RCONST(1023.0)/RCONST(6400.0); - B->c[4] = RCONST(39.0)/RCONST(100.0); - B->c[5] = RCONST(93.0)/RCONST(200.0); - B->c[6] = RCONST(31.0)/RCONST(200.0); - B->c[7] = RCONST(943.0)/RCONST(1000.0); - B->c[8] = RCONST(7067558016280.0)/RCONST(7837150160667.0); - B->c[9] = RCONST(909.0)/RCONST(1000.0); - B->c[10] = RCONST(47.0)/RCONST(50.0); - B->c[11] = RCONST(1.0); - B->c[12] = RCONST(1.0); + B->A[1][0] = RCONST(0.05); + B->A[2][0] = RCONST(-0.006993164062499999597544153573380754096434); + B->A[2][1] = RCONST(0.1135556640625000057731597280508140102029); + B->A[3][0] = RCONST(0.0399609375); + B->A[3][2] = RCONST(0.1198828125); + B->A[4][0] = RCONST(0.3613975628004575391116759419674053788185); + B->A[4][2] = RCONST(-1.341524066700492845427561405813321471214); + B->A[4][3] = RCONST(1.370126503900035208616259296832140535116); + B->A[5][0] = RCONST(0.04904720279720279491053602782812959048897); + B->A[5][3] = RCONST(0.2350972042214404811311112553084967657924); + B->A[5][4] = RCONST(0.1808555929813567275665775468951324000955); + B->A[6][0] = RCONST(0.06169289044289043982827180911954201292247); + B->A[6][3] = RCONST(0.112365683146402772774052891691098921001); + B->A[6][4] = RCONST(-0.03885046071451366683779937716280983295292); + B->A[6][5] = RCONST(0.01979188712522046006414555563424073625356); + B->A[7][0] = RCONST(-1.767630240222326953869469434721395373344); + B->A[7][3] = RCONST(-62.5); + B->A[7][4] = RCONST(-6.061889377376669330033109872601926326752); + B->A[7][5] = RCONST(5.6508231982227634659921022830531001091); + B->A[7][6] = RCONST(65.6216964193762350987526588141918182373); + B->A[8][0] = RCONST(-1.180945066554970779293398663867264986038); + B->A[8][3] = RCONST(-41.50473441114321104805640061385929584503); + B->A[8][4] = RCONST(-4.434438319103724879255423729773610830307); + B->A[8][5] = RCONST(4.26040818858613334896290325559675693512); + B->A[8][6] = RCONST(43.75364022446171219371535698883235454559); + B->A[8][7] = RCONST(0.007871425489912309975126802896738809067756); + B->A[9][0] = RCONST(-1.281405999441488363643770753697026520967); + B->A[9][3] = RCONST(-45.04713996013986587740873801521956920624); + B->A[9][4] = RCONST(-4.731362069449575713520061981398612260818); + B->A[9][5] = RCONST(4.514967016593807613844546722248196601868); + B->A[9][6] = RCONST(47.4490955717298490412758837919682264328); + B->A[9][7] = RCONST(0.01059228297111661047658071055366235668771); + B->A[9][8] = RCONST(-0.005746842263844615696088968803678653785028); + B->A[10][0] = RCONST(-1.724470134262485077059068316884804517031); + B->A[10][3] = RCONST(-60.92349008483054007001555874012410640717); + B->A[10][4] = RCONST(-5.951518376222391992769189528189599514008); + B->A[10][5] = RCONST(5.55652373069845673114741657627746462822); + B->A[10][6] = RCONST(63.98301198033306036450085230171680450439); + B->A[10][7] = RCONST(0.01464202825041496271174512600055095390417); + B->A[10][8] = RCONST(0.06460408772358203211005900357122300192714); + B->A[10][9] = RCONST(-0.07930323169008879347074980614706873893738); + B->A[11][0] = RCONST(-3.30162266774707902072805154602974653244); + B->A[11][3] = RCONST(-118.0112723597525103969019255600869655609); + B->A[11][4] = RCONST(-10.14142238845611210251718148356303572655); + B->A[11][5] = RCONST(9.139311332232058049385159392841160297394); + B->A[11][6] = RCONST(123.3759428284042769519146531820297241211); + B->A[11][7] = RCONST(4.623244378874581173022306757047772407532); + B->A[11][8] = RCONST(-3.383277738068201756505004595965147018433); + B->A[11][9] = RCONST(4.527592100324618229478801367804408073425); + B->A[11][10] = RCONST(-5.828495485811623133542980212951079010963); + B->A[12][0] = RCONST(-3.039515033766308604867845133412629365921); + B->A[12][3] = RCONST(-109.260868089417627402326615992933511734); + B->A[12][4] = RCONST(-9.290642497400291688336437800899147987366); + B->A[12][5] = RCONST(8.43050498176491203139448771253228187561); + B->A[12][6] = RCONST(114.2010010378331372749016736634075641632); + B->A[12][7] = RCONST(-0.9637271342145479202656588313402608036995); + B->A[12][8] = RCONST(-5.034884088802189516798080148873850703239); + B->A[12][9] = RCONST(5.958130824002923375815043982584029436111); + + B->b[0] = RCONST(0.04427989419007950788742533632103004492819); + B->b[5] = RCONST(0.3541049391724448991425333588267676532269); + B->b[6] = RCONST(0.2479692154956437688539949704136233776808); + B->b[7] = RCONST(-15.69420203883808540012978482991456985474); + B->b[8] = RCONST(25.08406496555856435293208051007241010666); + B->b[9] = RCONST(-31.73836778626027665950459777377545833588); + B->b[10] = RCONST(22.93828327398878386134128959383815526962); + B->b[11] = RCONST(-0.2361324633071542056228508954518474638462); + + B->d[0] = RCONST(0.04431261522908979538781792939516890328377); + B->d[5] = RCONST(0.3546095642343226606030270886549260467291); + B->d[6] = RCONST(0.2478480431366653080615947146725375205278); + B->d[7] = RCONST(4.448134732475784502980786783155053853989); + B->d[8] = RCONST(19.8468863661187349123338208300992846489); + B->d[9] = RCONST(-23.58162337746561831863800762221217155457); + B->d[12] = RCONST(-0.3601679437289775354003040774841792881489); + + B->c[1] = RCONST(0.05); + B->c[2] = RCONST(0.1065625); + B->c[3] = RCONST(0.15984375); + B->c[4] = RCONST(0.39); + B->c[5] = RCONST(0.465); + B->c[6] = RCONST(0.155); + B->c[7] = RCONST(0.943); + B->c[8] = RCONST(0.9018020417358569851273841777583584189415); + B->c[9] = RCONST(0.909); + B->c[10] = RCONST(0.94); + B->c[11] = RCONST(1.0); + B->c[12] = RCONST(1.0); return B; }) From d2576c2855d00a25a06f6e6ce54efce1fa891132 Mon Sep 17 00:00:00 2001 From: "David J. Gardner" Date: Fri, 27 Oct 2023 15:23:54 -0700 Subject: [PATCH 07/10] update orders provided in docs --- doc/arkode/guide/source/Introduction.rst | 6 +++--- doc/arkode/guide/source/Mathematics.rst | 13 +++++++------ 2 files changed, 10 insertions(+), 9 deletions(-) diff --git a/doc/arkode/guide/source/Introduction.rst b/doc/arkode/guide/source/Introduction.rst index cbe1ae53ae..250584c523 100644 --- a/doc/arkode/guide/source/Introduction.rst +++ b/doc/arkode/guide/source/Introduction.rst @@ -64,8 +64,8 @@ for splittings tuned for use with optimal implicit solver algorithms. This framework allows for significant freedom over the constitutive methods used for each component, and ARKODE is packaged with a wide array of built-in methods for use. These built-in Butcher tables -include adaptive explicit methods of orders 2-8, adaptive implicit -methods of orders 2-5, and adaptive ImEx methods of orders 3-5. +include adaptive explicit methods of orders 2-9, adaptive implicit +methods of orders 2-5, and adaptive ImEx methods of orders 2-5. *ERKStep* focuses specifically on problems posed in explicit form, @@ -77,7 +77,7 @@ methods of orders 2-5, and adaptive ImEx methods of orders 3-5. allowing for increased computational efficiency and memory savings. The algorithms used in ERKStep are adaptive- and fixed-step explicit Runge--Kutta methods. As with ARKStep, the ERKStep module is packaged -with adaptive explicit methods of orders 2-8. +with adaptive explicit methods of orders 2-9. *SPRKStep* focuses on Hamiltonian systems posed in the form, diff --git a/doc/arkode/guide/source/Mathematics.rst b/doc/arkode/guide/source/Mathematics.rst index ec66f9838b..6c9b7ec4e2 100644 --- a/doc/arkode/guide/source/Mathematics.rst +++ b/doc/arkode/guide/source/Mathematics.rst @@ -375,10 +375,11 @@ described in the section :numref:`Butcher`. For mixed stiff/nonstiff problems, a user should provide both of the functions :math:`f^E` and :math:`f^I` that define the IVP system. For such problems, ARKStep currently implements the ARK methods proposed in -:cite:p:`KenCarp:03`, allowing for methods having order of accuracy :math:`q = -\{3,4,5\}` and embeddings with orders :math:`p = \{2, 3, 4\}`; -the tables for these methods are given in section :numref:`Butcher.additive`. -Additionally, user-defined ARK tables are supported. +:cite:p:`KenCarp:03,KenCarp:19,giraldo2013implicit`, allowing for methods having +order of accuracy :math:`q = \{2,3,4,5\}` and embeddings with orders :math:`p = +\{1,2,3,4\}`; the tables for these methods are given in section +:numref:`Butcher.additive`. Additionally, user-defined ARK tables are +supported. For nonstiff problems, a user may specify that :math:`f^I = 0`, i.e. the equation :eq:`ARKODE_IMEX_IVP` reduces to the non-split IVP @@ -391,8 +392,8 @@ In this scenario, the coefficients :math:`A^I=0`, :math:`c^I=0`, :math:`b^I=0` and :math:`\tilde{b}^I=0` in :eq:`ARKODE_ARK`, and the ARK methods reduce to classical :index:`explicit Runge--Kutta methods` (ERK). For these classes of methods, ARKODE provides coefficients -with orders of accuracy :math:`q = \{2,3,4,5,6,8\}`, with embeddings -of orders :math:`p = \{1,2,3,4,5,7\}`. These default to the methods in +with orders of accuracy :math:`q = \{2,3,4,5,6,7,8,9\}`, with embeddings +of orders :math:`p = \{1,2,3,4,5,6,7,8\}`. These default to the methods in sections :numref:`Butcher.Heun_Euler`, :numref:`Butcher.Bogacki_Shampine`, :numref:`Butcher.Zonneveld`, From f24995cafc92a49914a0fd90b8599eee91860722 Mon Sep 17 00:00:00 2001 From: David Gardner Date: Fri, 27 Oct 2023 20:47:46 -0700 Subject: [PATCH 08/10] Update CHANGELOG.md Co-authored-by: Steven Roberts --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index ec8e01278a..34c8cf9949 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -32,7 +32,7 @@ Added Fortran support for the LAPACK dense `SUNLinearSolver` implementations. Fixed the build system support for MAGMA when using a NVIDIA HPC SDK installation of CUDA and fixed the targets used for rocBLAS and rocSPARSE. -Added the third order ERK method `ARKODE_SHU_OSHER_3_2_3` the fourth order +Added the third order ERK method `ARKODE_SHU_OSHER_3_2_3`, the fourth order ERK method `ARKODE_SOFRONIOU_SPALETTA_5_3_4`, the sixth order ERK method `ARKODE_VERNER_9_5_6`, the seventh order ERK method `ARKODE_VERNER_10_6_7`, the eighth order ERK method `ARKODE_VERNER_13_7_8`, and the ninth order ERK From 9fe56c83ccf5dc932d8bd66d9219faa2bfe3436b Mon Sep 17 00:00:00 2001 From: David Gardner Date: Fri, 27 Oct 2023 20:48:02 -0700 Subject: [PATCH 09/10] Update Introduction.rst Remove duplicate change log entry --- doc/arkode/guide/source/Introduction.rst | 3 --- 1 file changed, 3 deletions(-) diff --git a/doc/arkode/guide/source/Introduction.rst b/doc/arkode/guide/source/Introduction.rst index 8b898fcb7a..8a0e8702d2 100644 --- a/doc/arkode/guide/source/Introduction.rst +++ b/doc/arkode/guide/source/Introduction.rst @@ -156,9 +156,6 @@ Fixed scaling bug in ``SUNMatScaleAddI_Sparse`` for non-square matrices. Fixed missing soversions in some ``SUNLinearSolver`` and ``SUNNonlinearSolver`` CMake targets. -Fixed the build system support for MAGMA when using a NVIDIA HPC SDK installation of CUDA -and fixed the targets used for rocBLAS and rocSPARSE. - Added the third order ERK method ``ARKODE_SHU_OSHER_3_2_3``, the fourth order ERK method ``ARKODE_SOFRONIOU_SPALETTA_5_3_4``, the sixth order ERK method ``ARKODE_VERNER_9_5_6``, the seventh order ERK method ``ARKODE_VERNER_10_6_7``, From 7cbfaa3a673eeae28e53533026bc3802493ae794 Mon Sep 17 00:00:00 2001 From: "David J. Gardner" Date: Sat, 28 Oct 2023 08:51:24 -0700 Subject: [PATCH 10/10] update answers submodule --- test/answers | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/answers b/test/answers index 87507b928f..37f4e6b5b6 160000 --- a/test/answers +++ b/test/answers @@ -1 +1 @@ -Subproject commit 87507b928f64be25cf6f8c0e5dfc0ad697b134d9 +Subproject commit 37f4e6b5b68e407ea302facba92883126dd39bf7