You are on page 1of 69

ComputationalPhotonics:

FrequencyandTimeDomainMethods
StevenG.Johnson
MITAppliedMathematics

Nanophotonicmedia(scale)
strangewaveguides
&microcavities
[Assefa&Kolodziejski,
MIT]

[B.Norris,UMN]

3d
structures

[Mangan,
Corning]

syntheticmaterials

hollowcorefibers

opticalphenomena

PhotonicCrystals
periodicelectromagneticmedia
1887

1-D

periodic in
one direction

1987

2-D

3-D

periodic in
two directions

periodic in
three directions

canhaveabandgap:opticalinsulators

ElectronicandPhotonicCrystals
dielectricspheres,diamondlattice

photonfrequency

electronenergy

Blochwaves:
BandDiagram

Periodic
Medium

atomsindiamondstructure

wavevector

wavevector

Electronic&PhotonicModeling
Electronic
stronglyinteracting
entanglement,Coulomb
trickyapproximations
lengthscaledependent
(fromPlancksh)

Photonic
noninteracting(orweakly),
simpleapproximations
(finiteresolution)
anydesiredaccuracy

scaleinvariant
e.g.size1010
(exceptmaterialsmaychange)

ComputationalPhotonicsProblems
Timedomainsimulation
startwithcurrentJ(x,t)
runnumericalexperimenttosimulateE(x,t),H(x,t)
Frequencydomainlinearresponse
startwithharmoniccurrentJ(x,t)=eitJ(x)
solveforsteadystateharmonicfieldsE(x),H(x)
involvessolvinglinearequationAx=b
Frequencydomaineigensolver
solveforsourcefreeharmoniceigenfields
E(x),H(x)~eit
involvessolvingeigenequationAx=2x

NumericalMethods:BasisChoices
finitedifference

finiteelements
inirregularelements,
approximateunknowns
bylowdegreepolynomial

discretize
unknowns
onregulargrid
df
f ( x + x) f ( x x)

+ O(x 2 )
dx
x

boundaryelementmethods
discretizeonlythe
boundariesbetween
homogeneousmedia

spectralmethods
completebasisof
smoothfunctions
(e.g.Fourierseries)

+
+

+..

solve
integralequation
viaGreensfunctions

NumericalMethods:BasisChoices
finitedifference

finiteelements
inirregularelements,
approximateunknowns
bylowdegreepolynomial

discretize
unknowns
onregulargrid

spectralmethods
completebasisof
smoothfunctions
(e.g.Fourierseries)

+
+
+..

Mucheasiertoanalyze,implement,
generalize,parallelize,optimize,

boundaryelementmethods
discretizeonlythe
boundariesbetween
homogeneousmedia
solve
integralequation
viaGreensfunctions

Potentiallymuchmoreefficient,
especiallyforhighresolution

ComputationalPhotonicsProblemsNumericalMethods:BasisChoices
finitedifference
Timedomainsimulation
startwithcurrentJ(x,t)
runnumericalexperimentto
simulateE(x,t),H(x,t)
Frequencydomainlinearresponse
startwithharmoniccurrentJ(x,t)=eitJ(x)

solveforsteadystateharmonicfieldsE(x),H(x)
involvessolvinglinearequationAx=b

spectralmethods
df
f ( x + x) f ( x x)

+ O(x 2 )
dx
x

+
+
+..

finiteelements
inirregularelements,
approximateunknowns
bylowdegreepolynomial

Frequencydomaineigensolver
solveforsourcefreeharmoniceigenfields
E(x),H(x)~eit
involvessolvingeigenequationAx=2x

boundaryelementmethods
discretizeonlythe
boundariesbetween
homogeneousmedia

FDTD

FiniteDifferenceTimeDomainmethods
Dividebothspaceandtimeintodiscretegrids
spatialresolutionx
temporalresolutiont
Verygeneral:arbitrarygeometries,materials,
nonlinearities,dispersion,sources,
anyphotonicscalculation,inprinciple

H
1 r
= E
t

E 1 r
J
= H
t

dielectricfunction

(x)=n2(x)

TheYeeDiscretization(1966)
acubicvoxel:xyz

