Using ExtSym with various powder decomposition program

ExtSym Home

Summary: Here it is discussed how to use ExtSym together with PRODD, FullProf, GSAS, DASH and Topas. At present ExtSym works best with DASH, PRODD and Topas because these programs directly outputs the weight matrix elements required by the ExtSym program. Neither FullProf nor GSAS output, at present, the weight matrix elements and additional assumptions/hacks (as described below) are required to get these programs to work with ExtSym. The recipies below are all demonstrated using a Windows' binary form of ExtSym. Other binary versions are available from here.

This web page is structured as follows:

How to use ExtSym together with FullProf

FullProf is one of the main free powder diffraction analysis programs. It can be downloaded from here. It is harder to write a script with works with FullProf compared to for instance PRODD and Topas because FullProf does not output the weight matrix elements. The script below makes the following assumptions when calculating weight matrix elements (which are required for the ExtSym program, see here):

In addition the script presented below makes the following assumption:

Finally the script is written in Matlab and requires Matlab to run it. Please note the source code is well documented and there exist programs on the internet, which can convert Matlab code into various other programming languages including C, Python and Fortran I believe. Notice also that the script below has to date only been tested on one dataset.

The current recipe for using ExtSym with output from FullProf is as follows: (this recipe requires Matlab)

  1. Le Bail fit your data using FullProf in a space group with no systematic absent reflections. Make a note of the final Chi^2 value returned by FullProf.
  2. Unzip this file into the directory containing the FullProf input/output files you are currently working with.
  3. From the Matlab command prompt type: fullprof2hkl_weight CODFIL.prf CODFIL1.hkl, where CODFIL is the name of the FullProf parameter file (.pcr or .new file) without the extension. This script returns the file CODFIL.hkl_weight.
  4. Open the parameter.asc ExtSym file and below the line "INPUT DATA FILE:" specify the name of the .hkl_weight file generated in 3.
  5. Open the advanced.asc ExtSym file and two lines below the line "MODIFY INPUT DATA FILE" replace the number on that line with: 2.0 times the square root of the Chi^2 value noted down in 1.
  6. From the Windows command prompt run: ExtSym.exe.
  7. That's it! Now examine the output returned by ExtSym, i.e. table.asc (for information about how to read a table.asc file, see here).

For ExtSym test results using FullProf outputs, see here.

How to use ExtSym together with GSAS

GSAS is one of the main free powder diffraction analysis programs. It can be downloaded from here. It is harder to write a script which works with GSAS compared to for instance PRODD and Topas because GSAS does not output the weight matrix elements. The script below makes the following assumptions when calculated weight matrix elements (which are required for the ExtSym program, see here):

In addition the script presented below makes the following assumption:

The script is written in Fortran and the source code is available for anyone to improve. Finally notice this script has currently only been tested on one dataset.

The current recipe for using ExtSym with output from GSAS is as follows: (this recipe requires GSAS to be installed)

  1. Le Bail fit your data using GSAS in a space group with no systematic absent reflections.
  2. Unzip this file into a directory of your choice and copy the .exp file generated from step 1. to this directory (plus the data).
  3. From a command prompt type: gsas_extsym.exe "gsas_directory", where the argument "gsas_directory" is the name of directory where the GSAS executable is located. If this argument is left out this directory name defaults to "c:\gsas\exe". (Note do not end the directory name with a backslash!).
  4. Follow the instructions of the gsas_extsym.exe script.
  5. Examine the output returned by ExtSym, i.e. table.asc (for information about how to read a table.asc file, see here).

For ExtSym test results using GSAS outputs, see here.

How to use ExtSym with output from PRODD

PRODD is a free Rietveld refinement program, which can be downloaded from here. Currently PRODD supports the Pawley refinement of time of flight data and constant wavelength neutron and synchrontron data. PRODD is further described in Ref. [3].

