Oberwolfach References on Mathematical Software

35 Search Results

3D-XplorMath

The primary goal of 3D-XplorMath is to allow users with little or no programming experience to see, with minimal effort, concrete visual representations of many different categories of mathematical objects and processes. To accomplish this, objects from each category are described internally by well-designed, parameterized data structures, and for each category a variety of rendering methods is provided to permit visualization of objects of the category in ways that are appropriate for various purposes. Each of the hundreds of built-in objects known to the program is assigned carefully chosen defaults so that, when the object is selected from a menu, the program can immediately construct a standard example of the object and render it in an optimized view. The user may then use various menus and dialogs to alter the parameters describing the shape and coloration of the object, change the viewpoint from which it is seen, select different rendering methods, etc. Moreover, as its name suggests, the program can display objects such as surfaces, space curves and polyhedra using various stereo techniques. In addition to the many built-in objects known to the program, a user can create "user-defined" objects by entering formulas using standard mathematical notation. Visualizations created by the program can be saved in jpeg and other graphic formats and the data defining 3D objects can be exported to other 3D programs (e.g., Bryce or POV-Ray) in formats such as .obj and .inc. Both built-in and user-defined objects can depend on parameters, and the program can create morphing animations by moving along a path in the parameter space, and these animations can then be saved as QuickTime movies. Each of the built-in objects has associated to it a so-called ATO (About This Object) file that provides documentation for the object. An early and more developed version of the program, written in Object Pascal, runs under the Macintosh Operating System and a Java-based cross-platform version is now also available.

More information

CASA

CASA is a special-purpose system for computational algebra and constructive algebraic geometry. The system has been developed since 1990. CASA is the ongoing product of the Computer Algebra Group at the Research Institute for Symbolic Computation (RISC-Linz), the University of Linz, Austria, under the direction of Prof. Winkler. The system is built on the kernel of the widely used computer algebra system Maple.

More information

cdd/cddplus

The program cdd+ is a C++ implementation of the Double Description Method of Motzkin et al. for generating all vertices (i.e. extreme points) and extreme rays of a general convex polyhedron in R^d given by a system of linear inequalities.

More information

CGAL

CGAL is a collaborative effort of several sites in Europe and Israel. The goal is to make the most important of the solutions and methods developed in computational geometry available to users in industry and academia in a C++ library. The goal is to provide easy access to useful, reliable geometric algorithms The CGAL library contains: the Kernel with geometric primitives such as points, vectors, lines, predicates for testing things such as relative positions of points, and operations such as intersections and distance calculation, the Basic Library which is a collection of standard data structures and geometric algorithms, such as convex hull in 2D/3D, (Delaunay) triangulation in 2D/3D, planar map, polyhedron, smallest enclosing circle, and multidimensional query structures, the Support Library which offers interfaces to other packages, e.g., for visualisation, and I/O, and other support facilities.

More information

Cinderella

Cinderella is a software system for doing geometry on a computer. The new version Cinderella.2 also includes physics simulations and algorithmic elements.

More information

CoCoA

CoCoA is a system for Computations in Commutative Algebra. It is able to perform simple and sophisticated operations on multivaraiate polynomials and on various data related to them (ideals, modules, matrices, rational functions). For example, it can readily compute Grobner bases, syzygies and minimal free resolution, intersection, division, the radical of an ideal, the ideal of zero-dimensional schemes, Poincare' series and Hilbert functions, factorization of polynomials, toric ideals. The capabilities of CoCoA and the flexibility of its use are further enhanced by the dedicated high-level programming language. For convenience, the system offers a textual interface, an Emacs mode, and a graphical user interface common to most platforms.

More information

Convex

Convex is a Maple package for convex geometry. It can deal with rational polytopes, cones and other polyhedra of arbitrary dimension. Polyhedral complexes and fans are also supported, as well as computations in face lattices. The integration into Maple makes Convex particularly suited for "applied" problems where polyhedra arise together with other mathematical structures.

More information

ePix

ePiX, a collection of batch-oriented utilities for *nix, creates mathematically accurate line figures, plots, and movies using easy-to-learn syntax. LaTeX and dvips comprise the typographical rendering engine, while ImageMagick is used to create bitmapped images and animations. The user interface resembles that of LaTeX itself: You prepare a short scene description in a text editor, then compile'' the input file into a picture. Default output formats are eepic (a plain text enhancement to the LaTeX picture environment), eps, pdf, png, and mng.

