System of equations
CoupledDipole.interaction_matrix_labframe!
— Functioninteraction_matrix_labframe!(A,
kn, R::Vector{SVector{3}},
AlphaBlocks::Vector{SMatrix{3,3}})
Interaction matrix
A
:3N_dip x 3N_dip
interaction matrixkn
: wavenumber in incident mediumR
:N_dip
-vector of 3-Svectors of particle positionsAlphaBlocks
:N_dip
-vector of 3x3 Smatrices (polarisability tensors in the lab frame)
CoupledDipole.incident_field!
— Functionincident_field!(Ein,
Ejones,
kn, R::Vector{SVector{3}},
IncidenceRotations)
Incident field at particle positions
Ein
:3N_dip x N_inc
matrix, right-hand side of coupled-dipole systemEjones
: tuple of 2 2-Svectors defining 2 orthogonal Jones polarisationskn
: wavenumber in incident mediumR
:N_dip
-vector of 3-Svectors of particle positionsIncidenceRotations
:N_inc
-vector of rotation 3-Smatrices
CoupledDipole.polarisation!
— Functionpolarisation!(P, E, AlphaBlocks)
Self-consistent dipole moments from the electric field, P = αE
P
:3N_dip x N_inc
matrix, polarisations for all incidencesE
:3N_dip x N_inc
matrix, total field for all incidencesAlphaBlocks
:N_dip
-vector of 3x3 Smatrices (polarisability tensors in the lab frame)