## Archive for the ‘Month of Math Software’ Category

Welcome to the August edition of A Month of Math Software– a regular series of articles where I share what’s shiny and new in the world of mathematical software. If you like what you see and want more, take a browse through the archives. If you have some news that you think should go into next month’s edition, contact me to tell me all about it so I can tell the world.

This edition includes lots of new releases, blog posts and news about mathematics on mobile devices…enjoy!

**Mobile Mathematics**

August was a very big month for mobile mathematical applications with the following releases

- Full LaTeX on iPad with on device compilation and .dvi viewer
- Maxima on Android – Maxima is a free computer algebra system with a long pedigree
- Octave on Android – Octave is basically a free version of MATLAB. The author of this package is Corbin Champion who also wrote Addi (a simplified MATLAB clone based on JMathLib). Corbin tried to get funding via kickstarter (see my article on this – here) to allow him to dedicate himself full time to this port but, sadly, was unsuccessful. Thankfully, Corbin has managed to do some development on the project anyway and has released this package as a starter for 10. Its lacking a lot of stuff but is a fantastic start!
- The Geogebra team have started a kickstarter project that aims to bring Geigebra to iPad. Why not head over there and pledge some support?

**General purpose mathematics**

- Maxima, a free computer algebra system (CAS) for Windows, Linux and Mac OSX, has been updated to version 5.28. Back in 2010, a guest writer wrote a Maxima tutorial here at WalkingRandomly – Maxima Tutorial – plotting direction fields for 1st order ODEs
- Mathics is a free, lightweight alternative to Mathematica and has recently been updated to version 0.5.
- Pari/GP is another free computer algebra system that was updated to 2.5.2 in August (The website says august but the changelog says June I’ve only just noticed the update so its going in August’s edition) — Pari focuses on number theory but can be used for many other kinds of computation.
- The free Euler Math Toolbox has been updated many times throughout August and is now at version 18.4. See the Changelog for what’s new.

**Do numerical computing using….Javascript!**

- The Numeric Javascript library has been updated to version 1.2.2. The main new feature is linear programming– the function is numeric.solveLP()

**Mathematical software libraries**

- The AMD Core Math Libray (ACML) has been updated to version 5.2.0.
- Version 2.4.6 of PLASMA (Parallel Linear Algebra for Scalable Multi-core Architectures) has been released. See what’s new at http://icl.cs.utk.edu/plasma/news/news.html?id=299
- A new minor version of ARPACK-NG (3.1.2) has been released. See http://forge.scilab.org/index.php/p/arpack-ng/source/tree/master/CHANGES for the newness. ARPACK is a collection of Fortran77 subroutines designed to solve large scale eigenvalue problems

**GPU Programming **

GPU stands for Graphical Processing Unit but these days you can get a GPU to do a lot more than just graphics. You could think of them as essentially massively parallel math co-processors that can make light work of certain operations.

- Jacket is a commercial GPU Processing add-on for MATLAB. In recent blog posts, the Jacket developers discuss SAR Image Formation Algorithms on the GPU and Option Pricing.
- CULA is a set of commercial GPU-accelerated linear algebra libraries. CULA-Dense is, as you might expect, for dense matrices and is now at version 15. CULA-Sparse is at version S3. I can’t find a what’s new document but the main change seems to be the addition of support for NVIDIA’s Kepler architecture. The CULA library can be called from C, C++, Fortran, MATLAB, and Python and is
**free for individual academic use**. - GPULib is a commercial software library enabling GPU-accelerated calculations for IDL. In a recent blog post, one of GPULib’s developers has been experimenting with OpenCL support.

**Statistics**

- R Commander, a basic GUI for the free R programming language, has been updated to version 1.9.x
- IBM’s SPSS has been updated to version 21. Some new features are discussed at http://www-01.ibm.com/software/analytics/spss/products/statistics/features.html
- VSN International have released version 15.1 of their bio-statistics package, Genstat. The list of new stuff is at http://www.vsni.co.uk/software/genstat/15th-edition-new-features

**Academic codes and applications**

- Version 3.0 of the SCIP Optimization Suite has been released. According to the website, ‘SCIP is currently one of the fastest non-commercial
*mixed integer programming (MIP) solvers*. It is also a framework for*constraint integer programming*and*branch-cut-and-price’.*Here are the all important Release Notes and Changelog. - Templates for First-Order Conic Solvers (TFOCS, pronounced
*tee-fox*) is a software package that provides a set of templates, or building blocks, that can be used to construct efficient, customized solvers for a variety of models. The latest version, 1.1a, was released back in February but I have only recently learned of it and so am including it in this month’s edition. A set of demos and wiki for this software is available. - Version 1.0 of Blaze has been released.
**Blaze**is an open-source, high-performance C++ math library for dense and sparse arithmetic. There is a getting started tutorial and a set of benchmarks.

