qpms/lepaper/intro.lyx

326 lines
9.3 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#LyX 2.4 created this file. For more info see https://www.lyx.org/
\lyxformat 584
\begin_document
\begin_header
\save_transient_properties true
\origin unavailable
\textclass article
\use_default_options true
\maintain_unincluded_children false
\language english
\language_package default
\inputencoding utf8
\fontencoding auto
\font_roman "default" "TeX Gyre Pagella"
\font_sans "default" "default"
\font_typewriter "default" "default"
\font_math "auto" "auto"
\font_default_family default
\use_non_tex_fonts false
\font_sc false
\font_roman_osf true
\font_sans_osf false
\font_typewriter_osf false
\font_sf_scale 100 100
\font_tt_scale 100 100
\use_microtype false
\use_dash_ligatures false
\graphics default
\default_output_format default
\output_sync 0
\bibtex_command default
\index_command default
\float_placement class
\float_alignment class
\paperfontsize default
\spacing single
\use_hyperref true
\pdf_author "Marek Nečada"
\pdf_bookmarks true
\pdf_bookmarksnumbered false
\pdf_bookmarksopen false
\pdf_bookmarksopenlevel 1
\pdf_breaklinks false
\pdf_pdfborder false
\pdf_colorlinks false
\pdf_backref false
\pdf_pdfusetitle true
\papersize default
\use_geometry false
\use_package amsmath 1
\use_package amssymb 1
\use_package cancel 1
\use_package esint 1
\use_package mathdots 1
\use_package mathtools 1
\use_package mhchem 1
\use_package stackrel 1
\use_package stmaryrd 1
\use_package undertilde 1
\cite_engine basic
\cite_engine_type default
\biblio_style plain
\use_bibtopic false
\use_indices false
\paperorientation portrait
\suppress_date false
\justification true
\use_refstyle 1
\use_minted 0
\use_lineno 0
\index Index
\shortcut idx
\color #008000
\end_index
\secnumdepth 3
\tocdepth 3
\paragraph_separation indent
\paragraph_indentation default
\is_math_indent 0
\math_numbering_side default
\quotes_style english
\dynamic_quotes 0
\papercolumns 1
\papersides 1
\paperpagestyle default
\tablestyle default
\tracking_changes false
\output_changes false
\html_math_output 0
\html_css_as_file 0
\html_be_strict false
\end_header
\begin_body
\begin_layout Section
Introduction
\begin_inset CommandInset label
LatexCommand label
name "sec:Introduction"
\end_inset
\end_layout
\begin_layout Standard
The problem of electromagnetic response of a system consisting of many relativel
y small, compact scatterers in various geometries, and its numerical solution,
is relevant to many branches of nanophotonics (TODO refs).
The most commonly used general approaches used in computational electrodynamics
are often unsuitable for simulating systems with larger number of scatterers
due to their computational complexity: differential methods such as the
finite difference time domain (FDTD) method or the finite element method
(FEM) include the field degrees of freedom (DoF) of the background medium
(which can have very large volumes), whereas integral approaches such as
the boundary element method (BEM) need much less DoF but require working
with dense matrices containing couplings between each pair of DoF.
Therefore, a common (frequency-domain) approach to get an approximate solution
of the scattering problem for many small particles has been the coupled
dipole approximation (CDA) where drastic reduction of the number of DoF
is achieved by approximating individual scatterers to electric dipoles
(characterised by a polarisability tensor) coupled to each other through
Green's functions.
\end_layout
\begin_layout Standard
CDA is easy to implement and demands relatively little computational resources
but suffers from at least two fundamental drawbacks.
The obvious one is that the dipole approximation is too rough for particles
with diameter larger than a small fraction of the wavelength, which results
to quantitative errors.
The other one, more subtle, manifests itself in photonic crystal-like structure
s used in nanophotonics: there are modes in which the particles' electric
dipole moments completely vanish due to symmetry, regardless of how small
the particles are, and the excitations have quadrupolar or higher-degree
multipolar character.
These modes typically appear at the band edges where interesting phenomena
such as lasing or Bose-Einstein condensation have been observed
\begin_inset CommandInset citation
LatexCommand cite
key "guo_lasing_2019,pourjamal_lasing_2019,hakala_lasing_2017,yang_real-time_2015,hakala_bose-einstein_2017"
literal "false"
\end_inset
and CDA by definition fails to capture such modes.
\end_layout
\begin_layout Standard
The natural way to overcome both limitations of CDA mentioned above is to
include higher multipoles into account.
Instead of polarisability tensor, the scattering properties of an individual
particle are then described a more general
\begin_inset Formula $T$
\end_inset
-matrix, and different particles' multipole excitations are coupled together
via translation operators, a generalisation of the Green's functions in
CDA.
This is the idea behind the
\emph on
multiple-scattering
\begin_inset Formula $T$
\end_inset
-matrix method
\emph default
(MSTMM), a.k.a.
\emph on
superposition
\begin_inset Formula $T$
\end_inset
-matrix method
\emph default
(TODO a.k.a something; refs??), and it has been implemented previously for
a limited subset of problems (TODO refs and list the limitations of the
available).
\begin_inset Note Note
status open
\begin_layout Plain Layout
TODO přestože blablaba, moc se to nepoužívalo, protože je težké udělat to
správně.
\end_layout
\end_inset
\end_layout
\begin_layout Standard
Due to the limitations of the existing available codes, we have been developing
our own implementation of MSTMM, which has been used in several previous
works studying various physical phenomena in plasmonic nanoarrays
\begin_inset CommandInset citation
LatexCommand cite
key "pourjamal_lasing_2019,guo_lasing_2019,hakala_lasing_2017"
literal "false"
\end_inset
.
During the process, it became apparent that although the size of the arrays
we were able to simulate with MSTMM was far larger than with other methods,
sometimes we were unable to match the full size of our physical arrays
(typically consisting of tens of thousands of metallic nanoparticles) due
to memory constraints.
Moreover, to distinguish the effects attributable to the finite size of
the arrays, it became desirable to simulate also
\emph on
infinite periodic systems
\emph default
with the same method, as choosing a completely different method could introduce
differences stemming from the method choice itself.
Unlike in differential methods where this can be achieved straightforwardly
using periodic boundary conditions, this is not trivial in MSTMM where
one has to deal with badly behaving infinite lattice sums.
\end_layout
\begin_layout Standard
Here we address both challenges: we extend the method on infinite periodic
systems using Ewald-type summation techniques, and we exploit symmetries
of the system to decompose the problem into several substantially smaller
ones, which 1) reduces the demands on computational resources, hence speeds
up the computations and allows for simulations of larger systems, and 2)
provides better understanding of modes in periodic systems.
\end_layout
\begin_layout Standard
We hereby release our MSTMM implementation, the
\emph on
QPMS Photonic Multiple Scattering
\emph default
suite, as free software under the GNU General Public License version 3.
(TODO refs to the code repositories.) QPMS allows for linear optics simulations
of arbitrary sets of compact scatterers in isotropic media.
The features include computations of electromagnetic response to external
driving, the related cross sections, and finding resonances of finite structure
s.
Moreover, it includes the improvements covered in this paper, enabling
to simulate even larger systems and also infinite structures with periodicity
in one, two or three dimensions, which can be e.g.
used for quickly evaluating dispersions of such structures, and also their
topological invariants (TODO).
The QPMS suite contains a core C library, Python bindings and several utilities
for routine computations.
\begin_inset Note Note
status open
\begin_layout Plain Layout
, such as TODO.
\end_layout
\end_inset
It includes extensive Doxygen documentation, together with description
of the API, making extending and customising the code easy.
\end_layout
\begin_layout Standard
The current paper is organised as follows: Section
\begin_inset CommandInset ref
LatexCommand ref
reference "sec:Finite"
\end_inset
provides a review of MSTMM theory for finite systems.
In Section
\begin_inset CommandInset ref
LatexCommand ref
reference "sec:Infinite"
\end_inset
we develop the theory for infinite periodic structures.
In section
\begin_inset CommandInset ref
LatexCommand ref
reference "sec:Symmetries"
plural "false"
caps "false"
noprefix "false"
\end_inset
we apply group theory on MSTMM to utilise the symmetries of the simulated
system.
Finally, section
\begin_inset CommandInset ref
LatexCommand ref
reference "sec:Applications"
\end_inset
shows some practical results that can be obtained using QPMS and benchmarks
with BEM.
\begin_inset Note Note
status open
\begin_layout Plain Layout
Finally, in Section
\begin_inset CommandInset ref
LatexCommand ref
reference "sec:Comparison"
\end_inset
we comment on the computational complexity of MSTMM in comparison to other
methods.
\end_layout
\end_inset
\end_layout
\end_body
\end_document