(i, j+1)

(i+1, j+1, k+1)

Hz

Ey

(i, j, k+1)

Ez

Hx

Hy

(i, j)

(i+1, j+1, k)

Hz

Ex

(i+1, j)

Ey
(i, j, k)

Ex

(i+1, j, k)

Staggeredgridinspace:

everyfieldcomponentisstoredonadifferentgrid

TheYeeDiscretization(1966)
H
1
= E L
t

H z
t

1
1
i+ , j +
2
2

1
=

E
y E
x
y
x

(i, j+1)

Ey

(i, j)

Hz

Ex

(i+1, j)

1
1
1
1
E (i +1, j + ) Ey (i, j + ) Ex (i + , j +1) Ex (i + , j)
1 y
2
2
2
2


x
y

+O(x2)+O(y2)

allderivativesbecomecenterdifferences

TheYeeDiscretization(1966)
allderivativesbecomecenterdifferences

includingderivativesintime

H
t

t= nt

1
= E

t= nt

1
1
H(n + ) H(n )
2
2

t
+O(t2)

Explicittimestepping:
stabilityrequires t <

x
# dimensions

(vs.implicittimesteps:invertlargematrixateachstep)

FDTDDiscretizationUpshot
Forstability,spaceandtimeresolutionsareproportional
doublingresolutionin3drequires
atleast16=24timesthework!
Butatleasttheerrorgoesquadraticallywithresolution
right?
notnecessarily!

Difficultywithagrid:

representingdiscontinuousmaterials?

staircasing

howdoesthisaffectaccuracy?

FieldDiscontinuityDegrades
OrderofAccuracy
E

TEpolarization(Einplane:discontinuous)
a
QuickTime and a
TIFF (Uncompressed) decompressor
are needed to see this picture.

Subpixelsmoothing
Caneliminate
discontinuity
bygrayscaling
assignsomeaverage
toeachpixel

=discretizingasmoothedstructure
thatmeanswearechanginggeometry

canactuallyaddtoerror

Pastsubpixelsmoothingmethods
canmakeerrorworse!
Threeprevioussmoothingmethods

&convergenceis
stillonlylinear

QuickTime and a
TIFF (Uncompressed) decompressor
are needed to see this picture.

[Dey,1999]
[Kaneda,1997]
[Mohammadi,2005]

ACriterionforAccurateSmoothing
1stordererrors
from
smoothing

1
2
2
~
E|| ( ) D

Wewantthesmoothingerrorstobezeroto1storder
minimizeserrorand2ndorderconvergent!

Useatensor

(inprincipalaxes:)

[Meadeetal.,1993]

E||

1
E

ConsistentlytheLowestError
a

quadratic!

quadraticaccuracy!
a

[Farjadpouretal.,Opt.Lett.2006]

QuickTime and a
TIFF (Uncompressed) decompressor
are needed to see this picture.

Aqualitativelydifferentcase:corners
still~lowesterror,butnotquadratic
QuickTime and a
TIFF (Uncompres s ed) decompres s or
are needed to s ee this picture.

zeroperturbation
criterion
notsatisfied
duetoEdivergence
atcorner
analytically,
error~x1.404

Yes,butwhatcanyoudowithFDTD?
Somecommontasks:
Frequencydomainresponse:
putinharmonicsourceandwaitforsteadystate
Transmission/reflectionspectra:
getentirespectrumfromasinglesimulation
(Fouriertransformofimpulseresponse)
Eigenmodesandresonantmodes:
getallmodesfromasinglesimulation
(sometrickysignalprocessing)

TransmissionSpectrainFDTD
=1
a

=12

example:a90bend,2dstripwaveguide

transmittedpower=energyfluxhere:

TransmissionSpectrainFDTD
=1
a

=12

Gaussianpulse
currentsourceJ
Fouriertransformthefieldsateachx:

E =

E(t)e

it

dt E(nt)e
n

1
P() =
2

Re[E

H ]dx

int

TransmissionSpectrainFDTD
mustalwaysdotwosimulations:onefornormalization

P0()

electric
fieldEz:
QuickTime and a
YUV420 codec decompressor
are needed to see this picture.

P()

