Archive for the ‘Month of Math Software’ Category

July 2nd, 2013

Welcome to my monthly round-up of news from the world of mathematical software.  As always, thanks to all contributors.  If you have any mathematical software news (releases, blog articles and son on), feel free to contact me.  For details on how to follow Walking Randomly now that Google Reader has died, see this post.

Numerics for .NET

Faster, faster, FASTER!


  • Version 1.0 of TxSSA has been released.  According to the project’s website, “TxSSA is an acronym for Tech-X Corporation Sparse Spectral Approximation. It is a library that has interfaces in C++, C, and MATLAB. It is an implementation of a matrix sparsification algorithm that takes a general real or complex matrix as input and produces a sparse output matrix of the same size. The non-zero entries are chosen to minimize changes to the singular values and singular vectors corresponding to the near null-space. The output matrix is constrained to preserve left and right null-spaces exactly. The sparsity pattern of the output matrix is automatically determined or can be given as input.”

Data and Statistics

  • Stata is a commercial statistics package that’s been around since 1985.  It’s now at version 13 and has a bucket load of new functions and improvements.
  • A new minor release of IDL (Interactive Data Language) from Exelis Visual Information Solutions has been released.  Details of version 8.2.3 can be found here.

Molten Mathematics

Some Freebies

  • SMath studio is a free Mathcad clone developed by Andrey Ivashov.  Recently, Andrey has been releasing nee versions of Smath much more regularly and it is now at version 0.96.4909.  To see what’s been added in June, see the forum posts here and here.
  • Rene Grothmann’s very frequently updated Euler Math Toolbox is now at version 22.8.  As always, Rene’s detailed version log tells you what’s new.

Safe and reliable numerical computing

  • Sollya 4.0 was released earlier this month and is available for download at:  According to the developers, “Sollya is both a tool environment and a library for safe floating-point code development. It offers a convenient way to perform computations with multiple precision interval arithmetic. It is particularly targeted to the automatized implementation of mathematical floating-point libraries (libm).”
  • The INTLAB toolbox for MATLAB is now at version 7.1. INTLAB is the MATLAB toolbox for reliable computing and self-validating algorithms.

Pythonic Mathematics

  • Version 5.10 of Sage, the free Computer Algebra System based on Python, was released on 17th June.  Martin Albrect discusses some of his favourite new goodies over at his blog and the full list of new stuff is on the Sage changelog.
  • Pandas is Python’s main data analysis library and version 0.12 is out.  Take a look at the newness here.
June 2nd, 2013

Welcome to the latest Month of Math Software where I look back over May 2013 and pick out items of interest in the world of mathematical software.  As always, thanks to everyone who contributed news items this month– I couldn’t do these posts without you.  Feel free to contact me if you have any news you’d like to share in future editions.

Connecting MATLAB with Mathematica

  • MATLink is a free project that connects Mathematica with MATLAB.  If you are lucky enough to have both systems, you can now use them seamlessly together.  Version 1.0 was released in May.

Octave news

