Fourier Modal Method (FMM) - uni-jena.de · Computational Photonics, Summer Term 2014, Abbe School...
Transcript of Fourier Modal Method (FMM) - uni-jena.de · Computational Photonics, Summer Term 2014, Abbe School...
Computational Photonics, Summer Term 2014, Abbe School of Photonics, FSU Jena, Prof. Thomas Pertsch
1
Computational Photonics
Fourier Modal Method (FMM)
Seminar 07, 30 June 2014
• Learn how to implement a 1D version of the Fourier
Mode solver in TE polarization
• Extend the code to calculate the diffraction efficiencies
in reflection and transmission
• (voluntary) learn about stability issues of the transfer
matrix algorithm
Computational Photonics, Summer Term 2014, Abbe School of Photonics, FSU Jena, Prof. Thomas Pertsch
FMM fundamentals
2
• aims:
• solving for the Bloch eigenmodes in the grating region
• solving for the diffraction efficiencies in reflection / transmission
Computational Photonics, Summer Term 2014, Abbe School of Photonics, FSU Jena, Prof. Thomas Pertsch
FMM: eigenmodes of the grating layer
3
• 1D, TE polarization
• Maxwell’s equations in periodic domain Bloch theorem
• all quantities are expanded into Fourier series on the periodic basis
• all Fourier components are stored in a column vector
• this yields an algebraic eigenvalue problem for the propagation constant
• decoupling electric and magnetic field results in a smaller problem for the
square of the propagation constant:
Computational Photonics, Summer Term 2014, Abbe School of Photonics, FSU Jena, Prof. Thomas Pertsch
FMM: eigenmodes of the grating layer
4
• is a diagonal matrix with the square of the transverse wavevector
components, is a so-called Toeplitz matrix with the coefficients .
• The eigenvectors are the Fourier components of the electric field of
forward modes. All components of all modes are stored in a matrix .
Upper index mode number, lower index Fourier component.
• The normalized H field is given from Maxwell’s equations:
Computational Photonics, Summer Term 2014, Abbe School of Photonics, FSU Jena, Prof. Thomas Pertsch
Task 1: Fourier eigenmodes
5
• write a program that calculates the propagation constants for a grating:
• Test it for the following grating structure:
[beta] = FMM_1D_TE(epsilon, period, lambda, theta, refIndices, N)
%
% INPUT:
% <epsilon>: vector with permitivity distribution
% <period>: period of the grating in micron
% <lambda>: wavelength in micron
% <theta>: angle of incidence in degree
% <refIndices>: vector [n1 n2] with refr.indices of surrounding
% <N>: number of Fourier orders
%
% OUTPUT:
% <beta>: vector with propagation constants of grating modes
Computational Photonics, Summer Term 2014, Abbe School of Photonics, FSU Jena, Prof. Thomas Pertsch
Programming hints 1: eigenmodes
6
• for Fourier expanding the permitivity, make use of the relation eps_m = fft(epsilon) / M
where M = length(epsilon)
• note that MATLAB stores the Fourier coefficients in an order that will
appear unusual to you: first positive, then negative frequencies:
• As long as M>2N+1, you do not have to deal with the somewhat delicate
task to get straight about this ordering, just pick up the right components
for the Toeplitz matrix (first (2N+1) and last (2N) elements). Resist to use fftshift(), fft(epsilon, N) or similar unless you know what
you are doing!
• Thus, choose a sufficiently large sampling for the permitivity, say M=1001
(odd M Fourier truncation converges better)
• If you are interested in FFT details, you can have a look into the
FFT primer in the supplementary materials
• for the construction of the matrix, you can use the MATLAB function toeplitz()
Computational Photonics, Summer Term 2014, Abbe School of Photonics, FSU Jena, Prof. Thomas Pertsch
FMM: calculating diffraction efficiencies
7
• what remains is to calculate the reflection / transmission amplitudes of the
different Rayleigh modes (plane waves) in the surrounding media
• therefore, we follow this idea:
• these modal amplitudes can be linked by transfer matrices for
forward/backward modal amplitudes:
express fields in
homogeneous
regions as
Rayleigh mode
expansion
express fields in
grating region as
eigenmode
expansion in Fourier
basis
Boundary
conditions yield
system of
equations for
modal coefficients
Solve for
reflected and
transmitted
amplitudes
grating region medium 2 medium 1
incident wave
(only zero Fourier
order non-zero)
reflected Fourier
orders Rm
transmitted
Fourier orders Tm
vector with zeros
(no incident wave
from behind)
Computational Photonics, Summer Term 2014, Abbe School of Photonics, FSU Jena, Prof. Thomas Pertsch
FMM: calculating diffraction efficiencies
8
• now express fields as modal superposition:
• medium 1:
• medium 2:
• grating region:
propagator:
Computational Photonics, Summer Term 2014, Abbe School of Photonics, FSU Jena, Prof. Thomas Pertsch
FMM: calculating diffraction efficiencies
9
• Maxwell boundary conditions demand continuity at the two interfaces
• this allows to eliminate all modal amplitudes in the grating region
• what remains is the transfer matrix of the grating that links only the
quantities of interest:
• we are now ready to solve for the unknown amplitudes of the different
diffraction orders in reflection / transmission:
• diffraction efficiencies:
Computational Photonics, Summer Term 2014, Abbe School of Photonics, FSU Jena, Prof. Thomas Pertsch
Task 2: diffraction efficiencies
10
• modify your program, so that it also calculates the diffraction efficiencies:
• Test it for the grating structure given before. Plot the efficiencies in a bar plot using bar().
[beta, eta_R, eta_T] = FMM_1D_TE(epsilon, thickness, period, ...
lambda, theta, refIndices, N)
%
% INPUT:
% <epsilon>: vector with permitivity distribution
% <thickness>: thickness of the grating in micron
% <period>: period of the grating in micron
% <lambda>: wavelength in micron
% <theta>: angle of incidence in degree
% <refIndices>: vector [n1 n2] with refr.indices of surrounding
% <N>: number of Fourier orders
%
% OUTPUT:
% <beta>: vector with propagation constants of grating modes
Computational Photonics, Summer Term 2014, Abbe School of Photonics, FSU Jena, Prof. Thomas Pertsch
Programming hints 2: diffraction efficiencies
11
• All matrices are (2N+1) by (2N+1) square matrices, the block matrices are
thus 2*(2N+1) by 2*(2N+1).
• Vectors are of size (2N+1), block vectors twice that size.
• You can create block matrices / vectors in MATLAB just as you create
ordinary ones.
• Matrices usually do not commute! Care about the order of multiplication!
• Remember what we already discussed regarding solving linear systems of
equations.
• Remember that the “generic” index for the Fourier orders runs from –N...N,
so the zero Fourier component is in the middle!
Computational Photonics, Summer Term 2014, Abbe School of Photonics, FSU Jena, Prof. Thomas Pertsch
Task 3*: stability
12
• Increase the thickness of the grating to 2.5µm
• You get a warning: what is its meaning?
• What is the reason that this happens?
• Why does it help reducing N to a value below 13 in that case?
• super brain: how can you prevent that?
Computational Photonics, Summer Term 2014, Abbe School of Photonics, FSU Jena, Prof. Thomas Pertsch
Homework 6 (30 June 2014)
• Solve at least tasks I & II.
• Prepare a one page report about your solution with a figure of some
calculated example.
• Submit your m-files of your program together with your one page report
electronically to [email protected] by 11 July 2014.
• Please put everything together in one single email which contains your
name (FAMILY NAME, Given Name) and matriculation number.
• Late submissions will not be accepted!
• 12 July the solutions of the tasks will be available online at the lectures
homepage www.iap.uni-jena.de/teaching >>> Computational Photonics.
• You are expected to solve the task yourself and a declaration of
independent work must be signed by every student at the end of the
semester.