Boundary absorption when simulating wave equation

Click For Summary
SUMMARY

The discussion focuses on implementing boundary absorption techniques in a wave equation simulation written in C#. The primary solution proposed is the use of a sponge layer, which consists of 5-10 cells at the grid's edge that incorporate a sink term to absorb incoming waves. The damping factor in these cells should be high near the boundary and taper off towards the center to ensure effective absorption without influencing the physical domain. This approach provides a practical solution for reducing boundary reflections without the complexity of rigorous nonreflecting boundary conditions.

PREREQUISITES
  • Understanding of wave equation simulations in C#
  • Familiarity with numerical methods for partial differential equations
  • Knowledge of damping factors and their implementation in simulations
  • Basic concepts of boundary conditions in computational physics
NEXT STEPS
  • Research the implementation of sponge layers in wave simulations
  • Explore the effects of varying damping factors in boundary cells
  • Learn about nonreflecting boundary conditions in numerical simulations
  • Investigate alternative methods for wave absorption in grid simulations
USEFUL FOR

Developers and researchers working on wave equation simulations, computational physicists, and anyone interested in optimizing boundary conditions to minimize reflections in numerical models.

rumborak
Messages
706
Reaction score
154
I wrote a wave equation simulation in C# a while ago, and while everything works fine, I am running into the expected problem that my simulation boundaries (ie the edges of the grid) reflect the waves coming to them.
Obviously I want to keep the grid of reasonable size, so I looked into what could be done to absorb the incident energy.
So, I looked at papers addressing the problem. Problem is (as I find with a lot of academic papers), they are mathematically rigorous, but everyday useless. I'm in need of an easy 'n dirty solution that gets me 90% of the way in all situations, not one that gets me 100% under very specific circumstances.

TLDR: Does anyone know of a quick and dirty ways of absorbing boundary reflections in a grid simulation?
 
Physics news on Phys.org
Rigorously implementing nonreflecting boundary conditions is difficult. The simplest solution I've heard of is using a sponge layer: at the boundary you add 5-10 cells in which you add a sink term to your equations to absorb all incoming waves.
 
Thanks for the reply, bigfooted.
Yeah, the sponge layer looks like a good candidate in terms of easy of implementation. I think I will use a non-zero damping factor in those cells.
One thing I'm not sure about yet is, I've seen some papers have their damping factor curve to be rather complicated. I.e. the cells close to the grid edge would have a high damping factor, with the factor tapering off going towards the center of the grid.
 
rumborak said:
One thing I'm not sure about yet is, I've seen some papers have their damping factor curve to be rather complicated. I.e. the cells close to the grid edge would have a high damping factor, with the factor tapering off going towards the center of the grid.
You want to make sure that by the time the wave is at the edge of the sponge layer, it is really absorbed, so you use a very high damping factor. At the interface between your physical domain and the sponge layer, you want the transition to be smooth, to prevent the sponge layer from influencing your physical domain.
 

Similar threads

  • · Replies 8 ·
Replies
8
Views
1K
  • · Replies 2 ·
Replies
2
Views
1K
  • · Replies 10 ·
Replies
10
Views
815
Replies
1
Views
4K
  • · Replies 3 ·
Replies
3
Views
5K
  • · Replies 1 ·
Replies
1
Views
2K
Replies
3
Views
5K
  • · Replies 1 ·
Replies
1
Views
1K
Replies
13
Views
2K
  • · Replies 11 ·
Replies
11
Views
1K