Light scattering simulations with the discrete dipole approximation