A C++ compiler
Doxygen and GraphViz (Dot)
Doxygen is required to build a local copy of the documentation and GraphViz to create the uml diagrams for the documentation.
HOW TO OBTAIN MERCURYDPM
Currently, there are two ways to obtain a copy of MercuryDPM, by download or svn-access:
Option 1) Download
Click the following link to download MercuryDPM as a compressed tar file: MercuryDPM_0.9.tar.gz (released May 20, 2013).
Decompress and untar the code (tar -zxf MercuryDPM.tar.gz) in a directory of your choice.
Option 2) via our svn servers
Type in a terminal the following command
Once you have got the code, cd into the MD/DRIVERS/ directory and type
You should get lots of output.
Now go to MD/Documentation/html/ and load index.html into your web browser, by typing
or otherwise. This will give you this documentation, which you are currently reading, it is not complete, as we are not fully ready to go open source, but there is some description of what is in each directory, including the scripts, which you may find useful. The main reason for doing this is it gives you the a local update version of the documentation. Please now swap to folling the instructions in this version.
Getting a feel for the code
Go to MD/ and type
This will create a link to the script files, which are needed for the self testing to work.
Go to MD/DRIVERS/ and type
This will run the tests. If any fail let me know then there is a problem on your computer.
Go to the directory MD/DRIVERS/Simple_MD/run/ then type
This will run a simulation of a single particle falling under gravity. The output from this code will appear in a directory called free_fall.
To visualise the results of the code, type
This should launch Stefan Luding's MD visualisation program. You may get an error message here if so when me know and I will get you a version for your operating system.
To compile, run, and visualise another problem, type
This will display a short animations of 100 particles moving under gravity bouncing off a wall and interacting inelastically.
Please now follow the instructions to sign up for the mailing list, in order to receive updates about the code.
You should notice this code runs twice, once using the HGRID and once not. The use of the HGRID should be a lot faster, this is the third party code I said that is used to make the code go faster. I would base any code you write on the HGRID version of this code. Have a look at free_cooling.cpp. Gravity defaults to 9.8 in the z-direction can this can changed my setting the gravity vector see documentation.