Welcome to the slightly delayed July 2012 edition of A Month of Math Software where I take a look at recent events in the world of commercial and open source mathematical software. Feel free to contact me if you have news that you’d like including in next month’s edition.

**Mark 23 of the NAG Toolbox for MATLAB**

The latest version of my favourite MATLAB Toolbox has been released. Mark 23 of the NAG (Numerical Algorithms Group) Toolbox for MATLAB includes lots of new stuff in areas such as global optimisation, wavelet transforms, option pricing formulae, weighted nearest correlation matrices, curve and surface fitting and loads more. NAG have also thrown in a lot of usability improvements for good measure.

The NAG Toolbox for MATLAB is essentially a MATLAB interface to NAG’s highly regarded Fortran library and contains over 1500 numerical routines. My employer, The University of Manchester, has a full site license for the NAG Toolbox along with several other NAG products and they are used a lot.

I’ve written about old versions of the NAG toolbox several times including:

- A faster version of MATLAB’s fsolve using the NAG Toolbox for MATLAB
- A faster version of MATLAB’s interp1 function
- An alternative to the ranksum function using the NAG Toolbox for MATLAB

**Spreadsheets that aren’t Excel**

- Version 1.11.5 of Gnumeric, an open source spreadsheet program from the GNOME Office suite, is now available.

**General purpose mathematics**

- Version 5.2 of Sage was released on 25th July. Sage is one of the best open-source mathematical packages available and is based on Python. See what’s new by reading the release annoucement. Earlier this month, I reported on a new interactive mathematics website based on Sage.
- Smath Studio is a superb free clone of PTC’s Mathcad and it’s recently been updated to verision 0.95.4594. One exciting piece of news is that the developer is working on an Android version!
- Numeric Javascript is now at version 1.1.8. There is probably new stuff but I have no idea what it is as I can’t find a changelog. Looks good though!
- Version 17 of the free Euler Math Toolbox is now available with previews of version 18 already in the works (below).

**Python**

- Version 0.8.1 of pandas, The Python Data Analysis Library, has been released. See what’s new at http://pandas.pydata.org/pandas-docs/stable/whatsnew.html
- A release candidate for SciPy 0.11 is now available and includes lots of neat stuff. The optimisation section seems to have had a major overhaul for example. Note that this is not the final release of 0.11 and so some bugs may be lingering.

Welcome to the June 2012 edition of A Month of Math Software. The archive to all previous editions is here. Feel free to contact me if you have news that you’d like including in next month’s edition.

**A list of packages based upon SuiteSparse**

- Tim Davis has put together a list of projects and packages that rely on the various sparse matrix codes he’s written or co-authored over the years (UMFPACK, CHOLMOD, SuiteSparseQR, KLU, CSparse, and the ordering codes AMD and COLAMD). The list is very impressive but is incomplete. Drop Tim a line if you work on a project that uses his codes.

**Python based software**

- Sage, the superb computer algebra system based on Python and dozens of other open source projects, has seen a minor update to 5.0.1. Take a look at the changelog for the new stuff.
- Pandas, the Python Data Analysis Library, is now at release 0.8.0. This is a major update on the old 0.7.3 and has significantly improved timeseries data analysis in pandas.

**Try a spreadsheet that isn’t Excel**

- Gnumeric, the free spreadsheet that’s part of the GNOME office suite, was updated to 1.11.4 in June. Find out what’s new here.
- A new version of LibreOffice (version 3.5.4) was released at the end of May but I missed it in May’s update. LibreOffice is the fork of OpenOffice that everyone should be using these days and includes a great spreadsheet program.

**Math-o-mir – The mathematical notepad**

- Danijel gorupec contacted me to tell me of a new release of his free software, Math-o-mir. According to Danijel ‘The Math-o-mir is a software tool designed to write and edit mathematical equations as easily as possible. The goal was to achieve the same level of simplicity as with pencil and a sheet of paper. It is designed to act as your personal math notepad where you can write down your quick and informal calculations.’ I haven’t had chance to try it myself but it looks interesting. See what’s new in the 1.7 release over at Danijel’s blog.

**Gnu Regression, Econometrics and Time-series Library**

- Version 1.9.9 of the Gnu Regression, Econometrics and Time-series Library, gretl, was released at the beginning of June. As the name suggests, gretl is mainly of use to econometricians and it has a long pedigree. It’s first release was in 2000 and it has since been discussed in several journal articles (see below). See what’s new in version 1.9.9 here.
- Using gretl for Monte Carlo experiments – Journal of Applied Econometrics 2010
- GRETL 1.6.0 and its numerical accuracy – Journal of Applied Econometrics 2007
- Teaching undergraduate econometrics with GRETL – Journal of Applied Econometric 2006
- GRETL: Econometric Software for the GNU generation – Journal of Applied Econometrics 2003

