  This PhD tutorial is concerned with a description of the two-dimensional
generalized Lorenz-Mie theory (2D-GLMT), a well-established numerical method
used to compute the interaction of light with arrays of cylindrical scatterers.
This theory is based on the method of separation of variables and the
application of an addition theorem for cylindrical functions. The purpose of
this tutorial is to assemble the practical tools necessary to implement the
2D-GLMT method for the computation of scattering by passive scatterers or of
resonances in optically active media. The first part contains a derivation of
the vector and scalar Helmholtz equations for 2D geometries, starting from
Maxwell's equations. Optically active media are included in 2D-GLMT using a
recent stationary formulation of the Maxwell-Bloch equations called
steady-state ab initio laser theory (SALT), which introduces new classes of
solutions useful for resonance computations. Following these preliminaries, a
detailed description of 2D-GLMT is presented. The emphasis is placed on the
derivation of beam-shape coefficients for scattering computations, as well as
the computation of resonant modes using a combination of 2D-GLMT and SALT. The
final section contains several numerical examples illustrating the full
potential of 2D-GLMT for scattering and resonance computations. These examples,
drawn from the literature, include the design of integrated polarization
filters and the computation of optical modes of photonic crystal cavities and
random lasers.
