My favorites | Sign in
Project Home Downloads Wiki Issues Source
Project Information
Members
Featured
Downloads
Wiki pages
Links

DDSCAT

Discrete Dipole Scattering (DDSCAT) is a Fortran code for calculating scattering and absorption of light by irregular particles and periodic arrangement of irregular particles. It has been jointly developed by

  • Bruce T. Draine (Dept. of Astrophysical Sciences, Princeton University) and
  • Piotr J. Flatau (Scripps Institution of Oceanography, University of California San Diego).
The current version is DDSCAT 7.2 (released February 15, 2012) supersedes previous versions which are no longer supported. The latest release, DDSCAT 7.2.1 (released May 14, 2012), fixes a few bugs that were present in release 7.2.0.

  • DDSCAT 7.2 can calculate scattering and absorption by isolated particles (e.g., dust grains, ice crystals).
  • DDSCAT 7.2 can calculate scattering and absorption by periodic structures with applications to photonics and studies of arrays of nanostructures (for example absorption by periodic arrangement of finite cylinders, cubes, etc).
  • DDSCAT 7.2 offers capability for very fast near field calculation, as described in Flatau & Draine (2012).
  • DDSCAT 7.2 allows to display scattering targets, their composition, as well as scattering results using three dimensional graphical codes such as Paraview and Mayavi2 based on VTK format.
  • DDSCAT 7.2 provides an improved Windows distribution including fully native Windows binaries.
  • DDSCAT 7.2 provides conversion code between DDSCAT shape file format and VTK format.
  • DDSCAT 7.2 offers a new set of test examples.
  • DDSCAT 7.2 offers single and double precision options.

DDSCAT 7.2 is publicly available, and is now considered to be the standard version of DDSCAT. If you choose to use it, please send email to draine@astro.princeton.edu ''registering'' as a user; registered users of DDSCAT will be notified when updates to the code are made. As always, please let us know if you encounter problems downloading DDSCAT, or if you have trouble using DDSCAT (but please read the manual carefully before reporting problems!!).

DDSCAT 7.2 is gratis, subject to the GNU General Public License. You may copy, distribute, and/or modify the software identified as under this agreement. If you distribute copies of this software, you must give the recipients all the rights that you have.

However, if you use DDSCAT, we request that you reference some of the papers on which DDSCAT is based

  • Draine, B.T., & Flatau, P.J., "Discrete dipole approximation for scattering calculations", J. Opt. Soc. Am. A, 11, 1491-1499 (1994) (We check citations to this paper to track the overall DDSCAT use. On occasion we implement code improvements that way!)
  • Draine, B.T., & Flatau, P.J., "Discrete-dipole approximation for periodic targets: theory and tests", J. Opt. Soc. Am. A, 25, 2593-2703 (2008). (if you use this option of the code)
  • P. J. Flatau and B. T. Draine, "Fast near field calculations in the discrete dipole approximation for regular rectilinear grids," Opt. Express 20, 1247-1252 (2012) (if you use this option of the code)

Downloading the DDSCAT 7.2 Code and Documentation

You can obtain a gzipped tarfile containing complete source code and documentation for DDSCAT 7.2, including programs DDSCAT (scattering calculations), CALLTARGET (target display and generation), READNF (near field 1dimensional and threed dimensional graphical display), VTRCONVERT (conversion of DDSCAT shape file to VTK format). An extensive User Guide is available as well as Windows executable version.

DDSCAT 7.2.1 distribution

File Description Notes
User Guide PDF file from arxiv All users
DDSCAT Source including VTRCONVERT, CALLTARGET, READFN Linux, MAC users
DDSCAT Windows Windows native binaries Windows users
Examples DDSCAT examples All users
Papers Some of DDSCAT papers in PDF format All users

Building DDSCAT

A single distribution is provided for DDSCAT 7.2 -- by appropriate editing of the Makefile, this distribution can be used to generate programs using either single- or double-precision; either without or with MPI capability; either without or with OPENMPI support; and either without or with the Intel MKL library.

Note: DDSCAT 7.2 has been extensively tested in single-processor mode. However, it has received only limited testing with MPI and OpenMP, and it is possible that some of the changes to the code in the 7.1 -> 7.2 transition might lead to OpenMP or MPI problems. If you are a user of MPI and/or OpenMP, please run some test calculations in both single-processor and multiprocessor mode, and compare results, before doing any "production" calculations with MPI and/or OpenMP. If you do such tests, we would appreciate being informed of the outcome.

Previous versions

Past versions of the DDSCAT are still available but we prefer to maintain only the most recent version of the code. For example version 6 is available.

Version 7.1 is no longer supported, although it will continue to be available. If you have been using Version 7.1, please switch to Version 7.2.

File Description Notes
Documentation DDSCAT documentation PDF, postscript
DDSCAT.tgz DDSCAT source version (tarred and zipped) full version of DDSCAT; needs to be compiled

Powered by Google Project Hosting