More information

FLASH Code

The FLASH code is a modular, adaptive, parallel simulation code capable of handling general compressible flow problems in astrophysical environments. It has been designed to allow users to configure initial and boundary conditions, change algorithms, and add new physical effects with minimal effort. It uses the PARAMESH library to manage a block-structured adaptive grid, placing resolution elements only where they are needed most. It uses the Message-Passing Interface (MPI) library to achieve portability and scalability on a variety of different message-passing parallel computers.

More information

G+Smo

G+Smo (Geometry + Simulation Modules, pronounced "gismo") is a new open-source C++ library that brings together mathematical tools for geometric design and numerical simulation. It is developed mainly by researchers and PhD students. It implements the relatively new paradigm of isogeometric analysis, which suggests the use of a unified framework in the design and analysis pipeline. G+Smo is an object-oriented, cross-platform, template C++ library and follows the generic programming principle, with a focus on both efficiency and ease of use. The library is partitioned into smaller entities, called modules. Examples of available modules include the dimension-independent NURBS module, the data fitting and solid segmentation module, the PDE discretization module and the adaptive spline module, based on hierarchical splines of arbitrary dimension and polynomial degree. The library is licenced under the Mozilla Public License v2.0. It has been developed within the homonym research network supported by the Austrian Science Fund and aims at providing access to high quality, open-source software to the forming isogeometric numerical simulation community and beyond.

More information

GAP

GAP is a system for computational discrete algebra, with particular emphasis on Computational Group Theory. GAP provides a programming language, a library of thousands of functions implementing algebraic algorithms written in the GAP language as well as large data libraries of algebraic objects. GAP is used in research and teaching for studying groups and their representations, rings, vector spaces, algebras, combinatorial structures, and more. GAP is developed by international cooperation. The system, including source, is distributed freely under the terms of the GNU General Public License. You can study and easily modify or extend GAP for your special use. The current version is GAP 4, the older version GAP 3 is still available.

More information

GeoGebra

GeoGebra is free and multi-platform dynamic mathematics software for all levels of education that joins geometry, algebra, tables, graphing, statistics and calculus in one easy-to-use package. It has received several educational software awards in Europe and the USA.Quick Facts: * Graphics, algebra and tables are connected and fully dynamic * Easy-to-use interface, yet many powerful features * Authoring tool to create interactive learning materials as web pages * Available in many languages for our millions of users around the world * Free and open source software

More information

HiFlow³

HiFlow³ is a multi-purpose finite element software providing powerful tools for efficient and accurate solution of a wide range of problems modeled by partial differential equations. Based on object-oriented concepts and the full capabilities of C++ the HiFlow³ project follows a modular and generic approach for building efficient parallel numerical solvers. It provides highly capable modules dealing with the mesh setup, finite element spaces, degrees of freedom, linear algebra routines, numerical solvers, and output data for visualization. Parallelism – as the basis for high performance simulations on modern computing systems – is introduced on two levels: coarse-grained parallelism by means of distributed grids and distributed data structures, and fine-grained parallelism by means of platform-optimized linear algebra back-ends.

More information

HSL

HSL (formerly the Harwell Subroutine Library) is a collection of ISO Fortran codes for large scale scientific computation, written by members of the Numerical Analysis Group and other experts.

More information

ISAAC

ISAAC (Integrated Solution Algorithm for Arbitrary Configurations) is a compressible Euler/Navier-Stokes computational fluid dynamics code. ISAAC includes the capability of calculating the Euler equations for inviscid flow or the Navier-Stokes equations for viscous flows. ISAAC uses a domain decomposition structure to accomodate complex physical configurations. ISAAC can calculate either steady-state or time dependent flow. ISAAC was designed to test turbulence models. Various two equation turbulence models, explicit algebraic Reynolds stress models, and full differential Reynolds stress models are implemented in ISAAC. Several test cases are documented in the User's Guide.

More information

KnotPlot

KnotPlot is a program to visualize and manipulate knots in three and four dimensions. Knots can be loaded from a database of almost 1000 knots and links or sketched by hand in three dimensions. Also, knots may be constructed via the Conway notation or using a tangle calculator. A number of special knot types (torus knots, knot chains, Lissajous knots) may be created on the fly. Finally, new knots can be created from old knots using a number of transformations.