QuickTime and a
YUV420 codec decompressor
are needed to see this picture.

transmission=P()/P
0()

ReflectionSpectrainFDTD
=1
=12

1
PR () =
2

Re[(E E0 )* (H H 0 )]dx

forreflection,subtractincidentfields
(fromnormalizationrun)

1
P() =
2

Re[E

H ]dx

Transmission/ReflectionSpectra
Graphics
are
QuickTime
needed
decompressor
toand
seeathis picture.

0.9

=1

0.8

=12

0.7
0.6
0.5

1TR

0.4
0.3
0.2
0.1
0
0.1

R
0.11

0.12 0.13 0.14 0.15 0.16

0.17 0.18 0.19

a/2c=a/

0.2

DimensionlessUnits
Maxwellsequationsarescaleinvariant

mostusefulquantitiesaredimensionlessratios
likea/,foracharacteristiclengthscalea
sameratio,same,=samesolution
regardlessofwhethera=1mor1km

Our(typical)approach:

pickcharacteristiclengthscalea
measuredistanceinunitsofa
measuretimeinunitsofa/c
measureinunitsof2c/a=a/
....

AbsorbingBoundaries:

PerfectlyMatchedLayers
perfectabsorber:PML

Artificialabsorbingmaterial
overlappingthecomputation
Theoreticallyreflectionless
butPMLisnolongerperfect
withfiniteresolution,
sograduallyturnonabsorption
overfinitethicknessPML

ComputationalPhotonicsProblemsNumericalMethods:BasisChoices
finitedifference
Timedomainsimulation
startwithcurrentJ(x,t)
runnumericalexperimentto
simulateE(x,t),H(x,t)
Frequencydomainlinearresponse
startwithharmoniccurrentJ(x,t)=eitJ(x)

solveforsteadystateharmonicfieldsE(x),H(x)
involvessolvinglinearequationAx=b

spectralmethods
df
f ( x + x) f ( x x)

+ O(x 2 )
dx
x

+
+
+..

finiteelements
inirregularelements,
approximateunknowns
bylowdegreepolynomial

Frequencydomaineigensolver
solveforsourcefreeharmoniceigenfields
E(x),H(x)~eit
involvessolvingeigenequationAx=2x

boundaryelementmethods
discretizeonlythe
boundariesbetween
homogeneousmedia

AMaxwellEigenproblem
1 r r
E=
H= i H
c t
c
r r 1 r r 0 r
H=
E+ J= i E
c t
c

Firsttask:

getridofthismess

dielectricfunction(x)=n2(x)

2 r
r

1
H = H
c

eigenoperator

eigenvalue

+constraint

r
H =0

eigenstate

Electronic&PhotonicEigenproblems
Electronic

2 2

+ V = E

2m

nonlineareigenproblem

(Vdependsonedensity||2)

Photonic

2 r
r

1
H = H
c

simplelineareigenproblem
(forlinearmaterials)

manywellknown
computationaltechniques
Hermitian=realE&,Periodicity=Blochstheorem

A2dModelSystem
dielectricatom
=12(e.g.Si)

squarelattice,
perioda

a
a

TM

E
H

PeriodicEigenproblems
ifeigenoperatorisperiodic,thenBlochFloquettheoremapplies:
canchoose:

r r
r r
i ( kxt ) r
r
H(x,t) =e
Hkr (x)

planewave

periodicenvelope

Corollary1:kisconserved,i.e.noscatteringofBlochwave
r
Hrk
Corollary2:givenbyfiniteunitcell,
soarediscreten(k)

AMoreFamiliarEigenproblem
=1

=12

x
findthenormalmodes
ofthewaveguide:

H(y,t) = H k (y)e

banddiagram/dispersionrelation
lightcone
(allnonguidedmodes)

i(kxt )

(propagationconstantk
a.k.a.)

SolvingtheMaxwellEigenproblem
1
n

ik

+
ik

H
=
Hn
(
)
(
)
n
2

c
2

Finitecelldiscreteeigenvaluesn

Wanttosolveforn(k),
&plotvs.allkforalln,

constraint:

Graphics
are
QuickTime
needed
decompressor
toand
seeathis picture.

