arXiv:1806.07803v1 [math.NA] 20 Jun 2018 oihs h pc-ietno-rdc ftetiladte and trial the of tensor-product there (FEM space-time hand, Methods the Element other Finite gorithms, the space-time On on s based [1–3]. mesh strategies estimates spatial tim the error employ and/or posteriori size to step a common time is the adapt it and th problems, schemes minimize dependent to time seek For that grids cost. optimal produce to tools erful .Introduction 1. methods Runge-Kutta meshes, dynamic formulations, gen and Keywords: d two, to one, algorithms. us te adaptive to enables and (goal-oriented) approach lead trial time-domain This that build methods. We equation Runge-Kutta diffusion explicit time. linear and discontin the space as in for expressed both we be work, methods this can Galerkin t In methods known elusive. Runge-Kutta is remains time explicit it in While Gale methods the explicit decades. structure, of last variational have the schemes in marching time interest great Differenti of Partial been for formulations space-time Variational Abstract e iea eore,Cmowat cetfi n Industrial and Scientific Commonwealth Resources, Mineral dpieagrtm o ata ieeta qain (PDE Equations Differential Partial for algorithms Adaptive d aitoa omltosfrEpii Runge-Kutta Explicit for Formulations Variational ple elg,WsenAsrla colo ie,Facul Mines, of School Australian Western Geology, Applied ui Mu˜noz-MatuteJudit c b a KRAQE aqeFudto o cec,Bla,Spain Bilbao, Science, for Foundation Basque IKERBASQUE, CMBsu etrfrApidMteais ibo Spain Bilbao, , Applied for Center BCAM-Basque nvriyo h aqeCuty(P/H) eo,Spain Leioa, (UPV/EHU), Country Basque the of University ierdffso qain icniuu Petrov-Galerkin discontinuous equation, diffusion linear niern,Cri nvriy et,W,Asrla6845 Australia WA, Perth, University, Curtin , CIO,Knigo,W,Asrla6152 Australia WA, Kensington, (CSIRO), lsbt Alberdi Elisabete a ai Pardo David , Methods 1 a,b,c a itrM Calo M. Victor , eerhOrganisation Research yo cec and Science of ty lEutoshave Equations al knformulation rkin computational e tfntosis functions st rv htthe that prove xs adaptive exist z employing ize .I oeal- some In ). sg explicit esign osPetrov- uous a implicit hat )aepow- are s) d,e e-marching rlstage eral tspaces st , assumed. Then, employing discontinuous-in-time functions, the space- time FEM can be reinterpreted as a time-marching scheme [4, 5]. Here, the approximation orders (in space and time) as well as the mesh size and the time step size can be adapted [6, 7]. But the main benefit of the space-time FEM is that they can be employed to build unstructured space-time meshes [8–11]. To perform goal-oriented adaptivity [12–15], we require a space-time variational formulation of the problem. In this kind of algorithms, we rep- resent the error in the quantity of interest as an integral over the whole space-time domain that is subsequently expressed as a sum of local element contributions, which we use for adaptivity. A full space-time variational formulation allows such representation [16]. However, all existing space- time variational formulations for PDEs lead to implicit methods in time when they are thought as time marching schemes. For that reason, adaptive strategies based in space-time FEM as well as time-domain goal-oriented adaptive processes are performed employing implicit methods in time. Our focus is to design goal-oriented adaptive algorithms employing explicit meth- ods in time since in many instances they can be computationally cheaper than implicit ones. In the resolution of time-dependent PDEs, we commonly discretize inde- pendently the spatial and temporal variables (also called semidiscretization or ) [17]. First, the spatial variable is discretized by the (FEM) to obtain a system of ODEs. The resulting system is subsequently solved employing time stepping schemes. The alter- native idea of using variational space-time methods was well established in the late eighties and early nineties [18–21]. Hughes and Hulbert [22, 23] pro- posed a stabilized space-time FEM for hyperbolic problems. They showed that the oscillations present in the solutions were considerably reduced by employing space-time variational formulations rather than using semidis- cretizations. Nowadays, it is well known that some low-order space-time FEM are algebraically equivalent to some semidiscretizations [24]. For ex- ample, the discontinuous Galerkin method using constants in time (usually denoted by dG(0)) leads to the Backward . The continuous Petrov-Galerkin method in time with linear trial and constant test functions (denoted cGP(1)) is equivalent to the Crank-Nicholson method. Recently, higher order dG(k)- and cGP(k)-methods have been developed and analyzed for parabolic and hyperbolic problems [25–28]. There also exist variational formulations of time marching schemes in the context of Ordinary Differential Equations (ODEs) [29]. Delfour et. al. [30, 31] and Hulme [32] showed that it is possible to obtain classical schemes

2 like Runge-Kutta methods by employing Galerkin methods for initial value problems together with quadrature formulas. Estep and French [33, 34] derived error bounds for the continuous and discontinuous Galerkin methods to efficiently adapt the time step size. More recently, Estep and Stuart studied the dynamical behavior of discontinuous Galerkin methods for ODEs in [35]; in [36], Collins et. al. derived an a posteriori error estimation of explicit schemes; and Tang et. al. provided in [37] a unified framework of finite element methods in time. In this work, we construct a variational formulation of explicit Runge- Kutta methods for parabolic problems. Such formulation could be applied to design explicit-in-time (and consequently cheaper) goal-oriented adaptive algorithms, to build new time-stepping schemes and also to extend the ex- isting space discretizations like IGA [38–40], DPG [41] and Trefftz [42], to time domain problems. First, we derive the Forward Euler method (one stage explicit Runge- Kutta). For trial functions, we build a family of piecewise linear polynomials, depending on a parameter ε, that are globally-continuous in time. We con- struct these functions in such a way that when we take the limit ε 0, they → become discontinuous and piecewise constant in time. We prove that by em- ploying these trial functions and selecting piecewise constant test functions, we recover the Forward Euler method. This construction supports dynamic meshes in space, i.e, we allow different spatial discretizations per time in- terval. In order to obtain square mass matrices, we displace in time the spatial discrete spaces of the test space with respect to the trial space. This displacement leads to a Petrov-Galerkin method both in space and time. For a general number of Runge-Kutta stages, we perform a similar con- struction. That is, we generate the trial space by a family of piecewise polynomials that are globally continuous in time and depend on a parame- ter ε. For the test space, we define a family of piecewise polynomials that are discontinuous in time. By substituting them into the variational for- mulation and treating the coefficients of the polynomials as unknowns, we obtain integrals of the products of trial and test functions. Then, we estab- lish some conditions that these time integrals must satisfy. First, we state the necessary conditions needed to obtain an explicit method. We also define non-orthogonality conditions by matching the remaining in- tegrals with the entries of the Butcher’s table that define the Runge-Kutta methods. Finally, taking the limit ε 0 and performing analytic integra- → tion, we obtain a system of nonlinear equations. By solving this system, we obtain the coefficients of the trial and test functions for any stage Runge- Kutta method. However, for a large number of stages (above 5) the system

3 becomes hard to solve. This article is organized as follows. Section 2 describes the strong and weak formulations of the linear diffusion equation we use to develop the theory. In Section 3, we derive a discontinuous-in-time Petrov-Galerkin formulation of the one, two, and general s-stage Runge-Kutta methods, providing some examples. Section 4 explains the conclusions and the possible extensions of this work. Finally, in Appendix A, we express in matrix form the of equations we need to solve to obtain any explicit Runge-Kutta method. Appendix B provides a MATLAB code to solve it.

