Linux.com

Feature: Open Source

Open scientific software

By Shawn Hermans on September 12, 2006 (8:00:00 AM)

Share    Print    Comments   

Science is an open process. Experimental information and results must be published so results are verifiable and reproducible. These results are then shared with the larger community to benefit all humanity. It makes sense that the software used for scientific computations should also be open. Here are a few scientific programs of general utility.
Linux

Linux is used on supercomputing clusters, embedded scientific equipment, as a programming environment for scientific programming and a myriad of other uses. Scientific Linux is a clone of the Red Hat Enterprise Linux distribution and is a baseline Linux distribution for a variety of physics laboratories around the world. Linux programmers can take advantage of a number of scientific libraries, including:

  • FFTW -- The Fastest Fourier Transform in the West, which is a library for computing discrete Fourier transforms. It's useful for signal processing, quantum mechanics, and any field dealing with waves.
  • GSL -- The GNU Scientific Library is a numerical library for C/C++ that contains built-in functionality for random numbers, statistical distributions, matrix mathematics, complex numbers, and more.
  • Galois Field Arithmetic Library -- A library for computing Galois fields, which are useful for things related to electronic communications systems such as cryptography and error-correcting codes.
Maxima

Maxima is a GPL-licensed computer algebra system that is similar to commercial products such as Mathematica and Maple. It can be used to do integration, differentiation, matrix mathematics, solve differential and linear equations, factor and expand polynomial expressions, and plot the results of functions and data in both two and three dimensions. It is available in source format and as a Windows executable or RPM package for Fedora Core 2, and can also be accessed online. Documentation can be found on Maxima's Web site.

Octave

Octave complements symbolic algebra programs like Maxima by performing numerical calculations. Octave is both an environment for performing numerical calculations and an interpreted programming language. In Linux systems, running octave from the command line opens up an Octave shell where Octave commands can be entered and evaluated. The default Octave package is able to perform matrix and vector mathematics, numerically solve differential equations, and plot data utilizing Gnuplot. Its language is mostly compatible with the language used in the commercial product Matlab and therefore can be used interchangeably with Matlab in most situations. Octave should be able to run most Matlab add-on packages. Additionally, users can create there own add-on packages to add functionality to Octave. Among the packages in The GNU Octave Repository are a variety of add-ons for specialized fields.

Octave is available in the base packages of many Linux distributions, including Fedora Core and Red Hat Enterprise Linux, and for Windows.

Information on Octave commands can be found in Octave's manual online or purchased for $30.

TeX and LaTeX

Word processing programs are ill-suited to producing high-quality documentation for subjects requiring intensive use of mathematical formulas. TeX (the typesetting language) separates content creation from typesetting issues such as font size, title page layout, and margins. TeX is similar to HTML in that text is marked up and processed to produce a document. LaTeX has other nice features as well, such as automatically creating properly formated title pages and reference sections.

A TeX document is processed by the LaTeX program to produce a variety of formats, include DVI, PostScript, PDF, and HTML. Many Linux distributions, including Fedora Core, include LaTeX programs in the base distribution. On Windows systems, MiKTeX can be used to process TeX documents.

After a moderate learning curve, it is easier and quicker to create professional-looking documents in LaTeX than it is in traditional word processing programs. Powerful features like BibTeX make keeping track of long lists of references and creating bibliographies easy. A variety of style documents are available, including REVTeX for use with publications submitted to the American Physical Society. Samples of TeX documents can be found in a variety of places, including the e-Print archives, which contain a collection of scientific publications for review, many of which contain the source TeX files.

OpenScience Project

The OpenScience Project maintains a comprehensive listing of openly available scientific software packages. It is contains packages for a wide range of disciplines, including, but not limited to, mathematics, astronomy, anthropology, and archeology. It makes it easy to find software for specialized scientific fields.

Share    Print    Comments   

Comments

on Open scientific software

Note: Comments are owned by the poster. We are not responsible for their content.

Beowoulf.

Posted by: Anonymous Coward on September 13, 2006 01:02 AM
Great! Now all we need is the free clusters to run it on.

#

Re:Beowoulf.

Posted by: Anonymous Coward on September 13, 2006 02:55 PM
None of the software described requires a cluster. All allow full peer review when needed, the essence of good science.

#

and for java

Posted by: Anonymous Coward on September 12, 2006 10:37 PM
www.jscience.org

#

LaTeX to html

Posted by: Anonymous Coward on September 13, 2006 12:15 AM
I was not aware that the latex program would directly produce html. Though there is another program latex2html that will.

#

Re:LaTeX to html

Posted by: Anonymous Coward on September 13, 2006 12:53 AM
It can't. The article said "TeX is similar to HTML in that text is marked up and processed to produce a document".

latex2html is good, as are <a href="http://hutchinson.belmont.ma.us/tth/" title="belmont.ma.us">TtH</a belmont.ma.us> and <a href="http://pauillac.inria.fr/~maranget/hevea/index.html" title="inria.fr">Hevea</a inria.fr>.

