SPEC: X-ray Diffraction Software
This page contains a list of our Spec macros and what they do.
| airvalve.mac | Defines user_premove and user_postmove which opens and closes the air valve if the monochromator two theta motor is being moved. |
| all_macros.mac | This will load all important macros, meant to be run after Spec has been installed/reinstalled/or any like procedure that undefines all the macros. |
| ascan_fp.mac | A single motor scan at a fixed pressure. |
| dref.mac | Designed for measurements of reflectivity from monolayers on film balances Determines normalisation constant by one measurement below crit. edge Attempts to optimise counting time and step size bkgd is subtracted when specular signal is less than 1e-5 Tracks dose received by sample and moves whole trough (motor spare) when maxdose exceeded Specular signal is counted against detector, bkgd against monitor |
| fixpress_new.mac | Essentially the same as fixpress_reflec.mac |
| fixpress_reflec.mac | Determines if the trough barrier needs to be moved according to the current surface pressure, the goal surface pressure, and the tolerance. If the pressure is greater than the goal + tolerance, it moves the barrier back (to increase the area). If the pressure is less than the goal - tolerance, it moves the barrier forward (to decrease the area). |
| gid1.mac | Sets the reflectometer up for grazing incidence x-ray diffraction. It runs gid_setup, moves the reflectometer to Bragg reflection 0 0 .018 (hkl), the detector height and angle are then adjusted so the center of the beam is at the bottom of the detector slit (slit 4), then the detector two theta motor is moved to -1 degrees, all the attenuators are taken out, and finally performs a scan with the detector two theta. |
| gid_setup | Inserts attenuator #1 and #4 then opens the horizontal widths of slits 1 and 2 to .2 mm, and 4 to 16 mm. |
| iotech.mac | Defines iotech_reset to reset the Iotech box, atten_in/atten_out to insert or remove attenuators, atten_reset to open all attenuators, av_open/av_close to open/close the air valve. |
| isonew.mac | Defines macros to measure trough pressure (area_meaure), measure trough temperature (temp_measure), calculate trough area (area_calc), setup the isotherm macro (iso_setup), and run an isotherm (isotherm). |
| isostop.mac | Defines two macros: isostop and slewstop, both used to conduct an isotherm that will stop when the surface pressure reaches a given value. |
| iso_surf.mac | The same as isonew.mac, but tailored for use when the Surf computer is setup to work with the Brookhaven trough. |
| line.mac | Defines the line macro which performs an alignment at a Bragg reflection. It aligns sample height, monochromator tilt, detector two theta, and the detector height. It then reports the actual angle and resets the motor positions accordingly. |
| line1.mac | Defines line1 which is just like line but doesn't perform a monochromator tilt or detector two theta alignment. Also defines line2, for checks for total external reflection. |
| loopy.mac | Defines scan_loopy, called by all scans at each iteration. |
| lscan_fp.mac | Defines hklscan_fp and lscan_fp, designed to perform hkl scans at a fixed surface pressure. |
| lup_mtilt.mac | lup_mtilt - lines up monochromator tilt at a reflection. |
| macros.mac | |
| nite.mac | Performs a ref_setup, ref1, gid_setup, and gid1. |
| press.mac | Defines press to print current pressure and area, and temp to print the current temperature. |
| ref.mac | Defines ref to perform reflectivities. |
| ref1.mac | Defines ref1. Just like ref, but with a few modifications. |
| ref2.mac | ref2 - does a reflectivity from .32 to .5 inverse Angstroms. |
| ref_setup.mac | Defines ref_setup which inserts attenuators 1 and 4 then sets the horizontal widths of slits 1 and 2 to .1 mm and 4 to 1.0 mm. |
| setup_par.mac | Defines setup_par which prints the parameters of the current setup (e.g. lambda, the k vector, sample to monochromator distance, etc.). |
| setzero.mac | setzero sets mtth, mth, mtilt, and tth to their 0 0 0 (hkl) positions (but does not move them). |
| slewnew.mac | Redefines slewscan so it calls scan_loopy instead of scan_loop (due to a delay being in the wrong place). |
| slits.mac | Defines slits to print the current slit positions (motorized only), and sh1, sh2, sh4 which are used to open or close the horizontal spacing for slits 1, 2, and 4. |
