2. Model Problem

In this section, we state both the strong and weak formulations of the model problem we employ to develop the discontinuous-in-time Petrov- Galerkin formulations.

2.1. Strong formulation Let Ω Rd, where d 1, 2, 3 , and I = (0, T ] R. We consider the ⊂ ∈ { } ⊂ linear heat (diffusion) equation

ut ∆u = f in Ω I, − × u =0 on ∂Ω I, (1)  ×  u(0) = u0 in Ω, where ut := ∂u/∂t,∆u= div(grad(u)) is the Laplacian of u and ∂Ω denotes the boundary of the spatial domain Ω. The solution u(x,t) of (1) could represent the temperature distribution in a body. The source term f(x,t) and the initial temperature distribution u0(x) are given data. For arbitrary Dirichlet (geometric) boundary conditions, we can modify the source term accordingly, thus making (1) a general statement.

2.2. Weak formulation In order to obtain the weak formulation of (1), we multiply the diffusion equation by test functions v of a suitable space and we integrate over the V whole domain Ω I ×

vut v∆u dΩ dt = vf dΩ dt, v . − ∀ ∈V ZI ZΩ   ZI ZΩ

4 Integrating by parts in space the diffusion term and selecting test functions vanishing on ∂Ω we obtain

vut + v u dΩ dt = vf dΩ dt, v . (2) ∇ ·∇ ∀ ∈V ZI ZΩ   ZI ZΩ A sufficient condition for the above integrals to make sense is if all factors in the above products are in L2 in both space and time. For the space integrals, taking into account the diffusion term in (2), it seems natural that u and v should be in

V := H1(Ω) := u L2(Ω) u L2(Ω), u =0on ∂Ω , 0 { ∈ |∇ ∈ } and therefore, to guarantee integrability of the weak formulation, ut and f should belong to V ′ := H−1(Ω), which is the dual space of V. In time, it is enough to ensure that all the functions in (2) are in L2. In the remaining of this article, we omit the spatial dependence of the functions, i.e., we write u(t) instead of u(x,t). We consider u(t) and v(t) as functions in time that take values in suitable Hilbert spaces [43], so in view of the sufficient integrability conditions discussed in the previous paragraph, we construct the following test space

:= L2(I; V )= u : I V u is V -measurable and u(t) 2 dt < + , V −→ | || ||V ∞  ZI  which is the space of all integrable functions in time that take values in V . ′ On the other hand, for the solution, we need u and ut := ∈ V ∈ V L2(I; V ′). Treating the initial solution as a Dirichlet condition in time, we define the following trial space

′ := u ut , u(0) = u0 . U { ∈ V | ∈V } ′ Finally, assuming that f and u0 V , the weak solution of problem (1) ∈V ∈ satisfies

v, ut dt + ( v, u)dt = v,f dt, v , (3) h i ∇ ∇ h i ∀ ∈V ZI ZI ZI where , denotes the duality pairing between the spaces V and V ′, and h· ·i ( , ) denotes the inner product in L2(Ω). Now, denoting by · ·

t g B (v, u) := v, ut dt, B (v, u) := ( v, u)dt, h i ∇ ∇ ZI ZI

5 B(v, u) := Bt(v, u)+ Bg(v, u),

F (v) := v,f dt, h i ZI we obtain the weak formulation of problem (1)

Find u such that ∈U (4) B(v, u)= F (v), v , ∀ ∈V where F ( ) is a linear form and B( , ) is a . · · · 2.3. Abstract discretization ε Selecting discrete space-time trial and test subspaces , τh , Uτh ⊂U V ⊂V we define the fully discrete problem

ε Find uτh such that ∈Uτh (5) B(vτh, uτh)= F (vτh), vτh τh. ∀ ∈V

In the following sections, we show that by selecting different trial and test subspaces in (5), we obtain different methods in time.

3. Explicit Runge-Kutta methods

In this section, we derive discontinuous Petrov-Galerkin formulations that are equivalent to explicit Runge-Kutta methods in time. In space, we employ either a (SEM) or a Finite Element Method (FEM). We perform a partition of the time interval I¯ = [0, T ] as

0= t0

3.1. Forward Euler method To appropriately define the discrete trial and test subspaces of (5) for this particular problem, we proceed as follows

ε 0 k k k k := u0φ (t) + span u φ (t), u V , k = 1,...,m , Uτh ε { h ε h ∈ h ∀ }⊂U k k k k (6) τh := span v ϕ (t), v V , k = 1,...,m , V { h h ∈ h ∀ }⊂V 6 where the trial functions for 0 <ε< min τk are defined as (see Figure 1) 1≤k≤m

t (tk−1 ε) − − , t (tk 1 ε, tk 1), ε ∈ − − −  1, t [tk 1,tk ε], φk−1(t)=  ∈ − − k = 2,...,m, ε tk t ∀  − , t (tk ε, tk),  ε ∈ − 0, elsewhere,    1, t (t0,t1 ε) ∈ − t (tm ε) 0 t1 t m − − , t (tm ε, tm), φ (t)=  − , t [t1 ε, t1), φ (t)= ε ∈ − ε ε ε   ∈ − 0, elsewhere. 0, elsewhere,     0 k−1 m φε φε φε 1 1 1

ε t ε ε t ε t

t0 t1 tk−2 tk−1 tk tm−1 tm

Figure 1: Trial functions for the forward Euler method. and the piecewise constant test functions are defined as (see Figure 2)

