DL_MESO
There is a centrally installed version of the DL_MESO package which may be used to run the relevant executables if required. However, as the model for DL_MESO includes a GUI that allows one to make alterations to the source code, compile and organise simulations interactively, it is probably worthwhile obtaining and compiling your own copy.
Useful Links
- DL_MESO web page (including download link)
- DL_MESO User manual (v2.5)
Licensing and Access
DL_MESO is licensed, but freely available for academic use from the DL_MESO web page.
Centrally Installed Module
To access the centrally installed version (currently v2.5) load the "dlmeso" module:
module add dlmeso
This provides access to the executables for the simulation code and the utilities, which are located in
> ls /home/y07/y07/dlmeso/dl-meso-v2.5/bin dpd.exe dpdlocal.exe dpdtrajects.exe lbeplot3dgather.exe dpdconfig.exe dpdmolecule.exe lbe.exe lbevtkgather.exe dpdexport.exe dpdtraject.exe lbeinitcreate.exe
The java GUI is also available, for which you need
> java -jar /home/y07/y07/dlmeso/dl-meso-v2.5/JAVA/GUI.jar
This can be useful for preparing and post-processing simulation, but does not allow you to edit the code. We therefore go on to discuss compiling your own local version.
Compilation
We assume you have obtained the tar bundle from the DL_MESO web site detailed above, and discuss this using paths relative to the top level directory from where you should see:
> ls DEMO DPD JAVA LBE LICENCE MAN README WORK bin
Compilation of the simulation code should be possible with any of the programming environments "PrgEnv-cray", "PrgEnv-gnu", or "PrgEnv-intel".
The Java GUI
The recommended way to interact with DL_MESO for the purposes of simulation configuration is via the GUI, for which you need Java. (Note that the _JAVA_OPTIONS environment variable currently needs to be set to allow the Java virtual machine to start.)
> module add java > export _JAVA_OPTIONS=-Xmx512m > cd ./JAVA > javac *java > jar -cfm GUI.jar manifest.mf *class
At the compilation stage, you may see the following error, in which case you need to edit the dlwelcome.java file and remove the offending copyright character.
dlwelcome.java:18: error: unmappable character for encoding ASCII JLabel lb3 =new JLabel("Copyright ?? STFC 2012", JLabel.CENTER);
The standard mode of working is from the ./WORK directory. The GUI would be run via
> java -jar ../JAVA/GUI.jar
LBE code
The LBE (lattice Boltzmann equation) code is C++. You can compile it via the GUI, or on the command line. In the GUI, select Compiler="other..." and specify, e.g., "CC -O3". Compilation may take a few minutes in which time the GUI will not respond.
From the command line in the ./WORK directory try, e.g.,
> CC -O3 -o lbe.exe ../LBE/plbe.cpp
for the parallel version.
DPD code
The DPD (dissipative particle dynamics) code in Fortran. Compile from the GUI by choosing, e.g., "ftn -O3" as the compiler. Or, to compile from the command line you need:
> cd ./DPD > cp makefiles/Makefile-HeCToR Makefile
and edit this new Makefile to ensure the "MF" variable matches the actual Makefile name. Finally:
> make
Utilities
There are two sets of utilities, one for the LBE code, and one for the DPD code. For the LBE utilities:
> cd ./LBE/utility > CC -O2 -o lbeinitcreate.exe lbeinitcreate.cpp > CC -O2 -o lbeplot3dgather.exe lbeplot3dgather.cpp > CC -O2 -o lbevtkgather.exe lbevtkgather.cpp
For the DPD utilities in ./DPD/utility edit the Makefile to set
FC = ftn CC = CC
and "make" to compile.
Running
All execution of simulation code ("lbe.exe" or "dpd.exe") should take place in the batch system. This is done in the normal way as described elsewhere in the ARCHER documentation. Please consult the DL_MESO documentation for further details of simulation configuration.