[h] [k] [l] are the hkl values. Parameters of the sample lattice will be set as follows:
A will be set equal to [h]*[lattice constant]/[length]
B will be set equal to [k]*[lattice constant]/[length]
C will be set equal to [l]*[lattice constant]/[length]
[length] is the square root of the sum of squares of [h], [k], and [l]
Alternatively, the user specify combination of symbols A, B and C as parameter of AcceptLattice. A B C refer to lattice vectors A, B and C. The corresponding parameter(s) of the sample lattice will be redefined to the lattice constant determined by the last findpeak command.
Calculate lattice constant from the last findpeak if available. Assumes a cubic lattice.
Redefines lattice parameters a,b and/or c based on the results of the last peak scan on A4 or A3/A4. Typically this command is queued right after a peak scan is initiated to automatically changed the lattice constants. NOTE: At least one peak scan on A3 or A3/A4 must have been run since the server started or else this command will fail.
Sets the position of the [ThetaDevice] so that it is equal to half of the position of the [TwoThetaDevice].
Returns FindPeak lattice conversion value. Values lesser than zero indicate that lattice parameter has not been set.
In addition to general instrument commands, the following commands can be used to view and modify triple-axis instrument state.
Instrument Getana
Instrument Getanaspacing
Instrument Getmono
Instrument Getmonospacing
Instrument Setanaspacing
Instrument Setmonospacing
TwoThetaDevice is a name of the device representing the two-theta device.
TwoThetaPosition is a float representing the target position of TwoThetaDevice.
ThetaDevice is a name of the device that will be moved together with TwoThetaDevice by a ratio 1:2.
MoveBragg A4 41 A3
Drives angle A4 to 41 degrees and angle A3 to Pos3 + (41 - Pos4)/2, where Pos3 and Pos4 are current locations of angles A3 and A4, respectively.
Drives angles A1 through A6 to given energy and HKL positions. Note that lattice and orientation parameters are determined by previously executed Sample and Scan commands.
H is a value defining a point in reciprocal space.
K is a value defining a point in reciprocal space.
L is a value defining a point in reciprocal space.
Et is a value for the energy transfer.
Etype is either i or f specifying that initial(i) or final(f) energy is fixed.
Efixed is a value for the selected energy.
Usage: QScan [h_i] [k_i] [l_i] [h_f] [k_f] [l_f] [monitor counts] [h step] [k step] [l step]
[h_i], [k_i], and [l_i] . are the initial reciprocal lattice points for the scan.
[h_f], [k_f], and [l_f] . are the final reciprocal lattice points for the scan.
[monitor counts] . is the number of monitor counts to count per point.
[h step], [k step], and [l step] . are the step sizes in each reciprocal lattice direction for the scan.
Sample GetDescr
Sample GetLattice
Sample GetOrient
Sample Info
Sample SetDescr
Sample SetLattice
Sample SetOrient
Display in the console the information about sample including sample orientation, lattice and description.
Sets or modifies parameters that determine the structure of the crystal lattice of the sample.
Scans are described as an instrument state or a sequence of states at which measurements are made. Virtual devices and sample environment devices can be used in scan description just like any other device.
The following commands can be used to do manipulations on scans and scan lists.
Scan AppendList
Scan Automon
Scan ChkOverwrite
Scan ClearList
Scan CurrentToList
Scan Delete
Scan DeleteIndex
Scan Descr
Scan DescrToList
Scan DryRun
Scan FromFile
Scan Howlong
Scan InitScan
Scan List
Scan ListBackup
Scan ListCopy
Scan ListDescr
Scan Load
Scan LoadList
Scan Modify
Scan Operation
Scan Progress
Scan Resume
Scan Run
Scan ScanOn
Scan Set
Scan SetPoint
Scan Stop
Scan ThinLoad
A string describing a scan is used to transfer the scan information between processes. This string is parsed and translated into a sequence of instrument states.
In some cases, additional parameters might be needed for the scan description to be complete. For example, when defining a scan in terms of Q and E, the following parameters have to be included in the description:
Choice of fixed energy: initial (monochromator) or final (analyzer)
Value of fixed energy [meV]
Energy transfer list or initial value (the convention is E = Einitial – Efinal) [meV]
H, K and L list or initial value
In addition, some scans might require server parameters to be set. For example, a scan defined in terms of Q and E will require the following server parameters to be set already:
Monochromator and analyzer d-spacings [Å]
Two orientation vectors
Lattice parameters (a, b, c, α, β, γ)
Example: Scan:Title=”QA4”:Fixed=0:FixedE=14.7:CountType=Time:Counts=10: Npts=5:Range=E=0.1 0:Range=Q=1~0~0 0~0.1~0:Range=A4= 21 1
The description string should always start with the word Scan. Colons separate tokens and values in a list are separated by a space. Each token is made of a field descriptor following by an equal (=) sign and one or several values. The list of available field descriptors is:
Title: Title of the scan.
Type: Scan type. Can be supplied as an integer or a string. See below for discussion.
Fixed: Sets the energy to fix: 0=monochromator, 1=analyzer.
FixedE: Sets the value of the fixed energy [meV].
Counts: The number of counts for the point.
CountType: The device that will be used to count.
DetectorType: The device that will be used to accumulate the data. This tag only needs to be supplied to select the data to be sent to Xpeek and to specify meta data in the data file. No information will be lost by omitting this tag.
Prefac: Gives a multiplication factor for the number of counts.
Npts: The number of points in the scan.
Range: The functional relation between the scan points for a given device. The format is Range=[device name]=[central position] [increment]. Alternatively, it is possible to define a scan range the following way: Range=[device name]=[start] [stop] S. An “S” at the end of the string indicates that we are using start and stop positions. An I at the end means that the scan specifies initial, step, number of points.
The Range token can be used to specify any value, including Q and E. Values that are constant throughout the scan can also be specified with a zero increment.
Dev: As an alternative to Range, the complete list of values to be visited can be supplied: Dev=[device name]=value1 value2 value3…
Timeout: Time after which the preset counter will be stopped regardless of whether it has reached its preset value.
HoldPoint: Holding time before the preset counter is started at each point.
HoldScan: Holding time before the preset counter is started for the first point of a scan.
Npts2: Number of points of the second dimension in a 2D scan.
Range2: The functional relation between the scan points for a given device used in the second dimension of a 2D scan.
Comment: The user can enter a comment here.
Filename: Specifies a string to be added at the beginning of the data file name.
Any additional tokens can be appended to the scan description as meta data. These additional tokens must be separated by colons.
Scans in ICE are stored in a list in memory. The scan descriptions contained in the list are available to users to run on an instrument. In order to save scans for repeated uses over time, the scan list must be backed up to disk. Several commands exist for manipulating the scan list and moving its contents to and from disk.
Appends scans from a given file to the scan list.
Note that this can lead to entries in the current scanlist being overwritten. Use Scan ChkOverwrite to see which scans would be overwritten.
Filename is the name of the file content of which will be appended to the scan list.
Estimates the number of monitor counts needed to make the scan run for a given amount of time. This function uses SCAN HOWLONG and scales the monitor counts according to the desired running time.
The Rate command should be run before Scan Automon. If it has not been run when Scan Howlong is run, it will be run automatically before a result is given, unless a scan is in progress, in which case the command will fail.
Returns the list of scans which would be overwritten by loading a list of scans from a file. See also Scan LoadList and Scan AppendList commands.
Clears out all scans currently in the scan list. If those scans have not been backed up, they will be lost.
Puts the current scan description in the scan list on the server under a specified name. Note that if a target scan already exists in the list, it will be replaced.
Puts a given scan description into the scan list, under the given name. Note that if a target scan already exists in the list, it will be replaced.
Name is the name to use for the scan.
Description is a properly formatted scan description.
Dry runs a given the current scan by calculating device positions for each point in a scan. Each device position is then checked for validity such as being within preset limits. If scan name not given, dry runs the current scan.
Runs a scan taken from an already existing data file. The scan description stored in the data file is loaded and run.
The user can specify a new name for the scan; otherwise the scan will have the same name as in the data file.
Datafile is a name of the data file to read.
Scanname is a name to give the scan when loaded.
Computes the duration of a scan. If scan counts against Time, the duration of the scan will be set to the number of counts multiplied by the prefactor.
If scan counts against Monitor counts, a 3rd degree polynomial parameterization of the monitor rate as a function of an instrument-specific device will be used to estimate the rate at each point of the scan. The monitor rate predicted by the parameterization is scaled according to the stored monitor rate and the value of device it was measured at.
The Rate command should generally be run before Scan Howlong. If it has not been run when Scan Howlong for scans using monitor counts is run, Rate will be run automatically before a result is given.
Instructs to return the result in seconds. Otherwise it will be in hours.
Sets a default overhead, in seconds, that will be added to the time for each point. If there is a device with a higher movement overhead than the specified overhead, then that device's overhead will be added instead.
See also: Device GetOverhead and Device SetOverhead commands.
Execution behavior: Immediate.
Initializes the current scan and sets it to its first point. If the scan is already running, it will finish processing current point and will be re-initialized.
Copy an entry in the scan list pointed by Source into the entry pointed by Destination. Note that if Destination already exists in the list, it will be replaced.
Retrieves the description of a given scan from the server.
For given scan name, the system reads the current scan description and appends it to the queue for future execution. The user may change scan description later without altering the already queued scan. The user may load multiple scans with the same name and different descriptions.
Replaces the scan list with the list from a given file. See also Scan ListBackup command.
Description is a properly formatted scan description.
Allows the user to apply changes to descriptions of several scans at once. This command will replace the values of specified scan parameters in the scan description with the values given by the user. If a certain scan parameter has not yet been defined for given scans, the parameter will be added.
Note that this command is intended for advanced users. The system will not prevent you from making changes which lead to invalid or inconsistent scans. See "Notes and Warnings" section below.
Name1,Name2,... is a list of individual scan names to which changes will be applied. The list should be separated by commas and contain no spaces.
Changes is a list of settings for scan keyword attributes. Each attribute is an attribute name followed by the equals sign and a value. Different attributes are separated by commas. See Scan for definition of scan attributes.
Scan Operation testscan,realscan Counts=100,Angle=Temp=200
Changes scans testscan and realscan by setting the number of counts to 100 seconds and moving temperature device to 200.
Notes and Warnings: This command does not protect against breaking scans.
See also: scan description format.
Executes a given scan. Unless Scan Load command was used before Scan Run to copy scan definition to the queue for execution, Scan Run command will use the most recent scan version. Changes made to scan definition after execution begins will not have any effect.
Command Scan Runscan is equivalent to Scan Run.
Sets current scan to a given scan description.
This command cannot be run if there is a scan in progress.
Description is a properly formatted scan description.
UB AddPeakSet
UB CalcDestination
UB CalcHKL
UB Calculate
UB DeletePeakSet
UB ExcludePeakSet
UB GetEnergyTolerance
UB IncludePeakSet
UB InvalidatePrimary
UB ModifyPeakSet
UB Print
UB PrintUBMatrix
UB SetEnergyTolerance
UB SetLatticeFixed
UB SetPrimary
UB SetRefPlane
Adds a new peak set to the UB Matrix. Return value is the ID by which the user may further refer to the submitted peak.
Back calculates HKL position from user specified positions of Sample Theta (A3), Sample Two Theta (A4) and both sample tilts.
A3 is the hypothetical position of sample theta from which to calculate HKL. A4 is the hypothetical position of sample two theta from which to calculate HKL. LTilt is the hypothetical position of lower sample tilt from which to calculate HKL. UTilt is the hypothetical position of upper sample tilt from which to calculate HKL.
ID is an identifier returned from UB AddPeakSet command.
ID is an identifier returned from UB AddPeakSet command.
Returns the tolerance for difference between Ei and Ef to calculate UB Matrix. If Ei and Ef differ by more than this tolerance, the UB Matrix cannot be calculated.
ID is an identifier returned from UB AddPeakSet command.
ID is an identifier returned from UB AddPeakSet command.
Prints an XML string which contains all UB settings, including sample lattice and peak sets.
Prints the UB Matrix and peakset information that is being used by the server. If no UB Matrix has been computed, then only peakset information is printed.
Sets the tolerance for difference between Ei and Ef to calculate UB Matrix. If Ei and Ef differ by more than this tolerance, the UB Matrix cannot be calculated.
ID is an identifier returned from UB AddPeakSet command.