Scilab es un paquete de computación numérica multiplataforma, gratuito y de código abierto , y un lenguaje de programación de alto nivel orientado numéricamente . Puede utilizarse para el procesamiento de señales , análisis estadístico , mejora de imágenes , simulaciones de dinámica de fluidos , optimización numérica , modelado, simulación de sistemas dinámicos explícitos e implícitos y (si se instala la caja de herramientas correspondiente) manipulaciones simbólicas. [ 2 ] [ 3 ] [ 4 ]
Scilab es una de las dos principales alternativas de código abierto a MATLAB , siendo la otra GNU Octave . [ 5 ] [ 6 ] [ 7 ] [ 8 ] Scilab pone menos énfasis en la compatibilidad sintáctica con MATLAB que Octave, [ 5 ] [ 9 ] [ 10 ] pero es lo suficientemente similar como para que algunos autores sugieran que es fácil transferir habilidades entre los dos sistemas. [ 11 ] Junto con Xcos .
Introducción
Scilab es un lenguaje de programación de alto nivel, orientado a cálculos numéricos. Proporciona un entorno de programación interpretado , con matrices como tipo de dato principal . Mediante el uso de computación matricial, tipado dinámico y gestión automática de memoria , muchos problemas numéricos pueden expresarse con un número reducido de líneas de código, en comparación con soluciones similares que utilizan lenguajes tradicionales como Fortran , C o C++ . Esto permite a los usuarios construir rápidamente modelos para una variedad de problemas matemáticos. Si bien el lenguaje ofrece operaciones matriciales sencillas, como la multiplicación, el paquete Scilab también proporciona una biblioteca de operaciones de alto nivel, como correlación y aritmética multidimensional compleja.
Scilab también incluye un paquete gratuito llamado Xcos para el modelado y la simulación de sistemas dinámicos explícitos e implícitos, incluyendo subsistemas continuos y discretos. Xcos es el equivalente de código abierto de Simulink de MathWorks .
Dado que la sintaxis de Scilab es similar a la de MATLAB, Scilab incluye un traductor de código fuente para facilitar la conversión de código de MATLAB a Scilab. Scilab está disponible de forma gratuita bajo una licencia de código abierto . Debido a su naturaleza de código abierto, algunas contribuciones de los usuarios se han integrado en el programa principal.
La programación orientada a objetos se introdujo en la versión Scilab 2026.0.0 con el classdefcomando .
Sintaxis
La sintaxis de Scilab se basa en gran medida en el lenguaje MATLAB. La forma más sencilla de ejecutar código Scilab es escribirlo en el indicador , --> , en la ventana de comandos gráfica. De esta manera, Scilab puede utilizarse como un entorno matemático interactivo .
¡Hola mundo! en Scilab:
disp ( 'Hola Mundo' );Representación gráfica de una función de superficie 3D:
// Un gráfico simple de z = f(x,y) t =[ 0 : 0.3 : 2 * %pi ] ' ; // nota: t es un vector columna, t' es un vector fila z = sin ( t ) * cos ( t ' ); // el producto diádico de sin(t) y cos(t') produce la matriz z plot3d ( t , t ' , z )Determinación del índice único equivalente correspondiente a un conjunto dado de valores de subíndice: [ 12 ]
función I = sub2ind ( dims,varargin ) //I = sub2ind(dims,i1,i2,..) devuelve el índice lineal equivalente a los //subíndices de fila, columna, ... en las matrices i1,i2,.. para una matriz de //tamaño dims. //I = sub2ind(dims,Mi) devuelve el índice lineal //equivalente a los n subíndices en las columnas de la matriz Mi para una matriz //de tamaño dims. d =[ 1 ; cumprod ( matrix ( dims ( 1 : $ - 1 ), - 1 , 1 ))] para i = 1 : size ( varargin ) si varargin ( i )==[] entonces I =[], return , fin finSi size ( varargin ) == 1 entonces // los subíndices son las columnas del argumento I = ( varargin ( 1 ) - 1 ) * d + 1 sino // los subíndices se dan como argumentos separados I = 1 para i = 1 : size ( varargin ) I = I + ( varargin ( i ) - 1 ) * d ( i ) fin fin finfunciónCajas de herramientas
Scilab tiene muchas cajas de herramientas aportadas por la comunidad para diferentes tareas, como por ejemplo:
- Scilab Image Processing Toolbox (SIP) y sus variantes (como SIVP)
- Caja de herramientas de ondículas de Scilab
- Módulo Scilab para Java y .NET
- Módulo de acceso remoto de Scilab
Hay más información disponible en ATOMS Portal o en la plataforma Scilab.
Historia
Scilab fue creado en 1990 por investigadores del INRIA y la École nationale des ponts et chaussées (ENPC). Inicialmente se denominó Ψlab [ 13 ] (Psilab) . El Consorcio Scilab se formó en mayo de 2003 para ampliar las contribuciones y promover Scilab como software de referencia mundial en el ámbito académico e industrial. [ 14 ] En julio de 2008, con el fin de mejorar la transferencia de tecnología, el Consorcio Scilab se unió a la Fundación Digiteo.
Scilab 5.1, la primera versión compilada para Mac , estuvo disponible a principios de 2009 y era compatible con Mac OS X 10.5 , también conocido como Leopard . Por lo tanto, OSX 10.4, Tiger , nunca fue compatible, salvo mediante la adaptación desde el código fuente. Se habían publicado versiones para Linux y Windows desde el principio, pero la compatibilidad con Solaris se eliminó con la versión 3.1.1, y con HP-UX con la versión 4.1.2 tras un soporte irregular.
En junio de 2010, el Consorcio anunció la creación de Scilab Enterprises. [ 15 ] Scilab Enterprises desarrolla y comercializa, directamente o a través de una red internacional de proveedores de servicios afiliados, un conjunto integral de servicios para los usuarios de Scilab. Scilab Enterprises también desarrolla y mantiene el software Scilab. El objetivo principal de Scilab Enterprises es facilitar y agilizar el uso de Scilab.
En febrero de 2017 se lanzó Scilab 6.0.0, que aprovechaba los últimos estándares de C++ y eliminaba las limitaciones de asignación de memoria.
Desde julio de 2012, Scilab es desarrollado y publicado por Scilab Enterprises y a principios de 2017 Scilab Enterprises fue adquirida por el pionero del prototipado virtual ESI Group [ 16 ].
Desde 2019 y la versión Scilab 6.0.2, la Universidad Tecnológica de Compiègne proporciona recursos para compilar y mantener la versión para macOS.
Tras cinco años de versiones de Scilab desarrolladas por ESI Group, el equipo operativo de Scilab se unió a Dassault Systèmes en 2022. [ 17 ] Desde entonces, las versiones de Scilab se han denominado según el año, siendo la primera scilab-2023.0.0. Normalmente se han publicado dos versiones al año, siendo la actual scilab-2026.1.0.
Aplicación Scilab Cloud y API de Scilab Cloud
Desde 2016, Scilab puede integrarse en un navegador y ser llamado a través de una interfaz escrita en Scilab o una API.
Este nuevo método de despliegue tiene las notables ventajas de enmascarar el código y los datos, además de proporcionar una gran potencia computacional. [ 18 ]
Estas características no se han incluido en la versión de código abierto de Scilab y siguen siendo desarrollos propietarios.
Véase también
Referencias
- ↑ "Scilab 2026.1.0" . Consultado el 19 de mayo de 2026 .
- ↑ Holopainen, Timo (2000). "Modelado y simulación de sistemas de máquinas multitecnológicas" (PDF) .
- ↑ Guenther, Raidl (mayo de 1998). «Un algoritmo genético mejorado para el problema de la mochila 0-1 con múltiples restricciones». Actas de la Conferencia Internacional IEEE de 1998 sobre Computación Evolutiva. Congreso Mundial IEEE sobre Inteligencia Computacional (Cat. No. 98TH8360) . págs. 207–211 . CiteSeerX 10.1.1.20.6454 . doi : 10.1109/ICEC.1998.699502 . ISBN 978-0-7803-4869-1. S2CID 2337792 .
- ↑ Philippe Roux (29 de marzo de 2016). Scilab: I. Fundamentos, de la teoría a la práctica . París, Francia. ISBN 978-2-8227-0293-5OCLC 1003630046 .
{{cite book}}: CS1 mantenimiento: falta el editor de ubicación ( enlace ) - 1 2 Thomas Trappenberg (2010). Fundamentos de la neurociencia computacional . Oxford University Press. pág. 361. ISBN 978-0-19-956841-3.
- ↑ A Muhammad; V Zalizniak (2011). Computación científica práctica . Woodhead Publishing . pág. 3. ISBN 978-0-85709-226-7.
- ↑ Bernard A. Megrey; Erlend Moksness (2008). Computers in Fisheries Research . Springer Science & Business Media. p. 345. ISBN 978-1-4020-8636-6.
- ↑ Raul Raymond Kapuno (2008). Programación para ingenieros químicos con C, C++ y MATLAB . Jones & Bartlett Publishers. pág. 365. ISBN 978-1-934015-09-4.
- ↑ Russell L. Herman (2013). Un curso de métodos matemáticos para físicos . CRC Press. pág. 42. ISBN 978-1-4665-8467-9.
- ↑ Alain Vande Wouwer; Philippe Saucez; Carlos Vilas (2014). Simulación de modelos ODE/PDE con MATLAB, OCTAVE y SCILAB: Aplicaciones científicas y de ingeniería . Springer. pp. 114–115 . ISBN 978-3-319-06790-2.
- ↑ Mark A. Haidekker (2013). Controles de retroalimentación lineal: Lo esencial . Newnes. pág. 3. ISBN 978-0-12-405513-1.
- ↑ pygments/tests/examplefiles/scilab/scilab.sci en GitHub
- ↑ "META2.3.1.1.html META2.3.1.1" .
- ↑ "Lanzamiento del consorcio SCILAB" . 2003.
- ↑ "SCILAB Enterprises anunció" . 2010.
{{cite web}}: CS1 maint: servicio de archivado obsoleto ( enlace ) - ↑ "ESI Group: Adquisición de Scilab Enterprises, editor del software analítico computacional de código abierto Scilab" . Archivado del original el 24 de agosto de 2017. Consultado el 24 de agosto de 2017 .
- ↑ "Historia de Scilab" . Consultado el 20 de marzo de 2025 .
- ↑ "Scilab Cloud" . Scilab.io . Archivado del original el 8 de octubre de 2017. Consultado el 8 de octubre de 2017 .
Lecturas adicionales
- Stephen L. Campbell; Jean-Philippe Chancelier; Ramine Nikoukhah (2006). Modelado y simulación en Scilab/Scicos . Nueva York: Springer. ISBN 978-0-387-27802-5.
Enlaces externos
- Sitio web de Scilab
- lenguajes de programación de matrices
- Software de sistema de álgebra computacional para Linux
- Sistemas de álgebra computacional
- Dassault Systèmes
- Software educativo gratuito
- Software matemático gratuito
- Software libre programado en Fortran
- Software de análisis numérico para Linux
- Software de análisis numérico para macOS
- Software de análisis numérico para Windows
- Lenguajes de programación numérica
- Software científico que utiliza GTK
- Software que utiliza la Licencia Pública General de GNU.