Boundary Reflections on FDTD
Thanks
In FDTD, the fields are known only at discrete points. Maxwell's equations are approximated using finite-differences which generates one equation for every field component at every point. These equations include field components at surrounding points. At the edge of your grid, you will be required to include a field component that is outside of your grid which really doesn't exist.
The manner in which you handle this is called a boundary condition. This is not to be confused with "boundary conditions" you learned in EM theory 101 where tangential fields are continuous, etc. At first, you might think you can handle this in some manner by simply storing one more layer of grid cells around your grid, but this leads to the same problem for the equations written for the fields in the new grid points you added.
The two most common boundary conditions are Dirichlet and Periodic Boundary conditions. To be clear, what you may read as the "Perfectly Matched Layer" is not really a boundary condition in the sense that it doesn't prescribe how to handle the problem you encounter implementing the finite-difference equations at the edge of your grid.
Dirichlet boundary conditions just assume fields outside the grid are all zero. This is "sort of" the boundary condition you would implement if didn't do anything. Forcing the fields to zero outside the grid makes the outside of the grid a "Perfect Electric Conductor" or a "Perfect Magnetic Conductor" depending on what field type you forced to be zero. Obviously, you would get reflections from a PEC or PMC so this is why you get reflections in FDTD if you do nothing about boundary conditions.
For periodic boundary conditions, you assume the fields outside the left side of your grid are the exact same as the fields at the far right side of your grid. Thus, you just use the fields at the right side of the grid in place of the fields outside the left side of the grid, and also the other way around.
The Perfectly Matched Layer is a way of "building in" loss into the outer 10 or so layers of your grid to absorb outgoing waves. This prevents their reflection, but doesn't tell you what to do at the very outside of your grid. Typically Dirichlet boundary conditions are used in conjunction with the PML.
Hope this helps!
-Tip
That was pretty helpful. Now I know what's going on, so I better go and read some more about boundary conditions.
Thanks a lot for answer.
Tip,
I think that explanation could be copied more or less verbatim to somada141's
FDTD-Wiki at
http://fdtd.wikispaces.com/
as an introduction to boundary conditions and why you need them
Good suggestion. It is added.
-Tip
Thank you.
I have been thinking -without much results so far- about how to organize the FDTD-wiki.
One thing I believe would be a good idea is to separate
1) general explanations (similar to your explanation of boundary conditions)
2) more detailed explanations (i.e. the various schemes for dispersive materials with derivations)
3) advice on implementations
4) actual source code samples
5) useful links/references
Although 3 and 4 may belong together. If you have any advice and/or suggestions please let
me know.
I really believe in the wiki approach to this. When I was a grad student, I created a numerical modeling focus group and started wikis on a number of numerical methods. Unfortunately, I did not get much contribution. I think probably most at the University were on the learning curve so were hesitant to contribute. I suspect by giving the wiki a good start, people would be more willing to make small contributions instead of writing a major section.
Boundary Reflections FDTD 相关文章:
- Assigning boundary and Lumped port to 3D spiral coils in HFSS
- Boundary 'PerfectE1' and boundary 'Rad2' overlap
- Why lumped port must be at the boundary?
- HFSS Master/Slave boundary conditions: Contact maps are ambiguous execution error
- Defining boundary condition in electrostatic solver in Comsol
- how to define PML boundary?