TrixiParticles.jl icon indicating copy to clipboard operation
TrixiParticles.jl copied to clipboard

Roadmap: robust open boundaries for non-trivial flow scenarios

Open LasNikas opened this issue 6 months ago • 1 comments

This PR serves as a roadmap to track the necessary changes and implementations required to enable robust open boundary simulations for non-trivial flow scenarios.

The primary goal is to systematically validate all combinations of prescribed boundary. This includes rigorous validation of both inflow and outflow boundary treatments.

Current Validation Gaps:

Existing validation efforts, such as the vortex street benchmark from Tafuni et al. (2018), provide insights but do not comprehensively cover the full spectrum of open boundary scenarios:

  • [ ] Prescribed value combinations (pressure, velocity, density)
  • [ ] Bidirectional flow scenarios (complex flow patterns with recirculation zones)
  • [ ] FSI

Validation strategy:

  • [ ] Intermediate Validation: Benchmarks from Negi et al. (2019) offer additional test cases that could bridge current gaps in validation coverage.
  • [ ] Advanced Validation: The most challenging validation scenarios are presented in Lu et al. (2024), which incorporate FSI problems. These represent the ultimate test cases for demonstrating the robustness of the open boundary implementation.

Required

Quick fixes

  • [x] #829 fixes swapped sign in extrapolation of quantities
  • [x] #855 fixes the extrapolation, adds different mirroring methods and allows non-prescribed values for BoundaryModelLastiwka
  • [ ] #852 fixes the initial condition and adds simple advection example

Enhancement

  • [x] #833 averaging the inflow velocity to mitigate non-uniform particle distribution
  • [x] #773 gpu compatible implementation
  • [x] #849 revises check_domain to avoid atomic_cas operation
  • [ ] #866 allows multiple boundary zones per system
  • [ ] #827 adds a particle shifting zone in the boundary zone

New approaches

  • [ ] #863 solves momentum equation for boundary particles

Validation

  • [ ] #781 vortex street validation based on Tafuni et al. (2018)
  • [ ] #856 required for advanced Lu et al. (2024) validations

Issues

  • [x] #850
  • [x] #861
  • [ ] open boundary have poor GPU performance

Results

Pulse wave propagation in straight vessel (3D)

image

https://github.com/user-attachments/assets/be544819-3fcc-44ea-80a8-e3c04cab8dff

image

image

LasNikas avatar Jul 03 '25 06:07 LasNikas

Codecov Report

Attention: Patch coverage is 20.10050% with 159 lines in your changes missing coverage. Please review.

Project coverage is 69.15%. Comparing base (e72c597) to head (9390f7b).

Files with missing lines Patch % Lines
src/schemes/boundary/open_boundary/system.jl 22.42% 83 Missing :warning:
...c/schemes/boundary/open_boundary/pressure_model.jl 0.00% 31 Missing :warning:
...c/schemes/boundary/open_boundary/boundary_zones.jl 29.62% 19 Missing :warning:
src/callbacks/particle_shifting.jl 0.00% 14 Missing :warning:
src/schemes/boundary/rhs.jl 0.00% 4 Missing :warning:
src/callbacks/update.jl 0.00% 3 Missing :warning:
src/schemes/boundary/open_boundary/mirroring.jl 40.00% 3 Missing :warning:
test/general/buffer.jl 50.00% 1 Missing :warning:
test/systems/open_boundary_system.jl 0.00% 1 Missing :warning:
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #854      +/-   ##
==========================================
- Coverage   70.47%   69.15%   -1.33%     
==========================================
  Files         106      107       +1     
  Lines        6893     7038     +145     
==========================================
+ Hits         4858     4867       +9     
- Misses       2035     2171     +136     
Flag Coverage Δ
unit 69.15% <20.10%> (-1.33%) :arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

:rocket: New features to boost your workflow:
  • :snowflake: Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

codecov[bot] avatar Jul 03 '25 06:07 codecov[bot]