FDTD Mesh

= General = The mesh used by the finite-difference time-domain (FDTD) method is a strictly rectilinear mesh using Yee-cells.

For detailed informations you should have a close look here: FDTD

Rules of thumb
Here are some (maybe) helpful rules of thumb:
 * The largest mesh cell must not be bigger than about a tenth of the smallest wavelength.

Better: $$max(\Delta_{x,y,z}) < \lambda_{min}/15$$

The smallest wavelength is defined by the greatest excited frequency and the material properties!


 * Make the mesh as coarse as possible and as fine as needed


 * Keep an adequate distance to an absorbing boundary

Try to keep structure $$ > \lambda_{max}/4 $$ from a PML


 * Create a smooth mesh: Neighboring cell sizes should not exceed a factor of ~2

That means that e.g. for micro-strip line (MSL) the line-impedance and wave propagation differs somewhat between simulation and measurement. So, it is preferred in precision calculation to put a mesh line 1/3 inside and 2/3 outside the metal.
 * Thirds Rule : At the edges of a 2D metal you have a strong electric field enhancement that FDTD has trouble to calculate properly.

FDTD Mesh example


Mesh lines are calculation time so try to add only needed lines (sometimes, red or blue lines already cover the substrate mesh)
 * The first thing is to place the thirds rule mesh lines 1/3 inside and 2/3 outside the metal (the red ones).
 * In second, place the metal mesh lines (the blue ones) which should cover all Micro Strip Lines in the width direction with a maximum spacing of mres (mres is metal mesh resolution $$ <= \lambda_{min}/20 $$ for example)
 * A the end, complete this mesh with substrate mesh lines (the black ones) which should cover all the substrate with a maximum spacing of sres (sres is substrate mesh resolution $$ <= \lambda_{min}/10 $$ for example)

openEMS example

 * Define a homogeneous mesh with the matlab interface:

enables us to define meshes with points which match important dimensions and have an interval less than a specified maximum. This is demonstrated with the following simple examples.

First, a simple mesh from 1 to 10 with a maximum resolution of 1:

Now suppose we want a point at 5.2. This is added to the vector (first argument):

Create a homogeneous mesh with a resolution of 10mm in x- and y-direction and 15mm in z-direction:

= FDTD cylindrical mesh =

An adaption of the conventional FDTD algorithm to the cylindrical coordinate has been realized with only minimal changes. As in the rectilinear mesh, the Maxwell equations are evaluated on the surfaces and edges of cylindrical Yee cell but with different formulation in the calculation of surface area and edge lengths.

To reduce inevitable smaller cell size as $$r$$ approaches 0 which induces smaller step size and hence slower simulation, a new multi-grid approach for cylindrical mesh is introduced. In contrast to conventional FDTD multi-grid that increases the mesh resolution, this method is adopted for reducing excessive mesh resolution in the center and its neighboring area. By introducing sub-grid, every second radial lines of the original mesh is excluded. This enlarge the relevant cell size and time step by a factor of two. For a huge number of mesh line in azimuthal direction, this approach can be nested several times. Correspond to it, the cell size and time step are increased by a factor of $$2^{n}$$ where $$n$$ is the number of nested stage.

example
Cylindrical mesh without subgrid:

Cylindrical mesh with subgrid defined at $$r=50mm$$ :

= Boundary Conditions =

To complete the mesh, boundary conditions must be specified. This is done with the function  in this manner:

where values for the  vector are:

0 = PEC     or  'PEC' 1 = PMC     or  'PMC' 2 = MUR-ABC or  'MUR' 3 = PML-ABC or  'PML_x' with pml size x => 4..50

Here are two equivalent examples: