Project: | Siconos |
---|---|
Internal Release Number: | 1.0 |
Last update: | September 15, 2005 |
Attached Worksheets: | |
Related Documents: |
SICONOS is the European Project IST2001-37172, funded by the Commission of the European Communities, from September 1, 2002, to August 31, 2006.
It is a project of the Information Society Technologies programme, fifth framework programme (FP5). This project's goal is the study of complementarity dynamical systems (a class of hybrid dynamical systems).
It gathers scientists from various communities : Mechanics, Applied Mathematics, Systems and Control, and Numerical Analysis and from various European countries : United Kingdom, Netherlands, Italy, Switzerland, Spain and France.
The name SICONOS comes from the title of the project : Modeling, Simulation and Control of Non-smooth Dynamical Systems.
For example, a Non Smooth Dynamical System could be a system that incorporates friction and/or impacts for a mechanical one, or switchings for an electrical one.
The strategic aim of this project is the development of novel algorithms and numerical routines for the qualitative analysis, simulation and feedback control of non-smooth complementarity dynamical systems. The output of SICONOS will be an integrated numerical software package for the virtual prototyping of systems with discontinuities and development of novel control techniques for this class of dynamical systems. Therefore, this project is clearly focused on the development over 4 years of a user-friendly, versatile and computationally effective numerical tool for non-smooth systems, validated through its application to 3 key engineering problems : power electronic converters, walking robots and automotive systems.
This project is divided into 7 work-packages :The goal of this project is not redeveloping existing numerical routines, but providing framework for non-smooth problems. Particularly we want to reuse :
Especially, we will use Scilab, numerical libraries (LAPACK, ...) and modules of Lmgc90.
Lmgc90 is an existing platform for modeling interaction problems developed in FORTRAN90 in LMGC. This software is made of a library of components (F90 modules) which can be used through a macro-language named CHIC. For the basic algebra computations, this software relies on public numerical libraries such as LAPACK95, LAPACK and BLAS.
Although this software was designed in an oriented object way, one drawback is that Fortran 90 is not a real object-oriented language (lack of inheritance, template programming, dynamic polymorphism, ... ). Indeed, it could be difficult to add new modules and maintain the code.
The Siconos software is dedicated to the Modeling, Simulation, Analysis and Control of non smooth dynamical systems, i.e., abstract evolution problem where the non smooth character is crucial. To put it more precisely, six major sets of functionalities have been identified :
The development of the software has to take into account the diversity of users. For each types of users, several constraints in terms of development has to be taken into account :
For this type of users, user-friendly and interactive graphical interface are needed. This is the goal of the Front-End which must be integrated in a classical software for scientific computing as Matlab or Scilab.
For this type of users, the software we plan to develop should be modular and easy to extend with additional numerical routines. Particularly for this of users, the Front End must be able to call every methods in the platform (and not just higher-level method) in order to validate promptly the new algorithm inserted.
For this type of users, the architecture must be modular and well documented in order to be maintained and modified easily. To reach this goal, standard methods of Object Oriented Analysis and Design must be used.
In this section we present more precisely the six major functionalities of
the Siconos software. In this section the
relation between the functionalities are explicitly stated. The six major
functionalities of the platform are recalled in the Table and figure
below.
Name of the module | Functionality |
Siconos/Numerics | Low level numerical tools |
Siconos/Kernel | Modelling and numerical simulation |
Siconos/Frontend | Command interactive user interface |
Siconos/Analysis | Analysis of solution |
Siconos/Control | Control design and validation |
Siconos/Imse | Integrated modeling and Simulation Environment |
![]() |
This module has to perform several major functionalities of the Siconos software. This module is devoted to
the modeling and the simulation of a physical process in the framework of the
non smooth dynamical systems theory (NSDS).
The functionalities of this module may be stated as follows:
Several NSDS listed above (e.g LCS) may be decomposed in a smooth dynamical system, a set of relations between input/output variables and the state variables and a set of Non Smooth law which are listed below.
This module features the reformulation and the organization of the canonical model provided by the formalization part to realize the simulation. A numerical simulation is composed of :
The Siconos platform works with its own internal data structure, stored in the various attributes of the instantiated objects. This internal data structure will consist of :
Therefore, a specific storage structure must be defined and constitutes the Siconos specific files. This storage structure has to be very close to the object oriented data structure. The use of xml and associated tools (DOM) seems impossible to circumvent.
If the Siconos specific files do not contain the complete representation of the formalized model, it needs to specify how to construct this representation, i.e. the name of the plug-in and the identifier of the data files for this plug-in.
Indeed, there are 3 ways to inform the internal data structure :
There are 2 ways to save the internal data structure :
Furthermore, the structure of the Siconos specific files must be able to represent all the above way to read and to save the data. It means that even for a mixed representation, the location of the external files must be specified in the Siconos specific files.
Using these various mechanisms of reading and saving data, one can translate storage structure from external files to Siconos specific files.
This files must be exhaustive to allow a backup and a restart of a simulation at any specified time.
The Engine must allow the user to trace internal variables during a simulation. These values of the internal variables could be exported in various formats for other post-processing softwares.
This module provides the interface between the user and the platform. This interface have to fulfill several tasks :
This Front-End will be realized by two APIs :