1, t Ik, ϕk(t)= ∈ k = 1,...,m. (0, elsewhere, ∀

ϕk 1

t

tk−1 tk

Figure 2: Test functions for the forward Euler method.

We express the solution of (5) employing the trial functions defined in (6) as m 0 k k uτh(t)= u0φε(t)+ uhφε (t), (7) =1 Xk 7 2 we approximate the initial condition u0 by the L -projection in space into V 0 V , so we define u0 as the solution of h ⊂ h 0 0 0 0 0 (v , u ) = (v , u0), v V . h h h ∀ h ∈ h We commit a slight abuse of notation by omitting the constants in (7) be- k cause we can express each function uh as a linear combination of basis func- tions in V k, k = 1,...,m. h ∀ Theorem 1. (Forward Euler method) Selecting trial and test discrete sub- spaces as in (6) and taking the limit ε 0, problem (5) leads to the following → scheme Find uk V k, k = 1,...,m, such that h ∈ h ∀

k k k k−1 k k−1 k k k vh, uh = vh, u τk vh, u + vh,f dt, vh Vh , h − ∇ ∇ h ∀ ∈ ZIk       D E

0 0 0 0 0 vh, uh = vh, u0 , vh Vh . ∀ ∈ (8)   which is an explicit method that is a variant of the Forward Euler method in time.

Proof. Substituting (7) into (5), we have for each test function vτh(t) = vkϕk(t), k = 1,...,m h ∀

k k t k k g k k k k B(vhϕ , uτh)= B (vhϕ , uτh)+ B (vhϕ , uτh)= vhϕ ,f dt. I Z D E k As ϕ (t) has local support at Ik and its value is equal to 1 inside the interval, we have

t k g k k B (vh, uτh)+ B (vh, uτh)= vh,f dt, (9) |Ik |Ik Ik Z D E where Bt ( , ) and Bg ( , ) are the restrictions of operators Bt( , ) and |Ik |Ik g · · · · · · B ( , ) to interval Ik, respectively. · · Figure 3 shows the trial shape functions over the time interval Ik, so the two left hand side terms of (9) become

t k k k−1 ∂ k−1 k ∂ k B (vh, uτh)= vh, u φε + uh φε dt, |Ik h ∂t ∂t ZIk   8 k−1 k φε φε 1

ε t

tk−1 tk

Figure 3: Trial shape functions inside each time interval Ik.

g k k k−1 k−1 k k B (vh, uτh)= vh, u φε + uhφε dt, |Ik h Ik ∇ ∇ ∇ Z   1 ε We now calculate the integrals in each subinterval of Ik = I I where k ∪ k 1 ε I := (tk 1,tk ε), I := (tk ε, tk), k − − k − that is, we separate each interval into the section where the trial functions are constant and where they linearly vary between zero and one. Then, we obtain

tk−ε t k k k−1 B (v , uτh)= v , u 0 dt = 0, |I1 h h h k · Ztk−1 tk   t k k k−1 1 k 1 k k k−1 B|Iε (vh, uτh)= vh, uh − + uh dt = (vh, uh uh ), k ε ε − Ztk−ε     tk−ε g k k k−1 k k−1 B (v , uτh)= ( v , u )dt = (τk ε)( v , u ), |I1 h h h h h k ∇ ∇ − ∇ ∇ Ztk−1 tk t t t (t ε) Bg (vk, u )= vk, uk−1 k + uk k dt = |Iε h τh h h − h − − k ∇ ∇ ε ∇ ε tk−ε      Zε = ( vk, uk−1 + uk). 2 ∇ h ∇ h ∇ h Thus, local-in-time problem (9) becomes

k k k−1 ε k k ε k k−1 k vh, uh uh + vh, uh + τk vh, uh = vh,f dt, − 2 ∇ ∇ − 2 ∇ ∇ Ik         Z D E and taking the limit as ε 0 we have → k k k−1 k k−1 k vh, uh uh + τk vh, uh = vh,f dt, − ∇ ∇ Ik     Z D E k = 1,...,m. ∀

9 Scheme (8) is the Forward Euler method in time except for the source term. A standard difference between variational forms and difference meth- ods is that variational forms include an integral measure rather than a point- wise sample of the forcing terms. In space, we can then employ the Spectral Element Method, which leads to a diagonal mass matrix for arbitrary di- mensional problems using arbitrary geometrical mappings [44].

Remark 1. To obtain an expression whose form is identical to the classical Forward Euler method, we can project the source term in the trial space as

m k k f(x,t)= f (x)φε (t), =0 Xk k where we identify f (x) with f(x,tk). Then, the source term in (8) becomes (see Figure 3)

k k k−1 k−1 k k ε k k−1 ε k k vh,f dt = vh,f φε + f φε dt = τk vh,f + vh,f , Ik Ik − 2 2 Z D E Z D E  D E D E and taking the limit ε 0, we obtain k = 1,...,m → ∀ k k k−1 vh,f dt = τk vh,f . Ik Z D E D E Remark 2. The key point in the construction of (8) is that the spatial discrete spaces in the test space τh are displaced in time with respect to the V trial space ε , which leads to a Petrov-Galerkin method. Figure 4 illustrates Uτh this displacement of the spaces.

0 1 m−1 m Vh Vh Vh Vh

t0 t1 t2 . . . tm−1 tm

0 1 2 m Vh Vh Vh Vh

t0 t1 t2 . . . tm−1 tm

Figure 4: Illustration of the displacement in time of the trial (top) and test (bottom) discrete spaces.

10 3.2. Two-stage Runge-Kutta methods In this section, following the same structure as in Section 3.1, we build the trial and test spaces to obtain equivalent methods to some two-stage second-order Runge-Kutta methods. We introduce two test functions per temporal element Ik

k k vh,1ϕ1(t), vh,2ϕ2(t), (10) and two trial functions associated to each element, where one of them has support over two consecutive elements (see Figure 5)

u (t) = uk−1φk−1(t)+ uk−1φk−1(t)+ uk φk (t), (11) τh |Ik h,1 ε,1 h,2 ε,2 h,1 ε,1 where the test functions could be discontinuous in time and the trial func- k ε tions are globally continuous. As before, φε,1(t) only has support in Ik and k−1 k−1 φε,1 (t) and φε,2 (t) are continuous and piecewise polynomials defined in 1 ε Ik = I I . We assume that the trial functions are bounded, and addi- k ∪ k tionally, that each function is associated with a coefficient (as in Figure 5). Thus, we impose k−1 φε,2 (tk−1) = 0, k  φ (tk ε) = 0, ε,1 −  k−1 k−1 (12)  φ (tk)= φ (tk) = 0,  ε,1 ε,2 k k−1 φε,1(tk)= φε,1 (tk−1).    k−1 k−1 k φε,1 φε,2 φε,1

ε t

tk−1 tk

Figure 5: Trial functions of arbitrary order inside each element Ik.

k−1 k−1 k k Therefore, from (12), uh,1 Vh and uh,1 Vh are the values of uτh(t) ∈ k−1 k−1 ∈ at tk 1 and tk, respectively, and u V is an intermediate value inside − h,2 ∈ h the temporal interval Ik.

11 If we substitute (11) into (5), for each test function, we have

t k k k t k k−1 k−1 B (vh,jϕ , u φ ) +B (vh,jϕ , u φ )+ |Ik j h,1 ε,1 |Ik j h,2 ε,2 t k k−1 k−1 g k k k +B (vh,jϕj , u φ )+B (vh,jϕj , uh,1φε,1) + |Ik h,1 ε,1 |Ik g k k−1 k−1 g k k−1 k−1 +B (vh,jϕj , u φ )+B (vh,jϕj , u φ )= |Ik h,2 ε,2 |Ik h,1 ε,1 k = vh,jϕj ,f dt, Ik Z D E where j 1, 2 , or equivalently ∈ { }

k k ∂ k k−1 k ∂ k−1 vh,j, uh,1 ϕj φε,1 dt + vh,j, uh,2 ϕj φε,2 dt)+ Ik ∂t Ik ∂t   Z   Z k−1 k ∂ k−1 k k k + vh,j, uh,1 ϕj φε,1 dt + vh,j, uh,1 ϕj φε,1 dt + Ik ∂t ∇ ∇ Ik   Z   Z (13) k−1 k k−1 k−1 k k−1 + vh,j, uh,2 ϕj φε,2 dt+ vh,j, uh,1 ϕj φε,1 dt= ∇ ∇ Ik ∇ ∇ Ik   Z   Z k = vh,jϕj ,f dt. Ik Z D E We build the trial and test functions to guarantee the satisfaction of some design conditions as ε 0. We need the following orthogonality conditions → in order to obtain an explicit method:

k k lim ϕ1φε,1 dt = 0, (14a) ε→0  ZIk  k ∂ k  lim ϕ2 φε,1 dt = 0, (14b)  ε→0 ∂t  Ik  Z  k k  lim ϕ2φε,1 dt = 0, (14c)  ε→0 ZIk  k k−1  lim ϕ2φε,2 dt = 0. (14d)  ε→0  Ik  Z  To obtain a Runge-Kutta method we need to impose further conditions on the system. Indeed, the general expression of the two-stage second order

12 Runge-Kutta method we want to obtain is