More information

LattE integrale

LattE (Lattice point Enumeration) is a computer software dedicated to the problems of counting lattice points and integrationinside convex polytopes. LattE contains the first ever implementation of Barvinok's algorithm. The latest version, LattE integrale, has the ability to directly compute integrals of polynomial functions over polytopes and in particular to do exact volume computations. Version 1.6 added the capability of computing the highest coefficients of weighted Ehrhart quasipolynomials.

More information

Macaulay 2

Macaulay 2 is a software system devoted to supporting research in algebraic geometry and commutative algebra, whose development has been funded by the National Science Foundation.

More information

Magma

Magma is a large, well-supported software package designed to solve computationally hard problems in algebra, number theory, geometry and combinatorics. It provides a mathematically rigorous environment for computing with algebraic, number-theoretic, combinatoric and geometric objects.

More information

Maple

Maple is an environment for scientific and engineering problem-solving, mathematical exploration, data visualization and technical authoring.

More information

Normaliz

Normaliz is a tool for computations in affine monoids, vector configurations, lattice polytopes, and rational cones. Its input data can be specified in terms of a system of generators or vertices or a system of linear homogeneous Diophantine equations, inequalities and congruences or a binomial ideal. Normaliz computes the dual cone of a rational cone (in other words, given generators, Normaliz computes the defining hyperplanes, and vice versa), a placing (or lexicographic) triangulation of a vector configuration (resulting in a triangulation of the cone generated by it), the Hilbert basis of a rational cone, the lattice points of a lattice polytope, the normalization of an affine monoid, the Hilbert (or Ehrhart) series and the Hilbert (or Ehrhart) (quasi) polynomial under a Z-grading (for example, for rational polytopes), NEW: generalized (or weighted) Ehrhart series and Lebesgue integrals of polynomials over rational polytopes via NmzIntegrate, a description of the cone and lattice under consideration by a system of inequalities, equations and congruences

More information

Octave

GNU Octave is a high-level language, primarily intended for numerical computations. It provides a convenient command line interface for solving linear and nonlinear problems numerically, and for performing other numerical experiments using a language that is mostly compatible with Matlab. It may also be used as a batch-oriented language. Octave has extensive tools for solving common numerical linear algebra problems, finding the roots of nonlinear equations, integrating ordinary functions, manipulating polynomials, and integrating ordinary differential and differential-algebraic equations. It is easily extensible and customizable via user-defined functions written in Octave's own language, or using dynamically loaded modules written in C++, C, Fortran, or other languages.

More information

PLTMG

PLTMG is a package for solving elliptic partial differential equations in general regions of the plane. It is based on continuous piecewise linear triangular finite elements, and features adaptive local mesh refinement, multigraph iteration, and pseudo-arclength continuation options for parameter dependencies. It also provides options for solving several classes of optimal control and obstacle problems. The package includes an initial mesh generator and several graphics packages. Support for the Bank-Holst parallel adaptive meshing strategy is also provided. PLTMG is provided as Fortran (and a little C) source code, in both single and double precision versions. The code has interfaces to X-Windows, MPI, and Michael Holst's OpenGL image viewer SG. The X-Windows, MPI, and SG interfaces require libraries that are NOT provided as part of the PLTMG package.

More information

polymake

polymake is an object-oriented system for experimental discrete mathematics. The typical working cycle of a polymake user starts with the construction of an object of interest, auch as a convex polytope, a finite simplicial complex, a graph, etc. It is then possible to ask the system for some of the object's properties or for some form of visualization. Further steps might include more elaborate constructions based on previously defined objects. Each class of polymake objects comes with a set of rules which describe how a new property of an object can be derived from previously known ones. It is a key feature that the user can extend or modify the set of rules, add further properties or even new classes of objects (with entirely new rule bases). The functions provided include: several convex hull algorithms, face lattices of convex polytopes, Voronoi diagrams and Delaunay decompositions (in arbitrary dimensions), simplicial homology (with integer coefficients), simplicial cup and cap products, intersection forms of triangulated 4-manifolds. Several forms of (interactive) visualization via interfaces to Geomview, JavaView and other programs.

More information

rbMIT

