CDDA
Description
# CDDA
We provide a code for scattering calculations based on the discrete dipole approximation (DDA) method. The novelty of this code is the ability of running calculations in presence of chiral matter, i.e., materials that satisfy the
following electromagnetic constitution relation: D = epsilon_0*epsilon*E - i*mu_0*G*H ; B = i*G*E + mu_0*mu*H. With epsilon_0, epsilon, mu_0 and mu the vacuum and relative permittivity and permeability respectively. G is the
bi-anisotropic factor that considers the chirality of the reciprocal media. This version admits anisotropy but not inhomogeneity in the scatterer, the surrounding media or illumination.
## Requirements
- MATLAB
## Code
EM SOURCES
- **plane_wave.m** Generates a 6D vectorial function with the three electric and magnetic components of the electromagnetic field corresponding to a plane wave with defined direction of propagation and polarization.
SCATTERER DISCRETIZATION
- **nameScatterer_dictribution_dipoles.m** Generates a matrix of size Nx3 with N positions equally distributed following a cubic net of a given lattice constant. The resulting matrix describes the position where the dipoles that
discretize the scatterer attending to the geometrical parameters that define its size and position.
- **rectangle_distribution_dipoles.m** For parallelepiped of given sides.
- **rectangle_shell_distribution_dipoles.m** For parallelepiped shell of given thichkness in the sides.
- **spherical_distribution_dipoles.m** For sphere of a given radius.
- **spherical_shell_distribution_dipoles.m** For spherical shell of a given internal and external radius.
- **cm_polarizability.m** Generates the tensorial polarizability of the dipolar units by means of the Clausius-Mossotti calculation in terms off the scatterer and surrounding media tensorial permittivity or permeability taking
into account the separation between dipoles and the radiative correction.
- **joinScatterers.m** Joins the results of multiples scatterers discretization the cases where more than one scatterer are present.
- **polarizabilities.m** Generates the tensorial polarizabilities for the electric, magnetic and chiral response of the unit dipoles of the discretized scatterer attending to the lattice constant, the wavenumber and permittivities and
permeabilities of the inner and outer medium as so the bi-anisotropic factor of the scatterer.
- **showCut.m** Shows the position of the dipoles applying a transversal cut to the distribution.
CDDA SOLUTION
- **dipoles_coupling_matrix.m** Generates the interaction 6x6 matrix between two dipoles given their positions and polarizabilities.
- **global_interaction_matrix.m** Generates a 6Nx6N matrix containing all the individual interaction matrices.
- **equation_solving.m** Solves the coupled equations that are obtained from evaluating the plane wave at each position and the global interaction matrix. The result is a Nx6 matrix containing the electric and magnetic components
of the exciting field (incident + scattered).
SCATTERING CALCULATIONS
- **near_fields.m** With the solution of the coupled equation, the polarizabilities and position of the dipoles calculates the scattered field at any point out of the scatterer.
- **far_fields.m** With the solution of the coupled equation, the polarizabilities and position of the dipoles calculates the scattered field at any point out of the scatterer applying the far field approximation.
- **cross_sections.m** With the solution of the coupled equation, the polarizabilities of the dipoles calculates the extinction, absorption and scattering cross sections.
EXAMPLES
- **example_sphere.m** Example that illustrates how to use the functions in order to obtain typical scattering results in the case of a single scattering sphere.
- **example_sphere_shell.m** Example that illustrates how to use the functions in order to obtain scattering results in the case of more than one scatterer. In this case a sphere covered by a shell.
Related Publication: S.A. Rosales, P. Albella, F. González, Y. Gutiérrez, F. Moreno, CDDA: extension and analysis of the discrete dipole approximation for chiral systems, Opt. Express. 29 (2021) 30020. https://doi.org/10.1364/OE.434061.
Files
CDDA_.zip
Files
(23.3 kB)
| Name | Size | Download all |
|---|---|---|
|
md5:88bf467a3d911ef8ff7a249073d8c56f
|
23.3 kB | Preview Download |