k k−1 τk k−1 (vh,1, u ) (vh,1, u )+ ( vh,1, u )+ h,1 − h,1 2α ∇ ∇ h,2 1 k−1 k + 1 τk( vh,1, uh,1 ) = vh,1ϕ1,f dt, (15) − 2α ∇ ∇ Ik   Z D E k−1 k−1 k−1 k (vh,2, uh,2 ) (vh,2, uh,1 )+ ατk( vh,2, uh,1 )= vh,2ϕ2,f dt, − ∇ ∇ Ik Z D E where α R 0 . In order to obtain (15) from (13), in addition ∈ − { } to the orthogonality conditions (14), we need to impose also the following conditions: k ∂ k lim ϕ1 φε,1 dt = 1, (16a) ε→0 ∂t  ZIk  k ∂ k−1  lim ϕ1 φε,2 dt = 0, (16b)  ε→0  Ik ∂t  Z  k ∂ k−1  lim ϕ1 φε,1 dt = 1, (16c)  ε→0 ∂t −  ZIk   k k−1 τk  lim ϕ1φε,2 dt = , (16d)  ε→0 2α  ZIk   k k−1 1  lim ϕ1φε,1 dt = 1 τk, (16e) ε→0 − 2α ZIk    k ∂ k−1  lim ϕ2 φε,2 dt = 1, (16f)  ε→0 ∂t  ZIk   k ∂ k−1  lim ϕ2 φε,1 dt = 1, (16g)  ε→0 ∂t −  ZIk   k k−1  lim ϕ2φε,1 dt = ατk. (16h)  ε→0  Ik  Z  Now, we define the limit of the shape functions as k−1 k−1 k−1 k−1 k k φ1 (t) := lim φε,1 (t), φ2 (t) := lim φε,2 (t), φ1(t) := lim φε,1(t), (17) ε→0 ε→0 ε→0 that could be discontinuous at both endpoints of Ik. We also define the + − jump of a function at instant tk as [φ]k := φ(t ) φ(t ), where k − k + − φ(tk ) := lim φ(tk + s), φ(tk ) := lim φ(tk s). s−→0+ s−→0+ − In the following theorem, we express the conditions (14) and (16) in the limit when ε 0. →

13 Theorem 2. When ε 0, conditions (14) and (16) are equivalent to → k − k k − k ϕ1(tk )[φ1 ]k = 1, ϕ2(tk )[φ1]k = 0, (18a) k ∂ k−1 k − k−1 k ∂ k−1 k − k−1 ϕ φ dt + ϕ (t )[φ ]k = 1, ϕ φ dt + ϕ (t )[φ ]k = 0, 1 ∂t 1 1 k 1 − 1 ∂t 2 1 k 2 ZIk ZIk k ∂ k−1 k − k−1 k ∂ k−1 k − k−1 ϕ φ dt + ϕ (t )[φ ]k = 1, ϕ φ dt + ϕ (t )[φ ]k = 1, 2 ∂t 1 2 k 1 − 2 ∂t 2 2 k 2 ZIk ZIk (18b)

k k−1 1 k k−1 τk ϕ1φ1 dt = 1 τk, ϕ1 φ2 dt = , Ik − 2α Ik 2α Z   Z (18c) k k−1 k k−1 ϕ2φ1 dt = ατk, ϕ2 φ2 dt = 0. ZIk ZIk Proof. From (16b), (16c), (16f) and (16g), we obtain

tk−ε tk k ∂ k−1 k ∂ k−1 k ∂ k−1 lim ϕj φε,i dt = lim ϕj φε,i dt + lim ϕj φε,i dt, ε→0 ∂t ε→0 ∂t ε→0 ∂t ZIk Ztk−1 Ztk−ε k where i, j 1, 2 . We construct φj as continuous functions in such a way ∂ ∈ { } that φk−1 do not change sign in Iε, so applying the first mean value ∂t ε,i k theorem [45], the second integral in the above expression becomes

tk k ∂ k−1 k k−1 k−1 lim ϕj φ dt = ϕj (ξ) lim φ (tk) φ (tk ε) , ε 0 ε,i ε 0 ε,i ε,i → tk−ε ∂t → − − Z   were ξ Iε. Finally, taking the limit ε 0, we obtain (18b) ∈ k → tk k ∂ k−1 k ∂ k−1 k − k−1 lim ϕj φε,i dt = ϕj φi dt + ϕj (t )[φi ]k. ε→0 ∂t ∂t k ZIk Ztk−1 In a similar way, from (14b) and (16a), we calculate (18a)

tk k ∂ k k ∂ k k − k lim ϕj φε,1 dt = lim ϕj φε,1 dt = ϕj (t )[φ1]k. ε→0 ∂t ε→0 ∂t k ZIk Ztk−ε for j 1, 2 . ∈ { } Alternatively, from (14d), (16d), (16e) and (16h)

tk−ε tk k k−1 k k−1 k k−1 lim ϕj φε,i dt = lim ϕj φε,i dt + lim ϕj φε,i dt, ε→0 ε→0 ε→0 ZIk Ztk−1 Ztk−ε

14 k k−1 for i, j 1, 2 , but both ϕ and φ are bounded functions over Ik, so the ∈ { } ε,i limit when ε 0 of the integral over Iε is 0 and we have (18c) → k tk−ε k k−1 k k−1 k k−1 lim ϕj φ dt = lim ϕj φ dt = ϕj φ dt. ε→0 ε,i ε→0 ε,i i ZIk Ztk−1 ZIk Similarly, (14a) and (14c) become

tk k k k k lim ϕj φε,1 dt = lim ϕj φε,1 dt = 0. ε→0 ε→0 ZIk Ztk−ε

From (12), functions (17) satisfy

k−1 + φ2 (tk−1) = 0, k −  φ1(tk ) = 0,  k 1 + k 1 + (19)  φ − (t )= φ − (t ) = 0,  1 k 2 k k + k−1 + φ1(tk )= φ1 (tk−1),   then conditions (18) become

k − k−1 + k − k−1 + ϕ1(tk )φ1 (tk−1) = 1, ϕ2(tk )φ1 (tk−1) = 0, (20a) ∂ ∂ ϕk φk−1 dt ϕk(t−)φk−1(t−)= 1, ϕk φk−1 dt ϕk(t−)φk−1(t−) = 0, 1 ∂t 1 − 1 k 1 k − 1 ∂t 2 − 1 k 2 k ZIk ZIk ∂ ∂ ϕk φk−1 dt ϕk(t−)φk−1(t−)= 1, ϕk φk−1 dt ϕk(t−)φk−1(t−) = 1, 2 ∂t 1 − 2 k 1 k − 2 ∂t 2 − 2 k 2 k ZIk ZIk (20b)

k k−1 1 k k−1 τk ϕ1φ1 dt = 1 τk, ϕ1φ2 dt = , Ik − 2α Ik 2α Z   Z (20c) k k−1 k k−1 ϕ2φ1 dt = ατk, ϕ2φ2 dt = 0. ZIk ZIk k − k − From (20a), we obtain ϕ2 (tk ) = 0, and we assume that ϕ1(tk ) = 1, so

15 the conditions that the function must satisfy together with (19), become

k − k − ϕ1(tk ) = 1, ϕ2 (tk ) = 0, k−1 + k−1 + φ1 (tk−1) = 1, φ2 (tk−1) = 0, (21a) ∂ ∂ ϕk φk−1 dt φk−1(t−)= 1, ϕk φk−1 dt φk−1(t−) = 0, 1 ∂t 1 − 1 k − 1 ∂t 2 − 2 k ZIk ZIk ∂ ∂ ϕk φk−1 dt = 1, ϕk φk−1 dt = 1, (21b) 2 ∂t 1 − 2 ∂t 2 ZIk ZIk k k−1 1 k k−1 τk ϕ1φ1 dt = 1 τk, ϕ1φ2 dt = , Ik − 2α Ik 2α Z   Z (21c) k k−1 k k−1 ϕ2φ1 dt = ατk, ϕ2φ2 dt = 0. ZIk ZIk For the trial and test functions which are polynomials of arbitrary order, then (21) becomes a system of nonlinear equations. In particular, if we select linear trial and test functions, we obtain no solutions. However, if we select quadratic functions, we have a system of 12 nonlinear equations with 12 unknowns that has two solutions. We solve the resulting system in the mas- ter element [0, 1] using the MATLAB code we describe in Appendix B (see Table 1), and we obtain different sets of trial and test functions depending on the value of α.