**Numerical Libraries**

- Magma, the GPU accelerated linear algebra library, has been updated to version 1.2.1. See what’s new at http://icl.cs.utk.edu/magma/news/news.html?id=295
- The HSL numerical library has seen some updates. Go to http://www.hsl.rl.ac.uk/changes.html for the details.

**Blogs, Bits and Bobs**

- Planet Octave is now up and running. This is a collection of blogs related to Octave and is currently made up of posts from the Google Summer of Code students. Some great stuff on the Just in Time (JIT) compiler development, Octave GUI and more.
- PTC’s MathCAD blog turns 3 years old. Head over and take a look at their 5 most popular posts. If you can’t afford Mathcad, why not try the free Mathcad clone, SMath Studio which saw a new release this month.
- Geogebra now has a blog. The June newsletter is also worth checking out. Wikipedia tells us that ‘GeoGebra is an interactive geometry, algebra, and calculus application, intended for teachers and students.’
- Version 0.97 of Eureqa/Formulize has been released. If you don’t know what this is, take a look at the video. In a nutshell, you plug in data and it figures out the formula that best models it.

Welcome to the slightly delayed May edition of A Month of Math Software. The archives can be found at http://www.walkingrandomly.com/?cat=47 and if you have any news for next month then feel free to contact me.

**Wolfram SystemModeler**

Wolfram Research have released a new product called SystemModeler, a model based design and simulation tool that occupies the same space as products such as The Mathwork’s Simulink, Maplesoft’s Maplesim, and the free Scilab add-on, xcos.

**Mathematical libraries**

- The Numerical Algorithms Group (NAG) released a new version of the commercial NAG Library for SMP and multicore. This is a version of their Fortran library which includes a few hundred routines that have been optimised for multicore processors. The latest release, Mark 23, adds an extra 116 routines (some of them have been written up in detail) bringing the total number of functions to 1704. A total of 337 have been parallelised to make use of multicore processors. I played with this library when it was at Mark 22.
- Version 1.2 of Magma, the linear algebra library for NVIDIA GPUs has been released. The OpenCL version, clMAGMA has also seen an update in version 0.2.

**General Purpose Mathematics**

- Version 5.0 of Sage was released on 14th May; go to the changelog to see what’s new. Sage is a superb free alternative to Mathematica, Maple or MATLAB based on the Python programming language and over 100 other open source projects. If you’ve never heard of Sage, these Videos serve as a good introduction.
- Version 5.27 of Maxima has been released. Maxima is a free computer algebra system that’s available for all major operating systems and it is very capable. Features include symbolic calculus, linear algebra, plotting and arbitrary precision arithmetic. There is a post here on Walking Randomly on how to use it to plot direction fields for 1st order ODEs.
- A new version of SMath Studio, the free Mathcad-like clone, is now available. Version 0.94.4535 adds a couple of new features to a great program; Linux and Windows versions are available.
- The Euler Math Toolbox (A free, MATLAB-like language) is now at version 15.6. See http://euler.rene-grothmann.de/versions/version-15.html for the new stuff

**Data Analysis**

- R-Studio, the fantastic free Integrated Development Environment (IDE) for the statistical programming language R has been updated to version 0.96. New features include code-folding (click here for video), lots of new Sweave features (Sweave is a tool that allows to embed the R code for complete data analyses in latex documents) and more. See this blog post for all of the details.
- Excelis have updated their commerical Interactive Data Language (IDL). See what’s new in version 8.2 at http://www.exelisvis.com/ProductsServices/IDL/VersionUpdate.aspx I also recently learned of a free implementation of the IDL language — The GNU Data Language — which last saw a release in February of this year.
- A new beta of NCL (NCAR Command Language) is now available. NCL is a free interpreted language designed specifically for scientific data analysis and visualisation. There is an extensive what’s new page which gives the details of Version 6.1 .0-beta.
- The Perl Data Language (PDL) has seen a minor update to 2.4.11

**Python**

- Numpy 1.6.2 has been released. Numpy is the fundamental package for scientific computing with Python. This is a bug-fix release with details available in the README.txt file

**Mobile math software**

- Someone is working on Maxima for Android. I’ve not tried it yet.
- Gnuplot has been ported to Android by Corbin Champion, the developer who is also trying to bring Octave to the Android world (There is still time to donate at the time of writing). Look for AddiPlot in Google Play.

Welcome to the 16th Month of Math Software where I take a tour around the news and new releases in the world of mathematical software. Thanks so much to this month’s contributors without whom I would really struggle to put this newsletter together. As always, the archives can be found at http://www.walkingrandomly.com/?cat=47 and if you have any news for next month then there are numerous ways in which to contact me.

