Discrete dipole approximation codes: Difference between revisions

Content deleted Content added
make this list because the discrete dipole approximation article is getting too long
Tag: Removed redirect
m v2.05 - Fix errors for CW project (Heading start with three "=" and later with level two - Unbalanced quotes in ref name or illegal character or empty name.)
 
(One intermediate revision by one other user not shown)
Line 1:
'''Discrete dipole approximation codes'''. This is a list of Discrete Dipole Approximation (DDA) codes. The "code" here indicates computer code, a particular implementation of the DDA (many of them are [[open-source]]). For theoretical approach see [[Discrete dipole approximation]] article.
 
Most of the codes apply to arbitrary-shaped inhomogeneous nonmagnetic particles and particle systems in free space or homogeneous dielectric host medium. The calculated quantities typically include the [[Mueller_calculus#Mueller_matrices|Mueller matrices]], [[Cross_section_(physics)#Scattering_of_light|integral cross-sections]] (extinction, absorption, and scattering), internal fields and angle-resolved scattered fields (phase function). There are some published comparisons of existing DDA codes.<ref name=penttila2007/>
 
=== General-purpose open-source DDA codes= ==
These codes typically use regular grids (cubical or rectangular cuboid), [[conjugate gradient method]] to solve large [[System of linear equations|systems of linear equations]], and FFT-acceleration of the matrix-vector products which uses convolution theorem. Complexity of this approach is almost linear in number of dipoles for both time and memory.<ref name=Yurkin2007a/>
 
Line 75:
| style="background-color: #ffffff;" | [https://gitlab.com/dmcxu1/cpdda CPDDA]
| style="background-color: #ffffff;" | Dibo Xu and others
| style="background-color: #ffffff;" | <ref name="Xu2025" />
| style="background-color: #ffffff;" | Python
| style="background-color: #ffffff;" | 2025
Line 81:
|}
 
=== Specialized DDA codes= ==
These list include codes that do not qualify for the previous section. The reasons may include the following: source code is not available, [[Fast Fourier transform|FFT]] acceleration is absent or reduced, the code focuses on specific applications not allowing easy calculation of standard scattering quantities.