Baptiste Auguie This email address is being protected from spambots. You need JavaScript enabled to view it. v1.3, 2013-01
Ray-tracing rendering of 3D clusters of plasmonic nanoparticles with arbitrary positions, sizes, and orientations.
Brief description
The cda
package implements the coupled-dipole approximation for electromagnetic scattering by sparse collections of subwavelength particles, with a particular focus on plasmonic nanoparticles in the visible regime. The interaction matrix, and the solution of the linear system of coupled-dipole equations are executed in C++
code for speed; convenient wrapper functions are provided at the R
level to generate the particle clusters, calculate the extinction, scattering, and absorption of light by particles with linearly and circularly polarised light. Functions are also provided to calculate orientation-averaged circular dichroism, and display clusters of nanoparticles in three dimensions using OpenGL or povray.
Package installation
cda
is an R
package available on CRAN; it may be installed directly from the R
command line,
Loading the package and first steps
install.packages("cda")
# load the package
library(cda)
# Introductory document
vignette(package = "cda")
# A few examples
demo(package = "cda")
A more complete description, along with some tutorial examples, can be found on the github project wiki.
Basic Usage
In this example we define a dimer of nanorods, model its optical response to linearly polarised light at fixed incidence, and orientation-averaged optical activity.
# loading the package
library(cda)
library(rgl) # 3D visualisation
library(ggplot2) # 2D graphs
Manually defining a cluster
# dielectric function
wvl <- seq(400, 900)
gold <- epsAu(wvl)
# define a cluster of particles
cl <- list(r = rbind(c(0, 0, 0),
c(0, 0, 200)),
angles = rbind(c(0, 0, 0),
c(pi/4, 0, 0)),
sizes = rbind(c(40, 20, 20),
c(40, 20, 20)))
Extinction, absorption, scattering of linearly polarised light at fixed incidence
# calculate extinction spectrum at fixed incidence
linear <- linear_extinction_spectrum(cl, gold)
Orientation-averaged optical activity
circular <- circular_dichroism_spectrum(cl, gold)
References
If you find this package useful in your research, please cite one of the following references, as appropriate.
- Baptiste Auguié. CDA: Coupled dipole approximation with R and C++. R package version 1.3, 2012.
- B. Auguié, J.L. Alonso-Gómez, A. Guerrero-Martìnez, and L.M. Liz-Marzán. Fingers crossed: Optical activity of a chiral dimer of plasmonic nanorods. The Journal of Physical Chemistry Letters, 2, 2011.
- A. Guerrero-Martìnez, J.L. Alonso-Gómez, B. Auguié, M. Cid, and L.M. Liz-Marzán. From individual to collective chirality in metal nanoparticles. Nano Today, 6 2011.
- A. Guerrero-Martìnez, B.Auguié, J.L. Alonso-Gómez, Z.Džolić, S. Gómez-Graña, M. Žinić, M.M. Cid, and L.M. Liz-Marzán. Intense optical activity from three-dimensional chiral ordering of plasmonic nanoantennas. Angewandte Chemie International Edition, 50, 2011.
- B. Auguié and W.L. Barnes. Diffractive coupling in gold nanoparticle arrays and the effect of disorder. pt. Lett., 34, 2009.
- B. Auguié and W.L. Barnes. Collective resonances in gold nanoparticle arrays. 101, 2008.