EffectiveWaves.jl
A Julia package for calculating, processing and plotting waves travelling in heterogeneous materials. The focus is on ensemble averaged waves.
At present, the package focuses on materials filled with randomly placed particles. You can calculate effective wavenumbers for 2D and 3D acoustics, wave transmission and wave reflection in 2D and 3D, and scattering from an inhomogeneous sphere.
- Link (26 Sep 2022)
MultipleScattering.jl
A Julia library for simulating, processing, and plotting multiple scattering of waves.
The library focuses on multipole methods (addition translation theorems) to solve the inhomogeneous Helmholtz equation (time-harmonic waves).
- Link (26 Sep 2022)
QPMS software suite
QPMS (QPMS Photonic Multiple Scattering) is a toolkit for frequency-domain simulations of photonic systems consisting of compact objects (particles) inside a homogeneous medium.
- Link (28 Dec 2020)
- Paper
- Archive Link (22 Apr 2021)
- GIT Link (22 Apr 2021)

ParticleScattering.jl
A Julia package for solving large-scale electromagnetic scattering problems in two dimensions; specifically, those containing a large number of penetrable smooth particles. Provides the ability to optimize over the particle parameters for various design problems.
- Link (5 April 2019)



