CoupledElectricMagneticDipoles.jl is a set of modules implemented in the Julia language. Several modules are provided to solve typical problems encountered in nano-optics and nano-photonics including light emission by point sources in complex environments, electromagnetic wave scattering by single objects with complex geometry or collections of them. Optical forces can also be computed with this software package.
- Link (28 Aug 2025)

DGF Python code printed in printed in M DeRosier:
LIGHT SCATTERING MODEL THROUGH COMPUTATIONAL METHODS IN PYTHON USING A DIGITIZED GREEN FUNCTION BY SCATTERING OF SMALL PARTICLES
Brigham Young University - Idaho, 2022.
- Link (26 Aug 2025)
TorchGDM is a PyTorch implementation of the Green's dyadic method (GDM), a electro-dynamics full-field volume integral technique. It's main features are multi-scale simulations combining volume discretized and effective e/m polarizability models, as well as the general support of torch's automatic differentiation.
CoupledDipole.jl
Coupled-dipole simulations for electromagnetic scattering of light by sub-wavelength particles in arbitrary 3-dimensional configurations.
- Link (4 May 2023)

CDPDS Coupled dipole method-based photonic dispersion solver
A photonic band dispersion solver based on the coupled dipole method called CDPDS, which aims to provide an analytical computation of bulk and boundary dispersions and topological phases of a one-dimensional and two-dimensional photonic crystal consisting of an array of particles.
- Link (2 May 2023)
Graph-theory-dda
The code can handle N scatterer systems in arbitrary settings, but shines for cyclic polygon settings
- Link (2 May 2023)
