-
Notifications
You must be signed in to change notification settings - Fork 2
Reflectometry at ISIS
For an introduction to Reflectometry, see this document. It was written for the Mantid team in the context of data reduction but contains a good, brief introduction to the fundamentals of the technique as well as information on some of the differences between the various ISIS reflectometers.
Reflectometry is a technique where you shoot a beam at a flat sample at an angle and study the reflected neutron beam to gather insights about the properties of the surface or boundary between media. There are currently 5 reflectometry instruments at ISIS (in order of increasing complexity): CRISP, INTER, SURF, POLREF and OFFSPEC. The basic setup of a reflectometry experiment is as follows:
With an incident angle of θ
on the sample, detectors need to be at 2θ
relative to the incident beam. Detectors on the beamlines move around to coincide with the angle of the sample. At this time, CRISP, INTER and SURF use point detectors while POLREF and OFFSPEC use 1D (linear) detectors. 2D (area) detectors are planned for the future.
Some of the instruments contain additional equipment:
- Non-polarising supermirrors: SURF and INTER are optimized for liquid samples, which cannot be angled. Instead, these instruments are equipped with supermirrors to change the angle of the incident beam.
- Polarisers: POLREF and OFFSPEC are equipped with polarisers that align all neutrons to one of two spin directions and allow scientists to study magnetic properties of the sample.
POLREF can be run in polarised or non-polarised mode. Furthermore, it can be run in horizontal or vertical mode. This refers to the sample orientation, i.e. the detector would be in vertical / horizontal mode respectively. If in horizontal mode, the detector moves up and down to coincide with the angle of the sample. If in vertical mode, the bench the detector is mounted on slides around the sample area on a circular path.
Most of the time, the instrument is run in polarised and horizontal mode. Mounting a flat sample vertically requires extensive and laborious changes to the setup of the sample stack. When it is run in vertical mode, then usually with a block sample the beam passes through (rather than a flat one) which does not require these changes.
- The main area of interest is inside the blockhouse (beyond Monitor 2)
- The beam enters the blockhouse at a natural (downward) angle of 2.3°
- All jaws are adjustable in both height and angle. They want to be centred and perpendicular to the beam path as this allows the beam to be shaped more sharply. Each pair of jaws (e.g. north & south) is slightly offset to avoid collisions.
- The first set of polarisers consists of:
- a frame overlap mirror (or FOM) designed to filter out noise in the form of slow neutrons from previous pulses
- a current sheet which aligns the spin of all neutrons along the same axis
- a reflection polariser which filters out all spin-down neutrons. Important to note: the reflection polariser introduces a slight angle to the beam that passes through, which all subsequent beamline equipment has to adhere to!
- This is followed by a flipper which can be turned off or on depending on whether the user wants spin-up or spin-down neutrons at the sample point.
- Everything past the sample point sits on a movable bench which is driven by 2 pairs of motors on the front/back corners of the bench in order to lift and angle it. Additionally the bench slides forwards and backwards as the detectors have to maintain a fixed distance to the sample. The pivot point of the bench is roughly 2/3 of the way to the back of the bench. As such, motion calculations are fairly complex.
- Generally, beamline components on POLREF do not need to move in a synchronized fashion as there is no risk of collision (in contrast to the more tightly packed OFFSPEC for example). Exception: There is a beam guide installed on Slit 3 which may collide with the sample stack.
Vaguely, the process the alignment process the scientists followed was:
- Aligning slit 1
- Roughly aligning slit 4 to check the detector is in the right place
- Go up the beamline, individually aligning slit 2, 3 and 4 to precision
- Go up the beamline, individually aligning the polarisers and sample
The most important task by far while aligning the beamline is scanning, i.e. taking measurements of beam intensity at regular intervals within a range of values along an axis. This is performed multiple times for multiple axes for each beamline component individually, and takes up the bulk of the time needed to align the instrument. The alignment is fine-tuned iteratively to a very fine level of precision (within 5-10 microns). The exact order in which things are aligned can vary and a lot of it comes down to experience of the scientist, knowing which bits depend on what and which values are established to be correctly aligned.
Apart from the scan range / step size, each scan requires 3 elements: the axis to be scanned (e.g. slit 2 gap) and two monitors, one before and after the component in question, in order to scale the results. The result comes in form of a graph, in which the scientists will look for different features depending on the axis.
The goal for the slits is: centred and at a 90° angle with regards to the beam
- To calibrate to the actual point 0 for the vertical gap (as the jaws can overlap): Scan along the slits
vgap
axis (opening it gradually) and look for the point where the graph for the intensity crosses the x axis (noise notwithstanding). - To be centred vertically: with a small slit, scan the vertical position axis. This will produce a bell curve, the center point of which is the vertical center.
- To be perpendicular to the beam: As 2. but for the phi axis. At the center of the bell curve, the slit is at a 90° angle.
This is performed iteratively:
- Per axis: first, a coarse scan will be performed to find the general shape of the graph, followed by a more precise scan of the area of interest
- Per slit, as these parameters affect each other. For example, the
vgap
zero point of will be different if the slit was not at a 90° angle with regards to the beam initially, due to the slits being slightly offset.
The goal for these components is to find the position where they are level and in the center of the beam (cutting the bottom half out). This is done by
- Scanning along the vertical position of the component to find the beam center
- Scanning along the tilt axis. This will provide a parabolic intensity curve with an upwards bump in the bottom. The highest point of this bump is the level position. Again, this needs to be done iteratively. For example, if the vertical point in step 1 was found with a slightly tilted component, this point would be below the actual beam center
- There is a display of binary LEDs in the instrument cabin that show a live count of neutrons reaching the detector. The scientists use this to quickly assess the level of beam that is reaching the detector during scans.
- There is a laser mounted on the beamline to assist with the alignment of components, however the final fine-tuning is done with the neutrons themselves as the laser will not be 100% accurately tuned to the beam path.
The scientists have two kinds of requirements:
These are SECI features the scientists deem essential to control the beamline. IBEX must be able to match these for them to consider making the switch:
- Top level views with a high information density showing the state of the instrument at a glance. This is because it is hard to keep the state of the whole instrument in one's head, particularly for visiting users with no previous experience POLREF. This includes:
- A motors table that provides the richness of the one provided in SECI regarding the level of detail of its diagnostics. The scientists expressed worry about having to drill down several levels into individual motors to find the information they need, which they deem an unacceptable troubleshooting approach.
- An instrument front panel similar to the VI they currently use in SECI for this purpose (screenshot). It should not be a problem to develop an OPI equivalent to this.
- There may be other VIs this applies to, need to check.
- The ability to set multiple setpoints for each component depending on the instrument mode (polarised, unpolarised, disabled) so users can easily switch between these via the front panel (see screenshot above).
- A logplotter that allows them to plot multiple blocks in the same graph.
- The ability to scan blocks and pick out the required values from a resultant graph.
- In order to save time, users will often scan an axis and cut the run of the script short once they have enough information. Users should be able to stop a script midway without losing the collected data.
These are features the scientists expressed a desire for that would make their lives easier:
- A generic scan command with multi-axis support. Some of the axes they scan are composite axes (such as the
vgap
being a composite ofjaws_north
andjaws_south
). This needs to account for peculiarities of the axes, for example the values of the south jaws axis are inverted. Their current solution are custom VIs that convert between a composite axis and the underlying single axes. - A better way to pick values from the graphs. Currently this requires switching between multiple windows, for example to pick out the center of a scan from a bell curve the scientists have to:
- Run the scan from the scripting window
- Switch to the graph window.
- Hover with their mouse over the starting point of the curve and press "x" to add a label with the x-position on top of the graph (note that this may be illegible e.g. if the graph goes across it)
- Do the same for the end point of the curve
- Switch to a calculator window, manually enter the values, calculate the difference etc. to find the center point
- Switch back to the scripting window and set the result as a new center point.
- The scientists envision a solution where in the graphing window, they can just pick the value they want or drag across it to select a range, so that the values are automatically fed back into the scripting window.
- The scientists suggested that there is a lot of scope for speeding up the scanning itself, citing for example arbitrary wait times in the
waitfor_move
command - Some sort of live view for the neutrons coming in provided by the DAE. They said they don't need anything fancy, just the raw pixel data would do.
- Occasionally, when a Galil motor dies (e.g. when tripping a bumpstrip), the encoder is killed first leading to the position having slightly "jumped" when it comes back online, requiring re-alignment.
- Support for continuous scanning (rather than scanning in steps). The scientists say there are many factors that make this extremely complex to implement, but it is what they would like to see at some point in the future.