(pronounce : MacMy)
Monte Carlo and grid search powder pattern indexing program (latest version
4 recommended - November 2006) :
Version 4 : introduction
of a new figure of merit (McM20), parallelization of the code.
Main improvements in version 4.00 :
Older versions still available :
Parallelization for core duo (=dual core), quad core multiprocessors,
Volumes examined in black box mode were enlarged,
Bravais lattice identification,
More help provided for the identification of the most plausible cells in
the lists of possible hits (the most plausible cell is proposed at the
bottom of the output file with .imp extension),
More clarity with shorter lists of cells (cutted to the 20 best of them)
New lists ordered by best figure of merit (FoM) F(20) and M(20) and by
the Rp-based special McMaille FoM (McM20) taking account of the Bravais
lattice and level of symmetry,
Old bugs corrected, like trapping in small volume regions taking excessive
: Columnar peak shape, simple adjustment of the calculated profile by percentage
of inclusion inside of the "observed" profile. Version 3 is 20 times faster
than the old version 2 (20000 tests per second).
Latest improvements in Version 3.04 :
(if your version is older, download a new one)
Old version 2
: Gaussian peak shapes, Le Bail fit (1000 tests per second on a processor
Intel Pentium IV, 2.4GHz).
Data can be provided as 2-theta or as d(A) values. The test for identification
of 2-theta or d(A) values is made by the difference between the second
and the first values. 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
Strategy for large cells. If you want to index proteins, then :
- if you give 2-theta values as peak positions, do not change them
but divide the wavelength by 10, so that the cell parameters proposed by
McMaille will be divided by 10 as well.
- if you provide d(A) values as peak positions, divide them by 10 and
choose a wavelength very short (0.06-0.15 A). So, the cell parameters provided
by McMaille will have to be multiplied by 10 in order to recover the true
V3.04 : A "two phases mode" can be used in desperate cases. Its purpose
is to try to interpret the data with two phases. It is enabled if Rmax
> 0.5. The problem is that a quite large number of cells will be tested
so that the speed is considerably decreased. Waiting for faster computers,
it is suggested to limit that mode to cubic/hexagonal/rhombohedral/tetragonal/orthorhombic.
More than 1000 cells will easily appear and force the run to stop. A list
of couples of cells that may explain together a maximum of peak positions
is provided at the end of the .imp file. Two examples are distributed with
the test files (mixture1 and mixture2). That mode may work or not, of course,
it is more difficult to conclude than in the single phase mode... Going
back to the lab for obtaining a pure sample is the best way ! In V3.04
is also improved the Monte Carlo "cell refinement".
Less verbosity in the screen output as well as in the .imp file (you may
get full verbosity again if you wish, the code being a negative wavelength...).
The screen displays only the cells corresponding to the smallest and smallest
Rp, as they come.
Quite important : V3.03 : Monte Carlo algorithm largely improved
: 4-10 times less MC events are needed (generally) for a same result. Memory
is kept of cell parameters improving the fit, contrarily to version 3.02
in which all changes were accepted. However some changes not improving
the fit are accepted too, times to times, in order to not being trapped
in a false minima. Black box expert mode shorter as well.
Added file output (*.mcm) for CRYSFIRE entry.
Black box modes (NGRID=3 or 4) allowing to "autoindex" simple cases. See
the corresponding short manual.
The Rmaxref control parameter (a cell was refined by Monte Carlo if Rp
< Rmaxref) which was previously fixed at 0.5, can be changed by the
Quite important : A second criterium for selecting cells has been
introduced (the first was that Rp < Rmaxref) : if the expected number
of peaks is explained by a cell proposal, then that cell is "refined" also,
even if Rp > Rmaxref. This produces approximately twice the number of good
solutions for a same number of Monte Carlo events. Then the calculation
time for obtaining a good solution is reduced by a factor 2.
Dynamical change of Rmax if too much cell proposals are retained (use negative
Rmax in the .dat file for this option).
Pressing the K keystroke (capital letter - for Kill) will stop the program
a few seconds later, saving the current results.
New logo and icon.
Output .prf file for viewing by WINPLOTR (pseudo pattern with Gaussian
Possibility for individual peak width (use W negative and give triplets
of (2-theta, I, W), instead of (2-theta, I) doublets.
Output of the M(20) and F(20) classic figures of merit for the "best" refined
Elimination of some redundant solutions (test if Volume and cell parameters
do not differ by more than 0.2%).
Presentation of 2 sorted lists of "best" cells : by increasing Rp, and
by increasing volume.
No crash if the data file name does not exist, a second chance is given.
Cell parameters and zeropoint refinement by using the routine CELREF from
Laugier and Filhol.
The user may decide for the number of unindexed reflections.
Min and max values for individual cell parameters can be selected if the
global Pmin is set negative. This allows exploring some dubious parameters
if some are known (two long parameters obtained, one short uncertained,