SEUL-sci Logo Linux in Science Report #7

Previous Report Reports Page Next Report

15 Jan 2001--

Wow. This is the second Linux in Science report since my 'sabbatical' ended and I am overwhelmed at the response. Thanks to everyone who wrote in with their kind words, they're greatly appreciated. I look forward to continuing these reports fortnightly to highlight all of the exciting developments in scientific and research computing.

This has certainly been an eventful fortnight for the SEUL/sci list. In an email to me, Robert Chassell suggested that the name of these reports be changed from "Linux In Science" to "GNU/Linux in Science." This sparked off quite a bit of discussion pertaining to how free software is used and refered to.

I'm not going to go into the arguments here, as they are presented far better by the original posters in the archives than I could hope to.

A new "feature" of these reports starting this week is a short treatment of some topics, which in themselves may perhaps be peripheral to the use of Linux for research purposes nevertheless have an important or useful aspect to research users. This also provides an opportunity for a guest editor to present a short topic of interest. I welcome ideas or suggestions for future topics and possible guest editor choices. Without further ado, this fortnight's topic is particularly important in bilingual research settings (like that here in Montreal, Quebec, Canada) ...

i18n - Internationalization and Linux

    The LyX program I mention in the software list below shows a common tendency in many free software applications: the intrinsic support for different languages within the same program, otherwise known as Internationalization (usually refered to as i18n for short). Because most free operating systems like Linux support the notion of a locale (or the language and formatting preferences used in a particular geographic or cultural area), it becomes possible for a given program to read this locale information and set the language of the interface accordingly.

    Perhaps the most important repercussion of i18n is not so much that it allows the installation of a SINGLE software package to meet the needs of users having different mother tongues, but rather that shared library and file versioning conflicts are very neatly avoided. In my previous tenure as a network administrator in a bilingual company in a francophone province, one of my most troubling tasks was to support the use of different language versions of a common commercial desktop operating system as well as two different language versions of an office suite - all of which are made by the same company. And although all possible patches and service packs for the OS'es and office software in question were applied, we had no end of trouble getting the english version of the spreadsheet to open a spreadsheet made by the french version of the same software, the same for database files. We never managed to get the different language versions of the messaging / calendaring app to share appointment, task or folders properly (despite much research and much time spent reconfiguring the app and the obligatory but ineffective call to tech support).

    These are but two examples of the type of problems we had, I could mention quite a few others. Although the applications had the same name, they really had to be treated as if they were completely different applications if you wanted to be able to use them effectively on the same network. In a research environment, this means added expense (maintaining two language versions of the same software and operating system), loss of flexibility (needing to maintain two separate operating systems to support different shared libraries required by applications to open existing files) and resultant losses in productivity.

    Although my description may seem exagerated, I was dismayed at the time required on an ongoing basis to fix simple 'language' problems between the french and english versions of that particular office suite.

Finally, many of us from SEUL/sci and the larger SEUL Project will be fielding a booth in the ORG Pavillion at the upcoming Linux World Expo at the end of the month.

Here are some more links and updates for some scientific software that we've found...

antiword http://www.winfield.demon.nl/index.html
One problem that has been discussed on the SEUL/sci list previously is the exchange of information with our peers. The prevalence of commercial productivity suites means that many researchers will send text (be it manuscripts, conference schedules and the like) in closed formats like DOC (MS Word) files. I recently came across a listing for antiword, a command-line DOC to text / postscript converter, written by Adri van Os. Although the documentation states categorically that the software is far from complete, I was frankly quite impressed with the output on a document that a colleague sent me. I look forward to seeing how this project develops in the coming months. The web site indicates ports for RISC OS, OS/2 Warp and Be. Current version: 0.31 (Licence: GPL)

Cactus http://www.cactuscode.org/
Tom Goodale, from the Cactus project emailed me about their recent beta ...

I just thought I'd drop you a note to let you know about Cactus, a modular parallelisation framework which supports many architectures, allowing supercomputing simulation codes to be developed on a laptop running linux, and yet run with no modification on large T3Es, origins, or clusters.

We have just released 4.0 beta 9, and will hopefully release a final version of 4.0 in the next few months.

Currently research groups use Cactus for General Relativity (which was all Cactus 1.0 could do), Astrophysics, and for benchmarking supercomputers and networks, but the structure of the code makes it almost ideal for CFD and other applications which involve solving large systems of PDEs.

