Jump to content

Scilab

From Alfawiki
Scilab Enterprises
Company typePrivate
IndustrySoftware
Founded1990
FounderResearchers at INRIA and École nationale des ponts et chaussées (ENPC)
Headquarters
France
Area served
Worldwide
ProductsScilab software and services
OwnerDassault Systèmes (since 2022)
ParentDassault Systèmes
Websitewww.scilab.org

Scilab is a free, open-source, and cross-platform software package designed for numerical computations, featuring a high-level programming language tailored to numerical tasks. Its capabilities encompass signal processing, statistical computations, image processing, fluid dynamics modeling, numerical optimization, and the simulation of dynamic systems. Users can extend its functionality with optional toolboxes that provide symbolic computation features.

As one of the two main open-source competitors to MATLAB, alongside GNU Octave, Scilab differentiates itself by placing less priority on strict MATLAB syntax compatibility. Nevertheless, it retains sufficient similarity to allow users to transition skills between these environments with ease.

Introduction

Scilab is a high-level programming language focused on numerical analysis, offering an interpreted platform where matrices serve as the fundamental data type. It employs matrix-centric calculations, dynamic typing, and automatic memory management, enabling more succinct formulations of numerical challenges compared to traditional languages such as Fortran, C, or C++. This design supports rapid prototyping and development of models across diverse mathematical fields. Beyond simple matrix manipulation, Scilab includes sophisticated libraries for operations like correlation and advanced multidimensional arithmetic.

The package also incorporates the free tool Xcos, which facilitates modeling and simulation of both explicit and implicit dynamical systems, covering continuous and discrete components. Xcos acts as an open-source counterpart to Simulink from the MathWorks.

With a syntax bearing resemblance to MATLAB, Scilab provides a source code translator that aids in converting MATLAB scripts. Released under an open source license, its open framework encourages community contributions that are integrated into the main software.

Syntax

The syntax of Scilab closely aligns with that of MATLAB. Users typically run commands interactively through the graphical command window prompt (--> ), making it an efficient environment for mathematical command-line operations.

Example displaying Hello World! in Scilab: <syntaxhighlight lang="scilab"> disp('Hello World'); </syntaxhighlight>

Rendering a 3D surface plot: <syntaxhighlight lang="scilab"> // Plotting z = f(x,y) t=[0:0.3:2*%pi]'; z=sin(t)*cos(t'); plot3d(t,t',z) </syntaxhighlight>

A sample function converting multiple subscript indices into a single linear index: <syntaxhighlight lang="scilab"> function I=sub2ind(dims,varargin)

 d=[1;cumprod(matrix(dims(1:$-1),-1,1))]
 for i=1:size(varargin)
   if varargin(i)==[] then I=[],return,end
 end
 if size(varargin)==1 then
   I=(varargin(1)-1)*d+1
 else
   I=1
   for i=1:size(varargin)
     I=I+(varargin(i)-1)*d(i)
   end
 end

endfunction </syntaxhighlight>

Toolboxes

Scilab provides a variety of contributed toolboxes aimed at specific applications, including but not limited to:

  • Scilab Image Processing Toolbox (SIP) along with related variants such as SIVP
  • Scilab Wavelet Toolbox
  • Scilab Java and .NET Module
  • Scilab Remote Access Module

Additional extensions can be obtained through the ATOMS Portal and the Scilab forge repository.

History

The inception of Scilab dates back to 1990 when it was created by researchers affiliated with INRIA and the École nationale des ponts et chaussées (ENPC), initially bearing the name Ψlab (Psilab). In 2003, the establishment of the Scilab Consortium aimed to broaden contributor involvement and position Scilab as a recognized standard within both academic and industrial sectors. By 2008, the Consortium had joined forces with the Digiteo Foundation to facilitate enhanced technology transfer.

Scilab's first version compatible with Mac systems, version 5.1, was released in early 2009 and supported OSX 10.5. Prior releases were designed for Linux and Windows platforms; support for Solaris was discontinued following version 3.1.1, while HP-UX compatibility ended after version 4.1.2 due to minimal usage.

In June 2010, Scilab Enterprises was created to manage the global development, maintenance, and commercialization of Scilab software and its associated services through partner networks, focusing on enhancing user engagement and adoption rates.

February 2017 marked the launch of Scilab 6.0.0, which introduced compliance with contemporary C++ standards and eliminated previous constraints on memory allocation.

Since July 2012, Scilab Enterprises has overseen ongoing development efforts; this company was subsequently acquired by ESI Group, a leader in Virtual Prototyping, in early 2017.

Beginning in 2019 with release 6.0.2, support for macOS builds has been provided by the University of Technology of Compiègne.

Following a five-year period under ESI Group’s management, the operational team responsible for Scilab transitioned to Dassault Systèmes in 2022.

Scilab Cloud App & Scilab Cloud API

Starting in 2016, Scilab introduced browser integration capabilities accessible via a dedicated interface or through an API developed in Scilab itself. This approach conceals both source code and data while delivering substantial computational resources. These proprietary functionalities are excluded from the open source distribution.

See also

Further reading

External links