ACL2 is a mathematical logic, programming language, and mechanical theorem prover based on the applicative subset of Common Lisp. It is an "industrial-strength" version of the NQTHM or Boyer/Moore theorem prover, and has been used for the formal verification of commercial microprocessors, the Java Virtual Machine, interesting algorithms, and so forth.
APBS is a software package for the numerical solution of the Poisson-Boltzmann equation (PBE), one of the most popular continuum models for describing electrostatic interactions between molecular solutes in salty, aqueous media. Continuum electrostatics plays an important role in several areas of biomolecular simulation, including simulation of diffusional processes to determine ligand-protein and protein-protein binding kinetics, implicit solvent molecular dynamics of biomolecules, solvation and binding energy calculations to determine ligand-protein and protein-protein equilibrium binding constants and aid in rational drug design, and biomolecular titration studies.
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.
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.
Asymptote is a powerful descriptive 2D and 3D vector graphics language for technical drawing, inspired by MetaPost but with an improved C++-like syntax. It provides for figures the same high-quality level of typesetting that LaTeX does for scientific text. Asymptote is a programming language as opposed to just a graphics program. It can exploit the best features of script (command-driven) and graphical user interface (GUI) methods. High-level graphics commands are implemented in the language itself, allowing them to be easily tailored to specific applications.
BuDDy was created as part of a PhD project on model checking of finite state machines by Jørn Lind-Nielsen. The package has evolved from a simple introduction to Binary Decision Diagrams (BDDs) to a full blown BDD package with all the standard BDD operations, reordering, a C++ interface, and a wealth of documentation.
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.
Brook for GPUs is a compiler and runtime implementation of the Brook stream programming language for modern graphics hardware. The goals for this project are to demonstrate general purpose programing on GPUs, to provide a useful tool for developers who want to run applications on GPUs, and to research the stream language programming model, streaming applications, and system implementations.
CCruncher is a project for the simulation of large portfolios of SME loans where the unique risk is the default risk. The method used to determine the distribution of losses in the portfolio is the Monte Carlo algorithm, because it allows you to consider multiple variables, such as the date and amount of each payment. The obligors' default times are simulated using a copula with given survival rates and correlations.