[gmx-developers] General Gromacs Development and Related Issues

herz alexander.herz at mytum.de
Tue Mar 3 11:56:47 CET 2009


Hi Guys,

After having worked with the code and the wiki for a while I wanted to
point out a few problems and suggestions that might make life a bit
easier while not requiring too much work...

I'd suggest:

*allow loading and saving of structs (currently only lists of ints/reals
 etc are supported)

*use a library that supports dynamic arrays (so new more srenew)
 maybe using C++ and a template aware impl (STL or so) would be nice;
 a lot of (error prone) code is simply used to realloc data structures

*the data structures for the topology etc are a bit confusing
 (especially with the large amount of int arrays where it's hard to figure
 out what they contain). it would be nice to collect together all the
 things that belong together in some descriptive structs (so all atom
 type data like lj params, mass etc are in one place/struct). I
 understand that the runtime data structures (like mdatoms) need a
 different layout to be efficient with SSE assembly but the only reason I
 can see that the non runtime structures are spread out so much is that
 it is currently not possible to save and load structs to and from the
 tpr file.

*I would no go so far as to suggest moving everything to OOP (I'd only
 use some pre made things like the dynamic array) because most
 inexperienced programmers shy away from OOP and feel a lot more at home
 with plain C.

*Eventually, the data structure "documentation" I created in the wiki
 should probably be merged into a doxygen type documentation embedded
 into the code

*I cannot watch my wiki edits because email verification doesn't work (I never get any veryfication email)

*Joining the different mailing lists is not working properly, I mostly end up receiving 
 all mails twice or not at all

*It would be nice if the <code></code> tag inside the wiki was used to format tint the contained code
 block

Finally a few questions:

*What is the recommented way to add/remove source files from the makefiles?

 I'm having massive problems with this. It seams editing the Makefile.am files triggers automake
 which in turn messes up my configure script completely (build fails afterwards because libtool   
 doesn't recognize the --mode=compile switch).
 Currently I can work only with the Makefile.am comeing with the original tar.gz. 
 I'm running the latest versions of automake (1.10) and the rest of em (libtool,autoconf etc).
  
 I saw on the gromacs homepage somewhere that there is a "special version" of automake for gromacs?
 It wasn't accessable without a password.

 So currently I cannot even copy the source from one folder to another (this apparently triggers    automake somehow) without breaking my build.

 There is some rather sparse info in the wiki but it would be nice to have a guide on how to add/remove files from the project and how to rebuild the configure script properly.


what do you think?

Alex

P.S.: Berg: I CC you because I'm not sure weather I'm currently able to submit or receive from the developers mailing list. If this doesn't end up on the list then please resend it there!





More information about the gromacs.org_gmx-developers mailing list