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.
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.
FFTW is a fast C FFT library. It includes complex, real, symmetric, multidimensional, and parallel transforms, and can handle arbitrary array sizes efficiently.It is typically faster than other freely available FFT implementations, and is even competitive with vendor-tuned libraries (benchmarks are available at the homepage). To achieve this performance, it uses novel code generation and runtime self optimization techniques (along with many other tricks).
R is a language and environment for statistical computing and graphics. It is similar to S, which was developed at Bell Laboratories by John Chambers et al. It provides a wide variety of statistical and graphical techniques (linear and nonlinear modelling, statistical tests, time series analysis, classification, clustering, etc.). R is designed as a true computer language with control-flow constructions for iteration and alternation, and it allows users to add additional functionality by defining new functions. For computationally intensive tasks, Fortran and C code can be linked and called at run time.
Botan is a crypto library written in C++. It provides a variety of cryptographic algorithms, including common ones such as AES, MD5, SHA, HMAC, RSA, Diffie-Hellman, DSA, and ECDSA, as well as many others that are more obscure or specialized. It also offers SSL/TLS (client and server), X.509v3 certificates and CRLs, and PKCS #10 certificate requests. A message processing system that uses a filter/pipeline metaphor allows for many common cryptographic tasks to be completed with just a few lines of code. Assembly and SIMD optimizations for common CPUs offers speedups for critical algorithms like AES and SHA-1.
Class Library for Numbers (CLN) is a library for computations with all kinds of numbers. Its rich set of number classes includes integers, rational numbers, floating-point numbers, complex numbers, modular integers, and univariate polynomials. It implements elementary functions (also with unlimited precision), logical functions, and transcendental functions. It is designed for memory and speed efficiency as well as interoperability.
Frink is a calculating tool and programming language designed to help you in the real world. It tracks units of measurement throughout all calculations and ensures that answers are correct. It converts between systems of measurement, and has a huge library of physical data. It is both a simple calculator for quick calculations and a full-fledged programming language for large tasks. It draws high-quality graphics, handles conversions between time zones, currencies, and historical values of the U.S. dollar and the British pound, translates between several languages, does date/time math, and more.
The ATLAS (Automatically Tuned Linear Algebra Software) project is an ongoing research effort focusing on applying empirical techniques in order to provide portable performance. It provides C and Fortran77 interfaces to a portably efficient BLAS implementation, as well as a few routines from LAPACK.
Scilab is a numerical computation system similiar to Matlab or Simulink. Scilab includes hundreds of mathematical functions, and programs from various languages (such as C or Fortran) can be added interactively. It has sophisticated data structures (including lists, polynomials, rational functions, and linear systems), an interpreter, and a high-level programming language. Scilab has been designed to be an open system where the user can define new data types and operations on these data types by using overloading. A number of toolboxes are available with the system.