FDTD Solutions Numerical Methods Outline Application area review Ray optics vs. wave optics Finite Difference Time Domain method : Yee cell : Uniform, graded, and conformal meshing : Obtaining frequency domain results from a time domain method Boundary conditions Coherence and polarization in FDTD Accuracy and convergence testing 1
Application area overview Our products can accurately simulate many technologies Photonic crystals Bandstructure Plasmonics CMOS Image sensors Nanoparticles Solar cells Resonators LED/OLEDs Grating devices Lithography Metamaterials Waveguides Wave optics vs. ray tracing Question: What features are common among these applications? (When do you need to use FDTD Solutions?) Answer: Feature sizes are on the order of the wavelength.
Wave optics vs. ray tracing Source = 0.55 um 4 um Wave optics vs. ray tracing R=100% Incident light n=1.5 45 n=1 Snell s Law gives c : 41.8 3
Wave optics vs. ray tracing = 0.4 um = 4 um 0 um rayvswave_700thz.mpg rayvswave_70thz.mpg Wave optics vs. ray tracing Conclusion: You need FDTD Solutions when feature sizes are on the order of a wavelength 4
Overview of FDTD method TOPICS Maxwell equations Yee cell Time domain technique Fourier transform Sources and Monitors Computational requirements D vs. 3D Advantages of the FDTD method Maxwell s equations Describe the behavior of both the electric and magnetic fields, as well as their interactions with matter. Gauss law Name Differential form Integral form Gauss' law for magnetism (absence of magnetic monopoles): Faraday s law of induction: Ampère s law (with Maxwell's extension): 5
Maxwell s equations Symbol Meaning SI Unit of Measure electric field magnetic field also called the auxiliary field electric displacement field also called the electric flux density magnetic flux density also called the magnetic induction also called the magnetic field free electric charge density, not including dipole charges bound in a material free current density, not including polarization or magnetization currents bound in a material volt per meter ampere per meter coulomb per square meter tesla, or equivalently, weber per square meter coulomb per cubic meter ampere per square meter Wave Optics Free space plane wave In vacuum, without charges (=0) or currents (J=0) Maxwell s equations have a simple solution in terms of traveling sinusoidal plane waves The electric and magnetic field directions are orthogonal to one another and the direction of travel k The E, H fields are in phase, traveling at the speed c H 6
Wave Optics - Simple materials In linear materials, the D and B fields are related to E and H by: D E B H where: ε is the electrical permittivity of the material, and μ is the permeability of the material In FDTD Solutions, we typically deal with the electrical permittivity only μ=μ 0 is the permeability of the free space How the FDTD method works E and H are discrete in time nt E( t) E H( t) H ( n 1 ) t The basic FDTD time-stepping relation: E H n1 n3 0 E 1 n t n1 E H n1 t H E n1 H 1 E 3 H nd order accurate in time: error ~ t 7
Maxwell equations on a mesh Yee cell E and H are discrete in space The Yee cell Spatially stagger the vector components of the E-field and H-field about rectangular unit cells of a Cartesian computational grid. Yee cell Z E z H x H y E x (x,y,z) H z E y Y X nd order accurate in space Kane Yee (1966). "Numerical solution of initial boundary value problems involving Maxwell's equations in isotropic media". Antennas and Propagation, IEEE Transactions on 14: 30 307. 8
How are dielectric properties treated? The true structure The meshed structure (r ) Discrete mesh i, j, k Y X Conformal mesh technology Conformal mesh technology Interfaces are a problem for Maxwell s equations on a discrete mesh : The fields can be discontinuous at interfaces : The positions of the interface cannot be resolved to better than dx : Staircasing effects Solutions : Graded mesh (reduce mesh size near interfaces) : Conformal mesh technology : Combination of both 9
Conformal mesh technology Finite difference methods cannot resolve interface positions or layer thicknesses to better than the mesh size Conformal mesh technology Staircasing can lead to unwanted effects 10
Conformal mesh technology Conformal mesh technology uses an integral solution to Maxwell s equations near interfaces : Lumerical s approach can handle arbitrary dispersive media : More advanced than well known approaches such as the Yu-Mittra model for PEC Example: Yu-Mittra approach for PEC C B t z C C 1 E dl E dl C 1 Ex Ey Bz Ey y PEC Ex x 11
Conformal mesh technology Application Simulation mesh Best Solution Multilayer Conformal mesh can allow you to use the default simulation mesh. Mie scattering We combine conformal meshing with graded meshing, but the mesh is not as fine as with staircasing. Waveguide couplers Conformal mesh can allow you to use the default simulation mesh. Conformal mesh technology There are 3 variants used : Conformal variant 0 (default) Conformal mesh applied to all materials except metals and PEC (Perfect Electrical Conductor) Metals are materials with real() < 1 This is the best setting without doing convergence testing : Conformal variant 1 Conformal mesh applied to all interfaces : Conformal variant Yu-Mittra model for PEC applied to PEC and metals 1
Conformal mesh technology Simple rule of thumb : Use the default conformal variant 0 Possible exceptions : If the simulation diverges Test using staircasing : If you are studying plasmonic effects Consider using conformal variant 1 Do some careful convergence testing and read the page at http://docs.lumerical.com/en/fdtd/user_guide_testing_conver gence.html Computational Resource Requirements How do the required computational resources scale with grid size? Memory Requirements 3D D ~ (/dx) 3 ~ (/dx) Simulation Time ~ (/dx) 4 ~ (/dx) 3 dx=/10 13
Controlling the mesh We provide a mesh accuracy slider that ranges from 1-8 The mesh algorithm then targets a minimum : /dx = 6, 10, 14, 18,, 6, 30, 34 Note that = 0 /n, where n is the refractive index Generally, /dx=10 (mesh accuracy ) is considered reasonable for many FDTD simulations and /dx ~ 0 (mesh accuracy 4,5) is considered very high accuracy It is still often worth running at /dx=6 (mesh accuracy 1) for initial simulations The default is /dx=10 (mesh accuracy ) We will see later why /dx = 1/(k dx) is the right quantity to consider The meshing can be fully customized : Typically, we use mesh override regions to force a particular mesh in a given region, which we recommend : We can fully customize the mesh algorithm details if desired but this is not recommended Tip Use a coarse mesh for simulations : Memory scales as 1/dx 3 : Simulation time scales as 1/dx 4 14
D vs 3D FDTD simulations can be run in D or 3D 3D D: Structure is infinite in z direction Z Y Y X Z X D vs 3D D assumes E z z H z 0 We get perfect separation of Maxwell s equations into two independent sets of equations : Transverse Electric (TE) : involves only Ex, Ey, Hz : Transverse Magnetic (TM) : involves only Ez, Hx, Hy The terms TE and TM are no longer used in FDTD Solutions. Use the blue arrows of sources to determine the Electric field polarization. 15
FDTD is a time domain technique! The simulation is run to solve Maxwell s equations in time to obtain E(t) and H(t) Most users want to know the field as a function of wavelength, E(), or equivalently frequency, E(w) The steady state, continuous wave (CW) field E(w) is calculated from E(t) by Fourier transform during the simulation. E( w) T Sim 0 e iwt E( t) dt See section on Units and Normalization of Reference Manual for more details: http://www.lumerical.com/fdtd_online_help/ref_fdtd_units_units_and_normalization.php FDTD is a time domain technique! Normalize E(w) to the source spectrum and we can obtain the impulse response of the system! E impulse 1 ( w) s( w) T Sim 0 e iwt E( t) dt E impulse is a response of the system : It is independent of the source pulse used : It is the CW, or monochromatic response Ideally s(w)=1, meaning that s(t) is a delta function : In practice, we use a very short pulse 16
Advantages of the FDTD method Advantages Few inherent approximations = accurate A very general technique that can deal with many types of problems Arbitrarily complex geometries One simulation gives broadband results Example, ring resonator through n=.915 drop 4.4 m ~1.55m 17
Example: waveguide ring resonator time 1 Fourier Transform ring.mpg Example: waveguide ring resonator through drop 18
Boundary conditions PML Absorbs incident fields Use PML when the fields are meant to propagate away from the simulation region Metal Perfect metal boundary 100% reflection, 0% absorption Periodic For periodic structures The structure AND fields must be periodic Typically used with the plane wave source Symmetric/Anti-Symmetric boundaries Symmetric/Anti-Symmetric Can reduce memory/time for symmetric simulations Both structure AND fields must be symmetric 19
Symmetric/Anti-Symmetric boundaries Non zero components of the electric and magnetic fields at symmetric/anti-symmetric boundaries Symmetric/Anti-Symmetric boundaries How the different electric and mangetic components behave under different symmetry conditions 0
Symmetric/Anti-Symmetric boundaries Symmetry/Anti-Symmetry can be used for periodic structures : Consider file from far field section, farfield4.fsp Symmetric/Anti-Symmetric boundaries Symmetry/Anti-Symmetry can be used for periodic structures : Image the near and far fields at 1.3 microns 1
Symmetric/Anti-Symmetric boundaries Symmetry/Anti-Symmetry can even be used for periodic structures : We can get the same results but the simulation runs faster : Far field projections can still be done : The data is automatically unfolded so we see the full image Actual simulation GUI and script results Bloch boundary conditions Bloch For periodic structures (similar to periodic) Use Bloch when the plane wave source is at nonnormal incidence Use Bloch for bandstructure simulations. Bloch boundaries conditions ensure that E(x+a) = exp(ika)*e(x) a is the simulation span k is the Bloch vector
Bloch boundary conditions Periodic boundaries are just a special case of Bloch boundaries (k=0)! Bloch BC requires x memory and simulation time When using Bloch boundaries for non-normal plane waves, you must check the following Bloch boundary conditions Consider the difference between correct and incorrect k settings for a plane wave in free space Correct usr_bloch_movie_.mpg Incorrect usr_bloch_movie_3.mpg 3
Bloch boundary conditions When the setting are correct, we can study periodic structure illuminated by plane waves at angles : We can calculate far field projections Assume periodicity the same as with periodic boundary conditions : We can calculate grating order efficiencies, the same as with periodic boundary conditions : We must be cautious about the PML performance when the angle of incidence is steep Sometimes, we need to increase the number of layers of PML to get accurate results Coherence Temporal incoherence : The phase, j, of the light shifts randomly over time, on a time scale t c E( t) E cos( wt j( t)) T 10 w 11 t 10 s c 0 15 : Even without random phase shifts, if the light is not monochromatic, it is incoherent t c f 1 s : In either case, the coherence length of the system is often much longer than any standard simulation time (t c >> T) It is not efficiency in general to directly model incoherence It is not possible to perform near to far field projections of incoherent results in the near field 4
Coherence Temporal incoherence : The frequency domain monitors of FDTD Solutions calculate the monochromatic response of the system There are some advanced features to directly extract incoherent results where the value of f ~ 1/t c can be specified, see http://docs.lumerical.com/en/fdtd/user_guide_spectral_averaging.html for details : In general, the best approach is to calculate the monochromatic (or CW) response first, then calculate the incoherent result with E( w0 ) W( w) E( w) dw Where W(w) is the spectrum of the physical source used Coherence Temporal incoherence example : Reflection of 50nm of silver on 500nm of silicon CW or monochromatic response 5
Coherence From one simulation, we can calculate the incoherent results at many wavelengths E( w ) W( w) E( w dw 0 ) Coherence Spatial incoherence can be simulated using the ergodic principle + + + Each ensemble consists of dipoles with randomized phase, amplitude, position, orientation and pulse time A large number of ensembles must be averaged : There is a statistical error associated that decreases with increased number of ensembles Typically 50 to 100 simulations is a minimum requirement and more may be required : See Chan, Soljačić, and Joannopoulos, Direct calculation of thermal emission for threedimensionally periodic photonic crystal slabs http://pre.aps.org/abstract/pre/v74/i3/e036615 for discussion It is often erroneously assumed that one simulation is enough : This may or may not be true, but it depends on the details of what is being recorded 6
Coherence Spatial coherence : The same results can be reconstructed from spatially coherent results There is no statistical error The total number of simulations is typically less than is required by ensemble averaging : Example for an ensemble of incoherent dipole emitters Coherence Incoherent sources are dealt with from the coherent results. For example, consider dipoles log( E(w) ) Time domain dipole_coherent.mpg 7
Coherence Incoherent dipoles, simulations log( E 1 + E ) Simulation 1 log( E 1 ) dipole_incoherent1.mpg Simulation log( E ) log( E 1 +E ) dipole_incoherent1.mpg Polarization FDTD simulations have well defined polarization Unpolarized results are obtained by adding the results of orthogonal polarization simulations incoherently ½( E 1 + E ) = < E > unpolarized 8
Dipoles Incoherent, isotropic dipoles require the sum of 3 orthogonal polarization states, summed incoherently E = 1/3 { E E px py E + + pz } The above theory greatly simplifies LED/OLED simulations Coherence We often have to find incoherent results : Temporal incoherence : Spatial incoherence : Unpolarized light : Anisotropic dipole emitters : and more... It is generally most efficient to reconstruct the incoherent results from the coherent results : There is no statistical error : The total number of simulations is typically less than a brute force approach 9
30 Accuracy and convergence testing Dispersion relation in FDTD (in free space) When we have Typical target for accuracy might be Courant stability limit sin 1 sin 1 sin 1 sin 1 z k z y k y x k x t t c z y x w 0 0 0 0 z y x t ck k k k c z y x w 10 ~ 0.3 0 x x k x 3 c x t Accuracy and convergence testing In reality, many factor beyond the mesh size affect the accuracy of FDTD For example : The proximity of the PML : PML reflections : The multi-coefficient model fit How well do you know n,k for your materials? What is the experimental error? Do you expect the same n,k as other authors? : and more... Please read http://docs.lumerical.com/en/fdtd/user_guide_testing_convergence.html for a detailed list and steps on doing convergence testing Do not waste time making the mesh size really small without considering the other factors : And some of them can get worse as the mesh size gets small!
Accuracy and convergence testing With care and computing power, almost any accuracy can be achieved The more important limit for real devices is often how well you know the geometry and the material properties (n,k) Review and tips What mesh size should I use? : mesh accuracy of 1 or for initial setup (faster) : Use mesh accuracy of -4 for final simulations : mesh accuracy 5-8 is almost never necessary Use mesh overrides instead for most applications How long a simulation time should I use? : Start with longer simulations times and let the auto-shutoff feature find out when you can stop the simulation : Check with point time monitors How do I check the memory requirements? 31
Review and tips What are some tricks for speeding up FDTD Solutions, and reducing the memory requirements? Avoid simulating homogeneous regions with no structure : Use far field projections instead Use symmetry where possible : Gain factors of, 4 or 8 Use periodicity where possible : Gain factors of 100s or 1000s Use a coarse mesh (use a refined mesh for final simulations) : Start with mesh accuracy of 1 instead of gives 8 times faster simulation 5 times less memory within 10-0% accuracy in general : User mesh accuracy of -4 for final simulation : Use mesh override regions for local regions of fine mesh Reduce amount of data collected : Down sample monitors spatially : Record fewer frequency points in frequency monitors : Record only the necessary field components Review and tips Questions and answers 3
Getting help Technical Support : Email: support@lumerical.com : Online help: docs.lumerical.com/en/fdtd/knowledge_base.html Many examples, user guide, full text search, getting started, reference guide, installation manuals : Phone: +1-604-733-9006 and press for support Sales information: sales@lumerical.com Find an authorized sales representative for your region: : www.lumerical.com and select Contact Us 33