McMaille version 4.00 is distributed under the GNU Public Licence
The zipped package contains the executable for Windows 95/98/NT/XP, as
well as the FORTRAN source codes (quite short and documented) for both the
single and the multi processor machines, and some examples described
Get it : McMaille-v4.zip
The compiler used for building the executable was Intel Visual Fortran
9.1. The parallelized version is realized by using OpenMP directives.
The package MvMaille-V4.zip contains mainly :
McMaille.exe : executable
for MS Windows, single processor
McMaille.for : the FORTRAN
license.html : the
GNU Public License (GPL)
PMcMaille.zip : contains the
executable for the multi core processors
(named McMaille.exe) and a DLL named libguide40.dll
which has to be installed in the same directory. The corresponding
source code McMaille.for with OpenMP directives is also there.
McMaille-v4.html : the complete manual
short-manual.html : a short manual version for the automated
copy of the McMaille publication
benchmarks.pdf : copy of the benchmarks
: various classical test files
benchmarks.zip : more test files (benchmarks)
: more test files (from the 'Structure Determination
by Powder Diffractometry Round Robin 2')
cub.hkl, hex.hkl, rho.hkl, tet.hkl, ort.hkl, mon.hkl,
: the prepared lists of hkl Miller indices which have
to be installed in the same directory as the McMaille.exe program
: figure called by the McMaille-v4.html file (the manual)
: icon file, if you wish to put it as a shortcut on the screen
McM-large.gif : same image
as the icon above, slightly larger
: figure showing the display of a .prf file by WinPLOTR
More about the .hkl files :
You should absolutely let the
cub.hkl, hex.hkl, rho.hkl, tet.hkl, ort.hkl, mon.hkl, tri.hkl files in the
same directory as McMaille.exe as well as your parameters .dat files.
These .hkl files contain a list of predetermined Miller indices ordered
according to a cell having a, b, c, parameters close to each other.
In case of successful use, please cite the paper :
Bail, Powder Diffraction 19 (2004) 249-254.
(included into the package)
See comparisons of indexing software including McMaille :
Bergmann, A. Le Bail, R. Shirley and V. Zlokazov, Z. Kristallogr.
219 (2004) 783-790.
(included into the package)
Visit the Indexing Benchmarks Web page at :
The manual : McMaille-v4.html included in the package is also available
or at http://sdpd.univ-lemans.fr/mcmaille/
Running McMaille (by either clicking on McMaille.exe and giving the
entry file name - no extension - or in a DOS box by typing "McMaille name"
) requires a parameters data file. A typical data file (should be named
name.dat, name being your choice) follows :
Typical name.dat input file :
1.54056 0.0 -3 Wavelength, Zeropoint, Ngrid
!!! A line starting by ! is ignored
11.180 345. 2-theta (or d(A)), Intensity
12.217 1120. Etc
15.835 124. 20 couples of positions and
18.709 455. intensities. You may put more
Etc but only 20 will be used. Line 1 :
Title : for
your problem identification.
Line 2 :
Wavelength : your experiment wavelength. If you
used CuKalpha, you should have stripped alpha2 before peak positions
hunting. If you try to index large cells (proteins, etc), then consider to
divide the wavelength by 5 or 10, so that you will obtain cell parameters
divided by 5 or 10 as well.
Zeropoint : your powder pattern zeropoint
(global value including the zero due to the diffractometer and the zero
due to sample misplacement - will be added to the data). It is recommended
to have a standard compound mixed with your sample or to apply the
harmonics method for zeropoint estimation.
Ngrid : code for the process to be applied
Ngrid = 3 : black box mode - Monte Carlo on all symmetries
Ngrid = -3 : as above but without triclinic search
Ngrid = 4 : black box mode - Monte Carlo on all symmetries + grid
Next lines :
2-theta (or d(A)) and
intensities couples of values.
The test for identification of 2-theta
or d(A) values is made by the difference between the second and the first
value. So, be careful to have a list of increasing values for 2-theta and
decreasing for d(A) values. Even if you use d values, you are requested to
choose a wavelength (because McMaille intrinsically works on 2-theta
values, it will change your d into 2-theta according to that wavelength).
If you wish to divide the wavelength for indexing large cells (see above),
use only 2-theta values.
McMaille produces 4 or 5 types of output files :
name.imp containing the details of the calculations
and a final sorted summary.
There are 2 verbosity levels, low and large. The large verbosity is
obtained by entering a negative wavelength (of which of course the
sign is then immediately changed). See the bottom of the .imp file
where a few propositions of most plausible cells ar listed. If you
wish for more info, see lists ordered by F(20), M(20), or the
Rp-based McMaille special FoM (Figure of Merit), etc.
name.ckm containing an ordered total list of the "best
cells" for the CHEKCELL
program. Note that the special Rp-based McMaille FoM is calculated
as the inverse of Rp multiplied by adequate factors depending on the
Bravais lattice and the symmetry... A Rp-based McMaille FoM
close to 50 or larger may indicate the correct cell (Rp < 10%).
Depending on the cell proposals, partial lists are also built ;
name_cub.ckm : cubic
name_rho.ckm : rhombohedral
name_hex.ckm : hexagonal/trigonal
name_tet.ckm : tetragonal
name_ort.ckm : orthorhombic
name_mon.ckm : monoclinic
name_tri.ckm : triclinic
name_two.ckm : two phases mode output (manual mode)
name.mcm containing an ordered list of the "best cells" for
name.prf containing the "best
profile" result (with lowest Rp), to be seen by the
WINPLOTR program. For this calculation, Gaussian peak shape is
used, having FWHM = W / 2, where W is the mean columnar width
above (given that it is recommended to use W = 2 * FWHM as a
minimum). The calculated pattern is obtained after 4 Le Bail fit
name-new.dat produced only for NGRID=3 or 4
(black box mode), containing
control parameters for new searches with NGRID = 2 in cubic
The screen output delivers for each symmetry examined the first cell
and then all the proposals which will correspond to a Rp
decrease. This means
that the true cell may not appear here if a false
one having a smaller Rp value
is encountered before it. Anyway, the
screen output will give you an idea of the
smaller Rp attainable. Then
look at the bottom of the name.imp file and at the
lists of cells.
This black box mode (NGRID = 3 or -3) should solve simple cases. If
not, use the manual
modes (NGRID = 0, 1 or 2). Use preferably the parallelized version
for Core duo (= dual core) or quad core processors (respectively 1.8 or
3.8 times faster than using a single processor with same frequency).
For recognizing the very best
solution in a black box mode output, you have to find, in principle, the
cell proposal corresponding to the largest FoM (or smallest Rp) with
highest symmetry and smallest volume, indexing the largest number of
peaks. Not always an easy task... so, open your eyes ! Then check your
choice(s) by applying the Chekcell program on the .ckm global or partial
lists and finally by whole pattern fitting by the Pawley or Le Bail
methods (Fullprof, Gsas, Rietica, Maud, etc, etc).
NOTE : pressing the K keystroke (capital letter - for Kill) will
stop the program a few seconds later (or minutes...), saving the current
Bail - November