I'm an engineer of the physical ilk (MSME), but semi-literate in the art of C++ programming. After discovering GiNaC today, I thought "nice library ".
I've created a few programs for optimizing things, doing simple FEA (finite element analysis) and other sorts of calculations. Invariably, I end up restricting the domain to a consistent set of physical units (e.g. metric meter, kg, sec) or writing a lot of code to compensate for varying units across the input. For general-purpose tools, it can be a real pain in the shorts to get right.
Have a look at, http://sourceforge.net/projects/quantity this is a C++ template library designed for unit conversions and unit type checking (already at compile time). As far as I know, there will be a new (redesigned) release in due course. Regards, Kai -- http://echempp.sourceforge.net Kai Ludwig Institut für Organische Chemie Auf der Morgenstelle 18 72076 Tübingen Tel.: 07071/29-73049 Mail: kai.ludwig@uni-tuebingen.de