This is a read-only archive. Find the latest Linux articles, documentation, and answers at the new Linux.com!

Linux.com

Feature

Kalzium creator brings the periodic table to life

By Lisa Hoover on August 30, 2006 (8:00:00 AM)

Share    Print    Comments   

When Carsten Niehaus began studying chemistry and biology in late 2000, the lack of Linux-compatible reference materials frustrated him. When his search for an interactive Periodic Table of Chemical Elements came up empty, he decided to write his own. Now Kalzium has become a part of the KDE edutainment package and is used by students, teachers, and researchers worldwide.

As a teacher in Lower Saxony, Germany, one of Niehaus' main goals when developing Kalzium (the German word for Calcium) was to write an application that was both a teaching and a learning tool. "I want to be able to demonstrate things and I also want my students to be able to learn things from Kalzium and to use it as a reference," he says.

Kalzium was a originally developed as a simple interactive table of the periodic elements but has evolved into a full-featured application, complete with an equation solver and modified molecular calculator. Its database contains information on more than 100 chemical elements, and can be manipulated to show data in several ways, including mass, density, charge, and name origin. Kalzium even includes a timeline that allows users to sort data according to year of discovery.

Niehaus uses the Vim text editor to code Kalzium. "I started using it on Day One and can no longer use non-extreme editors like Kate. I need all those crazy shortcuts," he says. "[However], the day KDevelop supports Vim as an editor I will use KDevelop." To create the GUI portion of Kalzium, Niehaus prefers TrollTech's Qt Designer, which he says is especially useful for creating dialogs and widgets.

Niehaus and code developer Benoit Jacobs recently began working on a new way of displaying chemical information with Kalzium: the 3-D model. The team uses Open Babel 2.1, a free software application used to convert chemical file formats. They tweaked the package to suit their specific needs. By using Open Babel, Niehaus says Kalzium will be able to display "pretty much every 3-D file out there, including chemistry file formats such as .mol, .pdb, and .xyz."

When Kalzium users reported a need to solve chemical equations within the application, Niehaus responded by teaming up with the developer of EqChem, Thomas Nagy. As a result, the current release of Kalzium now solves some of chemistry's most complicated equations.

According to Niehaus, however, distributions continue to ship Kalzium without this feature. "I guess that is because they think Kalzium needs [programming language] OCaml (and a library called libfacile) as a runtime dependency," says Niehaus. "But that is wrong. They only need it as a compiletime dependency when they package Kalzium. It is statically linked and the user does not need to have OCaml installed." Niehaus says that he does not know of any distributions currently shipping the full-featured version of Kalzium, but says he hopes to see that change as distributions develop a better understanding of how Kalzium functions as part of a larger package.

Though an exact date has not been set for the release of the next version of Kalzium, Niehaus says it will contain many exciting new features, and updates to many existing ones, including a more polished user interface. In response to the need for greater mathematical capability, Kalzium 4.0 will also include a math library named Eigen to compute eigenvectors and 4x4 matrix calculations.

A much more subtle, but no less important, addition is the merging of Kalzium's data with the XML-based data of the Blue Obelisk project. Blue Obelisk is a collaborative effort of chemists worldwide who contribute to a variety of open chemistry-based projects.

"Many applications are now using Blue Obelisk [data]," says Niehaus. "The more it gets used, the more data is added, and the more errors are spotted and fixed. This ensures a higher overall quality. [After all], what is Kalzium worth with unreliable data?"

Niehaus says the second reason he chose to merge his data with Blue Obelisk "is that (I think) all members of the project have studied chemistry and really want to keep the data at a high and well-documented level. So we use references [and] well formed-XML."

When asked to name his favorite feature in Kalzium, Niehaus says he is especially proud of the application's strong search feature that allows users to wade quickly through a tremendous amount of data. He says by using this application, "you don't have to look up all the data in a book.

"Or more like in 10 books," he adds, jokingly.

Share    Print    Comments   

Comments

on Kalzium creator brings the periodic table to life

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

There may be a reason

Posted by: Anonymous Coward on August 31, 2006 11:41 PM
I believe the reason distributions may think that Kalzium's equation solver requires OCaml is because the Kalzium page on the KDE site says it does! If it doesn't, perhaps the page should be updated to correct that misconception.

From the KDE page about Kalzium:

24 July 2005: EqChem merged with Kalzium
Thomas Nagy merged EqChem with Kalzium. With this application, which is now completly integrated in Kalzium, you can solve chemical equations. You need OCaml and the Facile-library installed to make use of it. (my emphasis)

#

Re:There may be a reason

Posted by: Anonymous Coward on September 01, 2006 05:14 PM
OCaml native compiler doesn't support, for example, all the 11 (or 12) supported Debian architectures, so you can't link it statically, let's see, on Sparc...

#

Re:There may be a reason

Posted by: Anonymous Coward on September 01, 2006 08:03 PM
I fixed this today. Packagers should read configure.in.in, the warnings or the README.packagers, not my newspage. So I doubt this is the reason.

#

It is only a compilation-time dependency

Posted by: Anonymous Coward on September 03, 2006 07:19 PM
Objective caml is not needed at runtime (nor the Facile library). Those are only needed when compiling Kalzium.

#

screenshots?

Posted by: Anonymous Coward on September 01, 2006 05:00 PM
Seriously, does Newsforge have something against posting screenshots with reviews?

#

Re:screenshots?

Posted by: Anonymous Coward on September 01, 2006 07:56 PM
Here is my screenshotpage:

<a href="http://edu.kde.org/kalzium/screenshots.php" title="kde.org">http://edu.kde.org/kalzium/screenshots.php</a kde.org>

Carsten

#

Equation examples

Posted by: Anonymous Coward on September 03, 2006 07:26 PM
Chemical equations examples can be found there:
<a href="http://lists.kde.org/?l=kde-commits&m=112206950324455&w=2" title="kde.org">http://lists.kde.org/?l=kde-commits&m=11220695032<nobr>4<wbr></nobr> 455&w=2</a kde.org>

I really like that one:
aFe[2+]+bMnO4[-]+cH3O[+]->dMn[2+]+eH2O+fFe[3+]

#

Two(2) shoootings

Posted by: Anonymous [ip: 189.12.17.226] on January 23, 2008 05:02 PM
My comment is trobleshottingg not vertical ilusion a perception trobleshootinnggg

#

Kalzium creator brings the periodic table to life

Posted by: Anonymous [ip: 164.116.126.139] on March 07, 2008 04:48 PM
You people are dorks. [[ no offense ]]

#

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



 
Tableless layout Validate XHTML 1.0 Strict Validate CSS Powered by Xaraya