**Google Summer of Code**

The world of Open Source mathematical software stands to gain heavily from this year’s Google Summer of Code. Projects include an attempt to port Scilab to Android, improvements to symbolic expressions in Sage, aerospace and signal processing blocksets for Xcos, Just In Time compilation for Octave and many many more. See http://www.google-melange.com/gsoc/projects/list/google/gsoc2012 for the full list of projects.

**Mathematics on GP-GPUs (General Purpose – Graphical Processing Units)**

- An OpenCL implementation of the GPU linear algebra library, MAGMA, has been released. The practical upshot of this is that you can use GPU cards from manufacturers other than NVIDIA now. Version 0.1 Beta includes implementations of LU, QR, and Cholesky matrix factorisations.
- A beta version of AMD’s Accelerated Parallel Processing Math Libraries has been released.Version 1.7 beta includes some new BLAS Level 2 and 3 functions and is required for the MAGMA release mentioned above.
- Version 2.1 of AccelerEyes superb Jacket Toolbox has been released (last month in fact but I missed it) and includes support for unconstrained optimisation! The full change-log can be found at wiki.accelereyes.com/wiki/index.php/Release_Notes
- GPU Systems have released version 2.0 of their Libra SDK. According to the website ‘Libra is a cross processor, cross platform, cross language – standard math library and runtime API – for software application development.’ It supports both OpenCL and CUDA and multiple languages including C, C++, Java, C# and MATLAB.
- Benchmarking the new Kepler GTX680 – AccelerEyes compares NVIDIA’s new hardware with its old. The benchmarks are Matrix-Matrix Multiply, Fast Fourier Transform and sorting.

**Python**

- Version 0.7.3 of Pandas has been released. According to the website, Pandas aims to become the most powerful and flexible open source data analysis / manipulation tool available in any language Go to http://pandas.pydata.org/pandas-docs/dev/whatsnew.html to see what’s new.

- Version 0.4 of mathics has been released.
*‘Mathics is a free, general-purpose online computer algebra system featuring Mathematica-compatible syntax and functions.’*The Mathics project is looking for more developers, contact Jan Pöschko if you’re interested.

**Sparse Linear Systems**

