Boundary absorption when simulating wave equation

In summary, the conversation discusses the problem of boundary reflections in a wave equation simulation and the search for a quick and easy solution. The suggested solution is to use a sponge layer at the boundary with a high damping factor to absorb incoming waves. The transition between the physical domain and the sponge layer should be smooth to prevent interference.
  • #1
706
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
  • #2
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.
 
  • #3
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.
 
  • #4
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.
 
  • #5


As a fellow scientist, I can understand your frustration with finding practical solutions in academic papers. However, it is important to note that mathematical rigor is necessary in scientific research to ensure accuracy and validity of results.

That being said, there are some simple techniques that can be used to reduce boundary reflections in a wave equation simulation. One approach is to use a technique called "padding" where you add a layer of cells around the edges of the grid that have a lower wave velocity than the rest of the grid. This can help absorb the incident energy and reduce reflections.

Another technique is to use a "damping layer" where you gradually decrease the amplitude of the waves at the edges of the grid. This can be done by multiplying the amplitude by a damping factor that decreases from the center of the grid to the edges.

Both of these techniques are not perfect and may not work in all situations, but they can provide a quick and dirty solution that can improve the accuracy of your simulation. It is also important to note that the size and properties of the grid can also impact the amount of boundary reflections, so it may be worth experimenting with different grid sizes and configurations.

In conclusion, while it may be tempting to find a simple solution to boundary reflections, it is important to carefully consider the mathematical and physical implications of any approach to ensure accurate results in your simulation.
 

1. What is boundary absorption when simulating the wave equation?

Boundary absorption is a technique used in numerical simulations of the wave equation to mimic the effect of energy dissipation at the boundaries of a computational domain. It is also known as sponge layer or absorbing boundary conditions.

2. Why is boundary absorption necessary in simulating the wave equation?

In real-world scenarios, wave energy is dissipated at the boundaries due to various factors such as material properties, impedance mismatch, and scattering. To accurately model these effects, boundary absorption is necessary in numerical simulations of the wave equation.

3. How does boundary absorption work in simulating the wave equation?

Boundary absorption is achieved by adding an additional term to the wave equation, which acts as a damping mechanism at the boundaries. This term absorbs the outgoing waves and prevents them from reflecting back into the computational domain, effectively mimicking the dissipation of energy at the boundaries.

4. What are the different types of boundary absorption methods used in simulating the wave equation?

The two most commonly used methods for boundary absorption are the perfectly matched layer (PML) and the convolutional perfectly matched layer (CPML). PML is based on complex coordinate stretching, while CPML uses convolutional operators to achieve anisotropic absorption. Other methods include the absorbing layer method and the impedance boundary condition.

5. Are there any limitations or drawbacks to using boundary absorption in simulating the wave equation?

One major limitation of boundary absorption is that it can introduce numerical artifacts and errors, especially at high frequencies. This can be mitigated by using a sufficiently thick absorbing layer and carefully tuning the parameters of the absorption method. Additionally, some methods may be computationally expensive, resulting in longer simulation times.

Suggested for: Boundary absorption when simulating wave equation

Back
Top