RMC++

 Quick start guide for RMC++_new and RMC++_multi

 

                           

 

Here is described, how to start RMC_new and RMC_multi quickly. It is however recommended to read the manuals to have an understanding of how RMC works, and how to use the various options efficiently.

The documentation is contained the following places:

The original RMCA manual (pdf file 1 MB) written by Robert McGreevy, Jim Wicks and Malcom Howe  (1993) is a very useful document, very relevant to RMC++.

RMC++ offers various options and some improvements from the RMCA code. They are described in the RMC++ for RMCA users manual (pdf file 92 kB), together with the changes in input/output.

The changes, additional features and usage of the new versions, RMC_new and RMC_multi are described here.

 Quick description

 

RMC_new and RMC_multi work the same way, only RMC_new is the consecutive version, not using multi-threading, RMC_multi on the other hand uses multi-threading to increase speed based on the POSIX standard, so the POSIX libraries (or the interface for it if using Windows) has to be installed (see here).

RMC_new and RMC_multi both are suitable of the simulations of disordered materials, as fluids and amorphous solid materials. The systems can be treated the following way, depending on the requirements of the given material, and simulation requirements:

·          atomic systems using atomic moves using 1 or more moved atoms

·          molecular systems, where molecules are kept together by FNC constraint, but atomic moves are applied, using 1 or more moved atoms

·          molecular systems, where molecules are kept together by FNC constraint, molecular move is used, which means, that  a whole molecule is moved together the way it is described in the makemovecus.cpp file specially designed for this molecules, and the code has to be compiled with this makemovecus.cpp replacing the one given in the distribution. The same makemovecus.cpp can be used for both RMC_new and for RMC_multi beginning with version 1.6.1, but not before that! The *.cus file containing the adjustable parameters has to be given for the makemovecus.cpp files given in the source code package, its structure depends on the parameters required by the makemovecus.cpp file. Some ideas, how it could look like can be learned from the ccl4_mol.cus file in the test_run/CCl4_mol directory of the example validation suite.

·           

 

 Starting RMC

RMC needs the following files to run

·          *.cfg

·          *.dat

·          experimental data files, if needed, their name should appear in the *.dat file. RMC can be run actually without any experimental data, moving around the atoms, like hard-core balls

·          *.fnc (only needed, if molecules are handled, both in case of atomic and molecular RMC)

·          *.cus (only needed, if molecular RMC is used), code has to be compiled using the makemovecus.cpp file designed for the given molecule.

·          sfactorcube file, if rmax>Ö2 (do not change the content)

* denotes the same name to be used for the files

The validation suite contains three directories with three examples, read the readme.txt file of the validation suite to learn about them, they can be started easily with the name of the executable followed by the filename (without any extension). For example, if we have my.cfg and  my.dat for a simple run, then start it with executable my.

If you want to start your own simulations:

·          Create your own *.dat file using the example dat file in the dummy directory of the validation suite, which contains example lines for all the possible experimental data types and constraints.

·          Create the *.cfg file according to the one in same directory.

·          If molecules are handled, which should be kept together during the simulation, regardless atomic or molecular RMC is used, a *.fnc file describing the constraints holding together the molecules has to be created, (see the fnc file in the CCl4_at or  CCl4_mol directories of the validation suite).

·          You will need some experimental data, (see formats in the dummy directory of the validation suite), or you can run a hard-core RMC without it.

·          In case of molecular RMC use the makemovecus.cpp file describing the move of your molecule. CCl4 is the default given in the distribution beginning with version 1.6.1, and C2Cl4 and water can also be found in the source package makemovecus directory along with their *.cus files. If something else is needed, you have to write it yourself using the CCl4 and C2Cl4 makemovecus.cpp file, as examples.

Good Luck!

 

Top of page

 

Last change by Orsolya Gereben 08/09/2009
(comments welcome!)