The program STM calculates STM images using the output generated by Siesta. It is included among the utilities distributed with Siesta and it shares several of its basis routines. STM was written using basic routines from Siesta and from Denchar.
FFTW: http://www.fftw.org