0.9
0.8
0.7

where:

( ik) H = 0
H(x,y)ei(kxt)

0.6
0.5
0.4

Photonic Band Gap

0.3
0.2

TM bands

0.1

Limitrangeofk:irreducibleBrillouinzone

Limitdegreesoffreedom:expandHinfinitebasis

Efficientlysolveeigenproblem:iterativemethods

SolvingtheMaxwellEigenproblem:1
1

Limitrangeofk:irreducibleBrillouinzone
Blochstheorem:solutionsareperiodicink
M

firstBrillouinzone
=minimum|k|primitivecell

2
a

ky
kx

irreducibleBrillouinzone:reducedbysymmetry
2

Limitdegreesoffreedom:expandHinfinitebasis

Efficientlysolveeigenproblem:iterativemethods

SolvingtheMaxwellEigenproblem:2a
1

Limitrangeofk:irreducibleBrillouinzone

Limitdegreesoffreedom:expandHinfinitebasis(N)
N

H =H(xt ) = hmbm(xt )

solve: A H = H

m=1

finitematrixproblem:

f g =f* g
3

Ah= Bh

Aml = bm A bl

Bml = bm bl

Efficientlysolveeigenproblem:iterativemethods

SolvingtheMaxwellEigenproblem:2b
1

Limitrangeofk:irreducibleBrillouinzone

Limitdegreesoffreedom:expandHinfinitebasis
mustsatisfyconstraint: ( + ik) H = 0

Planewave(FFT)basis

H(xt ) = HGe

iGxt

Finiteelementbasis
constraint,boundaryconditions:

Ndlecelements

constraint:

H G (G + k) = 0

uniformgrid,periodicboundaries,
simplecode,O(NlogN)

[Ndlec,NumerischeMath.
35,315(1980)]

[figure:Peyrillouxetal.,
J.LightwaveTech.
21,536(2003)]

nonuniformmesh,
morearbitraryboundaries,
complexcode&mesh,O(N)

Efficientlysolveeigenproblem:iterativemethods

SolvingtheMaxwellEigenproblem:3a
1

Limitrangeofk:irreducibleBrillouinzone

Limitdegreesoffreedom:expandHinfinitebasis

Efficientlysolveeigenproblem:iterativemethods
2

Ah= Bh
Slowway:computeA&B,askLAPACKforeigenvalues
requiresO(N2)storage,O(N3)time
Fasterway:
startwithinitialguesseigenvectorh0
iterativelyimprove
O(Np)storage,~O(Np2)timeforpeigenvectors

(psmallesteigenvalues)

SolvingtheMaxwellEigenproblem:3b
1

Limitrangeofk:irreducibleBrillouinzone

Limitdegreesoffreedom:expandHinfinitebasis

Efficientlysolveeigenproblem:iterativemethods
2

Ah= Bh
Manyiterativemethods:
Arnoldi,Lanczos,Davidson,JacobiDavidson,,
Rayleighquotientminimization

SolvingtheMaxwellEigenproblem:3c
1

Limitrangeofk:irreducibleBrillouinzone

Limitdegreesoffreedom:expandHinfinitebasis

Efficientlysolveeigenproblem:iterativemethods
2

Ah= Bh
Manyiterativemethods:
Arnoldi,Lanczos,Davidson,JacobiDavidson,,
Rayleighquotientminimization
forHermitianmatrices,smallesteigenvalue0minimizes:
variational
theorem

h' Ah
=min
h h' Bh

2
0

minimizebypreconditioned
conjugategradient
(or)

BandDiagramof2dModelSystem
Graphics
are
QuickTime
needed
decompressor
toand
seeathis picture.

(radius0.2arods,=12)

frequency(2c/a)=a/

1
0.9
0.8
0.7
0.6
0.5
0.4

Photonic Band Gap

0.3
0.2

TM bands

0.1
0

irreducibleBrillouinzone
M

r
k

TM

E
H

gapfor
n>~1.75:1

TheIterationSchemeisImportant
(minimizingfunctionof104108+variables!)

h' Ah
= min
= f (h)
h h' Bh
2
0

