@@ -525,8 +525,8 @@ Runge--Kutta--Chebyshev (RKC), :cite:p:`VSH:04` and Runge--Kutta--Legendre (RKL)
525525
526526.. math ::
527527 z_0 &= y_n,\\
528- z_1 &= z_0 + h \tilde {\mu }_1 f(t_n,z_0 ),\\
529- z_j &= (1 -\mu _j-\nu _j)z_0 + \mu _j z_{j-1 } + \nu _jz_{j-2 } + h \tilde {\gamma }_j f(t_n,z_0 ) + h \tilde {\mu }_j f(t_n + c_{j-1 }h, z_{j-1 }) \\
528+ z_1 &= z_0 + h_n \tilde {\mu }_1 f(t_n,z_0 ),\\
529+ z_j &= (1 -\mu _j-\nu _j)z_0 + \mu _j z_{j-1 } + \nu _jz_{j-2 } + h_n \tilde {\gamma }_j f(t_n,z_0 ) + h_n \tilde {\mu }_j f(t_n + c_{j-1 }h, z_{j-1 }) \\
530530 y_{n+1 } &= z_s.
531531 :label: ARKODE_RKC_RKL
532532
@@ -546,7 +546,7 @@ The SSPRK methods in ARKODE use the following Shu--Osher representation :cite:p:
546546
547547.. math ::
548548 z_1 &= y_n,\\
549- z_i &= \sum _{j = 1 }^{i-1 } \left (\alpha _{i,j}y_j + \beta _{i,j}h f(t_n + c_jh , z_j)\right ),\\
549+ z_i &= \sum _{j = 1 }^{i-1 } \left (\alpha _{i,j}y_j + \beta _{i,j}h f(t_n + c_jh_n , z_j)\right ),\\
550550 y_{n+1 } &= z_s.
551551 :label: ARKODE_SSP
552552
@@ -574,15 +574,15 @@ components:
574574
575575* :math: `f^E(t,y)` contains the "slow-nonstiff" components of the system
576576 (this will be integrated using an explicit method and a large time step
577- :math: `h^S `),
577+ :math: `h^S_n `),
578578
579579* :math: `f^I(t,y)` contains the "slow-stiff" components of the system
580580 (this will be integrated using an implicit method and a large time step
581- :math: `h^S `), and
581+ :math: `h^S_n `), and
582582
583583* :math: `f^F(t,y)` contains the "fast" components of the system (this will be
584584 integrated using a possibly different method than the slow time scale and a
585- small time step :math: `h^F \ll h^S `).
585+ small time step :math: `h^F_n \ll h^S_n `).
586586
587587As with ERKStep, MRIStep currently requires that problems be posed with
588588an identity mass matrix, :math: `M(t)=I`. The slow time scale may consist of only
@@ -626,10 +626,10 @@ algorithm for a single step:
626626 diagonally-implicit, or additive Runge--Kutta stage update,
627627
628628 .. math ::
629- z_i - \theta _{i,i} h^S f^I(t_{n,i}^S, z_i) = a_i.
629+ z_i - \theta _{i,i} h^S_n f^I(t_{n,i}^S, z_i) = a_i.
630630 :label: MRI_implicit_solve
631631
632- where :math: `t_{n,j}^S = t_{n-1 } + h^S c^S_j`.
632+ where :math: `t_{n,j}^S = t_{n-1 } + h^S_n c^S_j`.
633633
634634#. Set :math: `y_{n} = z_{s}`.
635635
@@ -645,7 +645,7 @@ algorithm for a single step:
645645 stage update,
646646
647647 .. math ::
648- \tilde {y}_n - \tilde {\theta } h^S f^I(t_n, \tilde {y}_n) = \tilde {a}.
648+ \tilde {y}_n - \tilde {\theta } h^S_n f^I(t_n, \tilde {y}_n) = \tilde {a}.
649649 :label: MRI_embedding_implicit_solve
650650
651651 Whether a fast IVP evolution or a stage update (or both) is needed depends on
@@ -684,7 +684,7 @@ given by
684684 + \frac {1 }{\Delta c_i^S} \sum \limits _{j=1 }^i \gamma _{i,j}(\tau ) f^I(t_{n,j}^S, z_j)
685685
686686 where :math: `\Delta c_i^S=\left (c^S_i - c^S_{i-1 }\right )`, :math: `\tau = (t -
687- t_{n,i-1 }^S)/(h^S \Delta c_i^S)` is the normalized time, the coefficients
687+ t_{n,i-1 }^S)/(h^S_n \Delta c_i^S)` is the normalized time, the coefficients
688688:math: `\omega _{i,j}` and :math: `\gamma _{i,j}` are polynomials in time of degree
689689:math: `k-1 ` given by
690690
@@ -701,9 +701,9 @@ stage is computed as
701701
702702.. math ::
703703 z_i = z_{i-1 }
704- + h^S \sum _{j=1 }^{i-1 } \left (\sum _{\ell = 1 }^{k}
704+ + h^S_n \sum _{j=1 }^{i-1 } \left (\sum _{\ell = 1 }^{k}
705705 \frac {\Omega _{i,j,\ell }}{\ell }\right ) f^E(t_{n,j}^S, z_j)
706- + h^S \sum _{j=1 }^i \left (\sum _{\ell = 1 }^{k}
706+ + h^S_n \sum _{j=1 }^i \left (\sum _{\ell = 1 }^{k}
707707 \frac {\Gamma _{i,j,\ell }}{\ell }\right ) f^I(t_{n,j}^S, z_j).
708708 :label: ARKODE_MRI_delta_c_zero
709709
@@ -747,15 +747,15 @@ given by
747747 r_i(t) = \frac {1 }{c_i^S} \sum \limits _{j=1 }^{i-1 } \omega _{i,j}(\tau ) \left ( f^E(t_{n,j}^S, z_j) + f^I(t_{n,j}^S, z_j)\right ),
748748 :label: IMEXMRISR_forcing
749749
750- where :math: `\tau = (t - t_n)/(h^S c_i^S)` is the normalized time, and the coefficients
750+ where :math: `\tau = (t - t_n)/(h^S_n c_i^S)` is the normalized time, and the coefficients
751751:math: `\omega _{i,j}` are polynomials in time of degree :math: `k-1 ` that are also given by
752752:eq: `ARKODE_MRI_coupling `. The solution of these fast IVPs defines an intermediate stage
753753solution, :math: `\tilde {z}_i`.
754754
755755The implicit solve that follows each fast IVP must solve the algebraic equation for :math: `z_i`
756756
757757.. math ::
758- z_i = \tilde {z}_i + h^S \sum _{j=1 }^{i} \gamma _{i,j} f^I(t_{n,j}^S, z_j).
758+ z_i = \tilde {z}_i + h^S_n \sum _{j=1 }^{i} \gamma _{i,j} f^I(t_{n,j}^S, z_j).
759759 :label: ARKODE_MRISR_implicit
760760
761761 We note that IMEX-MRI-SR methods are solve-decoupled by construction, and thus the structure
@@ -798,10 +798,10 @@ solutions at these times as the stages :math:`z_i`. For example, the
798798groups. The fourth group contains stages 7, 8, 9, and the embedding, corresponding to
799799the :math: `c_i^S` values :math: `7 /10 `, :math: `1 /2 `, :math: `2 /3 `, and :math: `1 `.
800800Sorting these, a single fast IVP for this group must be evolved over the interval
801- :math: `[t_{0 ,i},t_{F,i}] = [t_{n-1 }, t_{n}]`, first pausing at :math: `t_{n-1 }+\frac12 h^S `
802- to store :math: `z_8 `, then pausing at :math: `t_{n-1 }+\frac {2 }{3 } h^S ` to store
803- :math: `z_9 `, then pausing at :math: `t_{n-1 }+\frac {7 }{10 } h^S ` to store :math: `z_7 `,
804- and finally finishing the IVP solve to :math: `t_{n-1 }+h^S ` to obtain :math: `\tilde {y}_n`.
801+ :math: `[t_{0 ,i},t_{F,i}] = [t_{n-1 }, t_{n}]`, first pausing at :math: `t_{n-1 }+\frac12 h^S_n `
802+ to store :math: `z_8 `, then pausing at :math: `t_{n-1 }+\frac {2 }{3 } h^S_n ` to store
803+ :math: `z_9 `, then pausing at :math: `t_{n-1 }+\frac {7 }{10 } h^S_n ` to store :math: `z_7 `,
804+ and finally finishing the IVP solve to :math: `t_{n-1 }+h^S_n ` to obtain :math: `\tilde {y}_n`.
805805
806806.. note ::
807807
@@ -1257,8 +1257,8 @@ Multirate time step adaptivity (MRIStep)
12571257
12581258Since multirate applications evolve on multiple time scales,
12591259MRIStep supports additional forms of temporal adaptivity. Specifically,
1260- we consider time steps at two adjacent levels, :math: `h^S > h^F `, where
1261- :math: `h^S ` is the step size used by MRIStep, and :math: `h^F ` is the
1260+ we consider time steps at two adjacent levels, :math: `h^S_n > h^F_n `, where
1261+ :math: `h^S_n ` is the step size used by MRIStep, and :math: `h^F_n ` is the
12621262step size used to solve the corresponding fast-time-scale IVPs in
12631263MRIStep, :eq: `MRI_fast_IVP ` and :eq: `MRI_embedding_fast_IVP `.
12641264
@@ -1271,8 +1271,8 @@ Multirate temporal controls
12711271We consider two categories of temporal controllers that may be used within MRI
12721272methods. The first (and simplest), are "decoupled" controllers, that consist of
12731273two separate single-rate temporal controllers: one that adapts the slow time scale
1274- step size, :math: `h^S `, and the other that adapts the fast time scale step size,
1275- :math: `h^F `. As these ignore any coupling between the two time scales, these
1274+ step size, :math: `h^S_n `, and the other that adapts the fast time scale step size,
1275+ :math: `h^F_n `. As these ignore any coupling between the two time scales, these
12761276methods should work well for multirate problems where the time scales are somewhat
12771277decoupled, and that errors introduced at one scale do not "pollute" the other.
12781278
@@ -1319,7 +1319,7 @@ adaptivity controllers:
13191319* scontrol-Tol -- this is a single-rate controller that adapts :math: `\text {RTOL}^F_n`
13201320 using the strategy described above.
13211321
1322- * fcontrol -- this adapts time steps :math: `h^F ` within the fast integrator to achieve
1322+ * fcontrol -- this adapts time steps :math: `h^F_n ` within the fast integrator to achieve
13231323 the current tolerance, :math: `\text {RTOL}^F_n`.
13241324
13251325We note that both the decoupled and :math: `h^S`-:math: `Tol` controller families may be used in
@@ -1670,26 +1670,26 @@ differently based on the type of mass-matrix supplied by the user.
16701670 have the residual
16711671
16721672 .. math ::
1673- G(z_i) \equiv z_i - h^S \left (\sum _{k\geq 1 } \frac {\Gamma _{i,i,k}}{k}\right )
1673+ G(z_i) \equiv z_i - h^S_n \left (\sum _{k\geq 1 } \frac {\Gamma _{i,i,k}}{k}\right )
16741674 f^I(t_{n,i}^S, z_i) - a_i = 0
16751675 :label: ARKODE_IMEX-MRI-GARK_Residual
16761676
16771677 where
16781678
16791679 .. math ::
1680- a_i \equiv z_{i-1 } + h^S \sum _{j=1 }^{i-1 } \left (\sum _{k\geq 1 }
1680+ a_i \equiv z_{i-1 } + h^S_n \sum _{j=1 }^{i-1 } \left (\sum _{k\geq 1 }
16811681 \frac {\Gamma _{i,j,k}}{k}\right )f^I(t_{n,j}^S, z_j).
16821682
16831683 IMEX-MRI-SR methods have the residual
16841684
16851685 .. math ::
1686- G(z_i) \equiv z_i - h^S \Gamma _{i,i} f^I(t_{n,i}^S, z_i) - a_i = 0
1686+ G(z_i) \equiv z_i - h^S_n \Gamma _{i,i} f^I(t_{n,i}^S, z_i) - a_i = 0
16871687 :label: ARKODE_IMEX-MRI-SR_Residual
16881688
16891689 where
16901690
16911691 .. math ::
1692- a_i \equiv z_{i-1 } + h^S \sum _{j=1 }^{i-1 } \Gamma _{i,j} f^I(t_{n,j}^S, z_j).
1692+ a_i \equiv z_{i-1 } + h^S_n \sum _{j=1 }^{i-1 } \Gamma _{i,j} f^I(t_{n,j}^S, z_j).
16931693
16941694
16951695 Upon solving for :math: `z_i`, method stages must store
@@ -1748,7 +1748,7 @@ within ARKStep, or
17481748.. math ::
17491749 {\mathcal A}(t,z) \approx I - \gamma J(t,z), \quad
17501750 J(t,z) = \frac {\partial f^I(t,z)}{\partial z}, \quad\text {and}\quad
1751- \gamma = h^S \sum _{k\geq 1 } \frac {\Gamma _{i,i,k}}{k}
1751+ \gamma = h^S_n \sum _{k\geq 1 } \frac {\Gamma _{i,i,k}}{k}
17521752 :label: ARKODE_NewtonMatrix_MRIStep
17531753
17541754 within MRIStep.
0 commit comments