The rbMIT © MIT software package implements in Matlab® all the general reduced basis algorithms. The rbMIT © MIT software package is intended to serve both (as Matlab® source) "Developers" — numerical analysts and computational tool-builders — who wish to further develop the methodology, and (as Matlab® "executables") "Users" — computational engineers and educators — who wish to rapidly apply the methodology to new applications. The rbMIT software package was awarded with the Springer Computational Science and Engineering Prize in 2009.

More information

Regina

Regina is a suite of mathematical software for 3-manifold topologists. It focuses upon the study of 3-manifold triangulations and includes support for normal surfaces and angle structures.

More information

Risa/Asir

Risa/Asir is a general computer algebra system and also a tool for various computation in mathematics and engineering. The development of Risa/Asir started in 1989 at FUJITSU. Binaries have been freely available since 1994 and now the source code is also free. Currently Kobe distribution is the most active branch of its development. We characterize Risa/Asir as follows: (1) An environment for large scale and efficient polynomial computation. (2) A platform for parallel and distributed computation based on OpenXM protocols.

More information

Sage

SAGE is a framework for number theory, algebra, and geometry computation. It is open source and freely available under the terms of the GNU General Public License (GPL). SAGE is a Python library with a customized interpreter. It is written in Python, C++, and C (via Pyrex). Python (http://www.python.org) is an open source object-oriented interpreted language, with a large number of libraries, e.g., for numerical analysis, which are available to users of SAGE. Python can also be accessed in library mode from C/C++ programs. SAGE provides an interface to several important open source libraries, including Cremona’s MWRANK library for computing with elliptic curves, the PARI library (pari.math.u-bordeaux.fr) for number theory, Shoup’s number theory library NTL (http://www.shoup.net/ntl/), SINGULAR (http://www.singular.uni-kl.de) for commutative algebra, GAP (http://www.gap-system.org) for group theory and combinatorics, and maxima (http://maxima.sourceforge.net) for symbolic computation and calculus.

More information

SingSurf

An online Java applet for calculation of singular algebraic surfaces.

More information

SINGULAR

SINGULAR is a Computer Algebra system for polynomial computations in commutative algebra, algebraic geometry, and singularity theory. SINGULAR's main computational objects are ideals and modules over a large variety of baserings. The baserings are polynomial rings over a field (e.g., finite fields, the rationals, floats, algebraic extensions, transcendental extensions), or localizations thereof, or quotient rings with respect to an ideal. SINGULAR features fast and general implementations for computing Groebner and standard bases, including e.g. Buchberger's algorithm and Mora's Tangent Cone algorithm. Furthermore, it provides polynomial factorizations, resultant, characteristic set and gcd computations, syzygy and free-resolution computations, and many more related functionalities. Based on an easy-to-use interactive shell and a C-like programming language, SINGULAR's internal functionality is augmented and user-extendible by libraries written in the SINGULAR programming language. A general and efficient implementation of communication links allows SINGULAR to make its functionality available to other programs.

More information

Surfer

Surfer is a programme to visualize real algebraic surfaces in an intuitive and fast way

More information

SymPy

SymPy is a Python library for symbolic mathematics. It aims to become a full-featured computer algebra system (CAS) while keeping the code as simple as possible in order to be comprehensible and easily extensible. SymPy is written entirely in Python and does not require any external libraries.

More information

SYNAPS

SYNAPS (Symbolic and Numeric APplicationS) is a library developed in C++. The aim of this open source project is to provide a coherent and efficient library for symbolic and numeric computation. It implements data-structures and classes for the manipulation of basic objects, such as (dense, sparse, structured) vectors, matrices, univariate and multivariate polynomials. It also provides fundamental methods such as algebraic number manipulation tools, different types of univariate and multivariate polynomial root solvers, resultant computations, ...

More information

XaoS

XaoS is a fast, portable, real-time, and interactive fractal zoomer. It displays the Mandelbrot set (among other escape time fractals) and allows you zoom smoothly into the fractal. Various coloring modes are provided for both the points inside and outside the selected set. In addition, switching between Julia and Mandelbrot fractal types and on-the-fly plane switching is provided.

More information

Xeukleides

Xeukleides is a frontend for editing and viewing figures described by the language Eukleides (which provides simple and powerful commands for creating elementary Euclidean geometry figures).

More information