McMaille (pronounce MacMy) is a program for indexing powder patterns by Monte Carlo and grid search (maille in french = cell in english). The 2-theta peak positions extracted from a peak hunting program are used together with the intensities in order to build a pseudo powder pattern to which are compared patterns calculated from the cell parameters proposed by a Monte Carlo or by a grid systematic search process. The calculated intensities are adjusted by a Le Bail fit (applying 3 iterations of the Rietveld decomposition formula). The best cells are refined, more or less. This is similar to the (unnamed and still unavailable ?) software by B.M. Kariuki et al., J. Synchrotron Rad. 6. (1999) 87-92, though the latter uses a genetic algorithm.
Armel Le Bail - September 2002
McMaille version 2.0 is distributed under the GNU Public Licence conditions.
The zipped package contains the executable for Windows 95/98/NT/XP, as well as the FORTRAN source code (quite short and documented) and some examples described below.
Let the cub.hkl, hex.hkl, rho.hkl, tet.hkl, ort.hkl, mon.hkl, tri.hkl
files in the same
The compiler used for building the executable was Compaq Visual
Running McMaille (by clicking on McMaille.exe) requires a parameters data file. A typical data file (should be named name.dat) follows :
SR2CR2O7 TitleTitle : for your problem identification.
Zeropoint : your powder pattern zeropoint (global value including the zero due to the diffractometer and the zero due to sample misplacement). It is recommended to have a standard compound mixed with your sample or to apply the harmonics method for zeropoint estimation.
: 6 codes allowing to select the crystal system to be explored.
U, V, W : the Caglioti law characterizing the variation of the peak widths as a function of the diffraction angle. Use standard values for your diffractometer or larger values. Taking U=V=0. and 0.04 < W < 0.16 should produce some correct cells for wavelengths close to 1.5 A. For very good synchrotron radiation data and wavelength close to 0.7 A, use 0.004 < W < 0.016. Extremely good peak positions are required.
Nstep : mean number
of counting steps that you expect above the FWHM.
Rmin, Rmax : Rp
profile reliability factor limits.
NOTE : the line including the 2 following parameters is optional (should not occur if NGRID = 0)
Spar : grid search
step applied to the cell parameters.
Sang : grid search
step applied to the cell angles.
NOTE : the line including the 2 following parameters is optional (should not occur if NGRID = 1)
Ntests : number
of Monte Carlo tests. Use 1000-10000000 or more.
Nruns : number
of Monte Carlo runs. One run will execute Ntests tests.
: values obtained at the peak hunting step.
McMaille expects very accurate peak positions,
McMaille produces 3 output files :
name.imp containing the details of the calculations
and a final sorted summary..
McMaille is a "brute force" program that can be "almost exhaustive" in grid search mode, provided the grid steps are very short. The only problem is : TIME. Calculations for the triclinic case with 1000 steps for each of the six cell parameters would lead to 1000000000000000000 tests, which corresponds to many centuries at the current speed of 1000 steps per second... However, an exhaustive search is quite manageable in grid search mode with a step of 0.01 Angstrom for cubic/hexagonal/tetragonal crystal systems.
The recommendation is : First use TREOR, DICVOL, ITO, CRYSFIRE. If no result, then apply McMaille with your fastest PC.
If McMaille is so long, and if it is suggested to apply the classical software, what is the McMaille interest ? McMaille is rather insensible to IMPURITIES. Note that "impurity" means supplementary phase(s) that do not contribute for more than 10% of the total intensity diffracted. You should not expect from McMaille solutions for mixtures of 2 or more unknown major phases. It is obvious that known impurity peaks (identified by a search/match process) should be removed from the list of peaks submitted to McMaille.
Making several successive applications of McMaille is recommended. First cubic, then hexagonal and tetragonal, or those 3 crystal systems in one try. Then orthorhombic, if no clear solution appears at the previous runs. Then monoclinic, if no clear solution appears at the previous runs. Finally triclinic.
Repeat several Monte Carlo runs if nothing is produced (several Monte Carlo runs will not use the same random number sequences, and will not examine the same combinations of cell parameters). This is essentially a question of chance...
Because calculations can be extremely long if you use the grid search procedure with small steps, a WARNING occurs at the beginning of McMaille runs giving an estimation of the calculation time (on the basis of 1000 tests per second obtained with an Intel Pentium IV 2.4GHz processor).
The test samples attached with the McMaille package (testn.dat) come mainly from the TREOR and DICVOL distribution package tets (using arbitrarily intensities set to 100.). Running them on your own PC should produce the solutions (though the triclinic case would ask for long-long time, and the monoclinic ones may ask for hours).
Send your comments and bug reports to :