DAE Tools Project
DAE Tools is a cross-platform equation-based object-oriented modelling, simulation and optimisation software.
It is initially developed for simulation of processes in chemical process industry
(mass, heat and momentum transfers, chemical reactions, separation processes, thermodynamics).
Today, DAE Tools is multi-domain.
DAE Tools is released under the GNU General Public Licence
and runs on all major operating systems (Windows, GNU Linux and Mac OS) and architectures (x86, x86_64, arm).
Broadly speaking, it is not a modelling language nor an integrated software suite of data structures and routines
for scientific applications, but rather a higher level structure – an architectural design of interdependent
software components providing an API for:
- Model specification
- Activities on developed models (simulation, optimisation, parameter estimation)
- Processing of the results, such as plotting and exporting to various file formats
- Report generation
- Code generation, co-simulation and model exchange
Class of problems that can be solved by DAE Tools:
- Initial value problems of implicit form, described by a system of linear, non-linear, and (partial-)differential
- Index-1 DAE systems
- With lumped or distributed parameters: Finite Difference or Finite Elements Methods (still experimental)
- Steady-state or dynamic
- Continuous with some elements of event-driven systems (discontinuous equations, state transition networks
and discrete events)
DAE Tools apply a hybrid approach between modelling and general purpose programming languages, combining
the strengths of both approaches into a single one. The most important features of the hybrid approach are:
- Support for the runtime model generation
- Support for the runtime simulation set-up
- Support for complex runtime operating procedures
- Interoperability with the third-party software
- Suitability for embedding and use as a web application or software as a service
- Code-generation, model exchange and co-simulation capabilities
More information about DAE Tools can be found in the Introduction section
of the Documentation and the following publications:
The current release is 1.5.0.
SourceForge website is temporarily down. Until it becomes available the following links can be used for download:
Installation files can be found in the SourceForge website
and the source code in the SourceForge
More information on system requirements, downloading and installing DAE Tools
can be found in Getting DAE Tools.
[June 29 2016] The new 1.5.0 version is released. The most important new features:
- The new c++/MPI code generator. It can generate the c++ source code that contains the exported simulation,
data partitioning and interprocess communication using MPI. At the moment it is in the prrof of the concept stage.
- Updated other code generators. FMI code generator tested using the available tests.
- New types of plots in the DAE Plotter: animated 2D plot (including the video export), user-defined plots
(through user-specified python source code) and plotting of user specified data.
- Fixed bugs in calculation of initial conditions in daeSimulation.SolveInitial() and daeSimulation.Reinitialize() functions.
- Added global dt, d, d2, dt_array, d_array and d2_array functions that calculate time/partial derivatives.
- A number of small fixes and updates
Full list of news can be found here: News
- [April 8 2016] The first article on DAE Tools has been published in PeerJ Computer Science:
- Nikolić DD. (2016) DAE Tools: equation-based object-oriented modelling, simulation and optimisation software.
PeerJ Computer Science 2:e54. doi:10.7717/peerj-cs.54.
Detailed information about using DAE Tools, presentations, API reference and tutorials
can be found in Documentation.