HELIOS: A surface integral equation software for light scattering in homogeneous, periodic, and stratified environments

This paper introduces HELIOS, an open-source C++ and Python software that utilizes the PMCHWT surface integral equation formulation with RWG basis functions to accurately model light scattering by particles in homogeneous, stratified, and periodic environments.

Original authors: Parmenion S. Mavrikakis, Olivier J. F. Martin

Published 2026-02-27
📖 5 min read🧠 Deep dive

This is an AI-generated explanation of the paper below. It is not written or endorsed by the authors. For technical accuracy, refer to the original paper. Read full disclaimer

Imagine you are trying to predict how a drop of water ripples when it hits a complex rock in a pond. Now, imagine that rock isn't just a rock—it's a tiny, intricate sculpture made of gold, sitting in a pond that might be empty, might be filled with layers of different liquids, or might be part of an infinite grid of identical ponds stretching forever.

This is the challenge of nanophotonics: figuring out how light (which acts like a wave) behaves when it hits tiny structures. Doing this by hand is impossible because the math is incredibly complex. That's where HELIOS comes in.

Think of HELIOS as a super-smart, digital crystal ball built by scientists at EPFL in Switzerland. It's a piece of free software that lets researchers simulate how light interacts with these tiny nano-worlds without needing to build them in a lab first.

Here is how it works, broken down into simple concepts:

1. The Core Idea: Painting the Surface, Not the Whole Room

Most computer programs try to simulate light by filling the entire 3D space with a grid of tiny boxes (like pixelating a whole room). This is slow and uses up a lot of computer power.

HELIOS is smarter. It uses a technique called Surface Integral Equations.

  • The Analogy: Imagine you want to know how sound bounces off a statue. Instead of measuring the air inside the statue and the air outside it, HELIOS only looks at the surface of the statue. It treats the surface like a canvas and paints "currents" (imaginary flows of electricity and magnetism) onto it.
  • Why it's great: By only focusing on the skin of the object, it saves massive amounts of computing power, allowing it to handle very complex shapes quickly.

2. The Three Worlds HELIOS Can Visit

HELIOS is unique because it can handle three different "worlds" or environments where these tiny objects might live:

  • World A: The Empty Room (Homogeneous)

    • Scenario: A single gold nanoparticle floating in a vacuum or water.
    • How HELIOS does it: It uses a proven mathematical recipe (called PMCHWT) to solve the puzzle. It's like solving a standard jigsaw puzzle where the pieces fit together perfectly.
  • World B: The Infinite Hall of Mirrors (Periodic)

    • Scenario: A photonic crystal or a metasurface, which is essentially a repeating pattern of nano-objects (like a honeycomb made of light).
    • The Problem: If you try to simulate an infinite pattern, the math goes on forever.
    • The HELIOS Trick: It uses something called Ewald's Transformation.
    • The Analogy: Imagine trying to count the echoes in a room with infinite mirrors. Instead of counting every single echo one by one, HELIOS uses a mathematical "shortcut" (a transformation) to instantly calculate the sum of all those infinite reflections. It turns a never-ending task into a quick calculation.
  • World C: The Layered Cake (Stratified)

    • Scenario: A nano-object sitting on top of a silicon chip, which is sitting on a glass slide, which is sitting on a metal base.
    • The Problem: Light bounces back and forth between every layer, creating a messy web of reflections.
    • The HELIOS Trick: It uses a "Matrix-Friendly" approach and a Tabulation-Interpolation scheme.
    • The Analogy: Instead of calculating the bounces in real-time every single time, HELIOS creates a giant "cheat sheet" (a table) of how light behaves in these layers. When it needs an answer, it looks it up on the sheet and fills in the gaps. This makes it incredibly fast, even when the layers are complex.

3. How You Use It (The User Experience)

You don't need to be a math wizard to use HELIOS.

  • The Engine (C++): The heavy lifting is done by a powerful C++ engine. Think of this as the high-performance race car engine under the hood.
  • The Steering Wheel (Python): The user interacts with a Python interface. This is the dashboard. You tell the car where to go (set up the simulation), press the gas (run the solver), and look at the speedometer (view the results).
  • The Output: It gives you beautiful pictures of where the light is bright (hotspots) or dark, and graphs showing how much light is absorbed or scattered.

4. Why Does This Matter?

Why do we need a digital crystal ball for tiny things?

  • Designing Better Tech: Engineers can use HELIOS to design better solar cells, faster computer chips, or super-sensitive medical sensors before they ever spend money building them.
  • Saving Time: It prevents scientists from building a prototype, realizing it doesn't work, and starting over. They can simulate it, fix the design on the computer, and then build the perfect version.

In a Nutshell

HELIOS is an open-source tool that acts as a virtual wind tunnel for light. Whether you have a single particle, an infinite grid of them, or a sandwich of layers, HELIOS uses clever math shortcuts to predict exactly how light will dance around them. It turns impossible math problems into manageable, fast simulations, helping scientists build the future of light-based technology.

Drowning in papers in your field?

Get daily digests of the most novel papers matching your research keywords — with technical summaries, in your language.

Try Digest →