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

in rare cases, NSCBC outflow produces unphysically high velocities #532

Open
BenWibking opened this issue Feb 7, 2024 · 2 comments
Open
Labels
bug Something isn't working

Comments

@BenWibking
Copy link
Collaborator

BenWibking commented Feb 7, 2024

Describe the bug
In very rare circumstances, the NSCBC outflow boundary conditions can produce states in isolated cells at the boundary that have unphysically high velocities. An ad hoc (but partially effective) workaround is to revert to zero-gradient extrapolation when the velocity in the ghost cells would otherwise be extremely large (for example, > 1e10 cm/s).

To Reproduce
This was observed after about 40,000 timesteps while running the updated shock-cloud problem at 1024x256x256 resolution with no refinement.

Additional context
A similar failure mode (but with negative densities instead) was seen in #472.

@BenWibking BenWibking added the bug Something isn't working label Feb 7, 2024
@BenWibking BenWibking changed the title NSCBC outflow sometimes fails with unphysically high-velocity states in rare cases, NSCBC outflow produces unphysically high-velocities Feb 7, 2024
@BenWibking BenWibking changed the title in rare cases, NSCBC outflow produces unphysically high-velocities in rare cases, NSCBC outflow produces unphysically high velocities Feb 7, 2024
github-merge-queue bot pushed a commit that referenced this issue Apr 8, 2024
### Description
This adds simplified subsonic inflow and outflow boundary conditions.
For outflows, it specifies the pressure at the outflow and extrapolates
the other primitive variables (while turning into a reflecting boundary
if the normal velocity is inflowing). For inflows, it specifies the
velocity components, the temperature, and the passive scalars, while
extrapolating the density.

Unlike the naive boundary conditions, these boundary conditions are
well-posed, since they specify the correct number of quantities required
for the steady-state solution to be unique. The amplitude of reflected
waves is greater than for the NSCBC boundary conditions, but these
boundary conditions are much more stable in the presence of supersonic
turbulent flow near the boundary.

### Related issues
Workaround for #532.

### Checklist
_Before this pull request can be reviewed, all of these tasks should be
completed. Denote completed tasks with an `x` inside the square brackets
`[ ]` in the Markdown source below:_
- [x] I have added a description (see above).
- [x] I have added a link to any related issues see (see above).
- [x] I have read the [Contributing
Guide](https://github.com/quokka-astro/quokka/blob/development/CONTRIBUTING.md).
- [ ] I have added tests for any new physics that this PR adds to the
code.
- [x] I have tested this PR on my local computer and all tests pass.
- [x] I have manually triggered the GPU tests with the magic comment
`/azp run`.
- [ ] I have requested a reviewer for this PR.
@psharda
Copy link
Contributor

psharda commented Apr 17, 2024

@BenWibking is this now resolved by #598 ?

@BenWibking
Copy link
Collaborator Author

@BenWibking is this now resolved by #598 ?

Yes, in the sense that the simple version of the boundary conditions added in #598 doesn't have this problem. No, in the sense that the real NSCBC still has this problem.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants