Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Roe-type flux #625

Draft
wants to merge 1 commit into
base: master
Choose a base branch
from
Draft

Add Roe-type flux #625

wants to merge 1 commit into from

Conversation

jh66637
Copy link
Contributor

@jh66637 jh66637 commented Dec 14, 2023

Closes #588

vector const & up,
vector const & n) const
{
return Number{0.5} * (pm + pp) + tau * (um * n - up * n);
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@kronbichler: If I read your comment #587 (comment) correctly, this is the Roe-type flux you were describing. Is this correct?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I must admit that I had to check carefully how the two fluxes are defined. I looked into http://dx.doi.org/10.1016/j.cma.2015.12.003 and formulas (18)-(20) in particular. What they call HDG flux should be the Roe flux. In your formula, I think both the local Lax-Friedrichs (Rusanov) flux and the Roe flux are the same, because it does not matter whether you switch the order of the subtraction and the multiplication u * n. Looking at the flux, they are the Roe flux both. For a Lax-Friedrichs that dissipates in all directions, you would need to take the outer product of u \otimes n and return that to the place of use instead of flux_mass * n. In other words, right now you contract between u and n, before you multiply by n again, but for Lax-Friedrichs you would need to contract between n and n, and afterwards multiply by u.

As these formulas are intricate and I might have missed some important detail, I recommend you to have another look in terms of literature and formulas, and decide how you want to proceed.

I guess right now you don't see a difference in any of the results, do you? While I would expect that for dim > 1, one should see a difference between Roe and Rusanov.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I agree, that the fluxes are equivalent and the results are exactly the same.

Thank you for pointing out the paper, I didn't find helpful literature with the keyword Roe-type flux. With this, I can go through the equations in detail 👍

I will convert the PR to a draft until I find the time to do so.

@jh66637 jh66637 marked this pull request as ready for review December 14, 2023 11:49
@jh66637 jh66637 marked this pull request as draft December 16, 2023 10:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add Roe type flux for acoustics
2 participants