Current release of Cactus is 4.0beta9 (Licence: GPL)

GNU Emacs Calc alpha.gnu.org:/gnu/calc/
In another email to me, Robert Chassell describes an extension written by Dave Gillespie for this venerable text editor. GNU Emacs Calc takes two data series of equal length from the stack and plots them through gnuplot which can then graph the data. From Robert's email,

Basically, I wrote about its advantages for a graphing program, however, Calc does a great deal of what an ordinary scientist needs or does: least squares linear regressions, matrix operations, statistical operations, converting easily typed mathematical to formats used for printed papers, and so on.
The email is forwarded in toto to the seul-sci list.

WeirdX http://www.jcraft.com/weirdx/
Many research labs have what can best be described as a heterogenous computing environment. In the limnology group that I worked in as a graduate student, we had a few machines running the MacOS, others running Win 95 or NT, with a DOS machine or two thrown in for good measure. Although Linux can integrate nicely in such an environment (I had run Samba on an old 486 machine running Linux to facilitate file sharing for my research work at the time, and was planning on trying out Netatalk with our mac box in the lab, for instnace), it would be very useful to be able to make use of the potential of X in such a setting. WeirdX presents itself as a Java-based X-server which can be used on these and other operating systems. The advantages here are two-fold: not only can this be used to make the conversion from a closed, commercial computing environment to an open one easier, it also permits these computing resources to be used as effectively as possible - running large data analysis routines on the same machine as the database, for example, and displaying the results on a lower-power machine. Thus, by purchasing a reasonably new and powerful machine (P3, 128 MB RAM, large disk ... all of which are standard on most desktop PCs these days), an entire research lab can benefit from these resources! Current version: 1.0.24 (Licence: GPL)

Matrix Math http://www.angelfire.com/linux/linuxjeff/mtrxmath/
Matrix Math is a package maintained by Jeff Craig to facitate simple matrix operations from the command line. From his web page...

Matrix Math is a package currently in an early phase that allows a user to quickly and easily perform mathematical operations on matrices. This project is licensed under the GPL and is looking for developers who would bewilling to help. Currently the project is it's infancy, but I have plans for the future of the project. The Matrix Math package has been designed to be easy to use, so it shouldn't take long to learn. Currently it is only distributed as source, which can befound in the files section.

LyX http://www.lyx.org/
Perhaps one of the more significant perceived barriers to using Linux for scientific tasks is the lack of a recognizable "word processing" program, and feel that the syntax behind LaTeX is offputting. As a front end to TeX and LaTeX, Lyx is a very effective scientific writing tool offering features that many commercial writing tools do and then some. The usual tools (spellcheck, font type and attribute selectors, table creator, symbol choosing) are very evident, but unlike many commercial systems, LyX provides a high-end equation editor, hyperlinking tables of contents, support for cross-referencing, BibTeX, SGML as well as locales. This last feature, common to many free software programs, allows the interface to display in the prefered language of the user. This is welcome departure from the commerical software world as it means that the same program can be used to provide support for users with different language needs - obviating the need to have different language versions of a given commercial software package installed (and the aforementioned inevitable library and file versioning conflicts that arise as a result). The LyX website presents many more features of the software than I've described; It's a really neat app. Current version: 1.1.6 (Licence: GPL)

Memtest86 http://reality.sgi.com/cbrady_denver/memtest86/
Another entry from the useful tools department...

Memory gremlins are often a pain to diagnose and deal with. This simple utility allows an exhaustive analysis of memory integrity by running a substantial number of diagnostic tests. It creates a bootable image that you can add to lilo or dd onto a floppy for testing elsewhere, and it comes with a well-written README describing memory troubleshooting techniques. I ran it on a P100 with 64 MB of RAM and it finished in about 2.5 hours (though it should really only take minutes on current hardware). It's really good to see GPL apps coming out of big houses like SGI. Current version: 2.5. (Licence: GPL)
Thanks to everyone who emailed me about these and other apps. I look forward to reading about useful scientific applications for Linux, and especially HOW this software is being used.

-- Pete St. Onge (pete@seul.org)

Previous Report Reports Page Next Report

Please report any technical problems to webmaster@seul.org.