Matlab / Scilab: which one in 2012?
Context
At the very beginning Matlab was freeware, developed with FORTRAN. Taken over in the 80’s by The MathWorks Company, it was entirely redesigned and industrialised; it became a powerful, rich and ergonomic environment for scientific calculation, so it quickly gained a great reputation and took the top spot in its sector.
On a common software basis, INRIA developed, with a lot less resources, the Scilab software that is today a realistic solution, supported by an industrial consortium. Unlike Matlab, Scilab has a considerable economic asset: it is free.
To complete the picture, other competing software (MatrixX, PVWave or Octave (free)) should be mentioned; however they are less significant and represent the outsiders on the current market.
Scilab
The most popular points invoked when promoting Scilab are:
- the cost: Scilab can be downloaded for free and can be used on any computer in a company, regardless of its size. On the contrary, Matlab is regularly deemed by industrialists as being too expensive. To manage Matlab licenses within a firm adds a non-negligible expense.
- the openness: Scilab is Open Source software. Every user has complete access to the source code, a crucial point when it comes to depending on an external supplier (in fields like defense, aeronautics…)
- the dynamism of the Scilab community which is an innovation criteria (implementation of new algorithms). In the case of a commercial solution, users depend on the choices of the publisher.
- the quality: the algorithms available with Scilab are well known for their quality, with a level at least comparable with its competitor, which is great for freeware.
- Scilab is supported by an industrial consortium of which some of the companies are major ones (CEA, CNES, Dassault, EADS, EDF, PSA Peugeot Citroën, Renault, Thales). This aspect ensures the good guidance of future releases to users.
Matlab
The advantages of a Matlab solution are:
- its wealth: The Matlab environment includes a wide range of tools for several domains. For instance, a single homogeneous environment includes all the tools required to achieve the designing of a reliable control system, and its prototyping in real time: this represents a decisive asset.
- the completion: the Matlab package is consistent, neat and reliable. This is hard-to-get quality when the program comes from a decentralised and less-organised community, as Open source programs are.
- it is a standard, taught in most of the schools and used in most large companies, that aspect facilitates file exchanges between users.
- IT development is realised by a team of hundreds of programmers, ensuring a continuous evolution of the software and the regular release of new versions with, each time, new functions.
- the documentation supplied with Matlab is complete and professional. On the opposite, its quality is often criticised with Scilab.
- Matlab releases are tested extensively before distribution. Even if there are few issues with the early versions, they still have a high level of reliability.
Which one?
When time to choose comes, the cost of the initial investment is often a major criterion for making the decision, but do not forget to take hidden charges in account. The time saved with a trustworthy and complete software program can be considerable. The decision maker will also have to think about former investments: IT migration of complex programs from Matlab to Scilab is not certified and can be very expensive, and sometimes impossible.
Nevertheless, for low complexity level applications or broad-based ones, Scilab is likely to be the more decent solution. Indeed, it can be spread across an entire comapny at no cost to provide a common set of tools to everyone.
Some major industrialists have decided to use both Scilab and Matlab; the first one is used for low level scientific computations whereas the second one is reserved for more challenging programs, often linked to onboard computing.
If you are still hesitating in spite of this advice, you can contact Acsystème’s advisors, who are Matlab and Scilab instructors. They will help you analyse your needs in order to make the right choice.