Menu

DAE Tools Project / News: Recent posts

DAE Tools 2.5.0 released

The maintenance release.
The new version brings support for PyQt6, Python 3.13 and OpenCS 2.5.0.

Posted by ciroki 2025-05-30 Labels: HPC OpenMP OpenCL OpenCS Modelling Simulation Optimization

OpenCS 2.5.0 released

The maintenance release.
The new version brings support for python 3.13.

Posted by ciroki 2025-05-30 Labels: HPC OpenMP OpenCL OpenCS MPI Modelling Simulation

OpenCS 2.2.0 released

The new version introduces explicitly vectorised equation kernels, OpenCL group- and kernel-based evaluators.

Posted by ciroki 2023-06-07 Labels: OpenCS OpenCL OpenMP MPI Modeling Simulation HPC

DAE Tools 2.2.0 released

The maintenance release.
The new version brings support for Python 3.11 and OpenCS 2.2.0.

Posted by ciroki 2023-06-07 Labels: HPC Modeling Simulation Optimization OpenMP OpenCL OpenCS Python

OpenCS 2.1.0 released

The major revision of the OpenCS.

The new version introduces the concept of equation groups and equation kernels.
Kernel equation bring performance improvement of one order of magnitude (in average).

New features:
Models can contain a coupled set of kernel equations and auxiliary equations.
All equations must belong to one of equation groups or kernels.
Auxiliary equations must be placed into a single or multiple groups of equations.
Kernels by default represent a group of equations.
Compute Stack Evaluators now operate on groups of equations (or kernels), not the range of equations.
Kernels generate source code in C++ (shared library kernels) and OpenCL.
The source code for shared library kernels is automatically compiled (CMake-based build).... read more

Posted by ciroki 2023-05-02 Labels: OpenCS OpenMP OpenCL MPI HPC Modelling Simulation Optimisation

DAE Tools 2.1.0

The maintenance release. The new version brings the latest version of solvers (IDAS) and OpenCS.

Posted by ciroki 2023-02-08 Labels: Modelling Simulation Optimization OpenMP OpenCL OpenCS HPC

OpenCS 2.0.0 released

The major revision of the Compute Stack Machine.

The new version brings the latest versions of numerical solvers (IDAS and CVodes), reduction of the instruction byte code size for 40%, support for equation kernels and groups of equations, and a more efficient method to specify equations.

Posted by ciroki 2023-02-08 Labels: OpenCS OpenCL OpenMP MPI HPC Modelling Simulation Optimization

OpenCS 1.2.0 released

The maintenance release.
The new version compiled using the recent compilers and brings the updated libraries.

Posted by ciroki 2023-01-21 Labels: OpenCS OpenMP OpenCL MPI HPC Modelling Simulation

DAE Tools 2.0.0 released

The maintenance release.
The new version brings DAE Tools and OpenCS support for Python 3.10.

Posted by ciroki 2023-01-19 Labels: DAE Tools OpenCS Modelling Optimization Simulation

OpenCS 1.1.0 released

The major revision of the OpenCS framework.
The new version brings an improved Compute Stack Machine implementation and OpenCS API, OpenCS Python wrappers and python examples and improved error handling.

Posted by ciroki 2019-04-01 Labels: OpenCS OpenMP OpenCL MPI Modelling Simulation DAE ODE Model exchange

DAE Tools 1.9.0 released

The new version brings an improved support for the OpenCS framework, OpenCS Python wrappers (pyOpenCS module), new OpenCS code generator, reduced memory requirements, single step integration mode and updated support for macOS.

Posted by ciroki 2019-04-01 Labels: OpenCS Modelling Simulation Optimization

OpenCS 1.0.0 released

The first release of the Open Compute Stack (OpenCS) framework.

OpenCS is a framework for modelling of large scale ODE/DAE systems, parallel evaluation of model equations and parallel simulations on shared and distributed memory systems.

The framework provides a platform-independent binary interface for model-exchange with the data structures to describe, store in computer memory and evaluate large scale ODE/DAE systems of equations. Model equations are specified in the Reverse Polish (postfix) notation as an array of binary data (a Compute Stack) for direct evaluation by simulators on all platforms/operating systems (including heterogeneous systems) with no additional processing nor compilation steps.

