Structur of LAMMPS e.g. in Mind-Map / Manual addition

Hi,

I am dealing with LAMMPS for a few weeks now and I am thinking about a means to clarify in a simplistic way the structur of LAMMPS, that is how its C++-Code works. As my knowledge in C++ is also not very profound it is kind of hard for me to understand all these pointers, virtual functions and so on.

I think it would be very valuable within the manual to exemplify one example-problem by a Mind Map (or even just in text) or something likely. Maybe there are a lot of persons who already thought of something like that or even have worked on. If so, I would be very interested to have a look on it, if not, then this email could be an animation for people who feel capable for doing that.

Kind regards

Sebastian

hi sebastian,

Hi,

I am dealing with LAMMPS for a few weeks now and I am thinking about a
means to clarify in a simplistic way the structur of LAMMPS, that is how
its C++-Code works. As my knowledge in C++ is also not very profound it
is kind of hard for me to understand all these pointers, virtual
functions and so on.

what you are describing are actually _two_ problems.
you don't get how c++ works and you cannot follow
the flow of control in LAMMPS.

for the first problem, i can only say: there ain't no
escape from the blues. i can recommend a book
that teaches c++ from the practical perspective
and that is probably the best way to approach this.
http://www.amazon.com/Practical-Programming-Second-Steve-Oualline/dp/0596004192/

for the second problem, i would probably start by
trying to understand a minimal MD code. there are
many examples of that posted on the web. mine is here:
http://sites.google.com/site/akohlmey/software/ljmd

once you got that one figured out, i would start by
reading the verlet.cpp file and then take it from there.

I think it would be very valuable within the manual to exemplify one
example-problem by a Mind Map (or even just in text) or something
likely. Maybe there are a lot of persons who already thought of
something like that or even have worked on. If so, I would be very
interested to have a look on it, if not, then this email could be an
animation for people who feel capable for doing that.

the best person to do something like this is actually, not an
experienced programmer, but somebody that is learning.
it would probably be the best way to teach the structure of
lammps to yourself. please note, however, that graphical
representations and "mind maps" work best for simple cases;
a complete flowchart for lammps would be as incomprehensible
for the casual viewer, as is the source code.

cheers,
    axel.