Professional Documents
Culture Documents
FrequencyandTimeDomainMethods
StevenG.Johnson
MITAppliedMathematics
Nanophotonicmedia(scale)
strangewaveguides
µcavities
[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)
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
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
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
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
0.3
0.2
TM bands
0.1
0
But,whatcanwedowiththegap?
Intentionaldefectsaregood
microcavities
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
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/