Posted by ciroki 2018-08-22 Labels: OpenCS OpenMP OpenCL MPI shared memory systems distributed memory systems model exchange modelling simulation

DAE Tools 1.8.1 released

The new version brings the support for the Open Compute Stack (OpenCS) framework and fully working iterative linear solvers (Sundials and Trilinos AztecOO GMRES).

Posted by ciroki 2018-08-22 Labels: OpenCS OpenCL OpenMP modelling simulation

DAE Tools 1.8.0 released

The new version brings improved parallelisation capabilities.
Model equations can be transformed into the postfix notation expression stacks and evaluated using:

  • OpenMP (on general purpose processors), and
  • OpenCL (on streaming processors and heterogeneous systems).

The new evaluation approach is in some cases up to one order of magnitude faster.

Posted by ciroki 2018-03-20

DAE Tools 1.7.2 updated

Windows 64 bit version available.
Intel Pardiso solver available on win32, win64 and GNU/Linux x86_64.
Updated FMI code generator and all data reporters.
Install script (setup.py) now uses setuptools (not distutils).

Posted by ciroki 2017-09-12 Labels: modeling simulation optimization sensitivity analysis code generation co-simulation

DAE Tools 1.7.2 released

The new version brings updates to the co-simulation support (Functional Mock-up Interface, FMI) and simplified execution of simulations/optimisations.

Posted by ciroki 2017-08-30 Labels: modeling simulation optimization sensitivity analysis code generation co-simulation

DAE Tools 1.7.1 released

The new version brings many important new features:

  • Equation residuals/derivatives can be calculated in parallel using the OpenMP interface
  • Assembly of Finite Element matrices can be performed in parallel using the OpenMP interface
  • Implemented high resolution upwind schemes with flux limiter
  • Added global Sensitivity Analysis capabilities (Morris screening, FAST/Sobol variance-based methods)
  • Added formal Code Verification tests (the Method of Exact Solutions and the Method of Manufactured Solutions)
  • Updated documentation
  • Many other new features and fixes
Posted by ciroki 2017-08-18 Labels: modelling simulation optimization sensitivity analysis

DAE Tools 1.7.0 released

The new version provides a support for thermophysical property packages and brings updates to the sensitivity analysis capabilities. MacOS version is again available. User Guide updated with new sections. Several new features added.

Posted by ciroki 2017-06-05 Labels: simulation modeling optimisation sensitivity analysis

DAE Tools 1.6.1 released

This version provides a native support for MSVC++ compiler (DAE Tools now available on Windows with python 3.5 and 3.6). All GUI features switched to PyQt5. Boost and solver libraries updated to the latest versions. Python versions supported: 2.7, 3.4, 3.5 and 3.6.

Posted by ciroki 2017-03-16

DAE Tools 1.6.0 released

The new version brings: a major revision of the support for Finite Elements, updated support for optimisation problems and optimisation solvers, Tutorials reorganised and split into four sections with two new ones: Chemical Engineering and Chemical Engineering Optimisation Examples, and many new features.

Posted by ciroki 2017-03-01

DAE Tools 1.2.1 released

  • Integration speed improvements (more than an order of magnitude, in some cases); no need for a memory copy from/to the DAE solver, a better integration step control and an option to avoid sparse matrix re-creations after a discontinuity
  • Added support for units; variables, parameters, domains points must have a numerical value in terms of a unit of measurement (quantity) and units-consistency is strictly enforced (although it can be switched off in the daetools.cfg config file); all constants in equations must be dimensional and assigned units
  • A basic support for external functions that can handle and evaluate functions in external libraries (the goal is to support certtain software components such as thermodynamic property packages)
  • A new type of 2D plots: Animated2D plot
  • Equations can have an optional scaling
  • Improved data reporting speed and changes in data reporting during an optimization
  • New distribution format (python disutils)
  • Mac OSX port
  • c++ (cDAE) tutorials
  • Support for the information about the progress of a simulation/optimization activity
  • Other small improvements and minor bugs fixes
Posted by ciroki 2012-06-14

DAE Tools 1.1.2 released

