idaholab / moose

Multiphysics Object Oriented Simulation Environment
https://www.mooseframework.org
GNU Lesser General Public License v2.1
1.67k stars 1.03k forks source link

Implementing rDG base classes in MOOSE #7967

Closed yidongxiainl closed 7 years ago

yidongxiainl commented 7 years ago

Description of the enhancement or error report

This is the initial effort to implement the class of reconstructed discontinuous Galerkin (rDG) methodologies in MOOSE.

The specific rDG method to be implemented for this effort is rDG(P0P1). This is equivalent to the 2nd-order cell-centered finite volume method (FVM) with linear gradient reconstruction and slope limiting. The 2nd-order FVM has been the prevalent choice for building computational fluid dynamics (CFD) toolkits in the commercial / industrial domain. This rDG(P0P1) method has been successfully implemented in an in-house INL code for nicely solving the multi-dimensional compressible Navier-Stokes/Euler equations , and validated through a variety of challenging benchmark flow propagation problems containing strong discontinuities and shock waves.

@yidongxiainl will be responsible for carrying out most of this effort. @andrsd will be giving assistance of design, and code review.

Rationale for the enhancement or information for reproducing the error

To make the design of rDG methods available to all of the MOOSE developers/users, and also to make the development of other wave propagation applications more convenient, we've decided to move most of the base classes from our in-house CFD app code into MOOSE. With this change, all of the current and/or future rDG-based wave propagation applications would only depend on MOOSE.

Identified impact

(i.e. Internal object changes, limited interface changes, public API change, or a list of specific applications impacted)

yidongxiainl commented 7 years ago

Comparison of solutions to 1-D advection equation

Results by the continuous Galerkin FEM

fig_1d_cg_square_wave

Results by the rDG(P0P1)

yidongxiainl commented 7 years ago

Results demonstrated by animated GIFs

The continuous Galerkin FEM

anim_1d_cg_square_wave

The rDG(P0P1)

anim_1d_aefv_square_wave

friedmud commented 7 years ago

Looks good - you didn't happen to compare against an SUPG method using CG, right? I mean... it's not much of a fair fight to compare against vanilla CG... it's never meant to be used on pure advection problems.

On Wed, Nov 16, 2016 at 6:03 PM Yidong Xia notifications@github.com wrote:

Results demonstrated by animated GIFs The continuous Galerkin FEM

[image: anim_1d_cg_square_wave] https://cloud.githubusercontent.com/assets/10405052/20369404/05673b62-ac16-11e6-9fcb-ce3982f60d3d.gif The rDG(P0P1)

[image: anim_1d_aefv_square_wave] https://cloud.githubusercontent.com/assets/10405052/20369446/3b4d815a-ac16-11e6-9419-aa3d82eaabc8.gif

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/idaholab/moose/issues/7967#issuecomment-261101429, or mute the thread https://github.com/notifications/unsubscribe-auth/AA1JMTy9yvBBZcS-GBs_xuaS1BvwCIEZks5q-4vVgaJpZM4KiheA .

yidongxiainl commented 7 years ago

With @jwpeterson 's help, we did all possible SUPG based trials before, but we could not achieve "completely oscillation-free" results without over-diffusing. That was an old discussion from Goggle Groups MOOSE user list. I've attached a figure to show that SUPG-based solution still gave oscillations near the discontinuity.

image

yidongxiainl commented 7 years ago

Though we're fully aware that CG may not be the best shot when we deal with pure advection problems, yet there are many advection-dominated problems that we are expected to solve based on MOOSE, e.g. high-temperature/pressure wave propagation, and free-surface wave propagation. Any over- and under-shoots in solutions are likely to break down the solving. Therefore those needs are pushing us to explore rDG methods based on MOOSE.

friedmud commented 7 years ago

Interesting!

I don't disagree with anything you said... I just wanted to see the comparison. rDG is looking great!