Remark 4. Representations (57) and (61) of the subcell RD schemes are convenient for theoretical analysis purposes. In practice, element
8. Numerical examples
In this section, we illustrate the accuracy of the presented schemes by 1D, 2D, and 3D numerical examples for finite element approximations with Bernstein polynomials of degree p ∈ N. A matter of particular interest is
the ability or inability of a given method to deliver p-independent rates of convergence with respect to the total number of DOFs (#DOFs). Therefore, many examples depict results obtained with different values of p for mesh sizes h(p) corresponding to the same constant number of unknowns.
Let NhCG and NhDG denote #DOFs for the CG and DG version, respec-tively. In one dimension, there are p + 1 nodes per element and Eh−1 shared DOFs in the CG case. It follows that NhCG= pEh+1 and NhDG = (p+1)Ehin 1D. In the multi-dimensional case, the values of NhCG and NhDG for different combinations of h and p on Cartesian meshes with the same resolution in each dimension can be determined similarly. For example, NhCG = 1212 = (1· 120 + 1)2 = (2· 60 + 1)2 = (3· 40 + 1)2 may correspond to bilinear, biquadratic, or bicubic CG approximations (p = 1, 2, or 3) on grids with sizes h = 1201 ,601, or 401, respectively. In the DG case, the same values of NhDG are obtained for (p, h) and (2p + 1, 2h). That is, a fair comparison of the DG results for p and 2p + 1 requires the use of meshes that differ by one refinement level. This criterion makes it possible to keep NhDG fixed, e.g., for p = 1, 3, 7, . . . or p = 2, 5, 11, . . . by using mesh sizes h, 2h, 4h, . . ..
The following definitions of ρe,Li are compared and evaluated in this study:
DU(p) discrete upwinding defined by (34), (35);
PDU(p) preconditioned discrete upwinding (36);
RU(p) linear Rusanov scheme defined by (37)-(39);
PRUp) PSI-corrected Rusanov scheme (cf. [1, 5, 36]);
RUS(p) subcell Rusanov scheme defined by (50)–(54);
RD(p) nonlinear RD scheme (43) with weights (45);
RDS(p) subcell RD scheme (61) with weights (55).
The lumped-mass definition (33) of the boundary terms σe,Li is adopted in 2D and 3D implementations of all low-order schemes. In the 1D case, the element matrices Se and ˜Se coincide and, therefore, the Galerkin element contributions σie,H = σie,L do not require any modifications.
The suffix FCT is appended to the above abbreviations if limited antid-iffusive corrections of ρe,L+ σe,L are performed. All FCT schemes are based on the splitting (67),(68) and use algorithm (72)–(75) to calculate ηie.
In some 1D examples, we compare the CG and DG results for different methods. The corresponding finite element approximations of degree p are denoted by CG(p) and DG(p), respectively. Numerical studies of multidi-mensional problems are restricted to the DG version and conducted using
the open-source C++ finite element library MFEM [35].
In all examples, we integrate in time using the optimal explicit SSP Runge-Kutta methods of second order (in 1D) or third order (in 2D and 3D). The time step Δt is chosen to be sufficiently small for the temporal discretization error to be negligible and the CFL condition to be fulfilled.
8.1. Advection of smooth and discontinuous data in 1D
For a preliminary evaluation of different schemes, we solve the one-dimen-sional version of equation (1) with constant velocity v = 1 in Ω = (0, 1). In this set of numerical experiments, we advect the smooth cosine hill
u0(x) =
1
2
1 + cos
πx−0.250.15
if |x − 0.25| < 0.15,
0, otherwise (78)
and the discontinuous step function u0(x) =
1 if |x − 0.25| < 0.15,
0 otherwise. (79)
The inflow boundary condition for both test cases is u(0, t) = 0, ∀t ≥ 0. The exact solution of the initial-boundary value problem is given by
u(x, t) =
u0(x − vt) if x > vt,
0 otherwise. (80)
Computations are performed on uniform meshes of one-dimensional linear and cubic Bernstein finite elements such that NhCG = 121 = 1· 120 + 1 = 3 · 40 + 1 and NhDG = 120 = 2 · 60 = 4 · 30. The results are presented in Fig. 2–3. In each diagram, we show the initial condition and numerical solutions at the final time T = 0.5 computed with Δt = 10−3.
The relative performance of different approximations is similar in both examples. Basic discrete upwinding is inferior to the preconditioned ver-sion because only the latter converges independently of p. Note that the DU(1), PDU(1), and PDU(3) results are virtually indistinguishable, whereas the DU(3) solution is less accurate. The same qualitative behavior is ob-served for the RU/RUS and RD/RDS pairs of low-order schemes. As shown in Fig. 4, the RU(3) approximation is significantly more diffusive than the RU(1) result. The PSI correction in PRU(3) leads to a marked improvement, whereas RUS(3) performs almost as well as RU(1). The accuracy of RDS(3)
(a)DU (b)PDU (c)RU
(d)RD (e)RDS (f )RDS-FCT
Fig. 2: Advection of a smooth profile in 1D. Initial condition: black line, CG(1): dark blue circles, DG(1): bright blue triangles, CG(3): red stars, DG(3): pink x-marks.
is superior to that of RD(3) and comparable to that of PDU(3). Among the low-order schemes, PDU, RUS, and RDS produce the best results for large p and fixed #DOFs. The FCT correction step brings about a further dramatic improvement, as demonstrated by the RDS-FCT results in Fig. 2f and 3f.
The initial shapes of the advected profiles are captured very well, and the p-independent convergence behavior is largely preserved. Remarkably, there is hardly any difference between the CG and DG results for NhCG ≈ NhDG.
As a preliminary conclusion that can be drawn from these 1D tests, we recommend the use of PDU or RDS as low-order methods for p > 1 if the Galerkin element matrices are readily available and RDS for matrix-free al-ternatives. In what follows, we focus on numerical studies of DG-based PDU and RDS approximations in 2D and 3D. The resolving power of these schemes is illustrated by comparisons to DU results. Since the basic RD scheme was found to be quite diffusive even in 1D, we show the RD results in just one 2D example. The results obtained with Rusanov weights (i.e., using RU, PRU, or RUS) are omitted because even RUS becomes less accurate than RDS while the involved computational effort is higher, as pointed out in Section 6.
(a)DU (b)PDU (c)RU
(d)RD (e)RDS (f )RDS-FCT
Fig. 3: Advection of a discontinuous profile in 1D. Initial condition: black line, CG(1):
dark blue circles, DG(1): bright blue triangles, CG(3): red stars, DG(3): pink x-marks.
8.2. Solid body rotation in 2D
In this standard 2D test [32], we use v(x, y) = (0.5 − y, x − 0.5)T to rotate a slotted cylinder, a sharp cone, and a smooth hump around the center of Ω = (0, 1)2. The initial condition, as shown in Fig. 5a and 5d, is given by
u0(x, y) =
⎧⎪
⎪⎪
⎪⎪
⎪⎨
⎪⎪
⎪⎪
⎪⎪
⎩
uhump0 (x, y) if
(x − 0.25)2 + (y − 0.5)2 ≤ 0.15, ucone0 (x, y) if
(x − 0.5)2+ (y − 0.25)2 ≤ 0.15,
1 if
(x − 0.5)2+ (y − 0.75)2 ≤ 0.15
∧ (|x − 0.5| ≥ 0.025 ∨ y ≥ 0.85) ,
0 otherwise,
where
uhump0 (x, y) = 1 4+ 1
4cos
π
(x − 0.25)2+ (y − 0.5)2 0.15
, (81)
ucone0 (x, y) = 1 −
(x − 0.5)2+ (y − 0.25)2
0.15 . (82)
Fig. 4: Rusanov-based CG results for 1D advection of a smooth (left panel) and discon-tinuous (right panel) profile. Initial condition: black line, RU(1): dark blue circles, RU(3):
bright blue triangles, PRU(3): red stars, RUS(3): pink x-marks.
Homogeneous Dirichlet boundary conditions are prescribed at the inlets.
After each full rotation, the exact solution u(x, y, 2πk), k ∈ N coincides with u0(x, y). The challenge of this test is to preserve the shape of the pro-jected initial condition uh(·, 0) as accurately as possible. We present the DG solutions at the final time T = 2π (i.e., after one full rotation) obtained with NhDG = 1442 corresponding to p ∈ {2, 5} for all schemes under investigation and, additionally, p = 11 for RDS and RDS-FCT. The time step Δt = π2·10−3 was used in all simulations for this test problem.
The snapshots of numerical solutions in Fig. 5 and slices displayed in Fig. 6 confirm that PDU is more accurate than DU. However, in contrast to the 1D advection with constant velocity, PDU becomes slightly more diffu-sive as p increases. We investigate this aspect further in Section 8.3. The matrix-free RDS scheme outperforms both matrix-based approaches, and its accuracy is largely independent of p. The strange-looking accumulation of mass to the right of the hump in Fig. 6g–6iis caused by diffusive fluxes that transport the remainders of the cylinder in all directions, seeFig. 5b–5c,5e–5i.
The slices of the RDS-FCT solutions are not affected by these fluxes be-cause their magnitude is significantly reduced in the process of antidiffusive corrections, cf.Fig. 5j–5l. The cuts through the slotted cylinder, as shown inFig. 6j–6l, illustrate the shock-capturing capabilities of different methods and the destructive effect of numerical diffusion. All low-order schemes con-vert the cylinder into a smooth hump, whereas RDS-FCT preserves the slot fairly well. A comparison of the local minima inside the slot reveals that the FCT results become more diffusive as p increases. This behavior reflects the
(a)initial condition p = 2 (b)DU(2), uh∈ [0.00, 0.51] (c)PDU(2), uh∈ [0.00, 0.59]
(d)initial condition p = 5 (e)DU(5), uh∈ [0.01, 0.40] (f )PDU(5), uh∈ [0.00, 0.53]
(g)RDS(2), uh∈ [0.00, 0.64] (h)RDS(5), uh∈ [0.00, 0.64] (i)RDS(11), uh∈ [0.00, 0.66]
(j)RDS-FCT(2) uh∈ [0.00, 0.98]
(k)RDS-FCT(5) uh∈ [0.00, 0.96]
(l) RDS-FCT(11) uh∈ [0.00, 0.95]
Fig. 5: Solid body rotation in 2D. Initial condition and numerical solutions uh(·, 2π) obtained using low-order schemes and FCT for p ∈ {2, 5, 11}.
(a)p = 2, slice along y = 0.25 (b)p = 5, slice along y = 0.25 (c)p = 11, slice along y = 0.25
(d)p = 2, slice along y = 0.75 (e)p = 5, slice along y = 0.75 (f )p = 11, slice along y = 0.75
(g)p = 2, slice along x = 0.25 (h)p = 5, slice along x = 0.25 (i)p = 11, slice along x = 0.25
(j)p = 2, slice along x = 0.5 (k)p = 5, slice along x = 0.5 (l)p = 11, slice along x = 0.5
Fig. 6: Solid body rotation in 2D. Slices of the initial condition and numerical solutions uh(·, 2π) obtained using low-order schemes and FCT for p ∈ {2, 5, 11}.
fact that low-order finite elements are better suited for numerical treatment of discontinuities than high-order approximations using the same #DOFs.
The top of the smooth hump could be perfectly captured using the unlim-ited high-order DG scheme but the LED constraints of the FCT correction step do not distinguish between smooth and sharp peaks. Any change of the bound-preserving low-order solution at a local maximum or minimum is prevented by the limiter. In fact, even nonlinear schemes that strictly enforce preservation of local bounds can be at most second-order accurate in proximity to local extrema [39]. This order barrier can be circumvented using smoothness indicators like those proposed in [19,30, 34].
8.3. Advection of a Gaussian hill in 2D
The matrix-based PDU scheme was found to produce p-independent re-sults for the 1D examples of Section 8.1 and CG discretizations of the solid body rotation problem (as demonstrated by numerical studies in [34]). How-ever, the DG results presented in Section 8.2 reveal that not only the DU scheme but also the PDU version may become more diffusive as p increases.
To investigate possible reasons for this state of affairs, we perform additional studies of low-order schemes for the Gaussian initial condition
u0(x, y) = exp(−160((x − 0.25)2+ (y − 0.25)2). (83) In the first experiment, we translate u0with constant velocity v(x, y) = (1, 1) up to the final time T = 0.5. In the second test, we use the velocity field of the solid body rotation benchmark and terminate computations at the time T = π. In both cases, the exact solution is given by
u(x, y, T ) = exp(−160((x − 0.75)2+ (y − 0.75)2). (84) The L1(Ω) and L∞(Ω) errors for an increasing sequence of polynomial degrees p using (roughly) the same #DOFs are presented in Tables 1–2.
These results confirm that the DU and RD schemes become more diffusive as p increases. The accuracy of PDU and RDS is virtually independent of p in the test in which the velocity is constant. In the solid body rotation test, p-refinements have a negative impact on the quality of PDU results. The only scheme which converges independently of p in both tests is RDS.
The unsatisfactory convergence behavior of DU for large p can be ex-plained by the fact that each pair of nodes i ∈ Ne and j ∈ Ne\{i} can
produce a diffusive flux of the form deij(uej− uei), where deij is the artificial dif-fusion defined by (34). If i and j are arbitrary nodes of a high-order Bernstein finite element, the difference uej − uei is likely to be greater than the differ-ence between the DOFs of nearest neighbors. The only way to avoid large diffusive fluxes between nodes that lie far apart is to reduce the magnitude of deij = max{−ceij, 0, −ceji}. As mentioned in Section 4, the PDU scheme achieves this by using the lumped-mass approximation PeCe to the Galerkin element matrix Ce. For constant velocity fields and CG discretizations on simplex meshes, the “preconditioner” Pe = MLe(MCe)−1 converts Ce into an element matrix which has the same compact sparsity pattern as the one of the piecewise-linear subcell approximation with the same nodes [34]. Since the boundary element matrix Se is treated separately, the modified element matrices ˜Ce = PeCe + ˜De of the CG-PDU and DG-PDU schemes are the same (the difference lies in the way in which they are inserted into the global system). Hence, the analysis performed in [34] carries over to the DG version.
It turns out that the suboptimal convergence behavior of PDU in the solid body rotation test is caused by the use of square elements. Contrary to the case of a simplicial mesh, the application of Pe does not make the element matrix Ce of the high-order Bernstein finite element discretization (approx-imately) sparse. However, the magnitude of off-diagonal entries associated with pairs of distant neighbors decreases, which explains the superiority of PDU over DU for large p. InFig. 7, we present examples of element matrices Ce and PeCe for the two tests considered in this section.
The conclusion of this study is that none of the matrix-based schemes considered in this article is optimal in the sense that its convergence behavior is independent of p for general meshes and velocity fields. This is another reason that makes our new matrix-free RDS approach the method of choice when it comes to calculating low-order predictors for FCT algorithms.
8.4. Twisting rotation in 2D
In the final 2D example, we solve (1) in the domain Ω = (−1, 1)2 using v(x, y) = π2d(x, y)2(y, −x)T, where d(x, y) = max{0, 1 − x2} max{0, 1 − y2}.
No boundary condition needs to be prescribed since d vanishes on Γ. In contrast to the solid body rotation benchmark, the velocity field is not divergence-free. It defines a twisting deformation of the initial condition
u0(x, y) = 1
2(sin(πx) sin(πy) + 1) (85) which is composed of four humps and attains values in the range [0,1].
DUPDURDRDS p#DOFsL1L∞L1L∞L1L∞L1L∞ 1(2·60)2=144001.27e−25.86e−11.18e−25.58e−19.78e−35.14e−19.78e−35.14e−1 2(3·40)2=144001.48e−26.42e−11.18e−25.54e−11.50e−26.52e−19.23e−34.90e−1 3(4·30)2=144001.62e−26.70e−11.17e−25.46e−11.88e−27.32e−19.01e−34.75e−1 4(5·24)2=144001.73e−27.10e−11.17e−25.59e−12.15e−27.96e−19.05e−35.06e−1 5(6·20)2 =144001.82e−27.36e−11.17e−25.64e−12.35e−28.35e−19.05e−35.17e−1 6(7·17)2 =141611.90e−27.19e−11.17e−25.34e−12.51e−28.25e−19.26e−34.89e−1 7(8·15)2 =144001.96e−27.44e−11.16e−25.42e−12.63e−28.59e−19.33e−34.96e−1 8(9·13)2 =136892.03e−27.51e−11.17e−25.43e−12.75e−28.62e−19.49e−34.97e−1 9(10·12)2=144002.05e−27.89e−11.15e−25.68e−12.83e−29.04e−19.52e−35.50e−1 10(11·11)2=146412.10e−27.55e−11.31e−25.74e−12.90e−28.74e−19.66e−34.89e−1 Table1:TranslationofaGaussianhill,comparativestudyoflow-ordermethodsforp=1,...,10. DUPDURDRDS p#DOFsL1L∞L1L∞L1L∞L1L∞ 1(2·60)2=144001.55e−26.63e−11.45e−26.35e−11.30e−26.08e−11.30e−26.08e−1 2(3·40)2=144001.79e−27.14e−11.47e−26.37e−11.81e−27.20e−11.18e−25.64e−1 3(4·30)2 =144001.94e−27.38e−11.51e−26.38e−12.20e−27.87e−11.16e−25.54e−1 4(5·24)2 =144002.06e−27.75e−11.56e−26.68e−12.46e−28.43e−11.18e−25.83e−1 5(6·20)2 =144002.16e−27.99e−11.63e−26.90e−12.66e−28.77e−11.19e−25.98e−1 6(7·17)2 =141612.24e−27.80e−11.72e−26.78e−12.80e−28.62e−11.22e−25.72e−1 7(8·15)2 =144002.30e−28.01e−11.79e−27.04e−12.92e−28.89e−11.23e−25.82e−1 8(9·13)2=136892.38e−28.07e−11.90e−27.23e−13.02e−28.90e−11.27e−25.96e−1 9(10·12)2=144002.41e−28.46e−11.95e−27.66e−13.08e−29.31e−11.26e−26.38e−1 10(11·11)2=146412.45e−28.07e−12.13e−27.56e−13.13e−28.96e−11.29e−25.90e−1 Table2:SolidbodyrotationofaGaussianhill,comparativestudyoflow-ordermethodsforp=1,...,10.
10−2·
1.67 −0.14 −0.14 −0.14 −0.56 −0.23 −0.14 −0.23 −0.09 0.97 0.56 −0.14 −0.00 −0.37 −0.56 −0.05 −0.19 −0.23 0.42 0.97 0.00 0.05 −0.00 −0.97 −0.00 −0.05 −0.42 0.97 −0.00 −0.05 0.56 −0.37 −0.19 −0.14 −0.56 −0.23 0.56 0.37 0.00 0.37 −0.00 −0.37 −0.00 −0.37 −0.56 0.23 0.56 0.14 0.19 0.37 −0.56 0.05 −0.00 −0.97 0.42 0.05 0.00 0.97 −0.00 −0.05 0.00 −0.97 −0.42 0.23 0.19 0.05 0.56 0.37 −0.00 0.14 −0.56 −0.97 0.09 0.23 0.14 0.23 0.56 0.14 0.14 0.14 −1.67
⎤
3.70 −1.85 0.00 −1.85 −0.00 0.00 0.00 0.00 −0.00 0.93 1.85 −0.93 −0.00 −1.85 −0.00 0.00 −0.00 0.00
−0.00 1.85 0.00 0.00 −0.00 −1.85 −0.00 0.00 −0.00 0.93 −0.00 0.00 1.85 −1.85 −0.00 −0.93 −0.00 0.00
−0.00 0.93 0.00 0.93 −0.00 −0.93 0.00 −0.93 0.00 0.00 0.00 0.93 −0.00 1.85 −1.85 0.00 −0.00 −0.93
−0.00 −0.00 −0.00 1.85 −0.00 0.00 0.00 −1.85 −0.00 0.00 0.00 −0.00 −0.00 1.85 −0.00 0.93 −1.85 −0.93
−0.00 −0.00 −0.00 0.00 −0.00 1.85 0.00 1.85 −3.70
⎤
−0.46 0.76 0.01 −0.30 −0.00 −0.01 −0.01 0.01 0.00
−0.35 0.39 0.35 −0.03 −0.39 0.03 −0.00 0.00 0.00
−0.01 −0.76 1.23 0.01 0.00 −0.47 −0.00 −0.01 0.01 0.12 0.03 0.00 −0.85 0.85 −0.00 −0.12 −0.03 −0.00
−0.00 0.19 −0.00 −0.42 −0.00 0.42 −0.00 −0.19 0.00
−0.00 −0.03 0.27 −0.00 −0.85 0.85 0.00 0.03 −0.27 0.01 −0.01 −0.00 0.30 −0.00 0.01 −1.23 0.93 −0.01 0.00 −0.00 −0.00 0.03 0.39 −0.03 −0.50 −0.39 0.50
−0.00 0.01 −0.01 −0.01 0.00 0.47 0.01 −0.93 0.46
⎤
Fig. 7: Advection matrices of a biquadratic Bernstein element (p = 2, h = 121, lexico-graphical node numbering). Entries in gray vanish in the sparse matrix assembled from subcell contributions of the piecewise-bilinear B´ezier net approximation.
At the final time T = 9, the swirling flow produces a snail-like deformed
configuration consisting of four intertwined spirals. The exact solution is con-stant along the characteristics of the linear advection equation and, therefore, attains the same maxima and minima as the initial data. Due to the narrow gaps between adjacent spirals and a complex non-solenoidal velocity field, this example is well suited for testing the ability of numerical schemes to resolve fine-scale features in a crisp and nonoscillatory manner.
In Fig. 9, we show the results obtained with DU, PDU, RDS, and RDS-FCT. Simulations are performed with p ∈ {1, 3} for all schemes and, ad-ditionally, p ∈ {7, 15} for matrix-free schemes. The time step is set to Δt = 2.5 · 10−3. All methods under investigation produce bound-preserving numerical approximations, and their relative performance is similar to that observed in previous examples. The accuracy of DU deteriorates as p in-creases, while the convergence behavior of PDU and RDS is largely indepen-dent of p. In terms of accuracy, RDS outperforms PDU by a wider margin in this test. In contrast to the strongly smeared PDU results, the RDS solu-tions are relatively well resolved, and their global maxima/minima are closer to those of the exact solution. The distortions in the shapes of the RDS(7) and RDS(15) solutions are caused by coarse mesh resolution and become less pronounced on finer meshes. We intentionally restrict ourselves to simula-tions with relatively few global DOFs because the objective of our study is to identify schemes that yield the best coarse-level approximations.
Once again, RDS turns out to be the only low-order method which pro-duces satisfactory results independently of p. Moreover, the possibility of a matrix-free implementation and the simple formula for the distribution weights makes it very efficient. The solutions produced by the RDS-FCT version are remarkably crisp and free of numerical artifacts that were ob-served in the RDS results for p ∈ {7, 15}. Moreover, the high quality of the FCT solutions is not significantly affected by p-refinements. Further improve-ments of the limiting strategy (localization to subcells, use of smoothness indicators) may lead to FCT schemes that recover the underlying high-order approximation exactly for problems with sufficiently smooth solutions.
8.5. Advection of “balls and jacks” in 3D
The last test problem that we consider in this article is the 3D advection of
“balls and jacks” with constant velocity v(x, y, z) = (5, 5, 5) in Ω = (0, 100)3 and homogeneous boundary conditions at the inlet. The simulation ends at the final time T = 8. The piecewise-constant initial condition [8]
u0 = u1+ 2u2+ 3u3,
(a)DU(1), uh∈ [0.20, 0.80] (b)PDU(1), uh∈ [0.19, 0.81] (c)RDS(1), uh∈ [0.18, 0.82]
(d)DU(3), uh∈ [0.25, 0.75] (e)PDU(3), uh∈ [0.22, 0.78] (f )RDS(3), uh∈ [0.16, 0.84]
(g)RDS(7), uh∈ [0.16, 0.84] (h)RDS(15), uh∈ [0.14, 0.86] (i) RDS-FCT(1) uh∈ [0.02, 0.99]
(j)RDS-FCT(3) uh∈ [0.04, 0.96]
(k)RDS-FCT(7) uh∈ [0.07, 0.93]
(l) RDS-FCT(15) uh∈ [0.11, 0.89]
Fig. 9: Twisting rotation in 2D. Numerical solutions uh(·, 9) for p ∈ {1, 3, 7, 15}.
as shown in Fig. 10a–10c, is defined using the characteristic functions
ui(x, y, z) =
1 if (x, y, z) ∈ Ωi, 0 otherwise,
of the subdomains Ωi, i = 1, 2, 3 with Ω1 = Ω\(Ω2 ∪ Ω3). The subdomain Ω2 is composed of the 3D cross {(x, y, z) ∈ (7, 32) × (10, 13) × (10, 13) ∪ (14, 17) × (3, 26) × (10, 13) ∪ (14, 17) × (10, 13) × (3, 26)} rotated by −45 degrees in the xy-plane, the shell (i.e., the difference of two balls) centered at (x, y, z) = (40, 20, 20) with radii 3 and 7, and the shell centered at (x, y, z) = (40, 40, 40) with radii 7 and 10. The subdomain Ω3 combines the 3D cross {(x, y, z) ∈ (2, 27) × (30, 33) × (30, 33) ∪ (9, 12) × (23, 46) × (30, 33) ∪ (9, 12) × (30, 33) × (23, 46)}, the ball centered at (x, y, z) = (40, 20, 20) with radius 3, the ball centered at (x, y, z) = (40, 40, 40) with radius 7, and the shell centered at (x, y, z) = (40, 20, 20) with radii 7 and 10.
Similarly to the example ofSection 8.2, the challenge of this test is to pre-serve the shape of u0 in the process of advection from one corner of the box Ω into another. Numerical solutions are calculated using NhDG = 1923 and the time step Δt = 10−3. The RDS and RDS-FCT results for p ∈ {1, 3, 7} are shown in Fig. 10. For comparison purposes, we also present the DU(1) and PDU(1) results in Fig. 11. While all low-order solutions are significantly dif-fused, the balls and jacks are still recognizable. The range of uh is displayed above each plot to quantify and compare the levels of numerical diffusion.
Even for p = 1, the PDU scheme is more accurate than DU but inferior to RDS. Since the velocity is constant in this experiment, the PDU matri-ces ˜Ce for p > 1 have the same sparsity pattern as the element matrix of the corresponding piecewise-trilinear subcell approximation. Therefore, the PDU scheme would be a viable alternative to RDS in this test. However, the matrix-free nature and p-independent convergence behavior of the RDS scheme make it a better choice for general 3D advection problems.
The combination of RDS with FCT produces much better results for the 3D advection of “balls and jacks” than the DU-FCT algorithm developed in [8]. Remarkably, the RDS-FCT solutions presented in Fig. 10 are free of numerical artifacts that motivated the use of restrictive local bounds in [8]. In our experience, the use of extended bounds is admissible and has a positive impact on the accuracy of FCT solutions if these bounds are defined using data from a properly chosen element-stencil neighborhood of a node.
In contrast to the extended bounds that were found to perform so poorly
(a)initial condition p = 1
uh∈ [1.000, 3.000] (b)initial condition p = 3
uh∈ [1.000, 3.000] (c)initial condition p = 7 uh∈ [1.000, 3.000]
(d)RDS(1), uh∈ [1.000, 2.485] (e)RDS(3), uh∈ [1.000, 2.610] (f ) RDS(7), uh∈ [1.000, 2.545]
(g)RDS-FCT(1)
uh∈ [1.000, 3.000] (h)RDS-FCT(3)
uh∈ [1.000, 3.000] (i) RDS-FCT(7) uh∈ [1.000, 2.987]
Fig. 10: Advection of “balls and jacks” in 3D. Initial condition and numerical (RDS, RDS-FCT) solutionsuh(·, 8) for p ∈ {1, 3, 7}, volume rendering with transparency.
in [8], the local extrema defined by (19) use data from elements meeting at the point xi rather than the local DOFs of the element Ke to which uei belongs and the data in common edge/face neighbors. The high quality of the DG results obtained with definition (19) of the local bounds for the FCT correction step confirms the findings of [34], where the use of element-stencil bounds was shown to be preferable in the context of CG-FCT algorithms.
(a)DU(1), uh∈ [1.000, 2.125] (b)PDU(1), uh∈ [1.000, 2.311] (c)RDS(1), uh∈ [1.000, 2.485]
Fig. 11: Advection of “balls and jacks” in 3D. Low-order (DU, PDU, RDS) numerical solutions uh(·, 8) for p = 1, volume rendering with transparency.
9. Conclusions
The residual distribution framework proposed in this work extends classi-cal RD approaches to DG methods and loclassi-calizes them to element subcells in a simple way. The resulting nonlinear low-order schemes are provably local ex-tremum diminishing and can be implemented in a matrix-free manner. Their use in FCT algorithms for high-order Bernstein finite element approximations produces excellent results for the time-dependent advection problems consid-ered in the presented numerical study. Preliminary investigations indicate that the same methodology can be used to construct bound-preserving finite element schemes for anisotropic diffusion equations and stationary problems.
Work is under way to combine residual distribution ideas with monolithic limiting approaches based on the theory developed in [12,33]. The outcomes of these efforts will be reported in a forthcoming publication.
Acknowledgments
This work was performed under the auspices of the U.S. Department of Energy under Contract DE-AC52-07NA27344, LLNL-JRNL-768125. The first two authors were supported by the German Research Association (DFG)
This work was performed under the auspices of the U.S. Department of Energy under Contract DE-AC52-07NA27344, LLNL-JRNL-768125. The first two authors were supported by the German Research Association (DFG)