- PaStiX (http://pastix.gforge.inria.fr) is a scientific library that provides a high performance parallel solver for very large sparse linear systems based on direct methods and version 5.2 was released this month.

**MATLAB add-ons**

- Version 2.1 of LAMG (Lean Algebraic Multigrid) was released this month. LAMG is a fast graph Laplacian solver. It can solve Ax=b in O(m) time and storage, where A is the graph Laplacian of a weighted undirected graph with m edges. Free MATLAB code download: http://code.google.com/p/lamg/
- Version 4.2 of Chebfun is now available from http://www.maths.ox.ac.uk/chebfun/. Chebfun is an open-source system written in Matlab that overloads Matlab’s operations for vectors and matrices to analogous operations for functions and operators. For an overview of what Chebfun can do, take a look at the collection of more than 100 Chebfun Examples posted at http://www.maths.ox.ac.uk/chebfun/examples/

**LAPACK – The standard for Linear Algebra
**

- LAPACK has seen a bug-fix release. See what’s new in version 3.4.1 at http://www.netlib.org/lapack/lapack-3.4.1.html

**SPSS In decline?**

Welcome to this month’s MMS which includes the usual mix of commercial and open source software spanning across multiple disciplines. Last month’s edition is here and the archive of all previous editions is at http://www.walkingrandomly.com/?cat=47. Thanks so much for all of the contributors this month without whom these articles would be significantly more difficult to write. As always, if you have some mathematical software news then feel free to contact me.

**General purpose commercial packages**

- Maple 16 was released in March and according to Maplesoft it has over 4500 additions and improvements compared to the previous version. Maple is very strong in polynomial arithmetic and Maplesoft have released benchmarks showing how Maple 16 is
**hundreds of times faster than Mathematica 8**in this area. For example, multiplication of two dense polynomials in 3 variables, each of degree 30 takes 110 seconds in Mathematica 8 but only 0.52 seconds in Maple 16 according to these new benchmarks. - MATLAB version 2012a was also released in March with the usual batch of improvements and updates. One of the highlights for me is the fact that The Mathworks now offer the MATLAB Compiler Runtime for free download, significantly simplifying the deployment of compiled applications.
- Version 2.18-5 of Magma, the commerical computer algebra system specializing in number theory, has been released. Click here for the v2.18-5 changelog

**Mathematical Open Source and Freeware**

- The popular Mathcad clone, SMath Studio, has been updated to version 0.93. The list of new things is at http://en.smath.info/forum/default.aspx?g=posts&t=1223
- Gnuplot, the venerable plotting package for many operating systems, has been updated to version 4.6. The new stuff is at http://www.gnuplot.info/announce.4.6.0
- Gnumeric is a free spreadsheet program and is part of the GNOME Office suite. Version 1..11.2 was released in March – see http://projects.gnome.org/gnumeric/announcements/1.11/gnumeric-1.11.2.shtml for the details.
- Euler Math Toolbox has moved from its old sourceforge home to http://euler.rene-grothmann.de. Now at version 14.5, this free MATLAB-like application has lots of nice features; read about all the new ones since version 14 here.

**An interactive shell for the GNU Scientific Library**

- The GNU Scientific Library (GSL) is an open source numerical library for C and C++ programmers that’s been around for many years now and most of you have probably heard of it or used it. Perhaps less well known, however, is the GSL Shell Project (at least I hadn’t heard of it until John Coppola emailed me–thanks to him for the info). In short, this project allows you to use the GSL interactively via the Lua programming language. Some links:-

**Python takes on R with pandas**

- The Python Data Analysis library, pandas, is designed to help Python programmers perform in depth data analysis projects without having to resort to R. Version 0.7.2 was released in March and you can see what’s new at http://pandas.pydata.org/pandas-docs/dev/whatsnew.html. Thanks to Tom Brander for the heads up on this one.

**Vital statistics**

- The open-source statistical juggernaut that is R has been updated to version 2.15.0. R-bloggers.com has got a copy of the release notes.

**Finite Differences and Elements
**

- “The Chombo software package provides a set of tools for implementing finite difference methods for the solution of partial differential equations on block-structured adaptively refined rectangular grids with embedded boundaries. Both elliptic and time-dependent modules are included. Support for parallel platforms and standardized self-describing file formats are included.” Version 3.1 was released in March…get it at https://commons.lbl.gov/display/chombo/Chombo+Download+Page
- The FEniCS book has been published and is available online and in print. The online version is available at http://dx.doi.org/10.1007/978-3-642-23099-8 and hard copies can be ordered from Springer (http://tinyurl.com/3ueq9hk) or book sellers. The FEniCS Project is a collection of free software with an extensive list of features for automated, efficient solution of differential equations.

**Eigenvalues everywhere**

The following two packages were recently announced on the Numerical Analysis Digest.

- “The FEAST solver package is a free high-performance numerical library for solving the standard or generalized eigenvalue problem, and obtaining all the eigenvalues and eigenvectors within a given search interval. The FEAST algorithm takes its inspiration from the density-matrix representation and contour integration technique in quantum mechanics.” Download version 2.0 from http://www.ecs.umass.edu/~polizzi/feast/download.htm
- “ELPA” is a new direct eigensolver library that addresses scalability and performance, especially for parallel applications. ELPA builds on the ScaLAPACK type interfaces that are often used in existing implementations, but key parts of the eigenvalue solution are then replaced with ELPA’s own routines in an easy-to-use way. The library is particularly useful when a substantial part of all eigenvalue / eigenvector pairs is needed. Released under an LGPL-like license, ELPA has been successfully tested for matrix sizes up to 680,000 and with up to 294,000 CPU cores on a BlueGene/P system.” A hybrid version (OpemMP and MPI) was released in March. http://elpa.rzg.mpg.de/

**From the blogs**

- New regression capabilities in MATLAB 2012a
- Image Processing and computer vision updates in MATLAB 2012a
- Adding functionality to Excel using the NAG Library for .NET
- Julia, I Love you – A review of the new numerical programming language, Julia

Welcome to the latest edition of A Month of Math Software which includes information on a new language for scientific computing, statistics software education in New Zealand as well as the usual mix of mathematical and scientific software releases from the worlds of commercial and free software.

If you’d like something added to next month’s edition then contact me (it’s free). If you want to see old editions then take a look at the MMS archive.

**A new language for scientific computing**

- Julia is a “new high-level, high-performance dynamic programming language for technical computing, with syntax that is familiar to users of other technical computing environment.” I haven’t tried it yet but it looks great and includes a Just In Time compiler (JIT) to help boost performance.
- Blog post on why the authors created Julia
- John D Cook writes some simple non-uniform random number generators in Julia.
- Online manual for Julia

Have you test driven Julia? Let me know what you think in the comments.

**Learn statistics with the free GenStat for teaching and Learning (GTL)
**

- Genstat is a commercial data analysis tool with an emphasis on the biosciences and they have a free version called GenStat for Teaching and Learning. This is currently being used to teach statistics in many schools in New Zealand (among other places) and a paper has been written about it called Learning Statistics Using Motivational Videos, Real Data and Free Software. Finally, check out these free videos, data sets and lesson plans that use the software.

**Mathcad Prime**

- Mathcad Prime 2.0 has been released and has lots of new improvements. I’ve never been a fan of Mathcad and Prime 1.0 was a big disappointment for me but many people seem to like it. Let me know if you are one of them.

**Attack of the clones
**

- A major new release of the free MATLAB clone, Octave, has is now available. Version 3.6.1 has lots of new goodies and you can read all about them in the 3.6.1 NEWS file.
- Version 13.7 of the MATLAB-like Euler Math Toolbox is now available. See the change log for the improvements.
- Version 0.92 of the popular Mathcad clone, Smath studio, was released in February.

**Number theory**

- A new version of PARI/GP is now available for download. From the software’s website: “PARI/GP is a widely used computer algebra system designed for fast computations in number theory (factorizations, algebraic number theory, elliptic curves…), but also contains a large number of other useful functions to compute with mathematical entities such as matrices, polynomials, power series, algebraic numbers etc., and a lot of transcendental functions.” Head over to the changelog to see what’s new.

**Perl and Python
**

- If you like to work with the Perl programming language then you should take a look at the Perl Data Language (PDL). A new version was released in February– version 2.4.10– which includes automatic multi-thread support among other things.
- If you prefer Python, you’ll probably like to know that version 0.10.1 of scipy, the scientific library for python, has been released.

**Math software on tablets**

- The Mathematica kernel is now running on iPad!
- GeoGebra is a superb piece of free software for mathematics learning and teaching. Thanks to the release of the beta version of GeoGebraWeb, you can now experience some of the GeogGebra goodness on Tablets and Chromebooks. This forum post gives the details.

**Finite Elements**

- February saw the release of two new C++ libraries: ViennaMath and ViennaFEM. The author of the libraries writes “The symbolic math kernel library ViennaMath (http://viennamath.sourceforge.net/) written in C++ allows for both runtime and compiletime evaluation, differentiation, integration, and substitution of simple mathematical expressions. In short, ViennaMath offers some of the advantages of full-fledged computer algebra systems such as Mathematica or Maple directly within C++. The symbolic math kernel is intended to be used for numerical applications and is included in the new finite element library ViennaFEM (http://viennafem.sourceforge.net/), which allows for the specification of either the strong or the weak formulation of the underlying PDE directly in code. Even though ViennaFEM is still in alpha-state, the first release already supports grids in 1d, 2d (triangular,quadrilateral) and 3d (tetrahedral, hexahedral).”

**From the blogs**

- How to solve a NLLS problem using SQP method in Excel? – From The Numerical Algorithms Group (NAG)
- Using GPUs in MATLAB – From The Mathworks (click here for my articles on GPUs in MATLAB)
- How to Blur an Image with a Fourier Transform in Matlab – Part I – From MATAB Geeks

Welcome to the first MMS of 2012. This series has been going for a year now and I’m very pleased to say that it’s become quite popular. In the beginning I had to trawl the web for all of the news I featured here but a sizeable percentage of it gets sent to me these days. If you’ve got some news about mathematical sofware then contact me and tell me all about it.

**General purpose mathematics**

- Sage, the python based open source computational algebra system, has been updated to version 4.8. View the changelog to see what’s new. 94 people contributed to this release according to the changelog which is very impressive! I wonder how that compares to the number of developers on commercial systems such as Maple, Mathematica and MATLAB?
- After a long wait, we get not one but two new versions of the free Mathcad clone, Smath Studio in one month. Lots of great new features in versions 0.90 and 0.91 of this very nice multiplatform application.
- Verision 2.18-3 of Magma, the commercial computational algebra system, has been released.

**Community**

- The new Mathematica StackExchange site has been launched so head over there for all of your Mathematica question and answer needs.
- The Mathworks have released an online community programing game for MATLABers called Cody. Problems start off incredibily easy and as you solve them, more difficult ones get unlocked. Your attempts are automatically scored by The Mathwork’s servers so feeback is instant and you can view other people’s solutions once you’ve solved a problem yourself. All in all, a great new way to sharpen your MATLAB programming skills.

**Partial Differential Equations**

- A new set of open-source software tools written in C++ for performing Partial Differential Equation (PDE) analysis and solving PDE constrained optimization problems has been released – Stanford University Unstructured (SU2)

**Mobile**

- An article on smartphone apps for mathematics, written by Peter Rowlett, Hazel Lewis and I, has been published in the January 2012 edition of Mathematics Teaching. Ironically, none of the authors of the article have seen the finished product yet since we are not subscribers!
- Michael Carreno sent me news of the release of his graphical calculator app for iPhone, AbleMath. I haven’t had chance to try it yet since Mrs WalkingRandomly refuses anything mathematical on her iPhone and I am an Android man myself. However, the screenshots look very nice and, since it’s free, it’s a lot cheaper than those expensive, underpowered junkers that American schools seem to insist on teaching with.

**Linear Algebra**

- Version 3.0 of the NLEVP (Nonlinear Eigenvalue Problems) Toolbox for MATLAB was released in December 2011 but I found out about it too late for December’s edition of MMS. It contains problems from models of real-life applications as well as problems constructed specifically to have particular properties. The collection is fully documented in the Technical Report and user’s guide. This release contains 52 problems (up from 46 in version 2.0) and new functionality;
**it is also now compatible with GNU Octave.** - ViennaCL, a GPU-accelerated C++ open-source linear algebra library, was updated to version 1.2.0 on December 31st (just missing the deadline for December’s Month of Math Software). Roughly speaking, ViennaCL is a mixture of Boost.ublas (high-level interface) and MAGMA (GPU-support), yet based on OpenCL rather than CUDA.

**Statistics**

- Version 0.95 of RStudio has been released. RStudio is an open-source integrated development environment (IDE) for the free statistical programming language, R. Check out the screencast detailing the new features.

**From the blogs**

- Happy 10*9*8+7+6-5+4*321
- Best Practices for Programming MATLAB
- Step-by-Step Differential Equation Solutions in Wolfram|Alpha
- PTC are preparing us for a new release of Mathcad Prime with several blog posts. Topics include performance enhancements, collapsible areas, and symbolic calculation.
- I should really be including this next one in February’s edition but it’s so interesting that I think I’ll share it now. Aurélien Garivier has written The Baum-Welch algorithm for hidden Markov Models: speed comparison between octave / python / R / scilab / matlab / C which gives you exactly what it says on the tin.

Welcome to the final Month of Math Software for 2011. Lots of people sent in news items this month so hopefully there will be something of interest to everyone. If you have any news items or articles that you think will fit in to next month’s edition then please contact me and tell me all about it.

If you like what you see and want more then check out the archives.

**Mathematica StackExchange Proposal**

There is a proposal to launch a new Mathematica-specific questions/answers site on StackExchange. All it needs is enough interested people who will follow or commit to the proposal. There is already a vibrant Mathematica community on StackOverflow, where many of the MathGroup regulars participate. Unfortunately not all questions are on topic or tolerated there, so many believe that it would be better to launch a new site. If you are willing to lend support to this proposal then add your name to the list at http://area51.stackexchange.com/proposals/37304/mathematica?referrer=23yK9sXkBPQIDM_9uBjtlA2

**General mathematical software**

- Version 5.26 of Maxima, a free computer algebra system for Windows, Linux and Mac OS X, has been released over at Sourceforge. No details on what’s new yet.
- The free, open-source stats software, R, has seen a minor update with 2.14.1. Full details of the new stuff can be found at https://stat.ethz.ch/pipermail/r-announce/2011/000548.html
- The free Euler Math Toolbox is now at version 13.3. See what’s new at http://eumat.sourceforge.net/versions/version-13.html
- The general purpose computational algebra system, Magma, has been updated to version 2.18.2. See what’s new at http://magma.maths.usyd.edu.au/magma/releasenotes/2/18/2/

**Making MATLAB faster
**

- Jacket, the GPU accelerated toolbox for MATLAB from Accelereyes, has seen a major update. Version 2.0 includes all sorts of new goodies including faster random number generation, improved multi-GPU support, and a load of new functions. Perhaps most importantly,
**Jacket 2.0 includes support for OpenCL**which opens the product up to many more hardware configurations. See more details on what’s new at their wiki. - I wrote a blog post that demonstrates how to use Intel’s SPMD Program Compiler, ispc, to write faster mex files in MATLAB.

**More mathematics in CUDA**

- Release candidate 2 of version 4.1 of NVIDIA’s CUDA Toolkit has been released. There’s lots of interesting new mathmatical functions and enhancements over version 4.0 including Bessel functions, a new cuSPARSE tri-diagonal solver, new random number generators (MRG32k3a and MTGP11213 Mersenne Twister), and
**one thousand image processing functions**!

**Differential Equations**

- FEniCS 1.0 has been released. The FEniCS Project is a collection of free software with an extensive list of features for automated, efficient solution of differential equations.

**Libraries**

- The HSL Mathematical Software Library (http://www.hsl.rl.ac.uk) is a high performance Fortran library that specialises in sparse linear algebra and is widely used by engineering and optimization communities. Since the release of HSL 2011 at the start of Feburary, there have been a number of updates to the library. Take a look at http://www.hsl.rl.ac.uk/changes.html for the detailed list of changes. Interestingly, this library is
**free for academic use**! - FLINT (Fast Library for Number Theory) version 2.3alpha has been released. I can’t find any info on what’s new at the moment.
- Version 5.1 of AMDs linear algebra library, ACML, is now available.
- Version 1.6 of the AMD Accelerated Parallel Processing Math Libraries (APPML) has been released. I’m not sure what’s new since the release notes only contain information about Timeout Detection and Recovery rather than info on the new stuff. AMD Accelerated Parallel Processing Math Libraries are software libraries containing FFT and BLAS functions written in OpenCL and designed to run on AMD GPUs. The libraries also support running on CPU devices to facilitate debugging and multicore programming.
- Version 2.4.5 of PLASMA (Parallel Linear Algebra for Scalable Multi-core Architectures) was released back in November but I somehow missed it. Check out the 2.4.5 release notes for details.

**Blog posts about Mathematical software**

- Over at No Ice in my Scotch Please, stu has written a series of posts on how to leverage CUDA with MATLAB in Some Useful Tools for Numerical Solution of PDEs on a Workstation.
- Anna looks at 3D plots in the upcoming Mathcad prime 2.0.
- Arthur Charpentier uses R to explain how to use Markov chains to improve your Snakes and Ladders game :)
- Jon McLoone writes 10 Tips for Writing Fast Mathematica code. If this interests you then you may also be interested in my detailed look at Mathematica’s Compile function.
- Kyle demonstrates how reordering sparse matrices can improve parallelism.

Welcome to Walking Randomly’s monthly look at what’s new in the world of mathematical software. Click here for last month’s edition and check out the archive for all previous editions. If you have some news about mathematical software and want to get it out to over 2,500 subscribers then contact me and tell me all about it.

**General mathematical software
**

- Python(x,y) has been updated to version 2.7.2.1. Python(x,y) is a free scientific and engineering development software for numerical computations, data analysis and data visualization
- Version 2.17-13 of the number theoretic package, Magma, has been released. Click here to see what’s new.
- Freemat, a a free environment for rapid engineering,scientific prototyping and data processing similar to MATLAB, has seen its first major update in 2 years! The big news in version 4.1 is a Just In Time (JIT) compiler which should speed up code execution a great deal. There is also a significant improvement in Freemat’s ability to render multidimensional datasets thanks to integration of the Visualisation Toolkit (VTK).
- The Euler Math Toolbox has been updated to version 13.1. See the list of changes for details of what’s new.
- Gnumeric saw a new major release in November with 1.11.0 (click here for changes) closely followed by some bug fixes in 1.11.1 (changes here). Gnumeric is a free spreadsheet program for Linux and Windows.

**Linear Algebra**

- LAPACK, The Fortran based linear algebra library that forms the bedrock of functionality in countless software applications, has been updated to version 3.4.0. Click here for the release notes.
- MAGMA, A linear algebra library that is
*“similar to LAPACK but for heterogeneous/hybrid architectures, starting with current “Multicore+GPU” systems.”*has been updated to version 1.1 - PLASMA, The Parallel Linear Algebra for Scalable Multi-core Architectures, has been updated to version 2.4.5. Click here for what’s new.

**New Products**

- AccelerEyes have released a new product called ArrayFire – a free CUDA and OpenCL library for C, C++, Fortran, and Python
- CULA Tools released a new product called CULA Sparse which is a GPU-accelerated library for linear algebra that provides iterative solvers for sparse systems. They’ve also released a demo application to allow you to try the product out for free.

**Vital Statistics**

- R version 2.14.0 has been released with a host of new features. If you do any kind of statistical computing then R is the free, open source solution for you!

**Pretty plots**

- Originlabs have updated their commercial windows plotting packages, Origin and OriginPro to version 8.6. Here’s the press release.
- A new incremental update of GNUPlot, a free multiplatform plotting package, has been released. The release announcement tells us what new goodies we get in version 4.4.4.

**Mobile**

- One of the best mobile mathematical applications that money can buy, SpaceTime, has released a new version for iOS and Mac OS X and changed its name to Math Studio. Not to be confused with SMathStudio, another mobile mathematical application that is a clone of MathCad.
- The guys behind the excellent Android based Python/Sympy app – MathScript – have released a beta of a new product called ScriptBlocks.

**Odds and ends**

- RougeWave Software have released version 8.0 of the commercial IMSL C library. Improvements include CUDA BLAS integration and a few new functions. The full list is available on the what’s new page.
- Bernard Liengme has written a Primer for SmathStudio (a free Mathcad clone)
- Eureqa, a software tool for detecting equations and hidden mathematical relationships in your data, has seen a major new update: Eureqa II (Code Name Formulize). Get it from http://creativemachines.cornell.edu/eureqa_download
- The Numerical Algorithms Group (NAG) have put together a set of examples where various versions of their numerical library product (for Fortran, C and .NET) are used in Labview programs.
- Scipy version 0.10.0 has been released. Check out the release notes for the new stuff.