List of new features:

  • New type of ports: event ports (daeEventPort class)
  • A new function ON_EVENT in the daeModel class that specifies how the incoming events on a specific event port are handled
  • A new way of handling state transitions: the function ON_CONDITION in daeModel that specifies actions to be undertaken when the logical condition is satisfied
  • Non-linear least square minimization with daeMinpackLeastSq (scipy wrapper of Levenberg-Marquardt algorithm from Minpack)
  • Examples of DAE Tools and Scipy interoperabilty (scipy.optimize.fmin, scipy.optimize.leastsq)
  • Developed shell scripts to compile third party libraries (Sundials IDAS, SuperLU/SuperLU_MT, Trilinos, Bonmin, and NLopt), DAE Tools core libraries and boost.python extension modules
  • Some of the tutorials are available in c++ (cDAE) too
  • Some API polishing
Posted by ciroki 2011-09-29

DAE Tools 1.1.1 released

List of new features:

  • The main focus was to find and adapt a free multithreaded sparse direct solver for use with DAE Tools and it turned out that the best candidate is SuperLU_MT. As of DAE Tools v1.1.1 SuperLU (singlethreaded) and SuperLU_MT (multithreaded) are recommended linear equation solvers. All the other (Trilinos group of solvers, Intel Pardiso, ...) will remain there but with less support.
  • A set of Krylov iterative solvers has been added. Trilinos AztecOO solver with IFPACK, ML or built-in preconditioners is available. However, iterative solvers are not fully working yet and these solvers are still in an early/experimental phase.
  • As the GPGPUs become more and more attractive an effort is made to try to offload computation of the most demanding tasks to GPU. The starting point is obviously a linear equation solver and two options are offered:
  • CUSP
  • SuperLU_CUDA (OpenMP version of SuperLU_MT modifed to work on CUDA GPU devices). The solver is still in the early development phase and the brief description is given in SuperLU_CUDA. Few issues still remain unsolved and a help from CUDA experienced developers is welcomed!
  • The new NLP solver has been added (NLOPT from the Massachusetts Institute of Technology). More information about NLOPT and available solvers can be found on NLOPT wiki pages.
  • To separate NLP from MINLP problems the IPOPT is now a standalone solver.
  • All linear solvers are located in daetools/solvers directory.
  • Now all linear solvers support exporting sparse/dense matrices in .xpm image and matrix market file formats.
  • Models and ports now can be exported into some other modelling language. At the moment, models can be exported into pyDAE (python) and cDAE (c++) but other languages will be supported in the future (such as OpenModelica, EMSO, perhaps some proprietary etc...).
  • New data reporter (daeMatlabMATDataReporter) has been added that allows user to export the result into the Matlab MAT file format.
  • Operators + and - for daeDistributedEquationDomainInfo (daeDEDI) class which enable getting values/derivatives in distributed equations that are not equal to the index of the current iterator (see distillation column example for usage).
  • daeParameter/daeVariable constructors accept a list of domains (analogous to calling DistributeOnDomain for each domain).
  • Now all constraints are specified in the following way:
  • Inequality constraints: g(i) <= 0
  • Equality constraints: h(i) = 0
    DAE Tools source code has been checked by Valgrind and no memory leaks has been detected.
    Development of some useful models has been started. The models are located in model_library directory.
    A set of standard variable types has been developed. Variable types are located in daeVariableTypes.py file.
    Several minor bug fixes.
Posted by ciroki 2011-06-18

Version 1.0-5 released

Version 1.0-5 released (Sunday, December 12 2010).
It brings several new features such as:
Added opearators + - * / that accept both values and arrays.
Added functions d (partial derivative) and dt (derivative per time) which evaluate a derivative of an expression. Only opearators + - * / are supported.
Added daetools.cfg {in .info file format}. All core libraries use the settings from that file.
Added saving of the runtime simulation information.
Added support for initialization of complex models. Values of model variables now can be exported to a binary file and used later during the initialization.
Fixed functions Pause and Resume in daeDynamicActivity enabling pausing and resuming of a simulation.
Updated documentation (installation, getting started and user guide).
All tutorials modified so that they support two execution modes: gui (with daeSimulator GUI) and console. The execution modes are specified at the command line with the 'gui' and 'console' switches. Default is gui.
Matplotlib 3D plot replaced by Mayavi2 surface plots.

Posted by ciroki 2010-12-14
MongoDB Logo MongoDB