In terms of flexibility and ability " Matlab" is first and last word in my mind for a wide range of applications such as : Optoelectronic devices and so on ...
Maybe you've already got the right answer but if you are just starting out, then you should take a look at http://nanoHUB.org in order to learn about the different possible approaches. There is also http://www.iue.tuwien.ac.at/phd/minixhofer/node22.html for the history of TCAD software and http://icode.eln.uniroma2.it/ for another collection of simulation software.
I wrote some posts a year ago when I was looking into TCAD software:
(Crosslight-SUPREM) is a process simulation software package based on the SUPREM.IV.GS code developed at Integrated Circuits Laboratory, Stanford University. SUPREM.IV.GS (2D) has been recognized as the industrial standard in process simulation for integrated circuit (IC) design for over a decade. Crosslight greatly enhances the capability of the original code from Stanford and extends it from 2D to 3D.
In terms of flexibility and ability " Matlab" is first and last word in my mind for a wide range of applications such as : Optoelectronic devices and so on ...