Contact us


A software package for simulating the interaction of electromagnetic waves with arbitrary distributions of dielectric, metallic and semiconducting spherical particles

General Information

(OPTIcal METamaterials - 3Dimensional) is an ab initio solver for 3D electromagnetic wave scattering problems. OPTIMET-3D implements the multiple-scattering matrix (MSM) method [1, 2], used to accurately describe the electromagnetic wave interaction with an arbitrary cluster of dielectric, metallic or semiconducting spheres embedded in a homogeneous background medium. In particular, OPTIMET-3D could be instrumental for efficient modelling of light interaction with ensembles of nanoparticles, which is of interest in investigating a series of scientific problems arising in several different disciplines, including Engineering, Physics, Chemistry and Materials Science.

OPTIMET-3D is distributed under the GPL. It is freely available on GitHub for all interested parties. The software has been developed by Dr. Mayeul d’Avezac, Dr. Ahmed Al-Jarro, Dr. Claudiu Biris and Dr. Gary Macindoe. A description of the installation steps, code structure and a few examples of its use can be found in the User Manual. OPTIMET-3D is portable on most Unix 64-bit systems. To date, it has been installed and tested on ARCHER, UK's HPC platform, and Legion, one of UCL's main HPC systems. OPTIMET-3D contains no known bugs; however, there is no guarantee that the code is bug free! Should you encounter any problems while using the software, please contact us at optimet3ducl@gmail.com with a brief description of the problem.

OPTIMET-3D is written in C++ programming language and uses the OOP framework. It provides the source code and an intuitive scripting system as the data input, in XML format, for running the executable. OPTIMET-3D employs a set of functions for efficient handling of linear algebra operations and numerical computations that are related to the MSM formalism. In addition, OPTIMET-3D incorporates a set of routines and scientific libraries for the serial or parallel execution of the algorithm for solving the system of linear equations associated to the scattering problem. This linear system can be solved either directly or iteratively. In the parallel execution mode it can use several linear-system solvers found in ScaLAPACK (for the direct approach) and Belos (for an iterative approach). To use OPTIMET-3D, simply copy the executable Optimet3D to a folder of your choice, set your shell to the folder where Optimet3D is stored and call it with a single argument, the full path to the input file. For example, ./Optimet3D input-filename.xml. In order to become familiar with and learn how to use OPTIMET-3D, refer to the User Manual.


A generic problem that can be tackled using OPTIMET-3D is illustrated in the figure below. Specifically, the software can be used to compute the elctromagnetic field and cross-sections describing the interaction of electromagnetic waves with an arbitrary distribution of dielectric, metallic or semiconducting spheres embedded in a homogeneous background medium.

For example, in the figure below we show the multipolar expansion of the spectrum of the extinction cross-section calculated for a 500 nm silicon nanosphere, normalized to the cross-section area of the sphere (see also [3]). The excitation is a linearly polarized plane wave (PW) whereas the index of refraction of silicon is described by the Sellmeier equation. The index in parentheses in the legend indicates the multipole order. In the bottom panel, the left (right) set of three plots represents, from left to right, the spatial distribution of the total electric (magnetic) field, the longitudinal component of the electric (magnetic) field of the first-order TE mode, TE(1) and the azimuthal component of the electric (magnetic) field of the first-order TM mode, TM(1).

OPTIMET-3D can be used to investigate more complex structures, such as clusters of nanoparticles. The input optical beam can be more complex than simple plane waves, too, including Laguerre-Gauss (LG) beams. These features are illustrated in the figure below. It shows the spatial distribution of the magnitude of the electric field calculated at λ = 2515 nm. From left to right column, the panels correspond to a plane wave with σ = 1, a plane wave with σ = −1, a LG04 with σ = 1, and a LG04 with σ = −1, where σ is the spin of the plane wave. The top and botom panels correspond to the total field and the field corresponding to the TE(2) quadrupole mode, respectively. The radius of the silicon spheres is 500 nm.

Additional exemples illustrating how to use OPTIMET-3D for different particle systems and input beam configurations are given in the User Manual.

  1. C. F. Bohren and D. R. Huffman, Absorption and Scattering of Light by Small Particles (Wiley-Interscience, 1983).
  2. M. Mishchenko, L. Travis, and A. Laci, Scattering, Absorption and Emission of Light by Small Particles (Cambridge University Press 2002).
  3. A. Al-Jarro, C. G. Biris, and N. C. Panoiu, Resonant mixing of optical orbital and spin angular momentum by using chiral silicon nanosphere clusters, Opt. Express 24, 6945–6958 (2016).