GNU Octave is an open source system for numerical computing that is broadly compatible with MATLAB.

  • Michael Goffioul has compiled and released GNU Octave 3.6.4 for Windows using Microsoft Visual Studio.  Michael’s builds are the ones I prefer to use on Windows systems.  The installer includes 82 packages from Octave Forge (Octave Forge packages are the Octave analogue of MATLAB Toolboxes).  It doesn’t appear to include the experimental Graphical User Interface that’s being worked on by the Octave team.
  • OctConf 2013 is a conference that brings together users and developers of Octave.  This year it is held in Milan and user registration is now open.  I sincerely wish I could attend but my personal life has gotten in the way!
  • Google’s Summer of Code (GSoC) awards stipends to students to work on various open source projects.  This year, Octave will have 9 students working under the auspices of this program.  Here are the detaills (The original source for this is at
    • Ahsan Said will be working on the Agora website (  His mentor is Jordi Gutiérrez Hermoso
    • Vytautas Jančauskas will fix audio processing for Octave.  He will be mentored by Mike Miller.
    • Gedeone will implement a general purpose finite element method library. His mentor is Carlo de Falco.
    • Andrej Lojdl  wants to give Octave a native TeX rendering engine for plots. Patric Noffke is his mentor.
    • Carnë Draug needs to polish the Octave-Forge image processing package for his PhD thesis and make it handle N-dimensional images.  Jordi Gutiérrez Hermoso is mentoring.
    • Matheus Vieira Portela will produce a GUI for manipulating closed-loop systems and incorporate it into the control package. Doug Stewart is his mentor.
    • Riupeng Li will incorporate incomplete sparse LU and Cholesky factorisations. Mentors will be  Youssef Saad, originator of the ITSOL library  and Carlo de Falco.
    • Kai Torben Ohlhus will also coordinate with Riupeng and Carlo and work on other parts of the sparse LU and Cholesky factorisations. Nir Krakauer will be the Mentor.
    • LYH will continue Max Brister’s previous GSoC work for giving Octave a JIT compiler, and John Eaton will mentor him.

Numerical Algorithms Group

Maple’s 25th Birthday

Linear Algebra

Free Stuff


  • CUTEst, the latest evolution of the constrained and unconstrained testing environment for numerical optimization by Nick Gould, Dominique Orban and Philippe Toint is now available at 
  • NOMAD is a blackbox optimisation software that’s just been updated to version 3.6

Finite Elements and PDEs

  • Wolfrgang Bangerth of Texas A&M University has recorded a set of lectures on various aspects of finite elements and scientific computing.  It has a focus on the deal.II library but also discusses more general scientific computing topics such as which preconditioners to use, adaptive mesh refinement, time dependent problems, parallel computing, using tools such as Visit, Paraview and Eclipse, debugging, etc.
  • PETSc version 3.4 was released in May.  PETSc is a suite of data structures and routines for the scalable (parallel) solution of scientific applications modeled by partial differential equations.  Notable new features include a system for managing unstructured grids with PDE solvers in DMPlex.  Capability and performance improvements to the algebraic multigrid preconditioners PCGAMG, many new nonlinear solvers in SNES, many improvements to the ODE solvers in TS including the new TSEIMEX, and support for parallel dense linear algebra using MatElemental.  The library also has better encapsulation and better control of symbols.

GPU Accelerated Mathematics


  • A new version of RStudio, the free Integrated Development Environment, for R has been released.  Version 0.97.551 has got lots of new goodies.

 From the blogs

May 1st, 2013

As I type this, the sun is shining (finally!) and the skies are blue.  You’d think that it would be difficult to concentrate on writing this Month’s mathematical software round-up but it has been such an interesting month that it turned out to be a breeze.  Thanks to everyone who submitted news items for this month’s review, your feedback and generosity is greatly appreciated–I would have given up long ago without it.

If you have any news items for next month’s issue, please let me know via the usual channels.  Click here for the Month of Math Software Archives.

Things that are a bit like MATLAB

Things written for MATLAB

  • GAGA: GPU Accelerated Greedy Algorithms for Compressed Sensing is “a software package for solving large compressed sensing problems with millions of unknowns in fractions of a second by exploiting the power of graphics processing units”. It saw its first ever release in April.
  • Version of the Multiprecision Computing Toolbox for MATLAB was released in April bringing several enhancements including the addition of the incomplete gamma function, improvement to the accuracy of eigensolvers and speed up of determinant computations.


  • One of the most famous spreadsheet errors of all time was unearthed this month.  I’ll leave the explaining to the BBC and New Scientist.
  • Gnumeric is the free spreadsheet program from the GNOME Office project and April saw it updated to version 1.12.2  Updates include a set of new computational functions, fixes to various file import tools and a new font selector.

Graphs and Plotting

  • GNUPlot is a free, open source plotting package that’s been around for over 25 years.  It has been ported to almost every computer system known to man including Ye Olde Windows MobileAndroid and Raspberry Pi along with all of the platforms you’d usually expect.  April 2013 saw version 4.6.3 and the list of changes is at
  • DISLIN is a plotting library for C, Fortran 77 and Fortran 90/95 and is also callable from several other languages including Perl,Python and Java.  Developed by the Max Plank Institute for Solar System Research, DISLIN has just hit version number 10.3.2.  Take a look at the new goodness here.

Numerical libraries


It’s been a big month for mathematical and scientific software in Python with several releases of note.

  • After 7 months of work, The SciPy team have unveiled version 0.12.0.  The full list of updates is at but standout features for me are a Basin Hopping Global Optimisation routine (never heard of that algorithm but sounds interesting),  the ability to inspect the contents of MATLAB .mat files without actually reading them to memory and documented BLAS and LAPACK low-level interfaces.
  • According to its website, numexpr “evaluates multiple-operator array expressions many times faster than NumPy can.”  In other words, numexpr is one way to get Python code going faster.  Something that I didn’t realise until I wrote this entry is that it supports the high performance Intel Vector Math Library (VML).  April saw a release to version 1.4.2 with the new stuff listed at
  • Pweave is a scientific report generator and a literate programming tool for Python, inspired by Sweave for R.  Version 0.21.2 of Pweave was released earlier this month — take a look at the release notes for details of what’s new.  Thanks to @mpastell for the news.
  • The IPython (Interactive computing in Python) team have released a bugfix update.  The details of version 0.13.2 are in the release notes.
  • Version 1.0 of the PyASTRAToolbox was released on 23rd April.  “The PyASTRAToolbox is a Python interface to the ASTRA Toolbox, a tomography toolbox based on high-performance GPU primitives for 2D and 3D tomography.”


  • Derek of has released version 0.5 of his Numbers tool which looks at the numeric literals contained in the source code of any program you pass to it. The numbers program extracts these literals, compares them against a database of ‘interesting’ values and prints out any matches; it can also print out values that don’t match.  The matching is fuzzy, the intent being to find mistakes.  To see why this might be interesting and useful, take a look at this blog post where Derek discovers that both Maxima and R use a wide variety of different literal values for pi.
  • Version 2.19-5 of Magma, the regularly updated, commercial computer algebra system with a focus on algebra, number theory, algebraic geometry and algebraic combinatorics has been released.
  • Version 6.1 of MapleSim has been released.  MapleSim is a physical modeling and simulation tool.

From the blogs


April 3rd, 2013

Welcome to the latest edition of A Month of Math Software where I look back over the last month and report on all that is new and shiny in the world of mathematical software.  I’ve recently restarted work after the Easter break and so it seems fitting that I offer you all Easter Eggs courtesy of Lijia Yu and R.  Enjoy!

General purpose mathematical systems

MATLAB add-ons

  • The multiprecision MATLAB toolbox from Advanpix has been upgraded to version with the addition of multidimensional arrays.
  • The superb, free chebfun project has now been extended to 2 dimensions with the release of chebfun2.

GPU accelerated computation

Statistics and visualisation 

Finite elements

  • Version 7.3 of deal.II is now available.  deal.II is a C++ program library targeted at the computational solution of partial differential equations using adaptive finite elements.


March 4th, 2013

Welcome to the latest Month of Math Software here at WalkingRandomly.  If you have any mathematical software news or blogposts that you’d like to share with a larger audience, feel free to contact me.  Thanks to everyone who contributed news items this month, I couldn’t do it without you.

The NAG Library for Java


  • Version 3.6.4 of Octave, the free, open-source MATLAB clone has been released.  This version contains some minor bug fixes.  To see everything that’s new since version 3.6, take a look at the NEWS file.  If you like MATLAB syntax but don’t like the price, Octave may well be for you.
  • The frequently updated Euler Math Toolbox is now at version 20.98 with a full list of changes in the log.  Scanning through the recent changes log, I came across the very nice iteratefunction which works as follows
    [ 1  0.540302305868  0.857553215846  0.654289790498  0.793480358743
    0.701368773623  0.763959682901  0.722102425027  0.750417761764
    0.731404042423  0.744237354901  0.735604740436  0.74142508661
    0.737506890513  0.740147335568  0.738369204122  0.739567202212 ]

Mathematical and Scientific Python

  • The Python based computer algebra system, SAGE, has been updated to version 5.7.  The full list of changes is at
  • Numpy is the fundamental Python package required for numerical computing with Python.  Numpy is now at version 1.7 and you can see what’s new by taking a look at the release notes

Spreadsheet news

R and stuff

This and that

  • The commercial computer algebra system, Magma, has seen another incremental update in version 2.19-3.
  • The NCAR Command Language was updated to version 6.1.2.
  • IDL was updated to version 8.2.2.  Since I’m currenty obsessed with random number generators, I’ll point out that in this release IDL finally moves away from an old Numerical Recipies generator and now uses the Mersenne Twister like almost everybody else.

From the blogs

February 4th, 2013

Welcome to the first Month of Math Software for 2013.  January was a rather lean month in the world of mathematica software I’m afraid but there are a few things worthy of attention.  If you have some news for me for next month’s edition, contact me via the usual channels.

Commerical computer algebra

  • PTC have released a cut-down version of Mathcad Prime called Mathcad Express.  It was actually launched back in October 2012 but I only learned about it this month.  Regular readers of WalkingRandomly will also know about SMath Studio, a freeware application that looks a bit like a clone of Mathcad and runs on many operating systems.
  • Wolfram Research have released Mathematica 9.0.1, a minor upgrade from version 9.  To see what’s new take a look at Wolfram’s quick revision history (Thanks to people in the comments section for this link)


  • Pandas, a data analysis library for Python, saw a minor update to version 0.10.1.  See the pandas ‘What’s new?’ page for more details.
  • Version 5.6 of the Python-based computer algebra system, SAGE, has been released.  See the changelog for details of the new stuff.


  • Blaze is “an open-source, high-performance C++ math library for dense and sparse arithmetic” and it has seen its second release.  Head over to Blaze’s website to grab yourself a copy of version 1.1.


  • Shiny wasn’t released in January but this was the first month I heard about it and it looks fantastic.  Brought to my attention by long time WalkingRandomly reader, ‘MySchizoBuddy’, Shiny is brought to us from the creators of RStudio.  In his words ‘It’s similar to Mathematica’s CDF plugin but without the plugin. It allows you to have small R code and visualizations on the web without any plugins’

All your probability distribution are belong to us

January 3rd, 2013

Welcome to the last 2012 edition of A Month of Math Software..slightly delayed thanks to the December festivities.  Thanks to everyone who’s contributed news items over the last 2 years, please feel free to continue contacting me throughout 2013 and beyond.

AccelerEyes sells the MATLAB Jacket to The Mathworks

  • AccelerEyes are the developers of GPU accelerated products such as Jacket for MATLAB and ArrayFire for C, C++, and Fortran.  In a recent blog post, they announced that they have sold Jacket to The Mathworks.  It will be interesting to see how The Mathworks integrate this technology into the Parallel Computing Toolbox (PCT) in the future.  I sincerely hope that they don’t split the PCT into two products, one for GPUs and the other for CPUs!

Free computer algebra

Numerical Libraries

  • Version 5.3 of the ACML linear algebra library for AMD-based systems was released in December.
  • Another of AMD’s libraries was updated this month.  The Accelerated Parallel Processing (APP) SDK hit version 2.8 and includes a preview of AMD’s new C++ template library, Codename “Bolt.”.  According to AMD, Bolt ‘makes it easier for developers to utilize the inherent performance and power efficiency benefits of heterogeneous computing’ The press release for this version of the APP SDK is available at  Also, click here for more details concerning Bolt
  • Numeric Javascript saw two releases, v1.2.5 and v1.2.6
  • The HSL Software Library was updated this month adding three new routines to support Fredholm alternative for singular systems, efficient multiplication of the factors by a vector, and sparse forward solve.
  • amgcl is an accelerated algebraic multigrid for C++.  According to the software’s website ‘You can use amgcl to solve large sparse system of linear equations in three simple steps: first, you have to select method components (this is a compile time decision); second, the AMG hierarchy has to be constructed from a system matrix; and third, the hierarchy is used to solve the equation system for a given right-hand side’

Data Analysis and Visualisation

Maple IDE

  • DigiArea have released an Eclipse based Integrated Development Environment (IDE) for Maple called, simply, Maple IDE.  This commercial product is available for Linux, Windows and Mac OS X and seems to be a very similar concept to Wolfram’s Workbench for Mathematica.

Maple IDE


Commercial Number Theory

December 5th, 2012

Since I am writing this article while on a train it seems only fitting that I say ‘Welcome to the slightly delayed November edition of a Month of Math software, the latest in a series of posts that have been going for almost two years‘  If you have any news for the final edition of 2012 feel free to contact me to tell me all about it.

General Mathematics


  • The Fast Library for Number Theory, FLINT, was updated to version 2.3 on November 9th.  See what’s new in this C library by taking a look at the NEWS file.
  • MAGMA is a GPU accelerated linear algebra library from the Innovative Computing Laboratory (ICL) at the University of Tennessee.  According to the release announcement, version 1.3 of the library includes some performance improvements and support for the new NVIDIA-Kepler GPUs.
  • PLASMA is another linear algebra library from the people at ICL and it too has seen a new release.  Version 2.5.0 Beta 1 contains a couple of new algorithms, bug fixes and performance enhancements–check out the release announcement for the details.  A nice paper that explains the differences between PLASMA and Magma is available at
  • The HSL library is ‘a collection of state-of-the-art packages for large-scale scientific computation written and developed by the Numerical Analysis Group at the STFC Rutherford Appleton Laboratory’  It saw a few updates throughout November – see the project’s change log for details.


  • SoftMaker have released their office suite for Android devices and my first impressions are that it blows the competition out of the water.  Although the Word and Powerpoint alternatives are fine, the app that might be of most interest to readers of this article is, of course, the spreadsheet app, PlanMaker.  This initial release includes over 330 calculation functions and has support for complex numbers, arrays and 3d charts.
  • MathStudio, one of the best mathematical apps for mobile devices has been updated to version 5.4.Other than adding suport for iOS 6 and iPhone 5 I have no idea what’s new since the release annoucement is rather sparse.

Bits and pieces

  • The numeric javascript library has been updated to 1.2.4.  This is mainly a big-fix release with full details at
  • The commercial computer algebra system, Magma, is now at version 2.18-11.  See what’s new at
  • The free open-source linear algebra library ViennaCL  is now available in version 1.4.0. In addition to the OpenCL-based computing backend, the new release now also provides a CUDA- and an OpenMP-backend. Most noteworthy among the many new features and updates are the improved performance of ILU preconditioners including optional GPU-acceleration using level-scheduling, the incomplete Cholesky factorization preconditioner, a mixed-precision conjugate gradient solver, and further increased API compatibility with Boost.uBLAS.
November 4th, 2012

Welcome to the October edition of A Month of Math Software where I take a look at everything that is new and updated in the ever evolving world of mathematical software and programming.  If you’d like something included in the next edition please contact me via whatever method suits you best.

GPU accelerated mathematics

In the old days Graphics Processing Units (GPUs) were only used to make computer games look pretty.  These days they can do mathematics very quickly.

  • A new, free linear algebra library for OpenCL has been released, RaijinCL.  Brought to you by @codedevine (author of RGBench for android among other things) what makes this library different is that it is an auto-tuning library that works on lots of different hardware.  Instead of providing a single optimized implementation of kernels, it generates many different kernels, tests it on the user’s machine and records the best performing kernel.  It currently only has matrix-matrix multiplication but Rahul has lots of plans for the future.
  • The OpenCL version of MAGMA has seen a major update.  Version 1.0 of clMAGMA contains lots of new linear algebra routines.
  • After many release candidates, the production release of version 5 of NVIDIA’s CUDA Toolkit was made available this month.  The toolkit is the fundamental piece of software you need if you intend to devlop GPU accelerated applications on NVIDIA hardware. Mathematical updates include a couple of new basic statistical functions (normcdf and normcdfinv) in the CUDA math library, incomplete factorization preconditioners (ilu0 and ic0) in the CUDA Sparse Matrix library and the ability to generate Poisson distributed random numbers in the CUDA random number generation library.
  • Jacket from Accelereyes is a GPU accelerated toolbox for MATLAB and has been updated to verion 2.3.  See the release notes for more detailsI played with an older version of Jacket earlier this year.
  • CULA Dense is a GPU accelerated linear algebra library for NVIDIA CPUs.  Version 16 was released in October and the release notes are available at  The CULA sparse library has also been updated (to version 4) but the only new stuff appears to be support for new hardware and CUDA version 5.


  • Origin and OriginPro have both been upgraded to version 9.  These commercial plotting packages for Windows are very popular and easy to use (My university has a site license for them and they are used a lot) and this major new release includes lots of new functionality.
  • DISLIN, a scientific plotting library for multiple languages, is now at version 10.2.5 with the new stuff discussed at
  • A new release candidate of matplotlib is now available at  New features include PGF/TikZ backend for easier LaTeX integration and picklable figures.  The plots below were created using the new release candidate and come to you courtesy of @dmcdougall_

Free Statistics




October 4th, 2012

Welcome to the latest edition of A Month of Math Software where I take a look at all that is shiny and new in the computational mathematics world.  This one’s slightly late and so it not only covers all of September but also the first 3 days in October.  If you have any math software news that you’d like to share with the world, drop me a line and tell me all about it.  Enjoy!

MATLAB gets a Ribbon (sorry…Toolstrip)

A new version of MATLAB has been released and it has had some major cosmetic surgery.  The Mathworks insist on calling the new look in 2012b a Toolstrip but everyone else will call it a Ribbon.  Although they’ve been around for many years, ribbon based interfaces hit the big time when Microsoft used them for Office 2007..a decision that many, many, many, many, many, many, many people hated.  I hate them too and now I have to contend with one in MATLAB…and so do you because there is no way to switch back to the old interface.  The best you can do is minimise the thing and pretend it doesn’t exist.  Unhappy users abound (check out the user comments at for example).  There have been a lot of other changes too which I’ll discuss in an upcoming review.

Do you use MATLAB? How do you feel about this new look?

MATLAB 2012b ribbon

Numerical Javascript!

Free and open source general purpose mathematics

Scilab 5.4

  • On 8th September, Sage version 5.3 was released.  Sage is an extremely powerful general purpose mathematics package based on Python and dozens of other open source projects.  The Sage development team like to say that instead of  re-inventing the wheel they built a car!  Mighty fine one too if you ask me.  What’s new in Sage 5.3
  • René Grothmann has updated his very nice, free Euler Math Toolbox.  At the time of writing its at version 18.8 but the updates come thick and fast.  The latest changes are always at

The theory of numbers

  • Pari version 2.5.3 has been released. Pari is a free ‘computer algebra system designed for fast computations in number theory’
  • Magma version 2.18-10 was released in September.  Magma is a commercial system for algebra, number theory, algebraic geometry and algebraic combinatorics.

Numerical Libraries

  • The Intel Math Kernel Library (MKL) is now at version 11.0.  The MKL is a highly optimised numerical library for Intel platforms that covers subjects such as linear algebra, fast fourier transforms and random numbers.  Find out what’s new at
  • LAPACK, the standard library for linear algebra on which libraries such as MKL and ACML are based, has been updated to version 3.4.2.  There is no new functionality, this is a bug-fix release
  • The Numerical Algorithms Group (NAG) have released a major update to their commercial C library.  Mark 23 of the library includes lots of new stuff (345 new functions) such as a version of the Mersenne Twister random number generator with skip-ahead, additional functions for multidimensional integrals, a new suite of functions for solving boundary-value problems by an implementation of the Chebyshev pseudospectral method and loads more.  The press release is at and the juicy detail is at


  • After the publication of the last Month of Math Software I learned about the death of John Hunter, author of matplotlib, due to complications arising from cancer treatment.  A tribute has been written by Fernando Perez.  My heart goes out to his family and friends.
  • After 8 months work, version 0.11 of SciPy is now available.  Go to for the good stuff which includes improvements to the optimisation routines and new routines for dense and sparse matrices among others.
  • A new major release of pandas is available. Pandas provides easy-to-use data structures and data analysis tools for Python.  See what’s new in 0.9.0 at

Bits of this and that

And finally….

I am a big fan of the xkcd webcomic and so a recent question on the Mathematica StackExchange site instantly caught my eye.  Xkcd often publishes hand drawn graphs that look like this:
xkcd graph

The question asked…How could one produce graphs that look like this using Mathematica?  It didn’t take long before the community came up with some code that automatically produces plots like this
xkcd mathematica

I am definitely going to use style in my next presentation!  Not to be out-done, others have since done similar work in R, MATLAB and Latex.