ASCEND is a flexible modelling environment for solving hard engineering and science problems. It offers:
- an object-oriented model description language for describing your system,
- an interactive user interface that allows you to solve your model and explore the effect of changing the model parameters, and
- a scripting environment that allows you to automate your more complex simulation problems.
ASCEND was originally written at Carnegie Mellon University in the 1980s and includes powerful and reliable solver routines that analyse the structure of your model and can solve thousands of simultaneous nonlinear equations in a few seconds on everyday computer hardware. It is under active development and is licensed under the GNU General Public License ensuring that it is free software and will remain free.
ASCEND supports the use of scripts written in Tcl to "run" a model automatically. ASCEND can capture a script by tracking a session the user carries out manually.
ASCEND has two GUIs, an older and more complete one implemented in Tcl/Tk, and a newer one using Python/PyGTK which is under active development but still does not offer the functionality of the Tcl/Tk GUI.
The Tcl/Tk interface is implemented via directly-coded access to the Tcl/Tk interpreter using the C-language bindings provided by Tcl.