-
Notifications
You must be signed in to change notification settings - Fork 122
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
46c9c07
commit 31c7526
Showing
2 changed files
with
383 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,378 @@ | ||
<?xml version="1.0" encoding="UTF-8"?> | ||
<instrument name="INTER" valid-from ="1900-01-31 23:59:59" | ||
valid-to ="2100-01-31 23:59:59" | ||
last-modified="2010-11-04 00:00:00"> | ||
<defaults> | ||
<length unit="meter" /> | ||
<angle unit="degree" /> | ||
<reference-frame> | ||
<along-beam axis="z" /> | ||
<pointing-up axis="y" /> | ||
<handedness val="right" /> | ||
</reference-frame> | ||
<default-view axis-view="z+"/> | ||
</defaults> | ||
|
||
|
||
<!-- Definition of instrument specific parameters for data reduction (e.g. wavelength cutoffs etc.) , could go into paramter file | ||
MonitorBackground= [7.6,8.5] | ||
MonitorsToCorrect=[1] | ||
PointDetectorStart=[0] # Note: Since we are removing the monitors in the load raw command they are not counted here. | ||
PointDetectorStop=[0] | ||
MultiDetectorStart=[1] | ||
I0MonitorIndex=1 | ||
--> | ||
|
||
<parameter name="MonitorBackgroundMin"> | ||
<value val="15.0"/> | ||
</parameter> | ||
|
||
<parameter name="MonitorBackgroundMax"> | ||
<value val="17.0"/> | ||
</parameter> | ||
|
||
<!-- here we need to add the other monitors --> | ||
<parameter name="MonitorsToCorrect"> | ||
<value val="1"/> | ||
</parameter> | ||
|
||
<parameter name="PointDetectorStart"> | ||
<value val="0"/> | ||
</parameter> | ||
|
||
<parameter name="PointDetectorStop"> | ||
<value val="0"/> | ||
</parameter> | ||
|
||
<parameter name="MultiDetectorStart"> | ||
<value val="6"/> | ||
</parameter> | ||
|
||
<parameter name="I0MonitorIndex"> | ||
<value val="2"/> | ||
</parameter> | ||
|
||
<parameter name="LambdaMin"> | ||
<value val="1.0"/> | ||
</parameter> | ||
|
||
<parameter name="LambdaMax"> | ||
<value val="17.0"/> | ||
</parameter> | ||
|
||
|
||
|
||
<!-- BRIEF DESCRIPTION OF Inter INSTRUMENT: | ||
Here Z=0 is defined by the neutron beam which slopes down at 2.3 deg. | ||
from the horizon. This description is based on data provided by Tim | ||
Charlton and Rob Dalgliesh. | ||
Note from Tim spreedsheet | ||
theta is a rotation about the y axis | ||
phi is a rotation about the x axis | ||
chi is a rotation about the z axis | ||
Noticed the face of the monitors/detector shapes that faces the | ||
beam/sample path is in this IDF defined to be the y-z plane. | ||
Note the status of the instrument during a run is stored in the | ||
logfile RunNo_status.txt | ||
--> | ||
|
||
|
||
<!-- LIST OF PHYSICAL COMPONENTS (which the instrument consists of) --> | ||
|
||
<!-- detector components (including monitors) --> | ||
|
||
<component type="monitor1" idlist="monitor1"> | ||
<location z="6.96" mark-as="monitor" /> | ||
</component> | ||
|
||
<type name="monitor1" is="detector"> | ||
<!-- Shape specified at least big enough to cover the beam which | ||
is 10mm high and 40mm wide. Note it is described as tube, hence | ||
the choice of a cylinder shape. | ||
--> | ||
<percent-transparency val="95" /> | ||
<cylinder id="shape"> | ||
<centre-of-bottom-base z="0.0" x="-0.02" y="0.0" /> | ||
<axis z="0.0" x="1.0" y="0.0" /> | ||
<radius val="0.01" /> | ||
<height val="0.04" /> | ||
</cylinder> | ||
<algebra val="shape" /> | ||
</type> | ||
|
||
<component type="monitor2" idlist="monitor2"> | ||
<location z="13.791" mark-as="monitor" /> <!-- x = 23.0-5.05 --> | ||
</component> | ||
|
||
<type name="monitor2" is="detector"> | ||
<!-- Shape specified as a minimum needs to cover the beam which | ||
is 10mm high and 40mm wide. The 'top' shape is included to | ||
more easily recognise this monitor when visualised in MantidPlot. | ||
This monitor is suppose to look a bit like a German hand grenade. | ||
--> | ||
<percent-transparency val="95" /> | ||
<cuboid id="base"> | ||
<left-front-bottom-point z="0.04" x="-0.02" y="-0.01" /> | ||
<left-front-top-point z="0.04" x="-0.02" y="0.01" /> | ||
<left-back-bottom-point z="-0.04" x="-0.02" y="-0.01" /> | ||
<right-front-bottom-point z="0.04" x="0.02" y="-0.01" /> | ||
</cuboid> | ||
|
||
<cylinder id="top"> | ||
<centre-of-bottom-base z="0.0" x="0.0" y="0.01" /> | ||
<axis z="0.0" x="0.0" y="1.0" /> | ||
<radius val="0.02" /> | ||
<height val="0.04" /> | ||
</cylinder> | ||
|
||
<algebra val="base : top" /> | ||
</type> | ||
|
||
<component type="monitor3" idlist="monitor3"> | ||
<location z="16.785" mark-as="monitor" /> <!-- 23.0-0.425 --> | ||
</component> | ||
|
||
<type name="monitor3" is="detector"> | ||
<!-- Shape specified as a minimum needs to cover the beam which | ||
is 10mm high and 40mm wide. The 'top' shape is included to | ||
more easily recognise this monitor when visualised in MantidPlot. | ||
This monitor is suppose to look a bit like a German hand grenade. | ||
--> | ||
<percent-transparency val="95" /> | ||
<cuboid id="base"> | ||
<left-front-bottom-point z="0.04" x="-0.02" y="-0.01" /> | ||
<left-front-top-point z="0.04" x="-0.02" y="0.01" /> | ||
<left-back-bottom-point z="-0.04" x="-0.02" y="-0.01" /> | ||
<right-front-bottom-point z="0.04" x="0.02" y="-0.01" /> | ||
</cuboid> | ||
|
||
<cylinder id="top"> | ||
<centre-of-bottom-base z="0.0" x="0.0" y="0.01" /> | ||
<axis z="0.0" x="0.0" y="1.0" /> | ||
<radius val="0.02" /> | ||
<height val="0.04" /> | ||
</cylinder> | ||
|
||
<algebra val="base : top" /> | ||
</type> | ||
|
||
|
||
|
||
<component type="point-detector" idlist="point-detector"> | ||
|
||
<location z="19.700" /> <!-- x= 23.0+2.6 --> | ||
|
||
<!-- Link to log file that stores the z position. This angle can be used to | ||
calculate the z position since the distance along the x-axis between | ||
the sample and this detector is known (2.6m). Also theta in the logfile is | ||
assumed to in degrees, hence the reason for the pi/180=0.0174533 transformation | ||
to radians factor in the eq attribute. | ||
This calculation becomes more complex due to the detector table and height stage above it. | ||
It should be revisited when the log files become more stable. | ||
We may actually want to draw in the table for clarity. | ||
--> | ||
<parameter name="y"> | ||
<logfile id="theta" eq="2.6*sin(value*0.0174533)" extract-single-value-as="last_value"/> | ||
</parameter> | ||
|
||
</component> | ||
|
||
<type name="point-detector" is="detector"> | ||
<!-- Not exactly sure about the dimensions of this one. But pretty sure | ||
it at least covers the beam. Also, just in front of it is a slit which | ||
at the end of day will determine which neutrons get through to this | ||
detector I believe. | ||
--> | ||
<cuboid id="shape"> | ||
<left-front-bottom-point z="0.01" x="-0.02" y="-0.005" /> | ||
<left-front-top-point z="0.01" x="-0.02" y="0.005" /> | ||
<left-back-bottom-point z="-0.01" x="-0.02" y="-0.005" /> | ||
<right-front-bottom-point z="0.01" x="0.02" y="-0.005" /> | ||
</cuboid> | ||
<algebra val="shape" /> | ||
</type> | ||
|
||
|
||
<component type="point-detector2" idlist="point-detector2"> | ||
|
||
<location z="19.700" /> <!-- x= 23.0+2.6 --> | ||
|
||
<!-- Link to log file that stores the z position. This angle can be used to | ||
calculate the z position since the distance along the x-axis between | ||
the sample and this detector is known (2.6m). Also theta in the logfile is | ||
assumed to in degrees, hence the reason for the pi/180=0.0174533 transformation | ||
to radians factor in the eq attribute. | ||
This calculation becomes more complex due to the detector table and height stage above it. | ||
It should be revisited when the log files become more stable. | ||
We may actually want to draw in the table for clarity. | ||
--> | ||
<parameter name="y"> | ||
<logfile id="Theta" eq="2.7*sin((value+1)*0.0174533)" extract-single-value-as="last_value"/> | ||
</parameter> | ||
|
||
</component> | ||
|
||
<type name="point-detector2" is="detector"> | ||
<!-- Not exactly sure about the dimensions of this one. But pretty sure | ||
it at least covers the beam. Also, just in front of it is a slit which | ||
at the end of day will determine which neutrons get through to this | ||
detector I believe. | ||
--> | ||
<cuboid id="shape"> | ||
<left-front-bottom-point z="0.01" x="-0.02" y="-0.005" /> | ||
<left-front-top-point z="0.01" x="-0.02" y="0.005" /> | ||
<left-back-bottom-point z="-0.01" x="-0.02" y="-0.005" /> | ||
<right-front-bottom-point z="0.01" x="0.02" y="-0.005" /> | ||
</cuboid> | ||
<algebra val="shape" /> | ||
</type> | ||
|
||
|
||
|
||
<!-- ################################### --> | ||
<component type="panel" idstart="2001" idfillbyfirst="y" idstep="1" idstepbyrow="1"> | ||
<location z="20.200" name="linear-detector"/> | ||
<parameter name="y"> | ||
<logfile id="Theta" eq="3.2*tan(value*0.0174533)-46*0.0012" extract-single-value-as="last_value"/> | ||
</parameter> | ||
|
||
</component> | ||
|
||
<type name="panel" is="rectangular_detector" type="linear-detector-pixel" | ||
xpixels="1" xstart="0.0" xstep="0.05" | ||
ypixels="243" ystart="y" ystep="+0.0012" > | ||
<properties/> | ||
</type> | ||
<!--"-0.0576"--> | ||
<type name="linear-detector-pixel" is="detector"> | ||
<cuboid id="shape"> | ||
<left-front-bottom-point z="0.01" x="-0.025" y="-0.0006" /> | ||
<left-front-top-point z="0.01" x="-0.025" y="0.0006" /> | ||
<left-back-bottom-point z="-0.01" x="-0.025" y="-0.0006" /> | ||
<right-front-bottom-point z="0.01" x="0.025" y="-0.0006" /> | ||
</cuboid> | ||
<algebra val="shape" /> | ||
</type> | ||
|
||
|
||
<!-- source and sample-position components --> | ||
|
||
<component type="source"> | ||
<location /> | ||
</component> | ||
|
||
<type name="source" is="Source"> | ||
<properties> | ||
40mm(H) x 60mm(W) | ||
</properties> | ||
</type> | ||
|
||
|
||
<component type="some-surface-holder"> | ||
<!-- worry about linking relevant logfiles for y,z,theta,phi up later --> | ||
<location z="17.037"/> | ||
</component> | ||
|
||
<type name="some-surface-holder" is="SamplePos"> | ||
</type> | ||
|
||
|
||
<!-- other components --> | ||
|
||
<!-- Must change the distances below to match polref --> | ||
|
||
<component type="slit1"> | ||
<location z="15.200"/> <!-- x= 23.0 - 4.710 --> | ||
<!-- This log file stores the vertical opening of slit --> | ||
<parameter name="opening height"> | ||
<logfile id="s1" extract-single-value-as="position 1" /> | ||
</parameter> | ||
</component> | ||
|
||
<component type="slit2"> | ||
<location z="16.700"/> <!-- x=23.0 - 0.590 --> | ||
<!-- This log file stores the vertical opening of this. Note this | ||
slit can also be translated in the z. However this info not stored | ||
in log file since it is not used in the data analysis process. --> | ||
<parameter name="opening height"> | ||
<logfile id="s2" extract-single-value-as="position 1" /> | ||
</parameter> | ||
</component> | ||
|
||
<component type="slit3"> | ||
<location z="18.200"/> <!-- x=23.0+0.960 --> | ||
<!-- This log file stores the vertical opening of slit --> | ||
<parameter name="opening height"> | ||
<logfile id="s3" extract-single-value-as="position 1" /> | ||
</parameter> | ||
</component> | ||
|
||
<component type="slit4"> | ||
<location z="19.700"/> <!-- x=23.0+2.445 --> | ||
<!-- This log file stores the vertical opening of slit. Note this slit | ||
is fixed to the point detector. --> | ||
<parameter name="opening height"> | ||
<logfile id="s4" extract-single-value-as="position 1" /> | ||
</parameter> | ||
</component> | ||
|
||
<type name="slit1"></type> | ||
<type name="slit2"></type> | ||
<type name="slit3"></type> | ||
<type name="slit4"></type> | ||
|
||
|
||
|
||
<component type="supermirror"> | ||
<!-- Worry about linking relevant logfiles for z,theta up later --> | ||
<location z="28.52"/> <!-- x=32.0-3.480 --> | ||
</component> | ||
|
||
<type name="supermirror" /> | ||
|
||
|
||
|
||
|
||
<!-- DETECTOR and MONITOR ID LISTS --> | ||
|
||
|
||
|
||
<idlist idname="monitor1"> | ||
<id val="1" /> | ||
</idlist> | ||
|
||
<idlist idname="monitor2"> | ||
<id val="2" /> | ||
</idlist> | ||
|
||
<idlist idname="monitor3"> | ||
<id val="3" /> | ||
</idlist> | ||
|
||
<idlist idname="point-detector"> | ||
<id val="4" /> | ||
</idlist> | ||
|
||
<idlist idname="point-detector2"> | ||
<id val="5" /> | ||
</idlist> | ||
<!-- | ||
<idlist idname="linear-detector"> | ||
<id start="2001" end="2240" /> | ||
</idlist> | ||
--> | ||
</instrument> | ||
|