TSPSG is intended to generate and solve "travelling salesman problem" (TSP) tasks. It uses the Branch and Bound method for solving. Its input is a number of cities and a matrix of city-to-city travel costs. The matrix can be populated with random values in a given range (which is useful for generating tasks). The result is an optimal route, its price, step-by-step matrices of solving, and a solving graph. The task can be saved in an internal binary format and opened later. The result can be printed or saved as PDF, HTML, or ODF. TSPSG may be useful for teachers to generate test tasks or just for regular users to solve TSPs. Also, it may be used as an example of using the Branch and Bound method to solve a particular task.
Armadillo is a C++ linear algebra library (matrix maths) aiming towards a good balance between speed and ease of use. Integer, floating point, and complex numbers are supported, as well as a subset of trigonometric and statistics functions. Various matrix decompositions are provided through optional integration with LAPACK and ATLAS libraries. A delayed evaluation approach, based on template meta-programming, is used (during compile time) to combine several operations into one and reduce or eliminate the need for temporaries.
Theano is a Python library that allows you to define, optimize, and evaluate mathematical expressions involving multi-dimensional arrays efficiently. Theano features tight integration with numpy, transparent use of a GPU, efficient symbolic differentiation, speed and stability optimizations, dynamic C code generation, and extensive unit-testing and self-verification. Theano has been powering large-scale computationally intensive scientific investigations since 2007. But it is also approachable enough to be used in the classroom (IFT6266 at the University of Montreal).
SHOGUN is a machine learning toolbox whose focus is on large scale kernel methods and especially on Support Vector Machines (SVM). It provides a generic SVM object interfacing to several different SVM implementations, all making use of the same underlying, efficient kernel implementations. Apart from SVMs and regression, SHOGUN also features a number of linear methods like Linear Discriminant Analysis (LDA), Linear Programming Machine (LPM), (Kernel) Perceptrons, and algorithms to train hidden Markov models. SHOGUN can be used from within C++, Matlab, R, Octave, and Python.
Gmsh is an automatic 3D finite element grid generator with built-in CAD and post-processing facilities. Its design goal is to provide a simple meshing tool with parametric input and advanced visualization capabilities. It is built around four modules: geometry, mesh, solver, and post-processing. The specification of any input to these modules is done either interactively using the graphical user interface (based on FLTK and OpenGL) or in ASCII text files using Gmsh's own scripting language.
TooN is a very efficient numerics library for C++. The main focus of the library is efficient and safe handling of large numbers of small vector matrices and providing as much compile time checking as is possible. The library also works with large vectors and matrices and integrates easily with existing code. In addition to elementary vector and matrix operations, the library also providers linear solvers, matrix decompositions, optimization, and wrappers around LAPACK.
SHTns is a high-performance Spherical Harmonic Transform library. It was designed for numerical simulation (fluid flows, mhd, etc.) in spherical geometries, but can be used for any kind of problem involving scalar or vector spherical harmonics. It is very fast, thanks to careful vectorization and runtime tuning. It supports multi-threaded transforms via OpenMP. It features scalar and vector transforms, synthesis and analysis, and flexible truncation and normalization. A Python interface is included.
CCruncher is a project for quantifying portfolio credit risk using the copula approach. It is a framework consisting of two elements: a technical document that explains the theory, and a software program that implements it. CCruncher evaluates the portfolio credit risk by sampling the portfolio loss distribution and computing the Expected Loss (EL), Value at Risk (VaR), and Expected Shortfall (ES) statistics. The portfolio losses are obtained simulating the default times of obligors and simulating the EADs and LGDs of their assets.
Sage is a mathematical software system comprising nearly 100 open-source packages and a unified interface. Sage can be used to study elementary and advanced, pure and applied mathematics. This includes a huge range of mathematics, including basic algebra, calculus, elementary to very advanced number theory, cryptography, numerical computation, commutative algebra, group theory, combinatorics, graph theory, exact linear algebra, and much more. It combines various software packages and seamlessly integrates their functionality into a common experience. It is well-suited for education and research.