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.
Fimex is a the File Interpolation, Manipulation, and EXtraction library for gridded geospatial data. It converts between different, extensible data formats (currently netcdf, NcML, grib1/2, metgm, wdb, and felt). It enables you to change the projection and interpolation of scalar and vector grids. It makes it possible to subset the gridded data and to extract only parts of the files. For simple usage, Fimex also comes with the command line program fimex.
Veusz is a scientific plotting package, designed to create publication-ready Postscript, PDF, or SVG output. It features an easy to use graphical interface as well as a command line interface and can be scripted or embedded in Python scripts. Graphs are constructed in a modular fashion from separate components. Datasets can be interactively modified or created from within the program.
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.
JGraph is a free, mature, and robust Java diagramming library. It contains all the graph visualization, layout, and interaction functionality you might expect in a graph library, including multiple views, layering, zoom, drag and drop, undo, automatic expanding and collapsing, routing, and layouts. You can create workflow editors, BPMN, CAD tools, network diagrams, database visualization tools, and more. It is fully documented, including examples, and has an active support community.
BRL-CAD is a powerful constructive solid geometry solid modeling system that includes an interactive geometry editor, ray-tracing support for rendering and geometric analysis, path-tracing for realistic image synthesis, network distributed framebuffer support, and image and signal-processing tools.
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.
Visual Paradigm for UML is a Unified Modeling Language (UML) design tool that supports all UML diagrams, SysML diagrams, and entity relationship diagrams. Visual Paradigm for UML provides extensive use case modeling features, including full function UML use case diagram, flow of events editor, use case/actor grid, and activity diagram generation. Visual Paradigm for UML produces system documentation in PDF, HTML, and MS Word formats. A developer can design system documentation with the template designer. A system analyst can estimate the consequences of changes with impact analysis diagrams, such as matrix and analysis diagram. Visual Paradigm for UML generates Java code.
VisIt is an interactive parallel visualization and graphical analysis tool for viewing scientific data. Users can quickly generate visualizations from their data, animate them through time, manipulate them, and save the resulting images for presentations. VisIt contains a rich set of visualization features so that you can view your data in a variety of ways. It can be used to visualize scalar and vector fields defined on two- and three-dimensional (2D and 3D) structured and unstructured meshes. It was designed to interactively handle very large data set sizes in the terascale range, and works well down to small data sets in the kilobyte range.