Spice_icon SPICE
Spectrometer Instrument Control Environment


How to align a single crystal:

This guide is intended to describe the process of aligning a single crystal in SPICE.  As the transformation from angles to reciprocal space is accomplished using a UB matrix formalism, this process is slightly different than that typically used on a triple-axis.

The simplest way to explain this process is with an example of a typical sample alignment.  We will assume a single crystal of YBCO is mounted in the (h 0 l) scattering plane.

The approximate alignment of the sample can be specified when the begin command is issued to start a new experiment.  An example for the case of YBCO in the (h 0 l) plane is shown in the figure below.

YBCO Begin New Experiment
The (h,k,l) indices of the 2 reflections which define the scattering plane vectors and the sample lattice constants must be given if the Specify Scattering Plane option if selected.  It is important to note that in this case, the first vector given is assumed to be along the lower arc.  For instance, if the sample was mounted such that the (0,0,l) direction was along the lower arc, the two reflections shown above should be swapped.

We will now make the assumption that the instrument has been aligned (see How to Align a triple-axis spectrometer).  The following steps are needed to align the sample and input the alignement information into SPICE.

1. Ensure the monochromator and analyzer are in the elastic position:
             drive e 0

2. Check the starting configuration of the UB Matrix.  To do this, select the UB Matrix tab from the Sample top-level tab.  If the begin box was filled in as shown above, the UB Matrix tab should have the mode set to Define scattering plane vectors and 1 reflection, the lattice constants and scattering plane vectors set as shown above and a single reflection set so that the first specified peak is along the lower arc.

initial ub matrix tab

3. Drive to a known reflection along the 1st specified direction (for instance drive to the (2,0,0) reflection for the case shown above):
          drive h 2 k 0 l 0 e 0 
the alias br will drive to a bragg position so the same command could be given as:
          br 2 0 0

4. Close the beam shutter and mount the sample such that the first specified vector is along the bisecting lower arc.  For the case shown above this corresponds to mounting the sample with the (1,0,0) direction along the lower arc.

5. Scan angles s1, s2, and sgl to optimize the intensity of a known reflection along the (1,0,0) direction - say the (2,0,0) peak in the example above.  For the purposes of this example, we will assume the maximum was found at:
      s2=-78.794
     s1=-40.682
     sgl=-2.5
See the NOTE at the bottom of this guide regarding what happens if the specified direction is not sufficiently close to the lower arc.

6. We will now assume that the spectrometer is at the positions specified above.  We will now enter the measured peak position in the UB Matrix tab - enter h=2, k=0, l=0 and press the green Add button.  This should result in the following UB Matrix tab:
ub matrix 1 peak added
To calculate the UB matrix using the specified peak positions, click on the blue Calculate UB Matrix Update Orientation Information button.  This will result in a popup box that contains information about the UB matrix calculation.  Within this window you can see the peak information as it was given on the UB Matrix tab, the calculated angle position for the specified h,k,l (this is where a drive h k l will send the motors) and the calculated h,k,l from the motors as specified.  
ub matrix calculation 1
We can see that the calculated h,k,l are not quite at (2,0,0) - this is because the a lattice constant given is not exactly consistent with the measured peak position.  At this point you can either accept the orientation by clicking on the blue Accept Configuration button or cancel and tweak the orientation.  In this example, we will choose the later and click the blue Cancel button.

There are a number of utilities present to do some simple angle calculations (and also the command-line calc command).  One of these allows you to calculate the d-spacing from the measured s2 angle.  This is shown in the following image:
d-spacing from 2-theta
from the above calculation, we can see that the measured d-spacing is 1.93216 which gives an a lattice constant of 2*1.93216=3.86432.  We can put this value into the UB matrix tab for the a lattice constant and click on the blue Calculate UB Matrix Update Orientation Information button.  This will now result in the following pop-up box:
ub matrix 2nd calculation
We can now see that the input lattice constant is more consistent with the measured s2 angle so we accept the orientation by clicking on the blue Accept Configuration button.

7.  A valid orientation now exists but it only has information about the (h 0 0) direction.  We need to check that the crystal is, in fact, in the (h 0 l) scattering plane as was originally input.  To do this, we need to find another reflection in the scattering plane and re-calculate the UB matrix with the information from both reflections.

As the other direction which defines the scattering plane is the (0 0 l) direction, we will look for some peak along this direction (for the sake of this example, the (0 0 4) reflection will be assumed.  As with the (2 0 0) case above, start by driving to the (0 0 4) position:

          drive h 0 k 0 l 4 e 0

OR using the br alias

          br 0 0 4

As the (0 0 4) direction should be (at least mostly) along the upper arc, we need to scan s2, s1, and sgu to properly align the (0 0 4) Bragg reflection.  Let's assume that this reflection was optimized at:

          s2=-49.43
        s1=-116.0
        sgu=3.5


We now need to input this information into the UB matrix.  To do this, select the UB Matrix tab from the Sample top-level tab.  The calculation mode now needs to be changed from Define scattering plane vectors and 1 reflection, to Define 2 non-colinear reflections.  Assuming that the motors are now positioned at the optimal positions for the (0 0 4) Bragg reflection, we now add the reflection: first type in (0 0 4) for (h k l), then select Reflection 2 from the blue pull-down menu and finally add the reflection by hitting the green Add button.  The UB Matrix tab should now look like the following:
UB matrix - 2 peaks example
We calculate the UB matrix, as before by clicking on the blue Calculate UB Matrix Update Orientation Information button.  The resulting popup box should look like the following:
ub matrix popup - 2 peaks 1
From the above image, you can see that the calculated lposition for the (0 0 4) reflection is not exactly at (0 0 4) again indicating a problem with the lattice constant.  As above, we can recalculate the c-axis lattice constant which indicates that it should change from 11.68 Angstroms to 11.732 Angstroms.  Putting this new value in and re-calculating the UB matrix (the blue Calculate UB Matrix Update Orientation Information button) results in the following:
ub matrix popup - 2 peaks 2
We can see that both reflections are rather close to the correct values and the deviation in the (0 0 4) peaks stems from the fact that the 2 reflections are not precisely separated by 90 degrees.  

The sample is now completely aligned in the (h 0 l) scattering plane.

NOTE Regarding Arcs

In the 2 peak configuration, the calculated positions for the arcs may not be the same as those input.  The program calculates the set of arc values needed to put BOTH reflections in the scattering plane.  This may correspond to a completely different set than those initially input. This is particularly true if the measured reflection is not very nearly along an arc.  If that is the case,  you may find that the calculated set of arc values will not be optimally aligned for either reflection.  The only way to solve this problem is to optimize BOTH sgu and sglatBOTH reflections.  If these values are now input into the UB Matrix calculation, a consistent and correct set of arc values should be calculated.