Skip to main content

Tutorial Zrw2o8riet

Simple Lab Rietveld Refinement – ZrW2O8

Files needed: zrw2o8_rt.cif6g17pbg01.rawzrwneut_sh.xyzx002.xye

Learning Outcomes: This example shows a simple Rietveld refinements of an inorganic material using laboratory X-ray data, constant wavelength neutron data and time of flight neutron data.

Lab X-ray Data

1. Save the datafiles and cif file in your working directory.

2. Work through the menus in the Rietveld refinement section of jedit.

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

4. In Instrument/Corrections select “Durham_d9” – a similar diffractometer to the one used to collect the data.

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

6. Click on “Variable Slits Used” as data were collected using a constant illuminated sample area.

7. In “Structure – cif” click on the icon to “Read a CIF file” and select zrw2o8_rt.cif.

8. Click the icon to send the input file across to topas (see examples). You’ll be prompted for a name to save the input file to. The default of 6g7pbg01_riet_01.inp is fine.

9. Click the icon to launch topas if it’s not already running.

10. Click on the “run” icon in topas.

11. The refinement should converge rapidly.

12. Try refining temperature factors (e.g. type “beq @ 1” at the end of each “site” line containing atomic information). Try refining cell parameters by introducing parameter names. i.e. change the cell parameter lines to read:

a lpa 9.15762
b lpa 9.15762
c lpa 9.15762

13. You should get a Rwp of ~ 8.7%. RBragg will be around 3.3%.

14. Try refining atomic coordinates. Remember that x,x,x is a special position. The easy way to control this is to give each coordinate a unique name e.g.:

site Zr1 x xzr1 0.00051` y xzr1 0.00051` z xzr1 0.00051` occ Zr+4 1. beq @ 1
site W1 x xw1 0.34066` y xw1 0.34066` z xw1 0.34066` occ W+6 1. beq @ 1
site W2 x xw2 0.60084` y xw2 0.60084` z xw2 0.60084` occ W+6 1. beq @ 1
site O1 x xo1 0.20669` y yo1 0.43776` z zo1 0.44698` occ O-2 1. beq @ 1
site O2 x xo2 0.78740` y yo2 0.56926` z zo2 0.55609` occ O-2 1. beq @ 1
site O3 x xo3 0.49294` y xo3 0.49294` z xo3 0.49294` occ O-2 1. beq @ 1
site O4 x xo4 0.23404` y xo4 0.23404` z xo4 0.23404` occ O-2 1. beq @ 1

Add the phrase “view_structure” to the bottom of your input file to view coordinates. You can display multiple cells or coordination polyhedra in the viewer.

13. Calculate bond distances by including the line “append_bond_lengths” at the bottom of the file. Note that e.g. some W-O bonds are longer than expected (1.9 A vs expected 1.8 A). Compare with neutron data later.

14. As the bond lengths are outside the expected range try adding some bond distance restraints. This can be done using the “restrain distance” button in the “Miscellaneous” section. You need to specify the two sites involved, the ideal distance between them, the “tolerance” before the restraint is applied (i.e. it’s not applied if the actual distance is within +/- tolerance of the set distance) and the weighting to give the restraint. It’s normally safest to give the full label of any atomic site as it may be that the bond is not between sites in your asymmetric unit. The full label is given in the bond distance calculation (remove any colons!).

2014 Schol warning: New software uses slightly different atom labelling for restraints try using:

Distance_Restrain(Zr1 O1 5 0 0 -1, 2.075, 2.02818`, 0.05, 1.0)
Distance_Restrain(Zr1 O2 9 -1 0 1, 2.075, 2.04840`, 0.05, 1.0)
Distance_Restrain(W1 O1 0 0 0 0, 1.790, 1.84483`, 0.05, 1.0)
Distance_Restrain(W2 O2 6 0 0 0, 1.790, 1.82327`, 0.05, 1.0)

2012 Schol warning: there may be a small error in the school version of software. append_bond_distances may not be giving the correct site labels. The correct lines you want are:

Distance_Restrain(Zr1 O1 10 0 -1 0, 2.075, 2.02818`, 0.05, 1.0)
Distance_Restrain(Zr1 O2 10 1 -1 0, 2.075, 2.04840`, 0.05, 1.0)
Distance_Restrain(W1 O1 0 0 0 0, 1.790, 1.84483`, 0.05, 1.0)
Distance_Restrain(W2 O2 6 0 0 0, 1.790, 1.82327`, 0.05, 1.0)

For historical reasons, the labels that used to work in v4.2 are:

Distance_Restrain(Zr1 O1 10 0 0 0, 2.075, 2.04574, 0.05, 1.0)
Distance_Restrain(Zr1 O2 7 -1 1 1, 2.075, 2.04812, 0.05, 1.0)
Distance_Restrain(W1 O1 0 0 0 0, 1.790, 1.81945, 0.05, 1.0)
Distance_Restrain(W2 O2 4 0 0 0, 1.790, 1.82079, 0.05, 1.0)

The Rwp should be around 8.62%, i.e. almost unchanged from free refinment indicating that the restraints are consistent with the data.

15. You might like to try the influence of different peak shapes, different numbers of background terms, refining a sample height correction instead of a zero point, etc. Try changing the parameter axial to values of 0 then 20 and fixing it (change parameter name to !axial) to see the influence of axial divergence on peak shape.

Constant Wavelength Neutron Data

Information: data (zrw2o8_sh.xy) were collected using a wavelength of 1.8857 A at Brookhaven National Lab.

1. Repeat process described above for X-ray data. Select data file zrw2o8_sh.xy. Select “Neutron CW” for the instrument type and enter a wavelength of 1.8857 A.

2. You might try going anisotropic on all atoms. After an isotropic refinement delete all the temperature factor information and replace with the word “adps”. i.e. the atomic information should look like:

site Zr1 x xzr1 0.0003 y xzr1 0.0003 z xzr1 0.0003 occ Zr+4 1. adps
site W1 x xw1 0.3412 y xw1 0.3412 z xw1 0.3412 occ W+6 1. adps
site W2 x xw2 0.6008 y xw2 0.6008 z xw2 0.6008 occ W+6 1. adps
site O1 x xo1 0.2071 y yo1 0.4378 z zo1 0.4470 occ O-2 1. adps
site O2 x xo2 0.7876 y yo2 0.5694 z zo2 0.5565 occ O-2 1. adps
site O3 x xo3 0.4916 y xo3 0.4916 z xo3 0.4916 occ O-2 1. adps
site O4 x xo4 0.2336 y xo4 0.2336 z xo4 0.2336 occ O-2 1. adps

3. You should be able to get Rwp ~9.2%.

4. Calculate bond distances and angles using “append_bond_lengths”. You should find sensible Zr-O and W-O bond distances and bond angles close to 90/109 degrees in ZrO6 octahedra and WO4 tetrahedra.

Time of Flight Neutron Data

Information: data were collected using the back scattering bank on HRPD at ISIS. Data collection time was 5 minutes so signal to noise ratio is relatively poor. You may need to have file local.inc in your directory.

1. Work through the icons under “Simple tof Rietveld”.

2. Select data file zx002.xye which is a 2 K data set on ZrW2O8. You’ll need to type in values for the start_X and finish_X by hand. For this data set 34000 to 120000 microseconds is suitable.

3. In “Instrument/Corrections” select “hrpd_bs” to include parameters describing the backscattering bank on hrpd. N.B. only refine these parameters if you know what you’re doing!!

4. Read in the structure from zrw2o8_rt.cif. Allow atoms to refine isotropically by putting “beq @ 1” at the end of each atom’s line. N.B. as this is a 2K data set the cubic cell parameters have to be set to refine. Do this by giving them each the same parameter name:

a lpa 9.16004
b lpa 9.16004
c lpa 9.16004

5. Click on view_structure so you can see the structure.

6. Click on “Save/send to topas” then refine the structure. You should get Rwp ~ 20.3% for an isotropic refinement.

7. If you haven’t got john’s local.inc installed you may need the macro below in your input file.

macro tof_sample_peakshape(lor,lor_val,dsp,dsp_val,dspsq,dspsq_val)
{
prm dsp dsp_val del = 0.05 Val + 1; min 1
prm dspsq dspsq_val del = 0.05 Val + 1; min 0
peak_type pv
pv_lor lor lor_val
pv_fwhm = dsp D_spacing + dspsq D_spacing^2;
}

8. Try refining all atoms anisotropically by replacing the atomic coordinates with:

site Zr1 x xzr1 0.00098` y xzr1 0.00098` z xzr1 0.00098` occ Zr+4 1. adps
site W1 x xw1 0.34145` y xw1 0.34145` z xw1 0.34145` occ W+6 1. adps
site W2 x xw2 0.60020` y xw2 0.60020` z xw2 0.60020` occ W+6 1. adps
site O1 x xo1 0.20721` y yo1 0.43924` z zo1 0.44675` occ O-2 1. adps
site O2 x xo2 0.78736` y yo2 0.56792` z zo2 0.55589` occ O-2 1. adps
site O3 x xo3 0.49107` y xo3 0.49107` z xo3 0.49107` occ O-2 1. adps
site O4 x xo4 0.23235` y xo4 0.23235` z xo4 0.23235` occ O-2 1. adps

9. You should get Rwp ~ 20.19%.

Extra Work

The constant wavelength data are suitable for trying indexing.

You can also try structure solution using either the X-ray data or room temperature neutron data.