Download Just solve this: macroscopic Maxwell`s equations

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
Just solve this: macroscopic Maxwell’s equations
∂B
Faraday:
∇ × E = −
∂t
∂D
Ampere:
∇ × H =
+J
∂t
(nonzero
frequency)
constitutive equations (here, linear media):
D = ε ∗E
∇⋅D = ρ
Gauss:
∇⋅B = 0
B = µ ∗H
magnetic permeability
…usually ≈ µ0 at infrared/visible (λ ~ µm)
electric permittivity
εr = ε / ε0 = relative permittivity or dielectric constant
= n2 (square of refractive index if µ = µ0)
ε, µ depend on frequency (dispersion), i.e. * = convolution
…negligible for transparent media in narrow bandwidth
c2 = 1 / ε0 µ0
theorists: often ε0 = µ0 = 1
and/or εr = ε Building Blocks: “Eigenfunctions”
• Want to know what solutions exist in different regions
and how they can interact: look for time-harmonic modes ~ e–iωt
 

1
∂ 
∇ × E = − µ H → iω H
∂t
 

∂   0
∇ × H = ε E + J → −iωε E
∂t


1
2
∇× ∇× H =ω H
ε
eigen-operator
(Hermitian for lossless/real e!)
eigen-value
First task:
get rid of this mess
+ constraint

∇⋅H = 0
“eigen-field”
Periodic Hermitian Eigenproblems
[ G. Floquet, “Sur les équations différentielles linéaries à coefficients périodiques,” Ann. École Norm. Sup. 12, 47–88 (1883). ]
[ F. Bloch, “Über die quantenmechanik der electronen in kristallgittern,” Z. Physik 52, 555–600 (1928). ]
if eigen-operator is periodic, then Bloch-Floquet solutions:
can choose:
 
 

i ( k ⋅ x −ω t ) 
H ( x,t) = e
H k ( x)
planewave
periodic “envelope”
Corollary 1: k is conserved, i.e. no scattering of Bloch wave

Corollary 2: H k given by finite unit cell,
so w are discrete ωn(k)
Solving the Maxwell Eigenproblem
Finite cell è discrete eigenvalues ωn
Want to solve for ωn(k),
& plot vs. “all” k for “all” n, 1
ωn 2
(∇ + ik) × (∇ + ik) × H n = 2 H n
ε
c
constraint:
(∇ + ik ) ⋅ H n = 0
1
0.9
where field =
0.8
0.7
Hn(x) ei(k∙x – ωt)
0.6
0.5
0.4
Photonic Band Gap
0.3
0.2
TM bands
0.1
0
1
Limit range of k: irreducible Brillouin zone
2
Limit degrees of freedom: expand H in finite basis
3
Efficiently solve eigenproblem: iterative methods
Solving the Maxwell Eigenproblem: 1
1
Limit range of k: irreducible Brillouin zone
—Bloch’s theorem: solutions are periodic in k
M
first Brillouin zone
= minimum |k| “primitive cell”
Γ
X
2π
a
ky
kx
irreducible Brillouin zone: reduced by symmetry
2
Limit degrees of freedom: expand H in finite basis
3
Efficiently solve eigenproblem: iterative methods
Solving the Maxwell Eigenproblem: 2a
1
Limit range of k: irreducible Brillouin zone
2
Limit degrees of freedom: expand H in finite basis (N)
N
H = H(xt ) = ∑ hm bm (x t )
2
ˆ
solve:
A H = ω H
m=1
finite matrix problem:
inner product:
f g = ∫ f* ⋅g
3
Ah = ω Bh
2
Galerkin method:
Aml = bm Aˆ bl
Bml = bm bl
Efficiently solve eigenproblem: iterative methods
Solving the Maxwell Eigenproblem: 2b
1
Limit range of k: irreducible Brillouin zone
2
Limit degrees of freedom: expand H in finite basis
— must satisfy constraint:
(∇ + ik) ⋅ H = 0
Planewave (FFT) basis
H(x t ) = ∑ HG e
Finite-element basis
constraint, boundary conditions:
iG⋅xt
Nédélec elements
G
constraint:
H G
⋅ (G + k) = 0
uniform “grid,” periodic boundaries,
simple code, O(N log N)
3
[ Nédélec, Numerische Math.
35, 315 (1980) ]
[ figure: Peyrilloux et al.,
J. Lightwave Tech.
21, 536 (2003) ]
nonuniform mesh,
more arbitrary boundaries,
complex code & mesh, O(N)
Efficiently solve eigenproblem: iterative methods
Solving the Maxwell Eigenproblem: 3a
1
Limit range of k: irreducible Brillouin zone
2
Limit degrees of freedom: expand H in finite basis
3
Efficiently solve eigenproblem: iterative methods
Ah = ω Bh
2
Slow way: compute A & B, ask LAPACK for eigenvalues
— requires O(N2) storage, O(N3) time
Faster way:
— start with initial guess eigenvector h0
— iteratively improve
— O(Np) storage, ~ O(Np2) time for p eigenvectors
(p smallest eigenvalues)
Solving the Maxwell Eigenproblem: 3b
1
Limit range of k: irreducible Brillouin zone
2
Limit degrees of freedom: expand H in finite basis
3
Efficiently solve eigenproblem: iterative methods
Ah = ω Bh
2
Many iterative methods:
— Arnoldi, Lanczos, Davidson, Jacobi-Davidson, …,
Rayleigh-quotient minimization
Solving the Maxwell Eigenproblem: 3c
1
Limit range of k: irreducible Brillouin zone
2
Limit degrees of freedom: expand H in finite basis
3
Efficiently solve eigenproblem: iterative methods
Ah = ω Bh
2
Many iterative methods:
— Arnoldi, Lanczos, Davidson, Jacobi-Davidson, …,
Rayleigh-quotient minimization
for Hermitian matrices, smallest eigenvalue ω0 minimizes:
variational
/ min–max
theorem
*
h
Ah
2
ω 0 = min *
h h Bh
minimize by preconditioned
conjugate-gradient (or…)
Band Diagram of 2d Model System
(radius 0.2a rods, ε=12)
a
/ λ
0.9
frequency ω (2πc/a) = a
1
0.8
0.7
0.6
0.5
0.4
Photonic Band Gap
0.3
0.2
TM bands
0.1
0
irreducible Brillouin zone
M

k
Γ
X
Γ
TM
X
E
H
M
Γ
gap for
n > ~1.75:1
The Iteration Scheme is Important
(minimizing function of 104–108+ variables!)
*
h Ah
ω = min * = f (h)
h h Bh
2
0
Steepest-descent: minimize (h + α ∇f) over α … repeat Conjugate-gradient: minimize (h + α d)
— d is ∇f + (stuff): conjugate to previous search dirs
Preconditioned steepest descent: minimize (h + α d) — d = (approximate A-1) ∇f ~ Newton’s method
Preconditioned conjugate-gradient: minimize (h + α d)
— d is (approximate A-1) [∇f + (stuff)]
The Iteration Scheme is Important
(minimizing function of ~40,000 variables)
1000000
100000
E
10000
E
% error
1000 J
Ñ
100
Ñ
J
10
1
0.1
0.01
0.001
E E E
E EEE
EEEE
EEEEEE
EE
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
Ñ Ñ
J
E
E
E
E
E
E
E
J Ñ
E
E
E
E
E
E
E
Ñ
E
J Ñ
E
E
E
E
E
E
E
E
J ÑÑ
E
E
E
E
E
E
E
J ÑÑ
E
E
E
E
JJ ÑÑÑÑ
E
E
E
E
E
Ñ
E
JJJJJ ÑÑÑ
E
E
Ñ
Ñ
Ñ
E
Ñ
Ñ
Ñ
Ñ
E
Ñ
Ñ
Ñ
JJ
Ñ
Ñ
Ñ
Ñ
Ñ
Ñ
E
Ñ
Ñ
Ñ
Ñ
Ñ
Ñ
E
Ñ
Ñ
Ñ
Ñ
Ñ
E
Ñ
Ñ
JJ
Ñ
Ñ
E
Ñ
Ñ
Ñ
E
Ñ
Ñ
Ñ
Ñ
E
Ñ
Ñ
Ñ
E
Ñ
Ñ
Ñ
Ñ
E
Ñ
Ñ
J
Ñ
E
Ñ
Ñ
E
Ñ
Ñ
Ñ
E
E
Ñ
Ñ
Ñ
E
J
Ñ
E
Ñ
Ñ
E
Ñ
E
Ñ
Ñ
E
Ñ
Ñ
E
E
Ñ
Ñ
E
J
Ñ
E
Ñ
E
Ñ
E
Ñ
E
Ñ
E
Ñ
E
Ñ
Ñ
J
Ñ
Ñ
Ñ
Ñ
Ñ
Ñ
Ñ
J
Ñ
Ñ
Ñ
J
J
J
J
J
no preconditioning
preconditioned
conjugate-gradient
0.0001
0.00001
no conjugate-gradient
0.000001
1
10
100
# iterations
1000
Related documents