Finite Difference Time Domain (FDTD) Method February 14, 2014.

Slides:



Advertisements
Similar presentations
The Boundary Element Method for atmospheric scattering Problem: how do we calculate the scattering pattern from complex particles (ice aggregates, aerosol...)?
Advertisements

4 th order Embedded Boundary FDTD algorithm for Maxwell Equations Lingling Wu, Stony Brook University Roman Samulyak, BNL Tianshi Lu, BNL Application collaborators:
Sedan Interior Acoustics
Study of propagative and radiative behavior of printed dielectric structures using the finite difference time domain method (FDTD) Università “La Sapienza”,
Lecture 8: Reflection and Transmission of Waves
_______________physics 1.Matter is a____________________ 2.Light is a _________________. particle wave Classical This is "everyday" physics that deals.
1 Spring 2003 Prof. Tim Warburton MA557/MA578/CS557 Lecture 29.
Maxwell’s Equations and Electromagnetic Waves
Modelling techniques and applications Qing Tan EPFL-STI-IMT-OPTLab
EMLAB 1 Numerical Boundary Conditions. EMLAB 2 A Problem at the Boundary of the Grid We must implement the update equations for every point in the grid.
Chapter 11: Electromagnetic Waves
The Improved 3D Matlab_based FDFD Model and Its Application Qiuzhao Dong(NU), Carey Rapapport(NU) (contact: This.
Effects of reflections on TE-wave measurements of electron cloud density Kenneth Hammond Mentors: John Sikora and Kiran Sonnad.
Making the Finite Difference Time Domain computational method better... stronger... faster (at a cost much much less than $6M) Rodolfo E. Díaz Michael.
EMLAB 1 Power Flow and PML Placement in FDTD. EMLAB 2 Lecture Outline Review Total Power by Integrating the Poynting Vector Total Power by Plane Wave.
Finite Difference Time Domain Method (FDTD)
Consortium for Metrology of Semiconductor Nanodefects Mechanical Engineering An Introduction to Computational Electromagnetics using FDTD R. E. Diaz.
Reflection and Refraction of Plane Waves
W13D2: Maxwell’s Equations and Electromagnetic Waves
Implementation of 2D FDTD
Guidelines for the CMM coding project 5 October 2006 (or, “How to make your life easier in the long run”)
Physics 361 Principles of Modern Physics Lecture 8.
Optics of a single Homogeneous and Isotropic Layer
Modeling Plasmonic Effects in the Nanoscale Brendan McNamara, Andrei Nemilentsau and Slava V. Rotkin Department of Physics, Lehigh University Methodology.
Antenna Modeling Using FDTD SURE Program 2004 Clemson University Michael Frye Faculty Advisor: Dr. Anthony Martin.
1 EEE 431 Computational Methods in Electrodynamics Lecture 9 By Dr. Rasime Uyguroglu
Periodic Boundary Conditions in Comsol
Absorption and Emission of Radiation:
Model Task 0A: Programming the 1D upstream scheme ATM 562 Fall 2015 Fovell 1.
ENE 325 Electromagnetic Fields and Waves
The Perfectly Matched Layer (PML)
EMLAB 1 Examples of One ‐ Dimensional FDTD. EMLAB 2 Typical FDTD Grid Layout.
Lecture/Lab: Interaction of light with particles. Mie’s solution.
Enhancing One‐Dimensional FDTD
Chapter 2: Transmission lines and waveguides
Tutorial for XFDTD Written by Cynthia Furse University of Utah.
Surface Plasmon Resonance
So far, we have considered plane waves in an infinite homogeneous medium. A natural question would arise: what happens if a plane wave hits some object?
1 EE 543 Theory and Principles of Remote Sensing Reflection and Refraction from a Planar Interface.
EMLAB 1 3D Update Equations with Perfectly Matched Layers.
Lai-Ching Ma & Raj Mittra Electromagnetic Communication Laboratory
9.0 New Features Planewave Excitation Defined as a Port Workbench 4 High Frequency Electromagnetics.
1 EEE 431 Computational Methods in Electrodynamics Lecture 8 By Dr. Rasime Uyguroglu
Computational Nanophotonics Stephen K. Gray Chemistry Division Argonne National Laboratory Argonne, IL Tel:
Dipole Driving Point Impedance Comparison  Dipole antenna modeled: length = 2m, radius = 0.005m  Frequency range of interest: 25MHz=500MHz  Comparison.
1 EEE 431 Computational Methods in Electrodynamics Lecture 7 By Dr. Rasime Uyguroglu
Hirophysics.com Simulation of the Electromagnetic Fields and its Properties With Free-space and Dielectrics Using the FDTD Method Mark E. Eckman.
Formulation of 2D‐FDTD without a PML.
5. Electromagnetic Optics. 5.1 ELECTROMAGNETIC THEORY OF LIGHT for the 6 components Maxwell Eq. onde Maxwell.
The Finite Difference Time Domain Method FDTD Haythem H. abdullah ERI, Electronics Research Institute, Microwave Engineering Dept.
1 EEE 431 Computational Methods in Electrodynamics Lecture 13 By Dr. Rasime Uyguroglu
Date of download: 9/17/2016 Copyright © 2016 SPIE. All rights reserved. The implementation of the angular spectrum of plane waves method in the finite.
TransAT Tutorial Backward Step May 2015 ASCOMP
Agenda for today Today we will use Lumerical FDTD to simulate the scattering of light from a ‘pit’ used to encode data on a DVD. The size of the pit will.
PHYS 408 Applied Optics (Lecture 7)
FDTD 1D-MAP Plane Wave TFSF Simulation for Lossy and Stratified Media
Plasmonic waveguide filters with nanodisk resonators
ELEC 401 MICROWAVE ELECTRONICS Lecture 3
PLANE WAVE PROPAGATION
ELEC 401 MICROWAVE ELECTRONICS Lecture 3
Prof: Ming Wu GSI: Kevin Han Discussion 1/17/18
EM Waves, & Their Speed Derived from Maxwell’s Equations
Net 222: Communications and networks fundamentals (Practical Part)
§7.2 Maxwell Equations the wave equation
Unit 11 – Modern Physics.
ENE 325 Electromagnetic Fields and Waves
Diyu Yang Mentor: Xu Chen Advisor: José E. Schutt-Ainé Abstract
ENE 428 Microwave Engineering
Modeling Debye Dispersive Media Using Efficient ADI-FDTD Method
Atilla Ozgur Cakmak, PhD
Presentation transcript:

Finite Difference Time Domain (FDTD) Method February 14, 2014

Yee Cell (3-D) Kane Yee (1966) suggested the following cell for evaluating discretized Maxwell Equations:

Yee Cell (2-D)

Finite Difference Equations Maxwell’s Equations are continuous. For all but the simplest geometry, closed form solutions of Maxwell’s Equations are not able to be obtained. We must convert the continuous equations (with infinitesimal differences) to discrete equations with finite differences

Discretize and Conquer Ey(i,j) = Ey(i,j) - (dt/eps_0)*(Hz(i-1,j)-Hz(i,j))*(1/dx) (Hz(i, j)-Hz(i-1, j))*(1/dx) = (eps_0)*(Ey(i,j) now - Ey(i,j) before ) / dt Hz(i,j) = Hz(i,j) – (dt/mu_0)*(Ey(i,j)-Ey(i+1,j) + Ex(i,j+1) - Ex(i,j))*(1/dx) ((Ey(i+1, j)-Ey(i, j)) – (Ex(i, j+1) – Ex(i, j)))*(1/dx) = -(mu_0)*(Hz(i, j) now - Hz(i, j) before )/dt

Convergence When we go from continuous to discrete, does the solution become “incorrect”? If you keep making the spatial step smaller and smaller, eventually the results converge to the correct result – Rule of thumb: make  x equal to 1/100 of the wavelength of the incident light The Courant Condition specifies a value for  t:

Programming I wrote examples of 1-D and 2-D FDTD in Fortran 90, C and Python. Maxim uses Fortran 90 for everything and therefore so should you. – Ask him for the Absoft Fortran 90 editor. If you try to compile and run with this editor it will give you trouble. I suggest using the cluster.

Fortran 90 Variables must be declared (but not initialized) at the very beginning Constants must be declared and initialized at the beginning After variables are declared and constants are declared and initialized, variables must be set Then you can start writing your code. End your code with the word “end”.

Code Example implicit none ! !~~~ Fundamental Constants ~~~! ! double precision, parameter :: pi= D0,c= D0 double precision, parameter :: mu0=4.0D-7*pi,eps0=1.0D0/(c*c*mu0) ! !~~~ Grid, Time Steps, Unit Cells ~~~! ! double precision, parameter :: dx=1.0d-9,dy=1.0d-9 integer, parameter :: Nt=5000 integer, parameter :: Nx=601

! !~~~ Source ~~~! ! integer, parameter :: ms=10 !m position of the incident source double precision, parameter :: E0=1.0D0 !incident pulse peak amplitude double precision pulse(Nt) double precision, parameter :: omega=2.0*pi*2.4180D14*5.00 !laser frequency in eV ! !~~~ Time Step ~~~! ! double precision, parameter :: dt=dx/(2.0D0*c) ! !~~~ Dielectric ~~~! ! double precision eps_r(Nx) double precision, parameter :: eps_rel_dielectric=1.0!4.0 double precision, parameter :: eps_rel_vacuum=1.0 integer, parameter :: xnd = 300 !Grid point where dielectric starts

! !~~~ EM field components ~~~! ! double precision Ex(Nx),Hz(Nx-1) ! !~~~ Boundary condition ~~~! ! double precision ex_low_m2 double precision ex_low_m1 double precision ex_high_m2 double precision ex_high_m1 ! !~~~ Other parameters and variables ~~~! ! integer n,i double precision t double precision, parameter :: dt_eps0=dt/eps0,dt_mu0=dt/mu0

! !~~~ Fire off the source ~~~! ! !Sinewave do n=1,Nt t=dt*n pulse(n)=E0*SIN(omega*t) enddo ! !~~~ Structure ~~~! ! do i=1,Nx if((i<xnd)) then eps_r(i)=eps_rel_vacuum else eps_r(i)=eps_rel_dielectric endif enddo

! !~~~ Initialize remaining variables ~~~! ! Ex=0.0 Hz=0.0 ex_low_m2=0.0 ex_low_m1=0.0 ex_high_m2=0.0 ex_high_m1=0.0 do n=1,Nt

!Hz Update do i=1,Nx-1 Hz(i)=Hz(i)-dt_mu0*(Ex(i+1)-Ex(i))/dx enddo !Ex Update do i=2,Nx-1 if(i==ms) then !Excitation Ex(i)=Ex(i)-(1/eps_r(i))*dt_eps0*(Hz(i)-Hz(i-1))/dx+ & pulse(n) else Ex(i)=Ex(i)-(1/eps_r(i))*dt_eps0*(Hz(i)-Hz(i-1))/dx endif enddo

! Inc Boundary Condition Ex(1) = ex_low_m2 ex_low_m2 = ex_low_m1 ex_low_m1 = Ex(2) Ex(Nx) = ex_high_m2 ex_high_m2 = ex_high_m1 ex_high_m1 = Ex(Nx-1) enddo !Nt

!Record Ex OPEN(file='Ex.dat',unit=32) do i=1,Nx write(32,*) Ex(i) enddo CLOSE(unit=32) end Import into Matlab and type Plot(Ex):

Results As one is learning FDTD, it is helpful to plot electric field over the entire grid

Results Graphs of the T and R coefficients (obtained from the Poynting vector) are measured in experiments

Next Steps Look at a single-processor 2-D code with a dielectric cylinder (ask me or Maxim for it) The absorbing boundary conditions (ABC’s) are implemented via convolutional perfectly matched layers (CPML) – It’s there and it works. In general, there’s no need to mess with it.

Later On The best metals for SPP’s are silver and gold – Metal is represented by the Drude Model The interaction of the two-level emitters with the classical EM field is handled by the Liouville-von Neumann equation Longer simulations benefit from message passing interface (MPI); the simulation is split up between several processors – Ask me or Maxim for the MPI slits code Rather than using point sources, we can define a Total Field / Scattered Field boundary to introduce a plane wave into the system