Rigid Bodies 2 - Creating a Rigid Body
This page is not yet working, please come back on Wednesday morning!
Creating a rigid body
TOPAS includes a 'rigid-body editor' which can be used to create and test rigid bodies. There are some examples of rigid bodies in the 'C:\TOPAS7\rigid' folder; if at any point you get stuck while editing the z_matrix
for this section, it may help to look at some of the examples in this folder.
In TOPAS, select 'Tools' > 'New Rigid-body editor Window'.
Click 'Load / Hide' to bring up the file load dialogue, navigate to the file 'para_partial.rgd' and double click on it to open it in the editor. This is a partially completed
z_matrix
description of an idealised paracetamol molecule. Notice how bond lengths (prm !rCC 1.30
,prm !rCO 1.20
etc.) and dihedral angles (prm !dCOH 90
,prm !dCNC 90
etc.) are defined as parameters at the top of the rigid body. These parameters also have sensiblemin
andmax
values applied to them. Try changing a few of these parameters and click Update to see the effect on the rigid body.Edit the
z_matrix
to add the C=O and CH3 groups on the end of the molecule. Use the naming scheme shown below (i.e. add O2, C8, H8, H9 and H10). It is best to add one site at a time, then click Update to see the effect on the rigid body. This will allow you to fix problems as you go. The completed structure should look like this:If you are having problems adding atoms to the rigid body, there are some hints here at the bottom of this page.
Click 'Save As' and save your new .rgd file of the completed paracetamol rigid body on your computer.
Matching a rigid body to a known structure
Although we now have a rigid body description of the paracetamol molecule, we don't yet know the translations / rotations needed to get the molecule where it should be within the unit cell. We can use TOPAS to optimise the position of the paracetamol rigid body to that of the known atomic positions from a .cif file; thanks to Prof Simon Parsons, University of Edinburgh, for this tip! In order for us to do this, it is easiest if the naming conventions in our rigid body are the same as those from our .cif. The site names in the rigid body described above already match those of the .cif file, so in this case we can carry out.
Start a fresh PDF refinement using "para_300K_pdf.xy" as the filename (TOPASforPDF > 1. PDF data > Select PDF Data File) and save the input file as 'para_300K_optimise.inp'. We will use this file to optimise the geometry of the rigid body.
Enter a dQ damping with a value of 0.08 (TOPASforPDF > 2. Instrumental parameters > dQ damping).
Load structure from para.cif (TOPASforPDF > 3. Phase information > 3b. add new phase from CIF > i. Read a .CIF File).
Add the rigid body information to the file, which will be used to calculate the fractional coordinates of the sites. The text area you have been editing in TOPAS can be directly copied into the inp file in jEdit.
Also allow the translation and rotation of the rigid body to be refined (TOPASforPDF > 3. Phase information > constraints and restraints > rigid bodies > translate rigid body and rotation rigid body).
If you run a TOPAS refinement now, you will get an error of 'Cannot find site: X1'. That is because the dummy atoms X1, X2 and X3 are in the rigid body description, but aren't declared as sites. Add one site line for each dummy atom, but with zero site occupancy. (hint below)
Create a copy of all of the real atom sites (not X1, X2 and X3), but re-name these sites
dummyC1
,dummyC2
,dummyC3
etc. and set their occupancy to zero. These will be dummy sites which we will use to move the rigid body sites onto the original atomic positions from the cif file.Add a distance restraint (TOPASforPDF > 3. Phase information > constraints and restraints > distance restraint). Edit the line to apply the restraint between sites
dummyC1
andC1
for a distance of0
and tolerance of0
.Distance_Restraint creates a penalty for when two sites are beyond a given distance. Here we are using to minimise the distance between two sites, but normally it would be used to force a bond length towards a known value.
Use Rectangular Selection in jEdit to copy and edit the file to give you one Distance_Restrain line per dummy site.
Add
view_structure
so you can watch how the refinement progresses.Add the keyword only_penalties to your input file. The tells TOPAS not to fit to the data, and instead only minimise the distance penalties.
Run the refinement, and watch the rigid body move onto the atomic coordinates from the .cif file using the structure viewer. When the refinement finishes, click Yes to update the .inp file with the values from the refinement.
How well does the rigid body fit to the published crystal structure from the .cif file?
Are there other angles within the rigid body that you could refine to improve the fit?
The C7-N1-C4 bond angle is the source of the largest error between the published crystal structure and the idealised rigid body where it is fixed to 120°. Add a new refined bond angle, e.g.
aCNC
, and set the angle between C7, N1 and C4 to be equal to this parameter.Note that you can refine rigid body parameters by putting an @ sign before the value, but when you may re-use the parameter elsewhere it is best to provide your own name for it.
Run the refinement again, and click Yes to update the .inp file and complete this refinement.
You now have the translate and rotate values needed for a good starting point for your PDF refinement in the next part of this tutorial.