Steepestdescent:minimize(h+f)overrepeat
Conjugategradient:minimize(h+d)
disf+(stuff):conjugatetoprevioussearchdirs
Preconditionedsteepestdescent:minimize(h+d)
d=(approximateA1)f~Newtonsmethod
Preconditionedconjugategradient:minimize(h+d)
1
dis(approximateA
)[f+(stuff)]

TheIterationSchemeisImportant
Graphics
are
QuickTime
needed
decompressor
toand
seeathis picture.

(minimizingfunctionof~40,000variables)

1000000
100000
10000
1000 J

%error

100

10
1
0.1
0.01

E E E
EEE

preconditioned
conjugategradient

0.0001
0.00001
0.000001

nopreconditioning

EEEE
EEEEEE
EEEEEEEE
J
EEEEEEEEEEEEEEEEEEEEEE
J
EEE
J
EEEEEEE
J
EEEEEEE
EEEEE
J

EEEEEEE
J J
EEEEEEE
J J J J J
EEEEEE

JJ

EEEEEEE

JJ

EEEEEEE

EEEEE

EEEEEE

EEEE

EEEE

EEEE

EE

EEE

EEEE

EE
J

EE

EE
EE
J
EEE
EEE
J
EEEEE
J
E
J
J

0.001

noconjugategradient

10

100

#iterations

1000

TheBoundaryConditionsareTricky
E||iscontinuous
Eisdiscontinuous
(D=Eiscontinuous)

Anysinglescalarfails:
(meanD)(any)(meanE)
Useatensor

E
||
1
E

TheaveragingisImportant

Graphics
are
QuickTime
needed
decompressor
toand
seeathis picture.

100

10

backwardsaveraging
H

%error

J
J

J B

0.1

B
B
J

B
B
B
J

tensoraveraging

correctaveraging
H H
changesorder
B noaveraging
B
ofconvergence
B
B
B
J
fromxtox2
H

J
J

0.01
10

resolution(pixels/period)

100

(similareffects
inotherE&M
numerics&analyses)

Gap,Schmap?

Graphics
are
QuickTime
needed
decompressor
toand
seeathis picture.

0.9

frequency

0.8
0.7
0.6
0.5
0.4

Photonic Band Gap

0.3
0.2

TM bands

0.1
0

But,whatcanwedowiththegap?

Intentionaldefectsaregood
microcavities

3D Photonic C rystal with Defects

waveguides(wires)

Intentionaldefectsin2d
Graphics
are
QuickTime
needed
decompressor
toand
seeathis picture.

(Samecomputation,withsupercell=manyprimitivecells)

Graphics
are
QuickTime
needed
decompressor
toand
seeathis picture.

MicrocavityBlues
Forcavities(pointdefects)
frequencydomainhasitsdrawbacks:
Bestmethodscomputelowestbands,
butNdsupercellshaveNdmodes
belowthecavitymodeexpensive
BestmethodsareforHermitianoperators,
butlossesrequiresnonHermitian

TimeDomainEigensolvers
(finitedifferencetimedomain=FDTD)

SimulateMaxwellsequationsonadiscretegrid,
+absorbingboundaries(leakageloss)
Excitewithbroadspectrumdipole()source

Responseismany
sharppeaks,
onepeakpermode

signalprocessing
complexn

[Mandelshtam,
J.Chem.Phys.107,6756(1997)]

decayrateintimegivesloss

SignalProcessingisTricky
signalprocessing
complexn

acommonapproach:leastsquaresfitofspectrum

Graphics
are
QuickTime
needed
decompressor
toand
seeathis picture.
0.8

Graphics
are
QuickTime
needed
decompressor
toand
seeathis picture.
450

0.6

E
E
EE

400

0.4

EE

350

0.2

-0.2
-0.4
-0.6
-0.8
-1

fitto:

E
E
EE
E
EE
E E
EE
EE
E E
EE
E
EE
E
EE
EE
EE
EE
EE
EE
EE
EE
EE
EE
E
EE
E E E E
E E
EE
EE
EE
EE
EE
EE
EE
EE
EE
EE
EE
EE
E
EE
EE
EE
EE
EE
EE
E
EE
EE
EE
EE
EE
EE
E
EE
EE
EE
EE
EE
EE
EE
E
EE
EE
EE
EE
EE
EE
E
EE
EE
EE
EE
EE
EE
EE
E
EE
EE
EE
E
E
EE
EE
EE
EE
EE
E
EE
EE
E E
EE
E E
E
EE
EE
E
E
EE
EE
EE

