TSGLLE#

DAE solver using implicit General Linear methods [BJW07] [But16]

Options Database Keys#

  • -ts_gl_type - the class of general linear method (irks)

  • -ts_gl_rtol - relative error

  • -ts_gl_atol - absolute error

  • -ts_gl_min_order

    - minimum order method to consider (default=1)

  • -ts_gl_max_order

    - maximum order method to consider (default=3)

  • -ts_gl_start_order

    - order of starting method (default=1)

  • -ts_gl_complete - method to use for completing the step (rescale-and-modify or rescale)

  • -ts_adapt_type - adaptive controller to use (none step both)

Notes#

These methods contain Runge-Kutta and multistep schemes as special cases. These special cases have some fundamental limitations. For example, diagonally implicit Runge-Kutta cannot have stage order greater than 1 which limits their applicability to very stiff systems. Meanwhile, multistep methods cannot be A-stable for order greater than 2 and BDF are not 0-stable for order greater than 6. GL methods can be A- and L-stable with arbitrarily high stage order and reliable error estimates for both 1 and 2 orders higher to facilitate adaptive step sizes and adaptive order schemes. All this is possible while preserving a singly diagonally implicit structure.

This integrator can be applied to DAE.

Diagonally implicit general linear (DIGL) methods are a generalization of diagonally implicit Runge-Kutta (DIRK). They are represented by the tableau

  A  |  U
  -------
  B  |  V

combined with a vector c of abscissa. “Diagonally implicit” means that AA is lower triangular. A step of the general method reads

[Y]=[AU][Y][Xk]=[BV][Xk1] \begin{align*} [ Y ] = [A U] [ Y' ] \\ [X^k] = [B V] [X^{k-1}] \end{align*}

where Y is the multivector of stage values, YY' is the multivector of stage derivatives, XkX^k is the Nordsieck vector of the solution at step kk. The Nordsieck vector consists of the first rr moments of the solution, given by

X=[x0,x1,...,xr1]=[x,hx,h2x,...,hr1x(r1)] X = [x_0,x_1,...,x_{r-1}] = [x, h x', h^2 x'', ..., h^{r-1} x^{(r-1)} ]

If AA is lower triangular, we can solve the stages (Y,Y)(Y, Y') sequentially

yi=hj=0s1(aijyj)+j=0r1uijxj,  i=0,...,s1 y_i = h \sum_{j=0}^{s-1} (a_{ij} y'_j) + \sum_{j=0}^{r-1} u_{ij} x_j, \, \, i=0,...,{s-1}

and then construct the pieces to carry to the next step

xxi=hj=0s1bijyj+j=0r1vijxj,  i=0,...,r1 xx_i = h \sum_{j=0}^{s-1} b_{ij} y'_j + \sum_{j=0}^{r-1} v_{ij} x_j, \, \, i=0,...,{r-1}

Note that when the equations are cast in implicit form, we are using the stage equation to define yiy'_i in terms of yiy_i and known stuff (yjy_j for j<ij<i and xjx_j for all jj).

Error estimation

At present, the most attractive GL methods for stiff problems are singly diagonally implicit schemes which posses Inherent Runge-Kutta Stability (TSIRKS). These methods have r=sr=s, the number of items passed between steps is equal to the number of stages. The order and stage-order are one less than the number of stages. We use the error estimates in the 2007 paper which provide the following estimates

hp+1X(p+1)=ϕ0TY+[0ψ0T]Xoldhp+2X(p+2)=ϕ1TY+[0ψ1T]Xoldhp+2(dx/dx)X(p+1)=ϕ2TY+[0ψ2T]Xold \begin{align*} h^{p+1} X^{(p+1)} = \phi_0^T Y' + [0 \psi_0^T] Xold \\ h^{p+2} X^{(p+2)} = \phi_1^T Y' + [0 \psi_1^T] Xold \\ h^{p+2} (dx'/dx) X^{(p+1)} = \phi_2^T Y' + [0 \psi_2^T] Xold \end{align*}

These estimates are accurate to O(hp+3) O(h^{p+3}).

Changing the step size

Uses the generalized “rescale and modify” scheme, see equation (4.5) of [BJW07].

References#

[BJW07] (1,2)

J.C. Butcher, Z. Jackiewicz, and W.M. Wright. Error propagation of general linear methods for ordinary differential equations. Journal of Complexity, 23(4-6):560–580, 2007. doi:10.1016/j.jco.2007.01.009.

[But16]

John Charles Butcher. Numerical methods for ordinary differential equations. John Wiley & Sons, 2016.

See Also#

TS: Scalable ODE and DAE Solvers, TSCreate(), TS, TSSetType(), TSType

Level#

beginner

Location#

src/ts/impls/implicit/glle/glle.c


Index of all TS routines
Table of Contents for all manual pages
Index of all manual pages