#

Re:LaTeX to html

Posted by: Anonymous Coward on September 13, 2006 11:38 AM
Correct. TeX/LaTeX "code" can be post-processed to produce formatted output in a variety of formats, the most common being dvi (device independent), ps (postscript), and these days, pdf and html. Use pdflatex for great output. LaTeX by itself will produce only dvi.

#

Re:LaTeX to html

Posted by: Anonymous Coward on September 13, 2006 03:00 PM
I think the parent post refers to this sentence in the article:
"A TeX document is processed by the LaTeX program to produce a variety of formats, include DVI, PostScript, PDF, and HTML"

#

Re:LaTeX to html

Posted by: Administrator on September 13, 2006 11:29 PM
The article was probably refering to htlatex, which works by runing latex and then converting the resulting dvi file to html.

The latex2html script works differently, it converts latex source directly to html, and runs latex only for math.

#

Where is R?

Posted by: Anonymous Coward on September 13, 2006 03:58 PM
It's a shame that R isn't mentioned. It's a great statistical computing package, has excellent graphics output (way better than Matlab), is open source and is supported by a vibrant community.

<a href="http://www.r-project.org/" title="r-project.org">http://www.r-project.org/</a r-project.org>

#

SciPy

Posted by: Anonymous Coward on September 13, 2006 09:56 PM
Folks familiar with (or willing to acquire proficiency with) Python may be interested in Scientific Python

<a href="http://www.scipy.org/" title="scipy.org">http://www.scipy.org/</a scipy.org>

#

Re:SciPy

Posted by: Anonymous Coward on September 14, 2006 01:04 PM
Or if you prefer less bondage and discipline in your language, and something meatier than Fortran there's Perl with great stuff like <a href="http://pdl.perl.org/" title="perl.org">PDL</a perl.org>

#

Bioconductor

Posted by: Anonymous Coward on September 13, 2006 10:43 PM
Bioconductor is an open source and open development software project for the analysis and comprehension of genomic data.
<a href="http://www.bioconductor.org/" title="bioconductor.org">http://www.bioconductor.org/</a bioconductor.org>
<a href="http://en.wikipedia.org/wiki/Bioconductor" title="wikipedia.org">http://en.wikipedia.org/wiki/Bioconductor</a wikipedia.org>

#

science software

Posted by: Anonymous Coward on September 14, 2006 09:12 AM
I found this a usefull list
<a href="http://ubuntuforums.org/showthread.php?t=150310&highlight=science" title="ubuntuforums.org">http://ubuntuforums.org/showthread.php?t=150310&h<nobr>i<wbr></nobr> ghlight=science</a ubuntuforums.org>

My top science applications:
R, grace, ooffice, Eclipse

#

Axiom?

Posted by: Anonymous Coward on September 14, 2006 10:03 AM
If you like Maxima, you might also want to take a look at Axiom: <a href="http://www.axiom-developer.org/" title="axiom-developer.org">http://www.axiom-developer.org/</a axiom-developer.org>

#

SciLab?

Posted by: Anonymous Coward on September 14, 2006 12:00 PM
An open MatLab style tool, developed in France.
<a href="http://www.scilab.org/" title="scilab.org">http://www.scilab.org/</a scilab.org>

--belg4mit

#

Science Not So Open These Days

Posted by: Anonymous Coward on September 14, 2006 12:01 PM
Two points:

(1) Science used to be an open process. Now days most peer-review journals require hefty subscription fees (unless you have access to a university or research institute that subscribes for you). The result, quite a lot of research is published without knowledge of other relevant work.... And nearly all the ones who can look at such papers, are researchers and not engineers and others who might make use of it. Granted, this is true more or less depending on the field.

(2) A huge number of other scientific software is FOSS. The R project (as mentioned by another post) is an excellent statistical analysis and graphing language so you don't need to pay big annual fees for SPSS, SAS, S+, etc. Neuron and Genesis are excellent neuron simulators (neural net algorithms are not accurate simulations).

#

Re:Science Not So Open These Days

Posted by: Administrator on September 14, 2006 03:32 PM
> Now days [sic] most peer-review journals require hefty subscription fees


You must be new. Scientific journals have *always* been expensive; that is really nothing new (how much? It used to be around $7000.00 (yes, you read that right) for the Journal of Chromatography (12 issues per year, I believe)).
It is a monumental scam, which is why thankfully, open access journals are in fact now on the rise; check the Directory of Open Access Journals (<a href="http://www.doaj.org/" title="doaj.org">http://www.doaj.org/</a doaj.org>)

#

tex user group

Posted by: Administrator on September 13, 2006 11:33 PM
when talking about tex and latex, the <a href="http://www.tug.org/" title="tug.org">tex user group</a tug.org> should probably be mentioned.

there, no caps, you stupic lameness filter!

#

This story has been archived. Comments can no longer be posted.



 
Tableless layout Validate XHTML 1.0 Strict Validate CSS Powered by Xaraya