300

A
( 0 ) 2 + 2

E E

250

FFT

200
E

150

100

50
E
E

Decayingsignal(t)

10

EE

EE

0.5

EE

1.5

E E EE

EE E EE EE E EE EE E EE EE E E

2.5

3.5

Lorentzianpeak()

FitsandUncertainty
Graphics
are
QuickTime
needed
decompressor
toand
seeathis picture.
problem:havetorunlongenoughtocompletelydecay

Graphics
are
QuickTime
needed
decompressor
toand
seeathis picture.
1

40000

E
EE

0.8

E
EE

EE

0.6

EE

EE

0.4
E E

0.2
0

-0.2
E

-0.4
-0.6

-0.8

-1

E
E

E
EE
EE

EE

E E
EE
EE
EE
E

E E
E E
EE
EE
E

E E

E E

E E

E E

E E

E E

E E
EE
EE
E
EE

EE
E
EE

E E

EE

E E

EE
E
EE

EE
E
EE
EE

EE

E E

35000

EE
E
EE

E E

E E

EE

EE

EE
E
EE

EE
E
EE

EE
E
EE
EE

EE
E
EE
EE

25000

E E
E

20000

E
E
E
E

15000

E E

E E

EE

EE
EE
E
EE

E E
EE
EEE

EE
E
EE

30000
EE
E
EE
EE
E E

E E

actual

E E
EE
EE
EE
E

10000

signal
portion

5000

Portionofdecayingsignal(t)

10

0 E

0.5 0.6 0.7 0.8 0.9

1.1 1.2 1.3 1.4 1.5

UnresolvedLorentzianpeak()

Thereisabetterway,whichgetscomplexto>10digits

UnreliabilityofFittingProcess

Resolvingtwooverlappingpeaksis
Graphics
are
QuickTime
needed
decompressor
toand
seeathis picture.
nearimpossible6parameternonlinearfit
(toomanylocalminimatoconvergereliably)

1200

1000

800

sumoftwopeaks
Thereisabetter
way,whichgets
complex
forbothpeaks
to>10digits

600

=1+0.033i

400

200

E
E
EEE
E E E EE E E E E EE E E E

0.5

0.6

0.7

0.8

0.9

=1.03+0.025i

1.1

EE
E EE
E E E E EE E E E E EE E E

1.2

1.3

1.4

SumoftwoLorentzianpeaks()

1.5

Quantuminspiredsignalprocessing(NMRspectroscopy):

FilterDiagonalizationMethod(FDM)
[Mandelshtam,J.Chem.Phys.107,6756(1997)]

Giventimeseriesyn,write:

y n = y(nt) = ak e

i k nt

findcomplexamplitudesak&frequenciesk
byasimplelinearalgebraproblem!
Idea:pretendy(t)isautocorrelationofaquantumsystem:

t / h
iH

H = ih
timetevolutionoperator: U= e
t
say:

n (0)
y n = (0) (nt) = (0) U

FilterDiagonalizationMethod(FDM)
[Mandelshtam,J.Chem.Phys.107,6756(1997)]
n (0)
y n = (0) (nt) = (0) U

t / h
iH

U= e

WewanttodiagonalizeU:eigenvaluesofUareeit

expandUinbasisof|(nt)>:
(nt) = (0) U
mU
U
n (0) = y
U m,n = (mt) U
m +n +1

Umngivenbyy
nsjustdiagonalizeknownmatrix!

FilterDiagonalizationSummary
[Mandelshtam,J.Chem.Phys.107,6756(1997)]
Umngivenbyynsjustdiagonalizeknownmatrix!
Afewomittedsteps:
Generalizedeigenvalueproblem(basisnotorthogonal)
Filteryns(Fouriertransform):
smallbandwidth=smallermatrix(lesssingular)

