boundary treatment for time domain waves

More
6 years 8 months ago #447 by Guosheng Fu
Hello,

I am looking into time domain wave simulation with explicit DG methods, say acoustics scattering.
I was wondering how a proper boundary treatment in the farfield could be realized in NGSolve.

As an example, how to modify the demo code
timeDGwave.py
to fit for an unbounded domain? I tried to use PML, but it gives me errors...

Best,
Guosheng
More
6 years 8 months ago #455 by mw
Hi,
the PML implementation in NGSolve can only be used for the time harmonic case.
For PML in time domain you would need to use a formulation like e.g. in
www.sciencedirect.com/science/article/pii/S0021999112006055
More
6 years 8 months ago #456 by joachim
Hi Guosheng,

we just now set up some time-domain PML examples ...

Here is a 2D time-domain PML with cartesian PML.

Here is a reference on the method:
hal.archives-ouvertes.fr/hal-01378501/fi...tPMLconvex_FINAL.pdf

best, Joachim
More
6 years 8 months ago #457 by Guosheng Fu
WOW! Thanks, Joachim.
this is perfect. I will look into your code
I was actually planning to implement pml today, following the reference by Atkins...
arc.aiaa.org/doi/abs/10.2514/6.1997-1581

I am working on time domain wave simulations, it's very fun! It's also super easy to code in NGsolve!
More
6 years 8 months ago #458 by Guosheng Fu
Just a follow-up question.
I want to check the accuracy of a pml implementation by comparing the solution with another solution simulated using a larger domain.
Say, how to project/interpolate the solution defined on a larger mesh to the smaller mesh?
More
6 years 8 months ago #459 by joachim
Hi Guosheng,

you have two options:

1. using one mesh, define two different subdomains for the pml, an inner and an outer. setup two problems. then you can compare two fields from the same mesh.

2. using two different meshes. With gf.Set(..) you can project a field from an independent mesh. But of course, it comes at some price (cost + possibly accuracy). It should also work to integrate a field from an independent mesh.

Best, Joachim
Time to create page: 0.114 seconds