Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

PDF fitting using a rigid body

You will now have all the pieces you need to fit a PDF using a rigid body.

  1. Start a fresh PDF refinement using "para_100K_pdf.xy" as the filename (TOPASforPDF > 1. PDF data > Select PDF Data File) and save the file as 'para_100K_rigid.inp'.

  2. Enter a dQ damping with a value of 0.08 (TOPASforPDF > 2. Instrumental parameters > dQ damping).

  3. Load structure from para.cif (TOPASforPDF > 3. Phase information > 3b. add new phase from CIF > i. Read a .CIF File).

  4. Allow the lattice parameters to refine within the monoclinic symmetry (TOPASforPDF > 3. Phase information > 3b. add new phase from CIF > ii. constrain lattice parameters > convert to monoclinic).

  5. Delete the beq 0.0789 for each atom, and instead add a beq_rcut_rlo_spherical peak shape with the default values; we will look at different peak shape functions in the next section of this tutorial (TOPASforPDF > 3. Phase information > beq peak shape functions > beq spherical with min r and low r cutoffs).

  6. Add one site line for each dummy atom in the rigid body (X1, X2 and X3), but with zero site occupancy.

  7. Copy the rigid body information from 'para_300K_optimise.inp', including everything from the keyword rigid down to the refined values for Translate and Rotate_about_axies, and paste it into your current .inp file below your sites.

  8. Add view_structure so you can watch how the refinement progresses.

  9. Run the refinement and observe the fit to the PDF. You should get an ok fit with with an Rwp of approximately 25.6.

Thermal parameters and molecules

In the previous section you obtained a rigid body fit to paracetamol (it's not completely rigid because you refined some bond distances and angles). In this section we will improve on the fit using thermal parameters.

  1. Open 'para_100K_rigid.inp' and save it as something like 'para_100K_rigid_beq_spherical.inp'. So far we have only used the default values for the beq_rcut_rlo_spherical peak shape, and all of the atoms have the same peak shape.

  2. Check the rcut and rlo values. These are usefully fixed to distances after the first and second peaks in your PDF respectively. The rcut value of 1.0 looks ok, but change rlo to 1.7 and run the refinement. Since the starting values were already pretty good it should give a negligible improvement to the Rwp.

  3. Currently all of the sites have the same peak shape function (beq_rcut_rlo_spherical) with the same parameters, but different atoms are likely to be moving by different amounts. Allow different values for beqlo and beqhi parameters for each of the different atom types (C, N, O and H) by giving them different parameter names (beqloC, beqloN, beqloO etc.). Run the refinement, and it should improve the fit a bit more and give an Rwp of around 25.3.

    You should only ever refine a single beqcut value for all atom types.

  4. Refining just the atom types may not be enough for a flexible molecule. Remember, the peak width is due to how much the two atoms contributing to that peak are moving relative to each other. Explore whether allowing different parts of the molecule to have different beqlo and beqhi values improves the fit significantly.

The beq_spherical peak shapes don't distinguish between inter- and intra-molecular distances, which will often have quite radically different peak shapes. TOPAS allows you to use pdf_for_pairs to specify the width of certain pairs and to differentiate between the first instance of an atom and subsequent instances of that atom. How we will use pdf_for_pairs and see if you can improve on the above fit.

  1. Rename and save your previous .inp file as 'para_100K_pdf_for_pairs.inp'.

  2. Comment out all of the beq_rcut_rlo_spherical parts of each site.

  3. Add the line pdf_for_pairs C* C* pdf_only_eq_0 pdf_gauss_fwhm @ 0.1 min 0.1 max 2 for each atom type, i.e. C* C*, C* N*, C* O* etc. There should be 10 types in total. The keyword pdf_only_eq_0 tells TOPAS that this peak shape only applies to the first position for that site, i.e. if there are multiple sites with the unit cell (such as ones belonging to other molecules) it will have a different peak shape.

  4. Add the line pdf_for_pairs C* C* pdf_gauss_fwhm @ 0.5 min 0.1 max 10 for each atom type. This is the peak shape that will be used for all other correlations beyond the first.

  5. Add the keyword pdf_info at the bottom of the file and run the refinement. After running the refinement, this will print out a list of all of the peak shapes defined using pdf_for_pairs and is very useful for error checking.

    1. How do the peaks at low r compare with those at high r?

    2. How does this relate to inter- and intra-molecular interactions?

  6. The fit is not great, because currently we only have a single value for all inter-molecular bonds, rather than one that varies as a function of r. Set up the following parameters:

    Code Block
    prm loC 0.1 min 0 max 10 del 0.001
    prm loN 0.1 min 0 max 10 del 0.001
    prm loO 0.1 min 0 max 10 del 0.001
    prm loH 0.1 min 0 max 10 del 0.001
    prm hiC 0.1 min 0 max 10 del 0.001
    prm hiN 0.1 min 0 max 10 del 0.001
    prm hiO 0.1 min 0 max 10 del 0.001
    prm hiH 0.1 min 0 max 10 del 0.001
  7. Now change each of the 'pdf_for_pairs C* C* pdf_gauss_fwhm' lines (the ones without pdf_only_eq_0) for:

    Code Block
    pdf_for_pairs C* C* pairs_spherical(!rlo,1.7, loC+loC , hiC+hiC ,beqradius,10)

    pairs_spherical is a similar function to beq_rlo_spherical, only it is for use within pdf_for_pairs.

  8. Run the refinement and look at the results.

    1. How does this result compare to the one obtained solely with the beq_spherical peak shape?

    2. The example of paracetamol is possibly not the best to demonstrate the use of pdf_for_pairs as it is a moderately spherical molecule. How might this be different for something like anthracene or naftacene?

A dataset at 300 K is also provided called para_300K_pdf.xy. Run a refinement using this data and compare the results with that of the 100 K dataset. How does reducing the temperature help to resolve structural details in organic systems?

Final comments

Rigid bodies don't need to be used just for organic molecules. If you have well defined tetrahedra or octahedra in an inorganic structure it can sometimes help to describe them as rigid bodies. It also allows for a much more direct way of refining geometries - bond lengths and angles become refinable parameters, rather than just xyz coordinates of individual atoms.

...