Skip to content

Commit 2b985d1

Browse files
authored
Add files via upload
1 parent b07f125 commit 2b985d1

File tree

1 file changed

+239
-0
lines changed

1 file changed

+239
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,239 @@
1+
Hairer's 10th-order Runge-Kutta method with a non-defective sixth order error estimator.
2+
3+
References:
4+
[1] E. Hairer. (1975). "A Runge-Kutta Method of Order 10", Journal of the Institute of Mathematics and its Applications (1975) 16, pages 35 to 55.
5+
[2] P. Stone. (November 29, 2011). "Hairer's 17 stage order 10 Runge-Kutta scheme". Accessed on October 5, 2023 from http://www.peterstone.name/Maplepgs/Maple/nmthds/RKcoeff/Runge_Kutta_schemes/RK10/RKcoeff10b_1.pdf
6+
[3] Tsitouras, Charalampos & Papakostas, S.. (1999). Cheap Error Estimation for Runge--Kutta Methods. Siam Journal on Scientific Computing. 20. 10.1137/S1064827596302230.
7+
8+
c[0] = 0.0
9+
c[1] = 0.52335840046200471396329370232151705
10+
c[2] = 0.52650910014161257273295167347754083
11+
c[3] = 0.78976365021241885909942751021631124
12+
c[4] = 0.39392357012567201432277381199965214
13+
c[5] = 0.76665398625355059119326686935606866
14+
c[6] = 0.28976365021241885909942751021631124
15+
c[7] = 0.10847768921956729335364611003962721
16+
c[8] = 0.35738424175967745184292450297956046
17+
c[9] = 0.88252766196473234642550148697966908
18+
c[10] = 0.64261575824032254815707549702043954
19+
c[11] = 0.11747233803526765357449851302033092
20+
c[12] = 0.76665398625355059119326686935606866
21+
c[13] = 0.28976365021241885909942751021631124
22+
c[14] = 0.52650910014161257273295167347754083
23+
c[15] = 0.52335840046200471396329370232151705
24+
c[16] = 1.0
25+
c[17] = 1.1594751649181922776183076757103665
26+
27+
a[1,0] = 0.52335840046200471396329370232151705
28+
29+
a[2,0] = 0.26166971637781272833124020975489976
30+
a[2,1] = 0.26483938376379984440171146372264106
31+
32+
a[3,0] = 0.19744091255310471477485687755407781
33+
a[3,1] = 0.0
34+
a[3,2] = 0.59232273765931414432457063266223343
35+
36+
a[4,0] = 0.19732054862870230670366494859789521
37+
a[4,1] = 0.0
38+
a[4,2] = 0.29508333409267219182282555982743592
39+
a[4,3] = -0.098480312595702484203716696425678998
40+
41+
a[5,0] = 0.13131341734446165361301779993459095
42+
a[5,1] = 0.0
43+
a[5,2] = 0.0
44+
a[5,3] = 0.11015443953863962067736969677168929
45+
a[5,4] = 0.52518612937044931690287937264978842
46+
47+
a[6,0] = 0.13420034184632260027274769516809314
48+
a[6,1] = 0.0
49+
a[6,2] = 0.0
50+
a[6,3] = 0.69608870328811608022998240476783148
51+
a[6,4] = 0.25049772157033980971255180925098002
52+
a[6,5] = -0.79102311649235963111585439897059341
53+
54+
a[7,0] = 0.072218274189662619420050818455170498
55+
a[7,1] = 0.0
56+
a[7,2] = 0.0
57+
a[7,3] = 0.0
58+
a[7,4] = -0.058336322936456107163806061389306519
59+
a[7,5] = 0.0030475576685745252201749500702940361
60+
a[7,6] = 0.091548180297786255877226402903469198
61+
62+
a[8,0] = 0.031255008135166179470501205282634766
63+
a[8,1] = 0.0
64+
a[8,2] = 0.0
65+
a[8,3] = 0.0
66+
a[8,4] = 0.0
67+
a[8,5] = 0.00010912382154241289292948349552077165
68+
a[8,6] = 0.15672575863099383562461074656487947
69+
a[8,7] = 0.16929435117197502385488306763652546
70+
71+
a[9,0] = 0.011906604414668619242168842580809251
72+
a[9,1] = 0.0
73+
a[9,2] = 0.0
74+
a[9,3] = 0.0
75+
a[9,4] = 0.0
76+
a[9,5] = 0.28343708202460278602559922669821887
77+
a[9,6] = -0.41631216757062823537242761813563002
78+
a[9,7] = 0.2646463339497663668210902091085361
79+
a[9,8] = 0.73884980914632280970907082672773488
80+
81+
a[10,0] = 0.023406573691331978914708383779840078
82+
a[10,1] = 0.0
83+
a[10,2] = 0.0
84+
a[10,3] = 0.0
85+
a[10,4] = 0.0
86+
a[10,5] = 0.094493130189493654013002530956056143
87+
a[10,6] = -0.27287205590199526063630925806659632
88+
a[10,7] = 0.22402204611560579979443155225181318
89+
a[10,8] = 0.60438144107516575697193472225760853
90+
a[10,9] = -0.030815376929279380900692434158282079
91+
92+
a[11,0] = 0.045443775310176163157653899081530965
93+
a[11,1] = 0.0
94+
a[11,2] = 0.0
95+
a[11,3] = 0.0
96+
a[11,4] = 0.0
97+
a[11,5] = -0.0011879966718640285867652542192853563
98+
a[11,6] = 0.012035654990922610979661882172343621
99+
a[11,7] = 0.075126902987649668216275213715655721
100+
a[11,8] = -0.018220924098880124031411861059748389
101+
a[11,9] = -0.00025715285408410434688063762217713962
102+
a[11,10] = 0.0045320783713474681859652709520115027
103+
104+
a[12,0] = 0.17671377825927720309587987657119933
105+
a[12,1] = 0.0
106+
a[12,2] = 0.0
107+
a[12,3] = 0.11015443953863962067736969677168929
108+
a[12,4] = 0.52518612937044931690287937264978842
109+
a[12,5] = -0.47162076728019579487982179121523594
110+
a[12,6] = 0.89903104984918752663689900718751529
111+
a[12,7] = -0.74672303069162896385996020080881681
112+
a[12,8] = -1.017101516756146040853186972006066
113+
a[12,9] = 0.12635087151959889629513078276876483
114+
a[12,10] = 0.566013827235506427068273224990747
115+
a[12,11] = 0.59864920520886240010980387244648321
116+
117+
a[13,0] = 0.12775349474808698226947770068805715
118+
a[13,1] = 0.0
119+
a[13,2] = 0.0
120+
a[13,3] = 0.69608870328811608022998240476783148
121+
a[13,4] = 0.25049772157033980971255180925098002
122+
a[13,5] = -0.73682464360284168676092467574545354
123+
a[13,6] = -0.27785787771082418267732733749007233
124+
a[13,7] = -0.5997526313598403501296884799197753
125+
a[13,8] = 0.20246923389107046935002375856219031
126+
a[13,9] = 0.0054320369823638497806006846526344436
127+
a[13,10] = -0.010744724741550479201012069198943813
128+
a[13,11] = 0.69516884845702340047005918581641461
129+
a[13,12] = -0.062466511309525033944315471167551805
130+
131+
a[14,0] = 0.26166971637781272833124020975489976
132+
a[14,1] = 0.26483938376379984440171146372264106
133+
a[14,2] = 0.0
134+
a[14,3] = 0.0
135+
a[14,4] = 0.0
136+
a[14,5] = -0.1998011270205324791079663580830885
137+
a[14,6] = -0.65104998730528271249219144896838136
138+
a[14,7] = 0.0
139+
a[14,8] = 0.0
140+
a[14,9] = 0.0
141+
a[14,10] = 0.0
142+
a[14,11] = 0.0
143+
a[14,12] = 0.1998011270205324791079663580830885
144+
a[14,13] = 0.65104998730528271249219144896838136
145+
146+
a[15,0] = 0.52335840046200471396329370232151705
147+
a[15,1] = 0.0
148+
a[15,2] = -0.55588121367543020607261431053092935
149+
a[15,3] = 0.0
150+
a[15,4] = 0.0
151+
a[15,5] = 0.0
152+
a[15,6] = 0.0
153+
a[15,7] = 0.0
154+
a[15,8] = 0.0
155+
a[15,9] = 0.0
156+
a[15,10] = 0.0
157+
a[15,11] = 0.0
158+
a[15,12] = 0.0
159+
a[15,13] = 0.0
160+
a[15,14] = 0.55588121367543020607261431053092935
161+
162+
a[16,0] = 0.057320795432065591031142617051039837
163+
a[16,1] = -0.54997107638999456081158418962901879
164+
a[16,2] = -0.64993741740087491351166074200108906
165+
a[16,3] = 0.0
166+
a[16,4] = 0.0
167+
a[16,5] = -1.0616673704017562072400195390231571
168+
a[16,6] = -0.040401566898063582942696822342121833
169+
a[16,7] = -0.1828302366407607254710272774065261
170+
a[16,8] = -0.33365927064927868456665756618281627
171+
a[16,9] = 0.39564854237605675688013451071660155
172+
a[16,10] = 0.69505704945997358910020992820051581
173+
a[16,11] = 0.27148737645737485883772630585392209
174+
a[16,12] = 0.60718105604140412028737743497946802
175+
a[16,13] = 0.59186362482298428408381040815307397
176+
a[16,14] = 0.64993741740087491351166074200108906
177+
a[16,15] = 0.54997107638999456081158418962901879
178+
179+
a[17,0] = 0.12445832373808099546998998797622129
180+
a[17,1] = 0.0
181+
a[17,2] = 0.0
182+
a[17,3] = 0.11623459471215480044491475631609553
183+
a[17,4] = 0.55832690162183036227975081779574614
184+
a[17,5] = 0.0
185+
a[17,6] = 0.0
186+
a[17,7] = 0.0
187+
a[17,8] = 0.0
188+
a[17,9] = 0.0
189+
a[17,10] = 0.0
190+
a[17,11] = 0.0
191+
a[17,12] = 0.0
192+
a[17,13] = 0.0
193+
a[17,14] = 0.0
194+
a[17,15] = 0.0
195+
a[17,16] = 0.36045534484612611942365211362230357
196+
197+
#-------------------------------------------------------------
198+
# 10th order weights
199+
#-------------------------------------------------------------
200+
b[0] = 0.033333333333333333333333333333333333
201+
b[1] = -0.038461538461538461538461538461538462
202+
b[2] = -0.090909090909090909090909090909090909
203+
b[3] = 0.0
204+
b[4] = 0.0
205+
b[5] = -0.13483146067415730337078651685393258
206+
b[6] = -0.11111111111111111111111111111111111
207+
b[7] = 0.0
208+
b[8] = 0.27742918851774317650836026256065434
209+
b[9] = 0.18923747814892349015830640410601233
210+
b[10] = 0.27742918851774317650836026256065434
211+
b[11] = 0.18923747814892349015830640410601233
212+
b[12] = 0.13483146067415730337078651685393258
213+
b[13] = 0.11111111111111111111111111111111111
214+
b[14] = 0.090909090909090909090909090909090909
215+
b[15] = 0.038461538461538461538461538461538462
216+
b[16] = 0.033333333333333333333333333333333333
217+
b[17] = 0.0
218+
219+
#-------------------------------------------------------------
220+
# error estimate weights
221+
#-------------------------------------------------------------
222+
e[0] = 0.0060297571692564621722799331362330804
223+
e[1] = 0.038461538461538461538461538461538462
224+
e[2] = 0.090909090909090909090909090909090909
225+
e[3] = 0.0
226+
e[4] = 0.0
227+
e[5] = -0.056764326225521868106559369607701955
228+
e[6] = -0.18983144062669067936808485167146244
229+
e[7] = 0.050286310012688216133291262963052085
230+
e[8] = 0.035526756062761030620281514414646974
231+
e[9] = 0.083307505130064307222044846510252782
232+
e[10] = -0.049976293276353439121117740932562913
233+
e[11] = -0.070570219448782434710246067933407669
234+
e[12] = 0.052168539325842696629213483146067416
235+
e[13] = 0.18888888888888888888888888888888889
236+
e[14] = -0.090909090909090909090909090909090909
237+
e[15] = -0.038461538461538461538461538461538462
238+
e[16] = -0.059065477012153180359991898914006248
239+
e[17] = 0.01

0 commit comments

Comments
 (0)