We have defined five users of RUMD:
- A user at level 1 is one who can write or copy a simple python script
(for example the one given later in this tutorial) to run a standard molecular
dynamics simulation, and use the provided analysis tools to perform standard
analysis of the output. This user can make some basic choices, such as the
potential, the integrator, and controlling the frequency of output.
- This user understands the deeper structure of the code—that is
the different kinds of classes/objects, the relations between them, and their
interfaces—and understands how the python language works, and can therefore
write more sophisticated python scripts which
access the full power and flexibility of RUMD.
- A user at level 3 is one with minimal experience in C++ can write
her own (pair-)potential functions, to be available as classes derived from
PairPotential
.
- This user can write their own analysis programs in C++, but does not
need to know anything about GPU programming, since analysis is generally
carried out on the CPU.
- RUMD developer. Must have a good knowledge of C++, CUDA programming
and knowledge of Subversion.
This tutorial will bring you from level 1 to level 3. Note that level 3 is
higher than level 2 in that it requires the user to write some C++ code and
re-compile the code, but that involves a relatively limited list of things to
do. Level 2, which stays at the python level, but involves access to almost all of
the underlying C++ functionality, could take longer to master.