Solution 1 Solution 2 φk−1(t) 1 t + 1 6 t2 + 3 t + 1 1 − α − α α φk−1(t) 1 t 6 t2 3 t 2 α α − α k ϕ1(t) 1 1 ϕk(t) 12αt2 18αt + 6α 2αt + 2α 2 − − Table 1: Trial and test functions defined over the master element [0, 1] that lead to the two-stage Runge-Kutta method.

Example 1: Explicit trapezoidal rule When α = 1, (15) is equivalent to the Explicit trapezoidal rule [46]. Figure 6 shows the trial and test functions of both solutions over the master element.

16 1 6

1 0 0 0 1 0 1 t t (a) Trial functions of the first solution. (b) Test functions of the first solution. 3 2

1 1 0

−2 0 0 1 0 1 t t (c) Trial functions of the second solution. (d) Test functions of the second solution.

Figure 6: Trial and test functions over the master element [0, 1] when α = 1.

Example 2: Explicit midpoint rule 1 When α = 2 , we obtain the Explicit midpoint rule [46] and in Figure 7, we can see the trial and test functions of both solutions over [0, 1].

Remark 3. In order for the discrete system to make sense and thus result in square mass matrices in (15), we need test functions as in (10) satisfying

k k−1 vh,1 V , vh,2 V , ∈ h ∈ h so while both test functions are polynomials in time, in space they belong to different spaces.

Remark 4. As in Section 3.1, to obtain expressions whose form is identical to standard Runge-Kutta methods, we can project the source term in the trial

17 2 3

1

1 0

0 −1 0 1 0 1 t t (a) Trial functions of the first solution. (b) Test functions of the first solution. 6 1

1 0

−4 0 0 1 0 1 t t (c) Trial functions of the second solution. (d) Test functions of the second solution.

1 Figure 7: Trial and test functions over the master element [0, 1] when α = 2 . space as

k k k−1 k−1 k−1 k−1 vh,1ϕ1,f dt = vh,1ϕ1,f1 φ1 + f2 φ2 dt = Ik Ik Z D E Z D E 1 k−1 τk k−1 = 1 τk vh,1,f + vh,1,f , − 2α 1 2α 2   D E D E k k k−1 k−1 k−1 k−1 k−1 vh,2ϕ2,f dt = vh,2ϕ2,f1 φ1 + f2 φ2 dt = ατk vh,2,f1 , Ik Ik Z D E Z D E D E which is the general two-stage Runge-Kutta method in time.

3.3. General s-stage Runge-Kutta Methods In this section, we generalize the constructions of Sections 3.1 and 3.2, to the general s-stage explicit Runge-Kutta Method.

18 The general method we want to obtain is of the form s s k k−1 k−1 k−1 (vh,1, u ) (vh,1, u )+ τk bi( vh,1, u ) = τk bi vh,1,f , h,1 − h,1 ∇ ∇ h,i i i=1 i=1 X X D E k−1 k−1 k−1 k−1 (vh,2, u ) (vh,2, u )+ τka21( vh,2, u ) = τka21 vh,2,f , h,2 − h,1 ∇ ∇ h,1 1 k−1 k−1 k−1 D kE−1 (vh,3, u ) (vh,3, u )+ τka31( vh,3, u ) + τka32( vh,3, u )= h,3 − h,1 ∇ ∇ h,1 ∇ ∇ h,2 k−1 k−1 = τka31 vh,3,f1 + τka32 vh,3,f2 , . D E D E . s−1 s−1 k k−1 k−1 k−1 (vh,s, u ) (vh,s, u )+ τk asj( vh,s, u )= τk asj vh,s,f , h,s − h,s ∇ ∇ h,j j j=1 j=1 X X D E (22) or in compact form s s k k−1 k−1 k−1 (vh,1, u ) (vh,1, u )+ τk bi( vh,1, u ) = τk bi vh,1,f , h,1 − h,1 ∇ ∇ h,i i i=1 i=1 X X D E i−1 i−1 k k−1 k−1 k−1 (vh,i, u ) (vh,i, u ) + τk aij( vh,i, u )= τk aij vh,i,f , h,i − h,i ∇ ∇ h,j j j=1 j=1 X X D E (23) i = 2,...,s, where ∀ k−1 f (x) := f(x,tk 1 + ciτk), i = 1,...,s. (24) i − ∀ The coefficients aij, bi, ci, with i, j 1,...,s , are the ones corresponding ∈ { } to the Butcher tableau (see Table 2) [47]. As (22) is an explicit method, we have that aij = 0, j i. ∀ ≥ As before, we consider s trial functions k−1 k−1 φ1 (t),...,φs (t), and s test functions per time interval k k vh,1ϕ1(t), . . . , vh,sϕs (t), and to obtain an expression whose form is identical to the classical Runge- Kutta methods, we project the source term over the trial space as m s k−1 k−1 f(x,t)= fi (x)φi (t). =1 i=1 Xk X 19 c1 a11 a12 . . . a1s

c2 a21 a22 . . . a2s ......

cs as1 as2 . . . ass

b1 b2 . . . bs

Table 2: Butcher tableau

