Table of Contents
Attempts to load information about the instrument from a ISIS raw file. In particular attempt to read L2 and 2-theta detector position values and add detectors which are positioned relative to the sample in spherical coordinates as (r,theta,phi)=(L2,2-theta,0.0). Also adds dummy source and samplepos components to instrument. If the L1 source - sample distance is not available in the file then it may be read from the mantid properties file using the key instrument.L1, as a final fallback a default distance of 10m will be used.
Name | Direction | Type | Default | Description |
---|---|---|---|---|
Workspace | InOut | MatrixWorkspace | Mandatory | The name of the workspace in which to store the imported instrument. |
Filename | Input | string | Mandatory | The filename (including its full or relative path) of an ISIS RAW file. The file extension must either be .raw or .s?? Allowed extensions: [‘.raw’, ‘.s*’] |
MonitorList | Output | int list | List of detector ids of monitors loaded into the workspace |
Attempts to load information about the instrument from a ISIS raw file. In particular, attempts to read L2 and 2-theta detector position values and add detectors which are positioned relative to the sample in spherical coordinates as (r,theta,phi)=(L2,2-theta,0.0). Also adds dummy source and samplepos components to instrument.
LoadInstrumentFromRaw is intended to be used as a child algorithm of other Load algorithms, rather than being used directly.
Example - Saving Some Pre-existing Data
Note
To run these usage examples please first download the usage data, and add these to your path. In MantidPlot this is done using Manage User Directories.
# Create a dummy ws containing arbitrary data, into which we will load the instrument.
ws = CreateSampleWorkspace("Histogram","Flat background")
det_id_list = LoadInstrumentFromRaw(ws, "LOQ48127.raw")
inst = ws.getInstrument()
print "The name of the instrument is \"%s\"." % inst.getName().strip()
print "The position of the source is %s." % str(inst.getSource().getPos())
print "The position of detector 5 is %s." % str(inst.getDetector(5).getPos())
print "Is detector 1 a monitor? " + str(inst.getDetector(1).isMonitor())
print "Is detector 8 a monitor? " + str(inst.getDetector(8).isMonitor())
Output:
The name of the instrument is "LOQ".
The position of the source is [0,0,-11].
The position of detector 5 is [0,0,-11.15].
Is detector 1 a monitor? True
Is detector 8 a monitor? False
Categories: Algorithms | DataHandling | Instrument | DataHandling | Raw