Le 1er octobre 2012, la version 5.4.0 de Scilab a été publiée.
Scilab est un logiciel libre et open source de calcul numérique. D’après Wikipédia : « Scilab (prononciation : [sajlab] contraction de Scientific Laboratory en anglais) est un logiciel libre de calcul numérique multi‐plate‐forme fournissant un environnement de calcul pour des applications scientifiques. Il possède un langage de programmation orienté calcul numérique de haut niveau. Il peut être utilisé pour le traitement du signal, l’analyse statistique, le traitement d’images, les simulations de dynamique des fluides, l’optimisation numérique, et la modélisation et simulation de systèmes dynamiques explicites et implicites.
Il est disponible pour Windows, Mac OS X, GNU/Linux et BSD. »
La version 5.4.0 est une évolution majeure de Scilab, à la fois d’un point de vue technique et fonctionnel, mais aussi parce qu’elle a été développée et publiée — pour la première fois — par une société privée, issue de l’Inria et du Consortium Scilab, Scilab Enterprises.
Nouvelles fonctionnalités
Scilab Desktop
Évolution la plus visible et peut‐être la plus attendue des utilisateurs, Scilab Desktop propose un docking complet des fenêtres. Par défaut, à la place de la simple console, Scilab affiche un navigateur de fichiers, un navigateur et un éditeur de variables, ainsi qu’un gestionnaire d’historique. L’ensemble des fenêtres du logiciel est dockable et undockable, leur position et statut étant sauvegardés d’une instance à l’autre.
Scilab préférences
Dans les versions précédentes, les options de configuration du logiciel étaient accessibles à différents endroits (interface graphique, fonctions, fichier de configuration, etc.). Grâce à l’application Preferences, une interface unique est proposée pour configurer les différentes options et paramètres du logiciel.
Graphiques
Basé sur une bibliothèque Java de rendu scientifique 2D/3D intitulée Scirenderer, le graphique de Scilab est largement amélioré, à la fois en termes de performances, de maintenance et de qualité du rendu.
Développée dans le cadre du projet ANR Collaviz, Scirenderer est proposée sous forme d’une bibliothèque open source Java disponible sur la forge de Scilab.
Binding XML
Résultat du projet en collaboration OASIS, porté par le Pôle de compétitivité Systematic Paris‐Région, Scilab est capable de manière intrinsèque de lire et d’écrire des fichiers XML. Représentées sous forme d’arbre, les valeurs numériques sont particulièrement bien traitées.
Documentation
La documentation a été améliorée et mise à jour : nouvelles catégories, exemples de rendu graphique contribuent à enrichir les pages d’aide, etc.
Format de stockage normalisé basé sur HDF5
Scilab a fait le choix de HDF5 comme format de stockage de données numériques par défaut pour ses résultats. Ainsi, le format de stockage de données numériques HDF5 prenant de plus en plus d’importance dans le monde scientifique, le format SOD (Scilab OpenData) propose une normalisation de l’ensemble des données Scilab.
Xcos
L’outil de modélisation et de simulation, unique alternative open source à Simulink, a vu ses performances fortement améliorées, tout en améliorant la stabilité et l’utilisabilité du module.
Outils de développement
Ces dernières années, afin d’améliorer la qualité du logiciel, de nombreuses méthodes et outils ont été mis en place.
Outil de revue de code
Scilab a été l’un des premiers à utiliser Gerrit/Git. Développé par Google pour le développement d’Android, il permet de valider ou refuser des commits de manière simple, mais aussi de les annoter.
Ainsi, partant du dicton « on est plus intelligent à plusieurs », la revue de code permet d’éviter des erreurs classiques ou des modifications non conformes aux normes établies de développement. Aspect bien moins connu, mais aussi significatif, elle permet d’accompagner des débutants dans leurs développements.
Intégration continue
Couplé au dépôt Git, toutes les minutes, le Jenkins Scilab va lancer plusieurs constructions du logiciels avec différents compilateurs et options. Associé aux lancements de tests unitaires Scilab et Java, ce processus assure une détection rapide et efficace des régressions potentielles.
Avenir de Scilab et de son écosystème
Scilab Enterprises
Après avoir été développé au sein de l’Inria puis par la fondation Campus Paris Saclay (DIGITEO), le travail de transfert technologique a permis la création de Scilab Enterprises.
Fondée sur le modèle économique classique du logiciel libre, Scilab Enterprises propose une gamme de services associés au logiciel (développements spécifiques, formations, maintenance…) pour continuer à garantir et distribuer un logiciel libre et gratuit.
Les clients de Scilab Enterprises sont des grands instituts (CNES, etc.), des groupes industriels de premier plan (Astrium, ArcelorMittal, SNECMA, etc.) et des PME.
Projet Richelieu
Projet du Groupe Thématique Logiciel Libre (GTLL) du Pôle de compétitivité Systematic, le projet Richelieu vise à proposer de la compilation à la volée (Just‐In‐Time) dans le logiciel Scilab. Basé sur VMKIT, construit sur LLVM, le gain de performance peut être supérieur à un facteur 10.
Aller plus loin
- Site Web de Scilab (837 clics)
- Téléchargement de Scilab (264 clics)
- Documentation de Scilab (149 clics)
- Scilab Enterprises (62 clics)
- Liste complète de tous les changements (127 clics)
# Format HDF5
Posté par Sytoka Modon (site web personnel) . Évalué à 7.
Un page qui donne les nouveautés : http://www.scilab.org/fr/products/scilab/download/5.4.0/whatsnew
Il y a un point qui me semble bien, c'est la partie stockage basé sur HDF5 sous le nom de SOD. Est ce qu'il y a un document ou le format est décrit ? J'ai trouvé cela mais cela n'explique pas comment sous ranger les chose dans le HDF5.
http://help.scilab.org/docs/5.4.0/en_US/save.html
http://help.scilab.org/docs/5.4.0/en_US/load.html
En effet, on fait un peu pareil avec NetCDF4 d'avoir une version assez pratique dans 90% des cas. Sachant que le NetCDF4 est du HDF5, autant essayer d'être compatible si possible…
Je sais que Matlab a intégré l'API NetCDF et HDF5, tout cela est donc très bon.
http://www.mathworks.fr/fr/help/matlab/ref/hdf5.html
Reste un point pénible avec scilab, marche t'elle correctement sous GNU/Linux sans carte 3D maintenant (nvidia). J'avoue que sur la debian actuelle, on a de gros soucis de ce coté là.
[^] # Re: Format HDF5
Posté par Sytoka Modon (site web personnel) . Évalué à 5.
Je rajoute un point qui serait plus que bien, avoir un module Fortran 90 pour manipuler les fichier HDF5 rangés sous la hiérarchie SOD. En effet, si on avait un wrappeur qui simplifie tout cela, ce serait GENIAL !
En effet, on passe notre temps à transférer des données en les codes de calcul et les langages de script…
A savoir, il est assez facile d'accéder via le protocole DAP (sur HTTP) a des bouts de tableaux NetCDF ou HDF. c'est donc vraiment des formats à privilégier à mon sens dans le calcul.
[^] # Re: Format HDF5
Posté par Sylvestre Ledru (site web personnel) . Évalué à 1.
Oui, c'est documenté et spécifié sous la forme d'un SEP (Scilab Enhancement Proposal). Ils sont publiés ici:
http://cgit.scilab.org/scilab/tree/SEP
Et c'est le SEP 64 (SEP_064_hdf5_scilab_specification.odt).
Je vais voir pour la publier sur une page web directement.
[^] # Re: Format HDF5
Posté par Sytoka Modon (site web personnel) . Évalué à 2.
Il y a deux SEP 064, il doit y avoir un bogue dans la numérotation.
Ensuite, le document semble absolument illisible actuellement ;-)
[^] # Re: Format HDF5
Posté par Sylvestre Ledru (site web personnel) . Évalué à 1.
Il faut cliquer sur "plain" à droite pour le récupérer.
[^] # Re: Format HDF5
Posté par Sytoka Modon (site web personnel) . Évalué à 2.
Merci, ça marche. C'est clair que j'aurais pas cliqué là… Un point à améliorer sur la feuille de route ;-)
[^] # Re: Format HDF5
Posté par Sylvestre Ledru (site web personnel) . Évalué à 1.
Il faudrait surtout que l'on fournisse une page qui liste tous les SEP avec un export HTML.
A la manière des PEPs de Python: http://www.python.org/dev/peps/
# ponts avec Matlab
Posté par Adrien . Évalué à 3.
Par rapport à Matlab, comment se situe Scilab ? Est-il possible et facile de passer des codes Matlab en codes Scilab ?
Perso je n'y connais pas grand chose dans le domaine, mais beaucoup de mes utilisateurs utilisent Matlab…
[^] # Re: ponts avec Matlab
Posté par contra-sh . Évalué à 1.
Je me rappelle avoir utilisé une option dans l'interface scilab pour convertir des fichiers matlab (.m) en scilab (.sci ou .sce).Je me rappelle que cela fonctionnait plutôt bien mais je n'ai testé que sur des petits scripts (entre 30 et 100 lignes).
Côté matlab je crois qu'il n'y a pas d'option pour faire l'inverse… (surement des logiciels tiers le permettent ?!)
[^] # Re: ponts avec Matlab
Posté par Sylvain Briole (site web personnel) . Évalué à 4.
Si c'est une solution libre compatible ("globalement") au niveau de la syntaxe que tu cherches: GNU Octave.
Déjà utilisé pour porter du Matlab sous Linux, sans connaissance préalable de Matlab: fonctionne pas trop mal (il faut mettre un peu les mains de le cambouis quand le code utilise des bibliothèques Matlab spécifiques).
[^] # Re: ponts avec Matlab
Posté par JGO . Évalué à 4.
J'ai fait la transition matlab -> scilab il y a bien longtemps, mais en pratique deux remarques :
[^] # Re: ponts avec Matlab
Posté par PolePosition . Évalué à 2.
Bonjour à tous,
J'avais testé le "pont" de la version 5.3.3, à partir de scripts Matlab.
Dans ces scripts je travaillais sur l'identification de fonctions de transfert, des plots, des calculs de marges de phases, et ça passait pas avec le "pont".
Je n'ai pas creusé pour voir ce qui posait problème.
Sinon, au sujet de Scilab en général, autant j'aime ce logiciel et suis heureux qu'il soit Libre, autant j'espère qu'il ratrapera son retard de 5 ans sur Matlab.
Notamment sur le compilateur vers cibles embarquées, qualité de la documentation, compatibilité de la syntaxe, stabilité !
Aujourd'hui j'utilise la version 5.3.3 pour communiquer via HART, COMEDI, Linux-rt, USB-DUX via des processus électroniques.
Et bien j'attends avec impatience la version 5.4.1 voire même 5.4.2 pour migrer !
Bravo tout de même à toute l'équipe et à M. Ledru !
# Instabilité graphique
Posté par JGO . Évalué à 3.
Chers auteurs de scilab,
Merci beaucoup pour ce logiciel que j'utilise tous les jours depuis des années. Cela dit, je trouve que le système graphique de la version 5.4 est instable sous linux (64 bits). Assez souvent quand je fais des plot2d (j'en fais PLEIN), la console m'insulte d'erreurs.
Par exemple, juste en lançant une série de plot2d :
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at javax.swing.LayoutComparator.compare(Unknown Source)
at java.util.Arrays.mergeSort(Unknown Source)
[...]
Des fois scilab continue de fonctionner après ça, des fois il segfaulte.
Ça le fait aussi très souvent quand je ferme une fenêtre à la main et un peu moins souvent quand j'utilise xdel.
Exception in thread "AWT-EventQueue-0" java.lang.ArrayIndexOutOfBoundsException
at javax.media.opengl.awt.GLJPanel$AbstractReadbackBackend.postGL(GLJPanel.java:924)
at javax.media.opengl.awt.GLJPanel$Updater.display(GLJPanel.java:656)
[...]
Aussi, quand je fais plusieurs plot2d à la suite dans un script (j'en fais plein plein plein) il arrive que les fenêtres graphiques ne s'ouvrent pas à la même taille, ce que scilab ne m'a jamais fait avant.
J'utilise le binaire 64 bit sous gentoo
[^] # Re: Instabilité graphique
Posté par Sylvestre Ledru (site web personnel) . Évalué à 2.
Alors, pour le bug de mergeSort, a priori, ça viendrait d'une race condition au niveau de l'EDT Java Cf bug #11721. C'est moche, on est d'accord mais c'est pas bloquant.
L'autre problème est visiblement reporté sous le bug #11861.
# Matlab - scilab - octave
Posté par Thom (site web personnel) . Évalué à 1.
Je suis le seul à trouver que Scilab Desktop est une mauvaise idée. Ce qui faisait la force de scilab par rapport à ses deux confrères était justement d'étre un peu plus indépendant de son interface, un peu plus ligne de commande en gros.
La réalité, c'est ce qui continue d'exister quand on cesse d'y croire - Philip K. Dick
[^] # Re: Matlab - scilab - octave
Posté par Sylvestre Ledru (site web personnel) . Évalué à 5.
Tu peux revenir à l'ancien fonctionnement:
* Édition
* Préférences
* Général => Disposition du bureau
* Sélectionne le mode Simple et voila ;)
# Xcos
Posté par アントニ ドミ . Évalué à 1.
Xcos
L’outil de modélisation et de simulation, unique alternative open source
Et Open Modelica?
[^] # Re: Xcos
Posté par Xinfe (site web personnel) . Évalué à 3.
Certains modèles (genre les composants électroniques) sont faits avec Modelica. Donc oui, même si Modelica n'est pas le coeur de Xcos, il le gère très bien.
[^] # Re: Xcos
Posté par denisb . Évalué à 0.
A ce propos, quelqu'un a-t-il trouvé une doc concernant les modules coselica ( blocs pour simulation systèmes physiques ) ? J'ai eu beau chercher, je n'ai rien trouvé, à part le code source, mais c'est pas forcément le top…
[^] # Re: Xcos
Posté par Sylvestre Ledru (site web personnel) . Évalué à 1.
Ca répond pas vraiment à ta question mais il y a plein d'exemples dans le dossier examples/ de coselica
# R
Posté par François Chaix (site web personnel) . Évalué à 2.
Bonsoir,
Ma question peut sans doute parraître un peu naïve, mais je viens à peine de commencer à étudier l’utilisation du logiciel GNU R (je suis en master de biologie, et apparement c’est ce qui est le plus utilisé par mes profs).
D’où ma question : est-ce que c’est comparable ? (j’entends par là R, scilab, numpy et tout)
Est-ce que des gens ont des remarques/critiques/conseils à donner à un futur utilisateur de ce type d’outils (qui devar donc faire un choix à un moment ou un autre…)
La lumière pense voyager plus vite que quoi que ce soit d'autre, mais c'est faux. Peu importe à quelle vitesse voyage la lumière, l'obscurité arrive toujours la première, et elle l'attend.
[^] # Re: R
Posté par Nonolapéro . Évalué à 5. Dernière modification le 24 août 2019 à 13:53.
J'aurai tendance à dire que l'utilisation de Python avec sa suite scientifique est préférable du fait de la grande versatilité du langage et des bibliothèques existantes. De plus il existe également une distribution python spécialisée : biopython. Des supports de formation combinant python et biologie sont disponibles dont celui-ci : http://www.dsimb.inserm.fr/~fuchs/python/
Globalement, ipython + matplotlib + numpy/scipy est un bon trio pour rapidement traiter des données.
Pour finir, je ne dis pas que d'autres solutions logicielles ne sont pas adaptées mais je ne les connais pas.
[^] # Re: R
Posté par François Chaix (site web personnel) . Évalué à 1.
Merci, je garde ça sous le coude. J’avoue que j’avais déjà envie d’apprendre un peu à programmer en python, alors là s’il y a des bonnes lib pour faire de la bio avec, c’est génial.
La lumière pense voyager plus vite que quoi que ce soit d'autre, mais c'est faux. Peu importe à quelle vitesse voyage la lumière, l'obscurité arrive toujours la première, et elle l'attend.
[^] # Re: R
Posté par Christophe Turbout . Évalué à 4.
R est devenu au fil du temps un logiciel un peu incontournable. Globalement ce que l'on peut reprocher à R actuellement par rapport aux outils payants c'est un environnement de développement (même si ça s'est amélioré). Pour le reste R est devenu juste une tuerie pour le nombre d'algorithmes disponibles et pour certains des optimisations de plus haut niveau.
Ce qui intréresse les chercheurs des différentes disciplines, c'est la pertinence des algorithmes, la possibilité de proposer les siens et d'utiliser ceux des autres facilement. Les outils intégrés de base permettent de sortir des graphes assez potables pour être directement utilisés par ailleurs, tu peux aller chercher des données simplement dans les bd libres ou pas, charger les fichiers en csv simplement, bref c'est assez simple d'utilisation même pour le néophyte qui fait quand même un peu d'effort pour comprendre ce qu'il fait.
Par ailleurs, si l'on veut interfacer les traitements et les inclure dans des chaînes de traitement plus complexes, R reste un outil très maléable qui peut tourner dans plein de configurations et de mon point de vue la facilité d'intégration permet de construire des infrastructures destinées à la prod beaucoup plus simplement.
Bref, que tu fasses ta recherche, du proto, de la chaîne de traitement, R permet de répondre à peu près à tous les cas donc pour pas mal de chercheurs, c'est la solution fiable, pérenne et pas chère !
[^] # Re: R
Posté par François Chaix (site web personnel) . Évalué à 2.
C’est à peu près ce qui m’a été dit en introduction de mes cours de R. Mais justement, l’objet de mes interrogations était dû au fait qu’il n’a même pas été évoqué qu’il extsistait d’autres outils…
Par-ce que justement, à part l’ancienneté de l’outil (corrolé donc à son nombre d’utilisateurs, et au nombre d’algos déjà écrits et optimisés), je ne vous pas grand-chose dans les arguments ici qui soient vraiment spécifiques à R :
L’interfaçage : Bah avec python, c’est assez simple, vu que python est complétement multi-plateforme…
En plus y’a une grande communauté…
Mais bon, ne me faites pas dire ce que je ne veut pas dire : C’est très bien R ! De ce que j’en ai vu en tout cas. Je suis juste très curieux. Quand on me présente un logiciel, je vais tout de suite voir par reflexe s’il y a des alternatives intéressantes. C’est sans doute pour ça que je tourne sous linux depuis des années, alors que je ne suis pas informaticien…
La lumière pense voyager plus vite que quoi que ce soit d'autre, mais c'est faux. Peu importe à quelle vitesse voyage la lumière, l'obscurité arrive toujours la première, et elle l'attend.
[^] # Re: R
Posté par barmic . Évalué à 4.
Comme l'a dis Nonolapero python peut fournir un ensemble ressemblant à R mais avec un langage bien plus généraliste et une documentation/communauté plus grande. Par contre R possède plus d'algo de base je crois.
Ensuite pour ce qui est de comparer R à octave ou autre, je pense que R est fait pour le calcul statistique alors que les autres traitent l’ensemble des mathématiques. Du coup avec scilab tu va facilement faire des intégrale alors qu'avec R tu va traiter une grande quantité de données.
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
[^] # Re: R
Posté par Nonolapéro . Évalué à 2.
D'ailleurs pour continuer à prêcher pour ma paroisse, voici des raisons du développement de la bibliothèque panda pour python que je reproduis ici (http://pandas.pydata.org/#why-not-r)
[^] # Re: R
Posté par Gil Cot ✔ (site web personnel, Mastodon) . Évalué à 1.
Pour allor dans ton sens, ils peuvent tous faire les mêmes choses mais certaines choses plus facilement que d'autres… Ainsi, il est plus facile de faire certaines intégrations complexes avec Scilab/Octave qu'avec R, mais ce dernier est plus aisé pour ouvrir des recueils de données (bdd ou autre) pour faire des corrélations dans tous les sens.
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.