Following the same logic as in Section 3.2, we generalize conditions (21) to s-stages as follows ϕk(t−) = 1, ϕk(t−) = 0, j = 2,...,s, 1 k j k ∀ (25a) φk−1(t+ ) = 1, φk−1(t+ ) = 0, i = 2,...,s, 1 k−1 i k−1 ∀ ∂ ∂ ϕk φk−1 dt φk−1(t−)= 1, ϕk φk−1 dt φk−1(t−) = 0, i = 2,...,s, 1 ∂t 1 − 1 k − 1 ∂t i − i k ∀ ZIk ZIk k ∂ k−1 k ∂ k−1 1, if i = j ϕj φ1 dt = 1, ϕj φi dt = , i, j = 2,...,s, Ik ∂t − Ik ∂t (0, if i = j ∀ Z Z 6 (25b)

k k−1 ϕ1φi dt = τkbi, i = 1,...,s, Ik ∀ Z (25c) k k−1 ϕ φ dt = τkaji, i = 1,...,s, j = 2,...,s. j i ∀ ∀ ZIk Remark 5. As before, to properly define solvable discrete systems, we seek to obtain square mass matrices in (22). Thus, we need test functions satis- fying k k−1 vh,1 V , vh,j V , j = 2,...,s. ∈ h ∈ h ∀ Example 1: Three-stage Runge-Kutta We calculate the trial and test functions of the three-stage and third order Runge-Kutta method that has the Butcher tableau as in Table 3 [47]. If we consider cubic polynomials for the trial and test functions, we obtain four possible solutions: two of them with real coefficients (see Table 4) and an the remaining two solutions with complex conjugate coefficients (see Table 5). Figure 8 shows the trial and test functions of the real solutions over the master element [0, 1]. In Table 5, zj andz ¯j denote the following complex numbers and their conjugates

20 0 0 0 0 1 1 2 2 0 0 1 1 2 0 − 1 2 1 6 3 6

Table 3: Butcher tableau of the three-stage Runge-Kutta method.

z1 = (9 i√66)/7, z6 = (34 + 3i√66)/7, − z2 = (11 2i√66)/7, z7 = (16 + i√66)/7, − z3 = (12 + i√66)/7, z8 = (30 + i√66)/7,

z4 = (5+ i√66)/7, z9 = (89 + 6i√66)/7,

z5 = (2 i√66)/7, z10 = (39 + 2i√66)/7, −

Solution 1 Solution 2 φk−1(t) 1 t2 2t + 1 110t3 130t2 + 30t + 1 1 2 − − φk−1(t) t2 + 2t 120t3 + 140t2 32t 2 − − − φk−1(t) 1 t2 10t3 10t2 + 2t 3 2 − k ϕ1(t) 1 1 ϕk(t) 30t3 + 60t2 36t + 6 3 t2 3t + 3 2 − − 2 − 2 ϕk(t) 420t3 780t2 + 408t 48 6t2 + 6t 3 − − − Table 4: Trial and test functions with real coefficients over the master element [0, 1] that lead to a three-stage Runge-Kutta method.

Example 2: Four-stage Runge-Kutta Now, we consider the four-stage and fourth order Runge-Kutta method with the Butcher tableau as in Table 6 [47]. Table 7 and Figure 9 show two real solutions for this method.

21 Solution 3 Solution 4 k−1 10 3 2 10 3 2 φ (t) z1t 2z2t z3t + 1 z¯1t 2¯z2t z¯3t + 1 1 3 − − 3 − − k−1 20 3 2 20 3 2 φ (t) z1t + 4z2t + 2z4t z¯1t + 4¯z2t + 2¯z4t 2 − 3 − 3 k−1 10 3 2 10 3 2 φ (t) z1t 2z2t + z5t z¯1t 2¯z2t +z ¯5t 3 3 − 3 − k ϕ1(t) 1 1 k 3 2 3 2 ϕ (t) 10¯z1t + 6z6t 9z7t + z8 10z1t + 6¯z6t 9¯z7t +z ¯8 2 − − − − k 3 2 3 2 ϕ (t) 40¯z1t 24z6t + 6z9t 2z10 40z1t 24¯z6t + 6¯z9t 2¯z10 3 − − − − Table 5: Trial and test functions with complex coefficients over the master element [0, 1] that lead to a three-stage Runge-Kutta method.

1 15

1 0.5

0

− −0.5 45 0 1 0 1 t t (a) Trial functions of the first real solution. (b) Test functions of the first real solution. . 10 1 5

1 0

−10 0 0 1 0 1 t t (c) Trial functions of the second real solution. (d) Test functions of the second real solution.

Figure 8: Trial and test functions over the master element [0, 1] for the real solutions of the three-stage Runge-Kutta method.

22 0 0 0 0 0 1 1 2 2 0 0 0 1 1 2 0 2 0 0 1 0 0 1 0 1 1 1 1 6 3 3 6

Table 6: Butcher tableau of the four-stage Runge-Kutta method.

Solution 1 Solution 2 φk−1(t) 2 t3 2t + 1 2800 t4 + 1610t3 810t2 + 320 t + 1 1 3 − − 3 − 3 φk−1(t) 2t2 + 2t 4480 t4 2520t3 + 1230t2 470 t 2 − 3 − − 3 φk−1(t) 4 t3 + 2t2 1820 t4 + 980t3 450t2 + 160 t 3 − 3 − 3 − 3 φk−1(t) 2 t3 140 t4 70t3 + 30t2 10 t 4 3 3 − − 3 k ϕ1(t) 1 1 ϕk(t) 140t4 350t3 + 300t 100t + 10 2t3 + 6t2 6t + 2 2 − − − − ϕk(t) 910t4 + 2170t3 1725t2 + 50t 35 2t3 3t2 + 1 3 − − − − ϕk(t) 4480t4 10360t3 + 7890t2 2150t + 140 6t2 + 6t 4 − − − Table 7: Trial and test functions with real coefficients over the master element [0, 1] that lead to a four-stage Runge-Kutta method.

23 1 140

0.6

40

0 1 − −0.3 40 0 1 0 1 t t (a) Trial functions of the first real solution. (b) Test functions of the first real solution. 2 40 1

20 0

0

−20 −3 0 1 0 1 t t (c) Trial functions of the second real solution. (d) Test functions of the second real solution.

Figure 9: Trial and test functions over the master element [0, 1] for the real solutions of the four-stage Runge-Kutta method.

24 4. Conclusions

We propose a discontinuous Petrov-Galerkin formulation of the linear diffusion equation that lead to explicit Runge Kutta methods. We define families of piecewise polynomials for trial and test functions for any stage Runge-Kutta method. We provide explicit examples for Runge-Kutta meth- ods of up to four stages. When the trial functions are polynomials of order p in time, then the test space is formed by functions of order p +1 but incomplete. Alternatively, we can define the test space to be a complete polynomial space of order p and the resulting trial space will be of incom- plete polynomials of order p + 1. Methods with more than two stages result in systems which have solutions with complex coefficients for the polynomial basis which lead to equivalent Runge-Kutta methods of the appropriate or- der. A limitation of our construction of variational formulations equivalent to explicit Runge-Kutta methods is that, for a large number of stages, we end up with large nonlinear systems of equations that are difficult to solve. Possible extensions of this work are to study the variational structure of other implicit and explicit methods such as Adams-Bashforth, Adams- Moulton or Backward Differentiation Formulas (BDF). Additionally, we will apply these formulations to design explicit (goal-oriented) adaptive strate- gies. Future work, will also analyze the stability of the new time marching schemes arising from our Galerkin construction in order to build more stable explicit methods.

Appendix A. Matrix form of the nonlinear system

In this section we express (25) in matrix form. We consider, for example, s-stages and trial and test functions of order s over the master element [0, 1]

s φ1(t)= c10 + c11t + . . . + c1st , .  .   φ (t)= c + c t + . . . + c ts,  s s0 s1 ss  s  ϕ1(t)= d10 + d11t + . . . + d1st ,  .  .  s  ϕs(t)= ds0 + ds1t + . . . + dsst .   

25 To simplify notation, we collect the entries into the following matrices

c10 c11 c1s · · · . . . . C :=  . . .. .  ,   cs0 cs1 css  · · ·   

d10 d11 d1s · · · . . . . D :=  . . .. .  ,   ds0 ds1 dss  · · ·    thus, we can write conditions (25) in matrix form as

C e1,s+1 = e1,s,  D 1s+1 = e1,s,  T T (A.1)  DAC BC = E,  − DFCT = G,   where  T T e1,s+1 := 1 0 0 , 1s+1 := 1 1 1 , · · · · · · h i h i 0 1 1 1 · · · 0 1/2 (s 1)/s s/(s + 1)  · · · − ......  A := . . . . .  ,     0 1/s 1/2 s/(2s 1)  · · · −    0 1/(s + 1) (s 1)/(2s 1) 1/2   · · · − −    1 1 1 1 0 0 · · · − · · · 0 0 0  1 1 0 B := · · · , E := − · · · , . . .. .  . . .. . . . . .  . . . .         0 0 0  1 0 1  · · ·  − · · ·     

26 1 1/2 1/s 1/(s + 1) · · ·  1/2 1/3 1/(s + 1) 1/(s + 2)  · · ·  ......  F :=  . . . . .  ,      1/s 1/(s + 1) 1/(2s 1) 1/2s   · · · −    1/(s + 1) 1/(s + 2) 1/2s 1/(2s + 1)  · · ·    b1 b2 bs · · · a21 a22 a2s G := · · · .  . . .. .   . . . .      as1 as2 . . . ass     We compute the entries in the matrices A and F from

1  t  1  .  s−2 s−1 A =  .  0 1 (s 1)t st dt = 0   · · · − Z  s−1 h i t       ts      0 1 (s 1)ts−2 sts−1 · · · − 0 t (s 1)ts−1 sts  1 · · · − ......  = . . . . .  dt = 0   Z  1 2 3 2 2 0 ts− (s 1)t s− st s−   · · · −    0 ts (s 1)t2s−2 st2s−1  · · · −    0 1 1 1 · · · 0 1/2 (s 1)/s s/(s + 1)  · · · − ......  = . . . . .  ,     0 1/s 1/2 s/(2s 1)  · · · −    0 1/(s + 1) (s 1)/(2s 1) 1/2   · · · − −   

27 1  t  1  .  s−1 s F =  .  1 t t t dt = 0   · · · Z  s 1 h i t −       ts      1 t ts−1 ts · · ·  t t2 ts ts+1  1 · · ·  ......  =  . . . . .  dt = 0   Z  1 2 2 2 1 ts− ts t s− t s−   · · ·     ts ts+1 t2s−1 t2s   · · ·    1 1/2 1/s 1/(s + 1) · · ·  1/2 1/3 1/(s + 1) 1/(s + 2)  · · ·  ......  =  . . . . .  .      1/s 1/(s + 1) 1/(2s 1) 1/2s   · · · −    1/(s + 1) 1/(s + 2) 1/2s 1/(2s + 1)  · · ·    Appendix B. MATLAB Code

In this section we provide a MATLAB code to solve system (25) in matrix form for a general number of stages.

1 %Script to calculate the trial and test functions of Runge Kutta methods − 2 %Import data 3 [n fun ,p trial ,p test ,V triv ,V deriv ,V grad]=data ; 4 %Initialize the solution 5 S trial=cell(n fun , p trial+1); 6 S test=cell(n fun ,p test+1); 7 %Write the coefficients 8 coef trial=sym( ’c%d%d’ , [n fun p trial+1]); 9 coef test=sym( ’d%d%d’ , [n fun p test+1]); 10 %Write the conditions

28 11 [C triv ,C deriv ,C grad]=conditions(n fun , coef trial , coef test ,p trial ,p test); 12 %Solve the nonlinear system 13 [S trial 1: end ,S test 1: end ]=solve ([C triv C deriv { } { } C grad]==[V triv V deriv V grad] ,[ coef trial coef test]);

1 function [n fun ,p trial ,p test ,V triv ,V deriv ,V grad ] = data() 2 %Function to write the data 3 %Number of trial and test functions and their order 4 n fun=2; 5 p trial=2; 6 p test=2; 7 %The value of the conditions. For example: 8 %2 stage Runge Kutta method − − 9 V triv=[1 1 ;0 0]; 10 V deriv=[ 1 0; 1 1]; − − 11 alpha =1; 12 V grad=[1 1/(2 alpha ) 1/(2 alpha ) ; alpha 0 ] ; − ∗ ∗ 13 %Forward Euler method 14 %V triv=[1 1]; 15 %V deriv= 1; − 16 %V grad=1; 17 end

1 function [C triv ,C deriv ,C grad]= conditions(n fun , coef trial ,coef test ,p trial ,p test) 2 %Function to write the conditions in matrix form the trial and test functions must satisfy 3 C trial=coef trial eye (p trial+1,1); ∗ 4 C test=coef test ones(p test+1,1); ∗ 5 C triv=[C trial C test ]; 6 7 C=repmat ((1: p test+1)’,1,p trial+1)+repmat(0: p trial , p test+1,1); 8 C=1./C; 9 C grad=coef test C coef trial . ’; ∗ ∗ 10

29 11 B=[ones(1, p trial+1); zeros (n fun 1,p trial+1)]; − 12 A=repmat (0: p trial ,p test+1,1) . [ zeros (p test+1,1) C ∗ (: ,1: end 1)]; − 13 C deriv=coef test A coef trial.’ B coef trial . ’; ∗ ∗ − ∗ 14 end

Acknowledgments

All authors have received funding from the European Union’s Horizon 2020 research and innovation programme under the Marie Sklodowska-Curie grant agreement No 644602. David Pardo, Elisabete Alberdi and Judit Mu˜noz-Matute were partially funded by the Basque Government Consolidated Research Group Grant IT649-13 on “Mathematical Modeling, Simulation, and Industrial Appli- cations (M2SI)” and the Projects of the Spanish Ministry of Economy and Competitiveness with reference MTM2016-76329-R (AEI/FEDER, EU), and MTM2016-81697-ERC. David Pardo has also received funding from the BCAM “Severo Ochoa” accreditation of excellence SEV-2013-0323 and the Basque Government through the BERC 2014-2017 program. Victor M. Calo was partially funded by the CSIRO Professorial Chair in Computational Geoscience at Curtin University, the Mega-grant of the Russian Federation Government (N 14.Y26.31.0013) and the Deep Earth Imaging Enterprise Future Science Platforms of the Commonwealth Sci- entific Industrial Research Organisation, CSIRO, of Australia. Additional support was provided at Curtin University by The Institute for Geoscience Research (TIGeR) and by the Curtin Institute for Computation. Judit Mu˜noz-Matute has received funding from the University of the Basque Country (UPV/EHU) grant No. PIF15/346.

References

References

[1] Z. Chen, J. Feng, An adaptive finite element algorithm with reliable and efficient error control for linear parabolic problems, Mathematics of Computation 73 (247) (2004) 1167–1193.

30 [2] S. Nicaise, N. Soualem, A posteriori error estimates for a nonconforming finite element discretization of the heat equation, ESAIM: Mathemati- cal Modelling and 39 (2) (2005) 319–348.

[3] N. Collier, H. Radwan, L. Dalcin, V. M. Calo, Diffusive wave approxi- mation to the shallow water equations: computational approach, Pro- cedia Computer Science 4 (2011) 1828–1833.

[4] D. Sch¨otzau, C. Schwab, An hp a priori error analysis of the DG time- stepping method for initial value problems, Calcolo 37 (4) (2000) 207– 232.

[5] F. Schieweck, A-stable discontinuous Galerkin-Petrov time discretiza- tion of higher order, Journal of Numerical Mathematics 18 (1) (2010) 25–57.

[6] D. Sch¨otzau, C. Schwab, Time discretization of parabolic problems by the hp-version of the discontinuous Galerkin finite element method, SIAM Journal on Numerical Analysis 38 (3) (2000) 837–875.

[7] T. Werder, K. Gerdes, D. Sch¨otzau, C. Schwab, hp-discontinuous Galerkin time stepping for parabolic problems, Computer Methods in Applied Mechanics and Engineering 190 (49) (2001) 6685–6708.

[8] J. Erickson, D. Guoy, J. M. Sullivan, A. Ung¨or,¨ Building spacetime meshes over arbitrary spatial domains, Engineering with Computers 20 (4) (2005) 342–353.

[9] R. Abedi, R. B. Haber, S. Thite, J. Erickson, An h-adaptive spacetime- discontinuous Galerkin method for linear elastodynamics, European Journal of Computational Mechanics/Revue Europ´eenne de M´ecanique Num´erique 15 (6) (2006) 619–642.

[10] R. Abedi, B. Petracovici, R. B. Haber, A space-time discontinuous Galerkin method for linearized elastodynamics with element-wise mo- mentum balance, Computer Methods in Applied Mechanics and Engi- neering 195 (25) (2006) 3247–3273.

[11] S. T. Miller, R. B. Haber, A spacetime discontinuous Galerkin method for hyperbolic heat conduction, Computer Methods in Applied Mechan- ics and Engineering 198 (2) (2008) 194–209.

31 [12] W. Bangerth, R. Rannacher, Adaptive finite element techniques for the acoustic wave equation, Journal of Computational Acoustics 9 (2) (2001) 575–591.

[13] M. Schmich, B. Vexler, Adaptivity with dynamic meshes for space-time finite element discretizations of parabolic equations, SIAM Journal on Scientific Computing 30 (1) (2008) 369–393.

[14] M. Besier, R. Rannacher, Goal-oriented space–time adaptivity in the finite element Galerkin method for the computation of nonstationary incompressible flow, International Journal for Numerical Methods in Fluids 70 (9) (2012) 1139–1166.

[15] G. S¸im¸sek, X. Wu, K. van der Zee, E. van Brummelen, Duality-based two-level error estimation for time-dependent PDEs: application to lin- ear and nonlinear parabolic equations, Computer Methods in Applied Mechanics and Engineering 288 (2015) 83–109.

[16] P. D´ıez, G. Calder´on, Goal-oriented error estimation for transient parabolic problems, Computational Mechanics 39 (5) (2007) 631–646.

[17] W. E. Schiesser, The numerical method of lines: integration of partial differential equations, Elsevier, 2012.

[18] K. Eriksson, C. Johnson, Error estimates and automatic time step con- trol for nonlinear parabolic problems, I, SIAM Journal on Numerical Analysis 24 (1) (1987) 12–23.

[19] A. Aziz, P. Monk, Continuous finite elements in space and time for the heat equation, Mathematics of Computation 52 (186) (1989) 255–274.

[20] D. A. French, A space-time finite element method for the wave equa- tion, Computer Methods in Applied Mechanics and Engineering 107 (1) (1993) 145–157.

[21] C. Johnson, Discontinuous Galerkin finite element methods for second order hyperbolic problems, Computer Methods in Applied Mechanics and Engineering 107 (1) (1993) 117–129.

[22] T. J. R. Hughes, G. M. Hulbert, Space-time finite element methods for elastodynamics: formulations and error estimates, Computer Methods in Applied Mechanics and Engineering 66 (3) (1988) 339–363.

32 [23] G. M. Hulbert, T. J. R. Hughes, Space-time finite element methods for second-order hyperbolic equations, Computer Methods in Applied Mechanics and Engineering 84 (3) (1990) 327–348.

[24] W. Bangerth, M. Geiger, R. Rannacher, Adaptive Galerkin finite ele- ment methods for the wave equation, Computational Methods in Ap- plied Mathematics 10 (1) (2010) 3–48.

[25] S. Hussain, F. Schieweck, S. Turek, Higher-order Galerkin time dis- cretizations and fast multigrid solvers for the heat equation, Journal of Numerical Mathematics 19 (1) (2011) 41–61.

[26] U. K¨ocher, M. Bause, Variational space-time methods for the wave equation, Journal of Scientific Computing 61 (2) (2014) 424–453.

[27] N. Ahmed, V. John, Adaptive time step control for higher order variational time discretizations applied to convection-diffusion-reaction equations, Computer Methods in Applied Mechanics and Engineering 285 (2015) 83–101.

[28] A. Ern, I. Smears, M. Vohral´ık, Guaranteed, locally space-time effi- cient, and polynomial-degree robust a posteriori error estimates for high-order discretizations of parabolic problems, SIAM Journal on Nu- merical Analysis 55 (6) (2017) 2811–2834.

[29] C. L. Bottasso, A new look at finite elements in time: a variational in- terpretation of Runge-Kutta methods, Applied Numerical Mathematics 25 (4) (1997) 355–368.

[30] M. Delfour, W. Hager, F. Trochu, Discontinuous Galerkin methods for ordinary differential equations, Mathematics of Computation 36 (154) (1981) 455–473.

[31] M. Delfour, F. Dubeau, Discontinuous polynomial approximations in the theory of one-step, hybrid and multistep methods for nonlinear ordinary differential equations, Mathematics of Computation 47 (175) (1986) 169–189.

[32] B. L. Hulme, One-step piecewise polynomial Galerkin methods for ini- tial value problems, Mathematics of Computation 26 (118) (1972) 415– 426.

33 [33] D. Estep, D. French, Global error control for the continuous Galerkin fi- nite element method for ordinary differential equations, ESAIM: Math- ematical Modelling and Numerical Analysis 28 (7) (1994) 815–852.

[34] D. Estep, A posteriori error bounds and global error control for approx- imation of ordinary differential equations, SIAM Journal on Numerical Analysis 32 (1) (1995) 1–48.

[35] D. Estep, A. Stuart, The dynamical behavior of the discontinuous Galerkin method and related difference schemes, Mathematics of Com- putation 71 (239) (2002) 1075–1103.

[36] J. Collins, D. Estep, S. Tavener, A posteriori error analysis for finite el- ement methods with projection operators as applied to explicit time in- tegration techniques, BIT Numerical Mathematics 55 (4) (2015) 1017– 1042.

[37] W. Tang, Y. Sun, Time finite element methods: a unified framework for numerical discretizations of ODEs, and Com- putation 219 (4) (2012) 2158–2179.

[38] T. J. R. Hughes, J. A. Cottrell, Y. Bazilevs, Isogeometric analysis: CAD, finite elements, NURBS, exact geometry and mesh refinement, Computer Methods in Applied Mechanics and Engineering 194 (39) (2005) 4135–4195.

[39] H. G´omez, V. M. Calo, Y. Bazilevs, T. J. R. Hughes, Isogeometric analysis of the Cahn-Hilliard phase-field model, Computer Methods in Applied Mechanics and Engineering 197 (49-50) (2008) 4333–4352.

[40] P. Vignal, N. Collier, L. Dalcin, D. Brown, V. M. Calo, An -stable time-integrator for phase-field models, Computer Methods in Applied Mechanics and Engineering 316 (2017) 1179–1214.

[41] L. F. Demkowicz, J. Gopalakrishnan, An overview of the discontinu- ous Petrov Galerkin method, in: Recent developments in discontinu- ous Galerkin finite element methods for partial differential equations, Springer, 2014, pp. 149–180.

[42] H. Egger, F. Kretzschmar, S. M. Schnepp, T. Weiland, A space-time discontinuous Galerkin-Trefftz method for time dependent Maxwell’s equations, SIAM Journal on Scientific Computing 37 (5) (2015) B689– B711.

34 [43] S. Salsa, Partial differential equations in action: from modelling to theory, Springer Science & Business Media, 2008.

[44] C. Pozrikidis, Introduction to finite and spectral element methods using MATLAB, CRC Press, 2005.

[45] R. Courant, Differential and integral calculus, Vol. 2, John Wiley & Sons, 2011.

[46] E. Hairer, C. Lubich, G. Wanner, Geometric numerical integra- tion: structure-preserving algorithms for ordinary differential equa- tions, Vol. 31, Springer Science & Business Media, 2006.

[47] J. C. Butcher, Numerical methods for ordinary differential equations, John Wiley & Sons, 2008.

35