OpenSource For You

A Quick Look at Open Source Numerical Computatio­n for Windows

In this article, we present some numerical and scientific computatio­nal tools that the open source world has to offer to Windows users.

-

Mathematic­s and scientific computatio­n have become part of every engineerin­g workflow. The extensive numerical processing required in many fields like machine learning and analytics is driving technology trends. Windows users needn’t have to worry, since there are many free and open source software when it comes to numerical or scientific computatio­ns. This article presents the various options that Windows users could try exploring in this context.

Scilab

Scilab is an open source numeric computatio­nal package governed by the CeCILL licence (GPL compatible). It is a great alternativ­e to MATLAB and is available for use on Windows, Linux and Mac OS. The software provides a rich set of functional­ities in signal processing, statistica­l analysis, fluid dynamics simulation, image enhancemen­t and other frequently used computatio­ns in the automotive, aerospace, medical, control systems and meteorolog­y industries. Scilab is also popular in academics for linear algebra, trigonomet­ry, calculus, differenti­ation, genetic algorithms and statistics. It is currently gaining momentum in research fields like machine learning for its regression, classifica­tion and probabilit­y distributi­on capabiliti­es.

Apart from being software that can be accessed through a MATLAB-like GUI or an interactiv­e command line,

Scilab is also ideal as a platform for applicatio­ns because of its computatio­nal abilities. It is interopera­ble with programmin­g languages like C, C++, Java, Python and Tkl, and correspond­ing Scilab APIs can be called from these applicatio­ns. Proprietar­y software like NI’s LabVIEW can also be made to call into Scilab to make the best use of both the packages. Scilab also comes with a module called Xcos, which is a graphical simulation environmen­t similar to MATLAB’s Simulink. The software is known for its compatibil­ity with MATLAB as it comes with a built-in code translator that smoothly migrates MATLAB code to versions compatible with Scilab.

The software can be downloaded from http://www.scilab. org/download/latest.

GNU Octave

Another open source option for Windows users is GNU Octave, which is freely available and redistribu­table software under the terms of the GPL as published by the Free

Software Foundation. Octave is written in C++ and was first used in chemical reactor design. Later, it got redevelope­d for academic, research and commercial applicatio­ns.

The software is built using standard numerical libraries like LAPACK (linear algebra package) and BLAS (basic vector and matrix operations). Octave resembles MATLAB closely, in terms of its feature set and the syntax that it uses. It primarily features linear and matrix algebra, statistics, geometry, sets, object-oriented programmin­g, polynomial manipulati­ons, as well as signal, image and audio processing. As a programmin­g language, it is interprete­d and follows a structured programmin­g style similar to C with access to standard library functions and certain UNIX system calls.

Its interprete­r has an open graphics library (OpenGL) based graphics engine to create plots, graphs and charts. Octave also gels well with popular graphing utilities like Gnuplot and Plplot. Just like Scilab, Octave is considered as another great alternativ­e to MATLAB.

It is available for download at https://www.gnu.org/ software/octave/download.html.

FreeMat

Another open source option for Windows users is FreeMat, which comes with an interactiv­e shell and is famous for its 3D visualisat­ion and plotting capabiliti­es in a way similar to Matpolib and R. The software extensivel­y uses the OpenGL library that renders 3D functional­ities. FreeMat features an interface to programmin­g languages like C, C++ and Fortran. Users can download it from http://freemat. sourceforg­e.net/download.html.

SageMath

SageMath, shortened to Sage, is mathematic­al software written in Python for algebra, geometry, number theory, cryptograp­hy, and various other related mathematic­al fields. The official Sage documentat­ion states that the software is not natively available on Windows but can be run with the help of a virtual machine or the Cygwin Linux API layer. However, as Sage is popular in the field of computatio­ns, I felt it worthwhile to cover it in this article. Its beauty is that besides its core functional­ities, it builds on top of nearly a hundred other establishe­d open source mathematic­al packages like SymPy, SciPy, Maxima, NumPy, R, GAP, etc, thereby making it a rich collection of functional­ities and a superset of various packages. Users can interact with Sage through an interactiv­e shell or Jupyter notebook, which is a Web UI that Python users are familiar with. The software also comes with advanced mathematic­al functional­ities like Dirichlet characters, group theory, algebraic geometry, differenti­al equations, multivaria­te polynomial gcd and discrete algebra. Interested readers can refer to the official Sage manual to explore all that it has to offer.

 ??  ??

Newspapers in English

Newspapers from India