Thursday 16 August 2007

Battle of the tools

As I worked for 5 years as a software developer after my
diploma degree before I did my master in computational engineering, I got used to work with tools. I shall add that I do a lot of object oriented stuff - always in the seek of a balance between framework generalization and pragmatism.

What I miss is Together, one of the best (an for non-academic used most expensive) UML tools for visual supported designing,
refactoring or simply navigation within the code. I was not able yet to make it parse the huge C++ finite element simulation code from my institute.

What I really find a big boost ist Eclipse with the C/C++ plugin. It is state of the arte and has a lot of features lightyears away from emacs and vi. For users I suggest the blog of Doug, the CDT project lead. Contact me first if you want to try it with Linux on a 64bit system (Code2, Opteron, ...)!

It integraties smooth with our version control sytem subversion. And if you ever worked with one you will never want to miss it. It is open source, fast to set-up and supported my many tools on all platforms.

For finding memory leaks we use valgrind, with the profiling tool chachegrind (which simulates the cache!). To be used with valkyrie (very important!) and kcachegrind.

For bugtracking, wiki and web-browsing our repository we use trac, a feature rich web-tool.

So it is at least my personal experience, that object oriented software and tools is good for this kind of academic, high-performance oriented software done at the universities. I simply don't belive, that FORTRAN is significantly faster. Hey, FORTRAN77 is 3 years younger than the Intel 4004! But it is on the other side true, that the learning curve for OO takes years, but this is also true for math actually for every profession.

Friday 10 August 2007

C++SCPIP published

I finally managed to publish my open source C++ interface to the SQP/MMA optimizer SCPIP from Chrisitan Zillober. The current entry point is cppmath.wiki.sourceforge.net.

I want to thank Christian Zillober for providing me the code of SCPIP for my thesis and Andreas Wächter from whom I took a lot of ideas and code from his IPOPT.

I hope C++SCPIP is for use of some optimizers out there. If so, please let me know :)