McMaille
(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 :

  • 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 long time.
Older versions still available :

Version 3 : 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)

  • 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 wavelength).
  • 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 values. 
  • 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.
  • Supercells reduced.
  • 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 user.
  • 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 peak shape).
  • 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 cells.
  • 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, for instance).
Old version 2 : Gaussian peak shapes, Le Bail fit (1000 tests per second on a processor Intel Pentium IV, 2.4GHz).
 
Armel Le Bail    -  November 2006