The current recipe for using ExtSym with output from PRODD is as follows: (this recipe requires Python)

  1. Unzip this file in a directory and 'cd' from a Windows command prompt to this directory. Please notice the zip file contains a copy of PRODD (named mprodd.exe in zip file, copy provided by John Wright).
  2. Pawley fit your data using PRODD in a space group with no systematic absent reflections. When PRODD asks 'Do you want to write out the DILS matrix?' answer 'y' to this question. Further, make a note of the final Chi^2 value returned by PRODD.
  3. From the Windows command prompt type: python convert_dil.py somename.dil out.hkl_weight, where convert_dil.py is a python script that generates a .hkl_weight file from a .dil file, somename.dil is the DILS file generated in 1., and out.hkl_weight is the .hkl_weight file returned by this python script.
  4. Open the parameter.asc ExtSym file and below the line "INPUT DATA FILE:" specify the name of the .hkl_weight file generated in 3.
  5. Open the advanced.asc ExtSym file and two lines below the line "MODIFY INPUT DATA FILE" replace the number on that line with: 2.0 times the square root of the Chi^2 value noted down in 1.
  6. From the Windows command prompt run: ExtSym.exe.
  7. That's it! Now examine the output returned by ExtSym, i.e. table.asc (for information about how to read a table.asc file, see here).

For ExtSym test results using PRODD outputs, see here.

How to use ExtSym with output from Topas

Topas comes in two forms: BRUKER-AXS Topas and Topas Academic. Topas can be operated using .inp & .out files and it is assumed here that you are familiar with creating and modifying .inp/.out files. Further, the recipe below has so far only been tested with the Topas Academic version.

The current recipe for using ExtSym with output from Topas is as follows:

  1. Unzip this file in a directory and 'cd' from a Windows command prompt to this directory.
  2. Modify one of the Topas template .inp files; these are lab-x-ray.inp, constant_wavelenght_neutron.inp, synchrotron.inp and time-of-flight.inp. Use Topas to Pawley refine your data. This will generate a Topas .out file.
  3. From the Windows command prompt run: topas2hkl_stage1 in_file.out out_file.inp, where in_file.out is your best fit from the previous step and out_file.inp is the file returned by this program.
  4. Run out_file.inp through Topas once. This will generate out_file.out.
  5. From the Windows command prompt run: topas2hkl_stage2.exe. You will be asked by this program to: 1) specify a Topas file, use out_file.out from the previous step; 2) name of an output .hkl file (use e.g. out.hkl) and 3) the Laue class symbol for your crystalline powder.
  6. From the Windows command prompt run: ExtSym.exe.
  7. That's it! Now examine the output returned by ExtSym, i.e. table.asc (for information about how to read a table.asc file, see here).

Warning: The scripts, topas2hkl_stage1.exe and topas2hkl_stage2.exe, supplied with the above recipe are very elementary and contain close to zero error checking. However if you feel like improving these scripts then the source code for these can be downloaded from here. topas2hkl_stage1 is a C++ script, and topas2hkl_stage2 is a modified version of a fortran script originally provided by Bill David.

For ExtSym test results using Topas outputs, see here.

How to use ExtSym with output from DASH (TF12LS)

TF12LS [1] was released 1992 and is an ISIS in house program based on the Cambridge Crystallographic Software Library (CCSL). Sometime during 2000-1 a modified version of this program was written to form a part of the DASH software [2]. In a later release of DASH, the GUI of DASH was changed such that ExtSym could be called as an external executable from within this interface. DASH is a commercial software package sold by CCDC.

TF12LS stands for Time-of-Flight 12 Least Squares. One of the uses of this program is to Pawley fit powder diffraction data. The TF12LS software is no longer distributed and supported, but mentioned here since ExtSym was originally programmed to work with Pawley outputs from TF12LS.

The DASH manual has instructions for how to execute ExtSym from within the DASH GUI. In addition it is recommend to read this page before using ExtSym with DASH.

For ExtSym test results using DASH(TF12LS) outputs, see here.

History or this document

References

  1. David, W.I.F., Ibberson, R.M. and Matthewman, J.C. (1992). Rutherford Appleton Laboratory Report: RAL-92-032
  2. W. I. F. David, K. Shankland, J. van de Streek, E. Pidcock,W. D. S. Motherwell, J. C. Cole, J. Appl. Cryst., 39, 910-915, 2006
  3. J. P. Wright, Z. Kristallog. 219, 1-11 (2004)