After several requests about precise instructions on how to install iDMC on Ubuntu-linux, I finally decided to write down basic, generic instructions on how to do that. You can find it there.
It should work on any debian-based linux distribution.
Wednesday, 15 April 2009
Friday, 11 July 2008
Released a minor new version of iDMC
As the title suggests, a minor new version of iDMC has been released. The version 2.0.10 can be download from here, and has the following changes w.r.t. version 2.0.9:
Thanks to prof. M. Lines for suggesting point (1), and to prof. A. Medio for pointing out issue (2).
- fixed legend in Lyap.exp. map plot: 'NA' instead of 'divergent'
- fixed bug in trajectory initialization code
- misc internal code cleaning
- silent error message is reported when 'NaN' values on trajectory rendering
Thanks to prof. M. Lines for suggesting point (1), and to prof. A. Medio for pointing out issue (2).
Friday, 30 May 2008
Released idmclib 0.10.0
A new version of the idmclib has been released.
The API is backward compatible, so that any project using previous versions of the library can switch to this new release efforthlessy.
Beside the usual (minor) bug fixes, this release display some important changes:
TCL bindings will allow much easier testing of old and new C code, and the eventual development of special purpose, cross-platform applications. In this respect, the Tk toolkit is also a valid option for prototyping GUIs around crude library functionalities.
The new attractor module has been added mostly for internal use, and provides data structures and methods for handling sets of arbitrary-dimensional points (which can be read, for instance, as 'attractors'), and lists of those lists of points.
Finally, some words on the Lua upgrade. Until version 0.9.0, the idmclib was based on the release 5.0.x of the Lua library. This was released on April 2003, and got last update on on 26 Jun 2006. Now development of series 5.0.x seems to be stalled, so the need to upgrade to the more recent release of the Lua library: 5.1.3. This new version has some interesting new features, is considerably easier to compile and, most important, is actively maintained.
The API is backward compatible, so that any project using previous versions of the library can switch to this new release efforthlessy.
Beside the usual (minor) bug fixes, this release display some important changes:
- added TCL bindings
- added a new 'attractor' module
- upgraded documentation
- upgraded dependency on the 5.1.x series of the Lua library
TCL bindings will allow much easier testing of old and new C code, and the eventual development of special purpose, cross-platform applications. In this respect, the Tk toolkit is also a valid option for prototyping GUIs around crude library functionalities.
The new attractor module has been added mostly for internal use, and provides data structures and methods for handling sets of arbitrary-dimensional points (which can be read, for instance, as 'attractors'), and lists of those lists of points.
Finally, some words on the Lua upgrade. Until version 0.9.0, the idmclib was based on the release 5.0.x of the Lua library. This was released on April 2003, and got last update on on 26 Jun 2006. Now development of series 5.0.x seems to be stalled, so the need to upgrade to the more recent release of the Lua library: 5.1.3. This new version has some interesting new features, is considerably easier to compile and, most important, is actively maintained.
Tuesday, 13 May 2008
Models archive
A web space has been prepared for collecting iDMC models. Submission of models from all iDMC users is strongly encouraged.
To submit, send a message to the iDMC mailing list:
idmc-discussion_at_googlegroups_dot_com
with the lua file attached and a link to model documentation (a related paper or at least a file with model description and typical initial and parameter values). Model files are made freely available to the public under the GPLv2 license.
To submit, send a message to the iDMC mailing list:
idmc-discussion_at_googlegroups_dot_com
with the lua file attached and a link to model documentation (a related paper or at least a file with model description and typical initial and parameter values). Model files are made freely available to the public under the GPLv2 license.
Wednesday, 16 April 2008
iDMC - version 2.0.9 released
iDMC version 2.0.9 has been released.
That version sees the core numerical idmclib upgraded to version 0.9.0 (which in turn fixes a serious numerical bug affecting computation of Lyapunov exponents on systems with no jacobian information).
Fixed also a minor bug affecting trajectory plot with manual chart bounds.
That version sees the core numerical idmclib upgraded to version 0.9.0 (which in turn fixes a serious numerical bug affecting computation of Lyapunov exponents on systems with no jacobian information).
Fixed also a minor bug affecting trajectory plot with manual chart bounds.
Monday, 24 March 2008
iDMC - version 2.0.8 released
A minor new version of iDMC has been released (previous release was on 2/11/2007).
That fixes a regression introduced in 2.0.7, causing problems in handling trajectory plots of models with more than 2 dimensions, and uses a more recent version of the idmclib (0.8.0).
Thanks again, Marji, for pointing me the bug!
That fixes a regression introduced in 2.0.7, causing problems in handling trajectory plots of models with more than 2 dimensions, and uses a more recent version of the idmclib (0.8.0).
Thanks again, Marji, for pointing me the bug!
Monday, 18 February 2008
RiDMC 0.9-0 released
Following the recent release of the 0.9.0 version of idmclib, RiDMC 0.9-0 has been released. As usual, platform independent sources and windows binary packages can be downloaded.
This version is more a development snapshot than a milestone release. However, there are some interesting changes:
This version is more a development snapshot than a milestone release. However, there are some interesting changes:
- upgraded idmclib to version 0.9.0
- added some as.matrix methods (now all idmc_xxx classes have an as.matrix method)
- fixed (many) bugs in Trajectory, TrajectoryList, LyapunpovExponents plotting functions
- added detailed LUA syntax errors reporting
Saturday, 16 February 2008
Released idmclib 0.9.0
A new version of the idmclib has been released.
From the change log:
- added tutorial chapter to documentation
- added intro section to documentation
- fixes and additions to documentation
- robustified IDMC_EPS_VALUE definition
- added pkg-config support
- added C++ compatibility directives to include files
The online html developers guide has been updated accordingly.
From the change log:
- added tutorial chapter to documentation
- added intro section to documentation
- fixes and additions to documentation
- robustified IDMC_EPS_VALUE definition
- added pkg-config support
- added C++ compatibility directives to include files
The online html developers guide has been updated accordingly.
Monday, 4 February 2008
idmclib developers guide now online
After some delay, I've finally put online the html version of the idmclib developers guide.
The idmclib manual is already shipped with the idmclib, and can be compiled in html and pdf format. However, potential users which might want to just give a brief look to what idmclib is can now look at the developers guide without ever downloading the source package.
Note that the published guide is relative to the latest release of the library. I will try to keep it up-to-date with future releases. However, for older/newer versions, one can always look at the distributed idmclib packages.
The idmclib manual is already shipped with the idmclib, and can be compiled in html and pdf format. However, potential users which might want to just give a brief look to what idmclib is can now look at the developers guide without ever downloading the source package.
Note that the published guide is relative to the latest release of the library. I will try to keep it up-to-date with future releases. However, for older/newer versions, one can always look at the distributed idmclib packages.
Friday, 18 January 2008
iDMC 3D: a demo C++ application which uses the idmclib
I've written from scratch a new application, tentativly called iDMC-3D, a demo application based on the idmclib, largely inspired by iDMC, which lets you visualize trajectories of continuous-time dynamical systems in a 3D space. You can download the win32 binary package here, and package sources with compiling instructions here. It doesn't require Java or something else, so windows users can just unzip on their desktop and launch the binary 'idmc.exe'.
The application is essentially GUI and some logic, and uses the powerful, small and fast FOX library for cross-platform GUI building and OpenGL handling.
This application is to be intended as just a demo: is likely to be full of bugs, but working correctly with shipped models in most common situations. Moreover, it isn't officially supported by anyone, even if I appreciate feedback, comments and suggestions. Note that this is my first FOX application, as well as my first C++ program after a couple of years, so please be gentle in reviewing the sources:-)
Lets see how it works with a couple of screenshots...
This is how it looks when started on my linux box:

After opening a model (here the Rossler model), a new subordinate window pops up:

Now we can compute a trajectory:

Feed in sensible starting values, parameters, time span (in time units), transient and step size to be used in numerical integration:
After clicking 'Ok', you can watch the result:
You can interactively drag with the mouse pointer to rotate, right-click for the above shown menu, mouse wheel for zooming.
On the left side, you can choose which variables to show. Here the model has just 3 variables, named 'x','y' and 'z', so not many options. But you can always include the time axis in the plot:

That's all. Have fun!
The application is essentially GUI and some logic, and uses the powerful, small and fast FOX library for cross-platform GUI building and OpenGL handling.
This application is to be intended as just a demo: is likely to be full of bugs, but working correctly with shipped models in most common situations. Moreover, it isn't officially supported by anyone, even if I appreciate feedback, comments and suggestions. Note that this is my first FOX application, as well as my first C++ program after a couple of years, so please be gentle in reviewing the sources:-)
Lets see how it works with a couple of screenshots...
This is how it looks when started on my linux box:

After opening a model (here the Rossler model), a new subordinate window pops up:

Now we can compute a trajectory:

Feed in sensible starting values, parameters, time span (in time units), transient and step size to be used in numerical integration:
After clicking 'Ok', you can watch the result:
You can interactively drag with the mouse pointer to rotate, right-click for the above shown menu, mouse wheel for zooming.On the left side, you can choose which variables to show. Here the model has just 3 variables, named 'x','y' and 'z', so not many options. But you can always include the time axis in the plot:

That's all. Have fun!
Saturday, 1 December 2007
Released RiDMC 0.8-2
I have rolled up a new version of RiDMC some moments ago.
In this version, all plotting functions have been completely redesigned, for allowing easier plot customization. The online demo has been updated accordingly.
Here an example adapted from the Basin man page:
m <- Model(exModelFile('henon'))
b1 <- Basin(m, c(1.42,0.3), c(-2,2), 200, c(-2, 2), 200, 1000, 1000)
plot(b1, legend=TRUE)

Among other things, package source size have been reduced considerably (from 2.5Mb to 842Kb), and the configure script (needed on *nix platforms) slightly robustified.
In this version, all plotting functions have been completely redesigned, for allowing easier plot customization. The online demo has been updated accordingly.
Here an example adapted from the Basin man page:
m <- Model(exModelFile('henon'))
b1 <- Basin(m, c(1.42,0.3), c(-2,2), 200, c(-2, 2), 200, 1000, 1000)
plot(b1, legend=TRUE)

Among other things, package source size have been reduced considerably (from 2.5Mb to 842Kb), and the configure script (needed on *nix platforms) slightly robustified.
Saturday, 24 November 2007
Released RiDMC 0.8-0
As already anticipated, I've released a new version of RiDMC, which now depends on idmclib-0.8.0. There are no important changes for the end user.
Packages sources and windows binaries can be downloaded here.
Packages sources and windows binaries can be downloaded here.
Friday, 16 November 2007
Released a new version of idmclib
A new version of the idmclib (version 0.8.0) have just been released. You can grab it from the usual place.
This new version now depends on GSL version >= 1.9 (instead of 1.7).
This version of the GSL library finally have functions for the computation of eigenvalues of real nonsymmetric matrices. This frees idmclib from the need of Fortran LAPACK code for this specific task.
So, what does this means in practice?
To the end user of the idmclib library, nothing, except that now a different algorithm is used for jacobian eigenvalues computation in the periodic cycles routine.
For anyone who wants to compile idmclib on his platform, means that you don't need a fortran compiler anymore: CMake + gcc will be enough!
This change should facilitate redistribution of idmclib, and its use in other projects.
I'm already working on upgrading RiDMC to this new version of the idmclib. Then will be the turn of the stand-alone iDMC.
This new version now depends on GSL version >= 1.9 (instead of 1.7).
This version of the GSL library finally have functions for the computation of eigenvalues of real nonsymmetric matrices. This frees idmclib from the need of Fortran LAPACK code for this specific task.
So, what does this means in practice?
To the end user of the idmclib library, nothing, except that now a different algorithm is used for jacobian eigenvalues computation in the periodic cycles routine.
For anyone who wants to compile idmclib on his platform, means that you don't need a fortran compiler anymore: CMake + gcc will be enough!
This change should facilitate redistribution of idmclib, and its use in other projects.
I'm already working on upgrading RiDMC to this new version of the idmclib. Then will be the turn of the stand-alone iDMC.
Friday, 2 November 2007
iDMC - version 2.0.7 released
A minor new version of iDMC has been released.
For the end user, this fixes a bug pointed out by some Marji Lines students: in trajectory plots, when using the 'automatic bounds' option, you get an incorrect starting value in the plot.
Here an example with the Solow model (sample model in 'Economic' folder).
With 2.0.6 you get:
With 2.0.7:
For the end user, this fixes a bug pointed out by some Marji Lines students: in trajectory plots, when using the 'automatic bounds' option, you get an incorrect starting value in the plot.
Here an example with the Solow model (sample model in 'Economic' folder).
With 2.0.6 you get:
With 2.0.7:
Sunday, 7 October 2007
iDMC, version 2.0.6 has been released.
This is a minor release, with bugfixes:

As usual, you can download the installer from here, and report bugs to
idmc-discussion _at_ googlegroups.com
This is a minor release, with bugfixes:
- fixed bug in trajectory plot when 'Variation' option activated
- fixed Lyapunov exponents plot in parameters space when there are diverging exponents
- now there is one installer file working for both windows and linux

As usual, you can download the installer from here, and report bugs to
idmc-discussion _at_ googlegroups.com
Wednesday, 11 July 2007
iDMC - version 2.0.5 released
iDMC, version 2.0.5 has been released.
The most evident change, is the new cross-platform java installer:

This works under Windows and Linux-i386.
Some other changes w.r.t. version 2.0.4:
The most evident change, is the new cross-platform java installer:

This works under Windows and Linux-i386.
Some other changes w.r.t. version 2.0.4:
- internal code cleaning
- removed broken ODE solver option from trajectory plot
- fixed 'Save Data as...' menu item enabling/disabling, improved related error messages
- upgraded idmclib to version 0.7.0
- idmclib version number retrieved at runtime
Monday, 9 July 2007
iDMC sources again online
iDMC, idmclib and RiDMC sources have been moved on repo.or.cz.
Here you can keep track of projects development, as well as make contributions.
By the way, googlecode source repository service is no more used.
Many reasons for that, the most important: now I can work offline, and publish changes from time to time.
Now you can get a full copy of the iDMC repository by:
$ git clone http://repo.or.cz/r/iDMC.git
Similar commands for idmclib and RiDMC.
Here you can keep track of projects development, as well as make contributions.
By the way, googlecode source repository service is no more used.
Many reasons for that, the most important: now I can work offline, and publish changes from time to time.
Now you can get a full copy of the iDMC repository by:
$ git clone http://repo.or.cz/r/iDMC.git
Similar commands for idmclib and RiDMC.
Saturday, 7 July 2007
idmclib and RiDMC 0.7.0
A new version of idmclib and of RiDMC have been released.
They're both named 0.7.0.
idmclib has a bug fix in the new 'slow' basin algorithm and improved and cleaned dynamic version info retrievial functions. This lets other software (i.e. idmclib and RiDMC) getting idmclib version number at runtime.
RiDMC has many improvements. Among others:
They're both named 0.7.0.
idmclib has a bug fix in the new 'slow' basin algorithm and improved and cleaned dynamic version info retrievial functions. This lets other software (i.e. idmclib and RiDMC) getting idmclib version number at runtime.
RiDMC has many improvements. Among others:
- cleaned and unified continuous and discrete trajectory functions in one generic function
- added more details in package man pages
- GUI dialog for selection of sample model file
- better interface for customizing basins of attraction plot
Friday, 22 June 2007
Static linux binary released
I've released the Linux static binary of iDMC-2.0.4, for i386, 32bit systems.
This has no external dependencies so, if you have Sun Java 6, you can run it by typing from a shell prompt:
tar xjf iDmc-2.0.4-linux-i386-32.tar.bz2
cd iDmc-2.0.4
java -jar iDmc-2.0.4.jar
As usual, you can download it from the downloads section.
This has no external dependencies so, if you have Sun Java 6, you can run it by typing from a shell prompt:
tar xjf iDmc-2.0.4-linux-i386-32.tar.bz2
cd iDmc-2.0.4
java -jar iDmc-2.0.4.jar
As usual, you can download it from the downloads section.
Friday, 15 June 2007
New BoA algorithm for idmclib and RiDMC
First of all, the news: idmclib-0.6.0 and RiDMC-0.6-0 released. They can be downloaded from the downloads section of the idmclib home page.
Special thanks to Marji Lines who, after trying out RiDMC-0.5-3, pointed out that there are interesting cases where the 'fast' BoA (Basins of Attraction) algorithm provided by idmclib simply doesn't work at all.
Following her suggestions, the slower (but sometimes more precise) algorithm already developed in the stand-alone version of iDMC has been added to the idmclib C library .
In brief, the main difference w.r.t. the faster algorithm is that there is a preliminary phase where all attractors are found, before actual plotting.
Now idmclib has a small set of new function dedicated to the new BoA algorithm, while the RiDMC package has been uppgraded accordingly, by adding 3 more options to the Basin R function. A nice example has been added to the Basin help page to illustrate this change. Have fun with it!
Special thanks to Marji Lines who, after trying out RiDMC-0.5-3, pointed out that there are interesting cases where the 'fast' BoA (Basins of Attraction) algorithm provided by idmclib simply doesn't work at all.
Following her suggestions, the slower (but sometimes more precise) algorithm already developed in the stand-alone version of iDMC has been added to the idmclib C library .
In brief, the main difference w.r.t. the faster algorithm is that there is a preliminary phase where all attractors are found, before actual plotting.
Now idmclib has a small set of new function dedicated to the new BoA algorithm, while the RiDMC package has been uppgraded accordingly, by adding 3 more options to the Basin R function. A nice example has been added to the Basin help page to illustrate this change. Have fun with it!
Subscribe to:
Posts (Atom)