Scientific Software Packages and Projects

Many of these packages and projects have pages on Wikipedia which may give additional information beyond that found on the home pages.

Packages

VisAD

VisAD is a Java component library for interactive and collaborative visualization and analysis of numerical data. The name VisAD is an acronym for "Visualization for Algorithm Development". The system combines:

  • The use of pure Java for platform independence and to support data sharing and real-time collaboration among geographically distributed users. Support for distributed computing is integrated at the lowest levels of the system using Java RMI distributed objects.
  • A general mathematical data model that can be adapted to virtually any numerical data, that supports data sharing among different users, different data sources and different scientific disciplines, and that provides transparent access to data independent of storage format and location (i.e., memory, disk or remote). The data model has been adapted to netCDF, HDF-5, FITS, HDF-EOS, McIDAS, Vis5D, GIF, JPEG, TIFF, QuickTime, ASCII and many other file formats.
  • A general display model that supports interactive 3-D, data fusion, multiple data views, direct manipulation, collaboration, and virtual reality. The display model has been adapted to Java3D and Java2D and used in an ImmersaDesk virtual reality display.
  • Data analysis and computation integrated with visualization to support computational steering and other complex interaction modes.
  • Support for two distinct communities: developers who create domain- specific systems based on VisAD, and users of those domain-specific systems. VisAD is designed to support a wide variety of user interfaces, ranging from simple data browser applets to complex applications that allow groups of scientists to collaboratively develop data analysis algorithms.
  • Developer extensibility in as many ways as possible.

Home Page: http://www.ssec.wisc.edu/~billh/visad.html

VTK

The Visualization ToolKit (VTK) is an open source, freely available software system for 3D computer graphics, image processing, and visualization used by thousands of researchers and developers around the world. VTK consists of a C++ class library, and several interpreted interface layers including Tcl/Tk, Java, and Python. Professional support and products for VTK are provided by Kitware, Inc. VTK supports a wide variety of visualization algorithms including scalar, vector, tensor, texture, and volumetric methods; and advanced modeling techniques such as implicit modelling, polygon reduction, mesh smoothing, cutting, contouring, and Delaunay triangulation. In addition, dozens of imaging algorithms have been directly integrated to allow the user to mix 2D imaging / 3D graphics algorithms and data. The design and implementation of the library has been strongly influenced by object-oriented principles. VTK has been installed and tested on nearly every Unix-based platform, PCs (Windows 98/ME/NT/2000/XP), and Mac OSX Jaguar or later.

Home Page: http://public.kitware.com/VTK/

JFreeChart

JFreeChart is a free 100% Java chart library that makes it easy for developers to display professional quality charts in their applications. JFreeChart's extensive feature set includes:

  • a consistent and well-documented API, supporting a wide range of chart types;
  • a flexible design that is easy to extend, and targets both server-side and client-side applications;
  • support for many output types, including Swing components, image files (including PNG and JPEG), and vector graphics file formats (including PDF, EPS and SVG);
  • JFreeChart is "open source" or, more specifically, free software. It is distributed under the terms of the GNU Lesser General Public Licence (LGPL), which permits use in proprietary applications.

Home Page: http://www.jfree.org/jfreechart/

JAMA

JAMA is a basic linear algebra package for Java. It provides user-level classes for constructing and manipulating real, dense matrices.  It is meant to provide sufficient functionality for routine problems, packaged in a way that is natural and understandable to non-experts.  It is intended to serve as the standard matrix class for Java.

Home page: http://math.nist.gov/javanumerics/jama/

ImageJ

ImageJ is a public domain Java image processing program inspired by NIH Image for the Macintosh. It runs, either as an online applet or as a downloadable application, on any computer with a Java 1.4 or later virtual machine.

Home Page: http://rsb.info.nih.gov/ij/

Java Advanced Imaging

The Java Advanced Imaging API provides a set of object-oriented interfaces that support a simple, high-level programming model which lets you manipulate images easily.

Home Page: http://java.sun.com/javase/technologies/desktop/media/jai/

Java 3D

Java 3D is the parent project for all Java 3DTM-related sub-projects on java.net. These sub-projects include: j3d-core (the core Java 3D API), vecmath (the 3D vector math package), and j3d-core-utils (the Java 3D core utilities), among others.

Home Page: https://java3d.dev.java.net/

FreeHEP

FreeHEP is a library of Java routines designed to encourage the sharing and reuse of Java code in High Energy Physics.

Home Page: http://java.freehep.org/

Projects

DANSE

DANSE is a software development project on distributed data analysis for neutron scattering experiments. The goals of the DANSE project are to build a software system that 1) enables new and more sophisticated science to be performed with neutron scattering experiments, 2) makes the analysis of data easier for all scientists, and 3) provides a robust software infrastructure that can be maintained in the future.

Home Page: http://wiki.cacr.caltech.edu/danse/index.php/Main_Page

EPICS

EPICS is a set of Open Source software tools, libraries and applications developed collaboratively and used worldwide to create distributed soft real-time control systems for scientific instruments such as a particle accelerators, telescopes and other large scientific experiments.

Home Page: http://www.aps.anl.gov/epics/index.php

JAS3

JAS3 is a general purpose, open-source, data analysis tool primarily used by the high-energy physics community. It does plotting of 1D, 2D and 3D histograms, XY plots, scatterplots etc. and fitting using an extensible set of optimizers including Minuit, among other things. It is one of the projects related to the FreeHEP library.

Home Page: http://jas.freehep.org/jas3/

ROOT

ROOT is an object-oriented software package developed by CERN. It was originally designed for particle physics data analysis, but it is also commonly used in other applications such as astronomy and data mining. It is written in C++.

Home Page: http://root.cern.ch/

LCARS

The Library Computer Access and Retrieval System (LCARS) is a computer package used on Federation starships. It features attractive graphics and visualization, as well as speech recognition.

Home Page: http://www.lcarscom.net/ (See also: http://en.wikipedia.org/wiki/LCARS)