resolvesmanypeaksatonce
#peaksnotknownapriori
resolveoverlappingpeaks
resolution>>Fourieruncertainty

Dotrythisathome
FDTDsimulation:
http://abinitio.mit.edu/meep/
Blochmodeeigensolver:
http://abinitio.mit.edu/mpb/
Filterdiagonalization:
http://abinitio.mit.edu/harminv/
Photoniccrystaltutorials(+THISTALK):
http://abinitio.mit.edu/
/photons/tutorial/

Meep(FDTD)MPB(Eigensolver)
Arbitrary(x)including
dispersive,loss/gain,
andnonlinear[(2)and(3)]
ArbitraryJ(x,t)
PML/periodic/metalbound.
1d/2d/3d/cylindrical
powerspectraeigenmodes
Free/opensource
software(GNU)
MPIparallelism
exploitmirrorsymmetries

Arbitraryperiodic(x)
anisotropic,magnetooptic,
(lossless,linearmaterials)
1d/2d/3d
banddiagrams,groupvelocities
perturbationtheory,
fullyscriptableinterface
builtinmultivariateoptimization,
integration,rootfinding,
fieldoutput(standardHDF5format)

UnixPhilosophy

combinesmall,welldesignedtools,viafiles
Inputtextfile

MPB/Meep

standardformats
(text+HDF5)

Disadvantage:
havetolearnseveralprograms
Advantages:
flexibility
batchprocessing,shellscripting
easeofdevelopment

Visualization/Analysis
software
(Matlab,Mayavi[vtk],
commandlinetools,)

UnixPhilosophy

combinesmall,welldesignedtools,viafiles
Inputtextfile

MPB/Meep

GNUGuilescriptinginterpreter
(Schemelanguage)
Embedafullscriptinglanguage:
parametersweeps
complexparameterizedgeometries
optimization,integration,etc.
programmableJ(x,t),etc.
Turingcomplete

standardformats
(text+HDF5)

Visualization/Analysis
software
(Matlab,Mayavi[vtk],
commandlinetools,)

ASimpleExample(MPB)
=1
=12

findthenormalmodesn(k)
ofthewaveguide:
i(kxt )
H(y,t) = H k (y)e

Needtospecify:

computationalcellsize/resolution
geometry,i.e.(y)
whatkvalues
howmanymodes(n=1,2,?)

y
x

AFileFormatMadeofParentheses

Needtospecify:

computationalcellsize/resolution
(set!geometrylattice(makelattice(sizenosize10nosize)
(set!resolution32)

geometry,i.e.(y)
whatkvalues
howmanymodes(n=1,2,?)

1pixel

10(320pixels)

=1
=12

y
x

AFileFormatMadeofParentheses
Needtospecify:

computationalcellsize/resolution
geometry,i.e.(y)

(chooseunitsofa)
(set!geometry
(list
(makeblock(sizeinfinity1infinity)
(center000)
(material(makedielectric(epsilon12))))))
whatkvalues
howmanymodes(n=1,2,?)
=1

=12

AFileFormatMadeofParentheses
Needtospecify:

computationalcellsize/resolution
geometry,i.e.(y)
(unitsof2/a)
whatkvalues
(set!kpoints
(interpolate10(list(vector3000)(vector3200))))

(builtinfunction)

howmanymodes(n=1,2,?)
=1

=12

AFileFormatMadeofParentheses
Needtospecify:

computationalcellsize/resolution
geometry,i.e.(y)
whatkvalues
howmanymodes(n=1,2,?)
(set!numbands5)

Thenrun:
(run)

oronlyTMpolarization:
(runtm)

oronlyTM,evenmodes:
(runtmyeven)

=1

=12

SimpleExample(MPB)Results
=1

=12

findthenormalmodesn(k)
ofthewaveguide:

red=even
blue=odd

Dotrythisathome
FDTDsimulation:
http://abinitio.mit.edu/meep/
Blochmodeeigensolver:
http://abinitio.mit.edu/mpb/
Filterdiagonalization:
http://abinitio.mit.edu/harminv/
Photoniccrystaltutorials(+THISTALK):
http://abinitio.mit.edu/
/photons/tutorial/

You might also like