Download Latest Version daetools-cxx-sdk-2.5.0.zip (54.2 MB)
Email in envelope

Get an email when there's a new version of DAE Tools Project

Name Modified Size InfoDownloads / Week
Parent folder
daetools-1.2.1-bugfix.zip 2012-10-27 4.5 kB
readme.txt 2012-10-15 6.8 kB
daetools-1.2.1-gnu_linux-i686-py26.tar.gz 2012-06-20 15.9 MB
daetools-1.2.1-gnu_linux-x86_64-py26.tar.gz 2012-06-19 16.5 MB
daetools-1.2.1-source.tar.gz 2012-06-16 2.8 MB
daetools-1.2.1-gnu_linux-x86_64-py27.tar.gz 2012-06-16 30.4 MB
daetools-1.2.1-gnu_linux-i686-py27.tar.gz 2012-06-14 29.4 MB
daetools-1.2.1-macosx-universal-py27.tar.gz 2012-06-14 32.6 MB
daetools-1.2.1-win32-py27.exe 2012-06-14 9.5 MB
Totals: 9 Items   137.0 MB 0
                              DAE Tools v1.2.1

Update (10 October 2012):
* 3D plot bug fix when detecting free domains (by Caleb Hattingh) and some code refactoring.

From the version 1.2.1 DAE Tools use distutils to distribute python packages and extensions.
Supported platforms: GNU/Linux (i686, x86_64), Windows (32 bit) and MacOS (x86, x86_64)
Supported python versions: 2.7
Supported numpy versions: GNU/Linux (1.5+, 1.6+), Windows (1.6+) and MacOS (1.6+)

For the other platforms, architectures and python versions daetools must be compiled
from the source.

                                Installation

First uninstall the old version of daetools.
1. GNU/Linux, MacOS
   sudo python setup.py install

2. Windows
   Run the provided installer

                                 Known Issues

* Sometimes in 64 bit GNU/Linux (ie. in Fedora) the boost libraries are copied
  to the wrong folder. The solution is to copy libboost_python-daetools-py27.so,
  libboost_thread-daetools-py27.so and libboost_system-daetools-py27.so to the
  correct folder (either /usr/lib or /usr/lib64)
* Trilinos solver does not work in Fedora (issue with umfpack and amd libraries)

                                  Changelog

* 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
* A new option added to the daetools.cfg config. file: resetLAMatrixAfterDiscontinuity;
  it applies only to sparse matrix LA solvers; if true LA solvers will recreate sparse
  matrix each time a discontinuity is detected (since the sparsity pattern might be
  changed); if false the DAE solver will create a single sparse matrix that includes
  a sparsity pattern from all states so that there is no need to recreate matrix each
  time a discontinuity is located; this obviously introduces higher memory requirements
  but brings significant integration speed improvements
* SuperLU LA solver can choose between two modes of reusing the factorization information
  from the previous steps: SamePattern and SamePattern_SameRowPerm (for more info see
  the superlu documentation); a new option added to the daetools.cfg config. file:
  factorizationMethod which can have one of the values above
* SuperLU LA solver can be instructed to create all the memory it needs at the beginning
  of simulation; this can be controlled in the daetools.cfg file by setting the
  useUserSuppliedWorkSpace option to true and adjusting the workspaceSizeMultiplier and 
  workspaceMemoryIncrement options (for more info see the superlu documentation)
* Added support for units; variables, parameters, domains 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);
  added three new classes: base_unit, unit and quantity and a new module: pyUnits
* A new option added to the daetools.cfg config. file: checkUnitsConsistency; if true
  the system will perform units-consistency tests for equations and logical expressions
  during the initialization phase
* Functions (Re)SetInitialCondition, SetInitialGuess, (Re)AssignValue in daeVariable
  and SetValue in daeParameter accept both floating point values and quantities;
  in the former case it is assumed that the value is in the units of the parameter/variable
  while in the later the numerical values is first converted to the parameter/variable
  units
* C++ tutorials and the python modules reorganized; now c++ tutorials are in the folder
  cxx-tutorials while the completely new folder tree has been created for python modules:
  all files are in the daetools-package folder
* Added platform specific folders for python extension modules
* Added support for python distutils (trunk/daetools-package folder)
* New functions in daeVariable: (Re)SetInitialConditions, SetInitialGuesses,
  (Re)AssignValues that set init. conditions, init. guesses or assign values of all
  points in a distributed variable
* All constants in equations must be dimensional and assigned units; two new functions
  (Constant and Array) are added that create single or an array of dimensional quantities
* The functions Time and Constant moved from the daeModel class to the global namespace
* A basic support for external functions (daeScalarExternalFunction and
  daeVectorExternalFunction) that can handle and evaluate functions existing in external
  libraries; in the future versions of daetools certain software components such as
  thermodynamic property packages will be supported
* A new type of 2D plots: Animated2D plot
* Trilinos family of LA solvers have also cDAE version
* Added a new function to daeSimulation: CleanUpData; in case of very large systems a lot
  of memory can be freed and made available to the system after the initialization;
  this is still an experimental option
* Array_xxx functions in daeVariable/daeParameter accept python lists and slices
* Equations can have an optional scaling; added two new functions: GetScaling/SetScaling
  (the property Scaling in pyDAE)
* Improved data reporting speed
* Parameters can also be reported
* Changes in data reporting during an optimization (now all iterations are reported
  independently)
* A new data reporter class: daeNoOpDataReporter; it just collects the reported values
  and does not do any processing (useful for building custom data reporters)
* OnEvent function can also accept events from outlet ports
* Enabled the option for the Lapack LA solver in Sundials IDAS
* Mac OSX port
* c++ (cDAE) tutorials
* Added several new functions to the daeLog_t and a progress bar to the daeSimulator;
  the new functions are GetProgress/SetProgress (property Progress), GetEnabled/SetEnabled
  (property Enabled), GetPrintProgress/SetPrintProgress (property PrintProgress),
  GetPercentageDone/SetPercentageDone (property PercentageDone) and GetETA
  (read-only property ETA)
* daeStdOutLog and daePythonStdOutLog print the progress information to the console
* Fixed bug in all versions of LA solvers in cDAE (a responsibility to destroy objects
  and to free memory was assigned to the DAE solver: now it is users responsibility)
* SuperLU and SuperLU_MT now statically linked
* Removed dependence on the system version of the boost libraries; all platforms
  now use the same version of the custom built boost libs (1.49.0)
* Fixed bug in python wrappers ("pure virtual function called") that was related
  to the sequence of datareporter and simulation objects instantiation
* Updated stylesheets and xsl transformation files for model reports
* Other small improvements and minor bugs fixes
Source: readme.txt, updated 2012-10-15