Armadillo is a C++ linear algebra library (matrix maths) aiming towards a good balance between speed and ease of use. The API is deliberately similar to Matlab's. 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 numerics 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.
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.
GNU TeXmacs is a free wysiwyw (what you see is what you want) editing platform with special features for scientists. The software aims to provide a unified and user friendly framework for editing structured documents with different types of content: text, mathematics, graphics, interactive content. TeXmacs can also be used as an interface to many external systems for computer algebra, numerical analysis, and statistics. New presentation styles can be written by the user and new features can be added to the editor using Scheme.
DOLFIN is the C++ interface of the FEniCS project for the Automation of Computational Mathematical Modeling (ACMM), providing a consistent PSE (Problem Solving Environment) for solving ordinary and partial differential equations. Key features include a simple, consistent and intuitive object-oriented API; automatic and efficient evaluation of variational forms through FFC; automatic and efficient assembly of linear systems; and support for general families of finite elements.
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.
Blitz++ library moves high-level optimizations out of compilers and into libraries in C++. It was created due to the fact that until recently, C++ lagged behind Fortran's performance by anywhere from 20% to a factor of ten. The C++ programming language offers many features useful for tackling complex scientific computing problems, but unfortunately, these advanced features came with this hefty performance pricetag. This program presents a possible solution.