PhoSSiL: Photonics Systems Simulator Library

PhoSSiL is a library of C++ classes that can be used to simulate photonics systems including optical fiber communications systems and lasers. It was written by Dr. John Zweck, Dr. Curtis Menyuk and a team of graduate students and postdocs in the Computational Photonics Laboratory at the University of Maryland Baltimore County (UMBC) and is currently maintained by John Zweck.

Work on PhoSSiL, which was originally called the Optical Communication Systems Simulator (OCS), was begun by Ivan Lima in 2000. Other contributors include Aurenice de Menezes Oliveira (formerly Aurenice Lima), Brian Marks, Oleg Sinkin, Ronald Holzloehner, Zhihang (Jonathan) Hu, Wenze Xi, Walter Pellegrini, Anshul Karla, Hai Xu, Hua Jiao, and Junping Wen.

PhoSSiL was developed with financial support from NSF, DOE, NRL, JHU-APL, DARPA, NASA, SAIC, and the Technion Foundation.

Obtaining PhoSSiL

PhoSSiL is open source software freely available to the academic community and US government researchers.

Industrial researchers interested in using PhoSSiL should contact John Zweck or Curtis Menyuk (menyuk 'at' umbc 'dot' edu) to negotiate a software license.

We are providing the software package PHoSSIL to you on an "as is" basis and make no certification as to its accuracy or completeness. This software has been copyrighted, and we are providing it to you for research purposes only. Commercial use of this software is not permitted without express written permission. We therefore request that you send the following certification by E-mail to John Zweck (zweck 'at' umbc 'dot' edu):

I understand that you are providing the software package PHoSSIL to me on an "as is" basis with no certification as to its accuracy or completeness. I understand that the software is provided for research purposes only, and I will not use the software for commercial purposes without requesting and receiving express written permission.

We also request that you include an acknowledgement in any publications or talks whose results were obtained using PhoSSiL. An example acknowledgement could be:

The simulation results reported here were obtained using the software PhoSSiL, (the Photonics Systems Simulator Library), developed by Curtis Menyuk, John Zweck and their research group at UMBC.

PhoSSiL Version 0.1 [PhoSSiL_0.1.tgz]

This initial release includes the PhoSSiL library as well as several example applications.

Input parameter files [ExamplePhoSSiLInputFiles.tgz] corresponding to these applications.

WARNING: Since some of these input files are old there may be incompatibilities between the input files and the code. See the README file.

Please send all questions, code improvements, and the like to John Zweck.

This web site contains documentation on how to install and run PhoSSiL as well as extensive documentation. Additional documentation will be added as time permits.

Code Installation

Coming soon!

For now you are pretty much on your own with this. We run on Redhat Linux. See README in PhoSSiL_0.1.tgz.


The PhoSSiL bibliography lists Masters and PhD Theses that describe the models and algorithms in PhoSSiL as well as the results of simulations produced using PhoSSiL. Also see the journal publications webpages of Curtis Menyuk and John Zweck. Together the documentation below the results presented in these papers provide an extensive validation of PhoSSiL. Validations of the algorithms and code in PhoSSiL were performed by comparison with analytic formulae (where available), other codes, other algorithms, and laboratory experiments that were mostly performed by Professor Gary Carter and Professor Li Yan and their students at UMBC.

Scanned handwritten notes by C. Menyuk