Skip to main content

Tutorial Multiphaseriet

Multiphase Rietveld Refinement

Files needed: d5_05628.rawwo3.cify2o3.cifsi.cif

Learning Outcomes: This example shows a simple multiphase Rietveld refinement using laboratory data. It’s a slightly artificial example that we use for training people to perform qualitative phase identification in Durham. Rietveld refinement allows one to attempt quantitative analysis on the same data set. Beware: don’t trust absolute numbers unless you’re working very carefully and have performed all the necessary data corrections and independent calibrations!

Topas advantages: quick, easy and robust; phases can be refined independently or parameters linked between phases in a straightforward manner.

1. Save the datafile and cif files in your working directory.

2. The input file can be set up in exactly the same way as a single phase Rietveld refinement, you just have to load in 3 cif files – one for each phase.

3. Click on “Select Data File” and navigate to find the file d5_05628.raw.

4. In Instrument/Corrections select “Durham_d5000_scint” – the diffractometer used to collect the data. Fixed slits were used.

5. Click on “Refine zero point” to flag that zero should be refined.

6. In “Structure – cif” click on the icon to “Read a CIF file” and select y2o3.cif. Repeat for wo3.cif and si.cif. You may find it convenient to give each phase a name. Either type "phase_name y2o3" on the line after "str" for each structure in the input file or place the cursor after “str” and select “Phase Name” from the miscellaneous menu.

7. Click the icon to send the input file across to topas then refine.

8. The refinement should converge rapidly to Rwp ~ 25.8%. Topas will give an estimate of the relative quantity of each phase on the Rietveld plot.

9. Try refining the cell parameter of each phase. Remember to give a/b/c identical parameter names for the cubic Y2O3/Si; don’t refine alpha/gamma for monoclinic WO3. You should get Rwp~20.1%.

10. Refine a single temperature factor for each phase. Using column editting in jedit type e.g. “beq by2o3 1” at the end of each atomic site line for Y2O3. Repeat for WO3 and Si. You should now get Rwp~16.9%.

11. Look at the fit. It’s clear that the single peakshape being used for each phase isn’t modelling peaks shapes very well. Try giving each phase a different set of peakshape parameters. This can be done by changing the variable names for the peak shape for each phase. e.g. change the Y2O3 peakshape line to (i.e. add “1” after each parameter name):

TCHZ_Peak_Type(pku1,-0.03017`,pkv1, 0.04196`,pkw1, -0.01404`,!pkz1, 0.0000,pkx1, 0.13006`,!pky1, 0.0000)

You should now get Rwp~12.95%. Note that peak asymmetry is being described by the “Simple_Axial_Model” in the xdd section, which is instrument specific; it doesn’t make sense to refine a different value for each phase.

12. This is a very simple example of a multiphase refinement. There are lots more clever things you could do. Play!

13. In case you mess up try the file linked here.

Tidying up – for_strs and for_xdds

In the tutorial above we took the simplest approach of following the “recipe” for a single phase refinement and adding extra phases. For more complex multiphase refinements or multihistogram (e.g. X-ray and neutron combined) it’s usualy most efficient to make use of the for_strs and for_xdds constructs. These allows the same information to be fed into multiple phases (for_strs) or multiple datasets (for_xdds).

N.B. with for_xdds be very careful about using the @ symbol to auto-generate parameter names. For example, if you use the @ symbol for a cell parameter stored in the for_xdds section, topas will allow the value to refine differently from different data sets. Only one value is stored in the .inp file so you will typically see Rwp starting from a high value each time you restart the refinement.

To avoid problems when using for_xdds and for_strs: (1) always count the number of parameters you expect to refine and compare to the value topas reports; (2) always make sure that Rwp is unchanged if you restart refinement after convergence.

1. We are using a different peak shape for each str. Try using a single overall peak shape. Delete the TCHz line from each str and add the lines below at the bottom of the input file. This gives the same peakshape for each str. You should get Rwp = 16.95%.

for strs {
TCHZ_Peak_Type_Anneal(pku3, 0.00993`,pkv3, -0.01437`,pkw3, 0.00499`,!pkz3, 0.0000,pkx3, 0.09575`,!pky3, 0.0000)

2. It’s clear that Si has the sharpest peaks in the pattern. We can use the overall peak shape to describe the Si peaks and add an additional broadening term to the individual phases. This approach is similar to the idea of using an empirical instrumental peak shape function explored in the “size/strain” tutorials. For the Y2O3 and WO3 strs try adding the lines below which describe Lorentzian size and strain broadening.

CS_L(@, 1000)
Strain_L(@, 0.01)

3. You should get Rwp = 12.88%. This fit is slightly better than the one achieved above despite using fewer peakshape parameters. The final file is linked here.

4. The nicest way of doing this would be to determine an instrumental peak shape parameter using something like highly crystalline CeO2, have that fixed in the for_strs section then refine size/strain terms on each phase.