650 projects tagged "Mathematics"
gjrand is a programmer's library for pseudo-random numbers. It includes random number generator testing code and is intended for simulation, games, and "Monte-Carlo" algorithms. It produces pseudo-random numbers of the types: uniform integers, uniform reals, normally distributed reals, binomial, Poisson, integer permutation, chi-squared distribution, "Student" T distribution, and spherical distribution.
Calc is arbitrary precision arithmetic system that uses a C-like language. It's useful as a calculator, an algorithm prototype, and as a mathematical research tool. More importantly, calc provides a machine-independent means of computation. Calc comes with a rich set of builtin mathematical and programmatic functions.
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.
SLEEF (SIMD Library for Evaluating Elementary Functions) is a library that facilitates programming with SIMD instructions. It implements the trigonometric functions, inverse trigonometric functions, exponential and logarithmic functions in double precision without table look-ups, scattering from, or gathering into SIMD registers, or conditional branches. This library also includes some functions for evaluation in single precision.
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.
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.
GetDP is a general finite element solver using mixed elements to discretize de Rham-type complexes in one, two, and three dimensions. The main feature of GetDP is the closeness between the input data defining discrete problems (written by the user in ASCII data files) and the symbolic mathematical expressions of these problems.
AnallogicA is an application that generates logical tables based on logical propositions. It is possible to compare inverse equivalence or logical values. Results can be saved in text files, CSV format, and an internal format. The program supports up to 15 different variables, which in combination would be more than 32000 possibilities. It shows the replacements done step-by-step during the analysis, a special function for students.
MathGL is a library for making high-quality scientific graphics under Linux and Windows, fast data plotting and handling of large data arrays, working in window and console modes, and easily embedding into other programs. It has more than 40 general types of graphics for 1d, 2d, and 3d data arrays. It can export graphics to raster and vector (EPS or SVG) formats. It has an OpenGL interface and can be used from console programs. It has functions for data handling and MGL language scripting for simplification of data plotting. It has several types of transparency and smoothed lightning, vector fonts and TeX-like formula drawing, an arbitrary curvilinear coordinate system, and many other useful things.
pyPEG is a quick and easy solution for creating a parser in Python programs. pyPEG uses a PEG language in Python data structures to parse, so it can be used dynamically to parse nearly every context free language. The output is a plain Python data structure called pyAST, or, as an alternative, XML.