User Interfaces for Simulation Software
Besides the actual calculations done by a software, the user interface can be very important, as it determines whether you can do certain things within a reasonable time. There are quite different concepts:
- Some software is controlled via input forms. It is simple to fill the requested input data into the form. However, you are then required to provide the data in exactly that form, and there is very little flexibility. Basically, the user can only adjust certain parameters, but not the general structure of the inputs or outputs.
- Other software uses an interactive graphical interface. If it is well done, it gives you more flexibility than a form. However, it can be tedious to reconstruct later what inputs you have done where and in which order.
- The most flexible concept is that of writing a script (i.e., a text file containing certain commands). A script describes your inputs, the desired calculation and how to display the results in graphical and/or text form. A script also well documents what you have done. However, you may be afraid of spending too much time learning a script language. Demo scripts and good documentation may help to get started quickly.
So we see that generally there is a trade-off to be made: some concepts are easiest to start with, while others are more flexible.
In my own software RP Fiber Power, made for designing fiber lasers and amplifiers, I used a combination of concepts in order to achieve a better combination of a quick start and highest flexibility. For not too complicated cases, the user can fill out forms. The software can create a script from the form inputs and execute that script. For more sophisticated simulations, the user may take such an automatically generated script and edit it further. I feel that this approach combines the best of two worlds.
If you are interested in discussing such issues, you may want to have a look at the Linked-In group on Optical Design and Analysis Software, where I started a discussion topic.
This article is a posting of the Photonics Spotlight, authored by Dr. Rüdiger Paschotta. You may link to this page and cite it, because its location is permanent. See also the RP Photonics Encyclopedia.
Questions and Comments from Users
Here you can submit questions and comments. As far as they get accepted by the author, they will appear above this paragraph together with the author’s answer. The author will decide on acceptance based on certain criteria. Essentially, the issue must be of sufficiently broad interest.
Please do not enter personal data here; we would otherwise delete it soon. (See also our privacy declaration.) If you wish to receive personal feedback or consultancy from the author, please contact him, e.g. via e-mail.
By submitting the information, you give your consent to the potential publication of your inputs on our website according to our rules. (If you later retract your consent, we will delete those inputs.) As your inputs are first reviewed by the author, they may be published with some delay.