C Fortran C++ Makefile Shell GLSL Other
Clone or download
Latest commit 181c523 Jul 12, 2018


ADDA is a C software package to calculate scattering and absorption of electromagnetic waves by particles of arbitrary shape and composition using the discrete dipole approximation (DDA). The particles can be located in a homogeneous medium or near a plane substrate; emission (decay-rate) enhancement of point emitters can also be calculated. The main feature of ADDA is the ability to run on a multiprocessor system or multicore processors (parallelizing a single DDA simulation). It can also employ modern GPUs to accelerate computations. ADDA is intended to be a versatile tool, suitable for a wide variety of applications ranging from interstellar dust and atmospheric aerosols to metallic nanoparticles and biological cells. Its applicability is limited only by available computer resources.

ADDA originated at the University of Amsterdam but has then evolved into an open-source international project. We recommend to start with one of the following:

If you choose to use ADDA, please subscribe to announcement mailing list; "registered" users of ADDA will be notified when updates to the code are made. If you publish results obtained using ADDA, you should acknowledge the source of the code. The general reference is - Yurkin M.A. and Hoekstra A.G. The discrete-dipole-approximation code ADDA: capabilities and known limitations, J. Quant. Spectrosc. Radiat. Transfer 112, 2234–2247 (2011). Please also look at a list of more specific references.

We encourage users to provide feedback in any possible way. If you have any questions, please write to the discussion group. If you have any suggestions or a bug report, submit it directly to the issue tracker, taking advantage of the open development process. Please also provide feedback on the existing issues - you may upvote issues that you find important (GitHub account is required) and/or provide some meaningful comments.

Migrated from Google Code

This project has been moved from the Google Code platform. All functionality is already here, but some updates of the docs still remain - the progress can be tracked at #210. If you encounter any artefacts, you may also turn to the archived repository. All links to the previous repository should be automatically redirected to the archived one, but the formatting of some wiki pages there is broken.