PSI sics-cvs-psi-complete-tree-post-site-support
This commit is contained in:
151
doc/user/autocloud.htm
Normal file
151
doc/user/autocloud.htm
Normal file
@ -0,0 +1,151 @@
|
||||
<HTML>
|
||||
<HEAD>
|
||||
<TITLE>Autocloud</TITLE>
|
||||
</HEAD>
|
||||
<BODY>
|
||||
<H1>Autocloud</H1>
|
||||
<P>
|
||||
With the advent of position sensitive detectors in X-ray and neutron
|
||||
diffraction the problem arises how integrated reflection intensities
|
||||
may be extratcted from the collected volumes of data. Typically a
|
||||
series of frames is measured while rotating the crystal under
|
||||
investigation in omega. Autocloud implements a novel approach for the
|
||||
extraction of reflection intensities from such data. Other currently
|
||||
used integration packages use a UB-matrix to predict the position of a
|
||||
reflection on the detector and then integrate the intensity in a box
|
||||
around the predicted position. In contrast autocloud tries to
|
||||
determine reflection
|
||||
positions and intensities directly from the data. In order to do so a
|
||||
template matching algorithm is used. One advantage of this approach is
|
||||
that crystals with magnetic or incommensurate structures can be easily
|
||||
analysed. Typically packages for intensity integration do not have
|
||||
facilities for predicting such reflections. The other advantage is ease
|
||||
of use. Data analysis with autocloud requires only two steps:
|
||||
Integration followed by indexing.
|
||||
</P>
|
||||
|
||||
<h2>Running Autocloud</h2>
|
||||
<p>
|
||||
The syntax is:
|
||||
<pre>autocloud options datafile
|
||||
</pre>
|
||||
The following options are known:
|
||||
<dL>
|
||||
<dt>-a val
|
||||
<dd>Selects the algorithm to use. The following algorithms are
|
||||
currently supported:
|
||||
<dl>
|
||||
<dt>max
|
||||
<dd>perform only a local maximum search
|
||||
<dt>template
|
||||
<dd>Perform template matching. This is the default.
|
||||
<dt>cross
|
||||
<dd>Perform template matching using the cross correlation function.
|
||||
</dl>
|
||||
<dt>-b AAxBBxCC
|
||||
<dd>For the evaluation of the initial template a preliminary box size
|
||||
is needed. This can be specified through this option. Three values
|
||||
separated by the character 'x' are required, one for each dimension in
|
||||
the order x, y, z.
|
||||
<dt>-d val
|
||||
<dd>After the correlation of the data volume with the template another
|
||||
maximum search is started in order to locate the reflections. In order
|
||||
to suppress spurious peaks, a minimum steepness of the candidate peak
|
||||
can be set with the -d option.
|
||||
<dt>-e val
|
||||
<dd>Some systems store frames a single files. With the -e option the
|
||||
end file number of the frame files can be set.
|
||||
<dt>-m val
|
||||
<dd>When the maximum search only option is set a, a threshold is
|
||||
required for suppressing spurious peaks. This threshold can be set
|
||||
with the -m option.
|
||||
<dt>-o file
|
||||
<dd>Redirects output to the file name specified. By default all output
|
||||
is written to stdout.
|
||||
<dt>-s val
|
||||
<dd>Some systems store frames a single files. With the -s option the
|
||||
start file number of the frame files can be set.
|
||||
<dt>-t type
|
||||
<dd>This option sets the type of the data file. Currently understood
|
||||
are:
|
||||
<dl>
|
||||
<dt>sxd
|
||||
<dd>For NeXus data from SXD at ISIS.
|
||||
<dt>trics
|
||||
<dd>For NeXus data files from TRICS, SINQ
|
||||
<dt>debug
|
||||
<dd>An internal format used during software testing.
|
||||
</dl>
|
||||
<dt>-v val
|
||||
<dd>Increases the verbosity of the output.
|
||||
</dl>
|
||||
</p>
|
||||
|
||||
<h2>The Autocloud Algorithm</h2>
|
||||
<p>
|
||||
The autocloud algorithm has the following steps:
|
||||
<ol>
|
||||
<li>Location of strong peaks for template evaluation.
|
||||
<li>Background Subtraction.
|
||||
<li>Evaluation of a template for volume matching.
|
||||
<li>Correlation of the template with the data volume.
|
||||
<li>Location of maxima in the correlated data.
|
||||
<li>Integration of the reflections found.
|
||||
</ol>
|
||||
</p>
|
||||
<h3>Location of Strong Peaks for Template Evaluation</h3>
|
||||
<p>
|
||||
This is basically a local maximum detection scheme. A local maxima
|
||||
must be the strongest intensity within a 7 by 7 by 7 volume. All
|
||||
maxima smaller then 10% of the largest maximum found are discarded.
|
||||
</p>
|
||||
|
||||
<h3>Background Subtraction</h3>
|
||||
<p>
|
||||
Background subtraction is done with essentially the same algorithm XDS
|
||||
uses. For each x, y coordinate in the frame values are summed along
|
||||
the third dimension. Points belonging to a local maimum are
|
||||
excluded. The background
|
||||
for this x,y coordinate is then the average of the values
|
||||
summed. The data volume is then corrected for the background with
|
||||
these values. This works well as long as the assumption holds that the
|
||||
background varies mostly across the detector and not much with the
|
||||
third dimension.
|
||||
</p>
|
||||
|
||||
<h3>Template Evaluation</h3>
|
||||
<p>
|
||||
The template to be used for template matching later on is calculated
|
||||
by summing all local maxima first. Then the limits of the reflection
|
||||
are calculated for each scanline using the Lehmann-Larsen
|
||||
algorithm. The reflection thus found is scaled to a value of 1 and
|
||||
used as the template.
|
||||
</p>
|
||||
|
||||
<h3>Template Matching</h3>
|
||||
<p>
|
||||
For the actual correlation of the template with the data two variantes
|
||||
can be used: Normal simple correlation or cross correlation.
|
||||
</p>
|
||||
|
||||
<h3>Peak Detection</h3>
|
||||
<p>
|
||||
This is again a local maximum detection within a 7 by 7 by 7
|
||||
box. Another criterium for the supression of wrong identifications is
|
||||
a minimum steepness. This means that the candidate local maximum must
|
||||
at least be higher by a certain amount (the steepness) then the points
|
||||
at the border of its 7 by 7 by 7 box.
|
||||
</p>
|
||||
|
||||
<h3>Peak Integration</h3>
|
||||
<p>
|
||||
A scale factor is calculated for each candidate reflection between the
|
||||
data and the template. The intensity is derived from this scale factor
|
||||
and the standard deviation is calculated as the squared difference
|
||||
between the scaled template and the data. This scheme is the same as
|
||||
learnt profile fitting as described by Ford for the 1- and 2d cases.
|
||||
</p>
|
||||
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
@ -36,7 +36,19 @@ system for instance file names are case sensitive and that had to be
|
||||
preserved. Commands defined in the scripting language are lower case by
|
||||
convention.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Most SICS objects also hold the parameters required for their proper
|
||||
operation. The general syntax for handling such parameters is:
|
||||
<pre>
|
||||
objectname parametername
|
||||
</pre>
|
||||
prints the current value of the parameter
|
||||
</p>
|
||||
<pre>
|
||||
objectname parametername newvalue
|
||||
</pre>
|
||||
sets the parameter value to newvalue if you are properly authorized.
|
||||
</p>
|
||||
<h3>Authorisation</h3>
|
||||
<p>
|
||||
A client server system is potentially open to unauthorised hackers
|
||||
|
@ -27,6 +27,8 @@ Log files are written to the log directory of the instrument account. There
|
||||
are time stamps any hour in that file and there is a new file any 24 hours.
|
||||
<DT>commandlog tail <i>[n]</i>
|
||||
<DD>prints the last n entries made into the command log. n is optional and defaults to 20. Up to 1000 lines are held in an internal buffer for this command.
|
||||
<DT>commandlog intervall
|
||||
<DD>Queries and configures the intervall in minutes at which time stamps are written to the commandlog.
|
||||
</DL>
|
||||
It is now possible to have a script executed whenever a new log file is
|
||||
started. In order to make this work a ServerOption with the name logstartfile
|
||||
|
@ -21,9 +21,6 @@ manually from the command line through the following commands:
|
||||
is minutes.
|
||||
<DT>storefocus intervall newval
|
||||
<DD>Sets the update intervall to newval minutes.
|
||||
<DT>killfile
|
||||
<DD>This command will overwrite the last data file written and thus
|
||||
effectively erase it. Therefore this command requires manager privilege.
|
||||
</DL>
|
||||
FOCUS has three detector banks which may not all be active at all
|
||||
times. Thus a way is needed to tell SICS about the configuration of
|
||||
|
@ -74,16 +74,14 @@ for its number type.
|
||||
<LI>Count. As Ceil, but a list of overflowed bins will be maintained.
|
||||
</UL>
|
||||
<DT> Rank
|
||||
<DD> Rank defines the number of histograms in memory.
|
||||
<DT> Length
|
||||
<DD> gives the length of an individual histogram.
|
||||
<DD> Rank defines the number of dimensions the detector has, minus the time channle when applicable. 1 is a linear detector, 2 a area detector etc.
|
||||
<DT> BinWidth
|
||||
<DD> determines the size of a single bin in histogram memory in bytes.
|
||||
<DT>dim0, dim1, dim2, ... dimn
|
||||
<DD>define the logical dimensions of the histogram. Must be set if the
|
||||
the sum command (see below) is to be used. This is a clutch necessary to
|
||||
cope with the different notions of dimensions in the SINQ histogram memory
|
||||
and physics.
|
||||
<DD>define the logical dimensions of the histogram.
|
||||
<dt>extrachan
|
||||
<dd>Extra time channels as used at AMOR and SANS for time-of-flight
|
||||
monitors. They get appended to the main hm data but are treated separately.
|
||||
</DL>
|
||||
</p>
|
||||
<p>
|
||||
@ -126,6 +124,8 @@ will be generated starting from start with a stepwidth of step (example: HM genb
|
||||
configured with this command. The time bin iNum is set to the value value.
|
||||
<DT>HM clearbin
|
||||
<DD>Deletes the currently active time binning information.
|
||||
<dt>HM notimebin
|
||||
<dd>returns the number of currently configured timebins.
|
||||
</DL>
|
||||
</p>
|
||||
|
||||
@ -150,6 +150,10 @@ transfer the configuration from the host computer to the actual HM.
|
||||
<DD> starts counting using the currently active values for CountMode and
|
||||
preset. This command does not block, i.e. in order to inhibit further
|
||||
commands from the console, you have to give Success afterwards.
|
||||
<DT>HM countblock
|
||||
<DD> starts counting using the currently active values for CountMode and
|
||||
preset. This command does block, i.e. you can give new commands only when
|
||||
the counting operation finishes.
|
||||
<DT>HM initval <i>val</i>
|
||||
<DD> initialises the whole histogram memory to the value val. Ususally 0 in
|
||||
order to clear the HM.
|
||||
@ -164,3 +168,5 @@ allow to retrieve a subset of a histogram between iStart and iEnd.
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
|
||||
|
@ -53,6 +53,17 @@ Optionally a psi value and a hamilton position can be specified.
|
||||
the motors to drive to that position. This command will wait for the
|
||||
diffractometer to arrive at the setting angles requested.
|
||||
Optionally a psi value and a hamilton position can be specified.
|
||||
<dt>hkl hm
|
||||
<dd>Retrieves the value of the histogram memory flag.
|
||||
<dt>hkl hm val
|
||||
<dd>Sets the histogram memory flag to val. This is a special for
|
||||
TRICS. TRICS has three detectors at 0, 45, 90 degree offset to two
|
||||
theta. If this flag is greater 0, hkl checks if the reflection to be
|
||||
calculated is on any of the three detectors and calculates two theta
|
||||
accordingly.
|
||||
<dt>hkl fromangles two-theta om chi phi
|
||||
<dd>Calculates hkl from the angles given on the command line using the
|
||||
current UB matrix and wavelength.
|
||||
</DL>
|
||||
</p>
|
||||
|
||||
|
@ -3,10 +3,14 @@
|
||||
<TITLE>Hklscan</TITLE>
|
||||
</HEAD>
|
||||
<BODY>
|
||||
<H1>Hklscan</H1>
|
||||
<H1>Hklscan and Hklscan2d</H1>
|
||||
<P>
|
||||
Hklscan is a command which allows to scan in reciprocal space expressed as
|
||||
Miller indizes on a four circle diffractometer. Prerequisite for this is
|
||||
Miller indizes on a four circle diffractometer. Hklscan operates with
|
||||
a single detector. Hklscan2d does the same as hklscan but for the
|
||||
position sensitive detectors, saving data into NeXus files. Hklscan
|
||||
and Hklscan2d share the same syntax.
|
||||
Prerequisite for this is
|
||||
the existence of a scan object and the hkl-object for doing crystallographic
|
||||
calculations. Make sure the properties of the hkl object (UB, wavelength, NB)
|
||||
have some reasonable relation to reality, otherwise the diffractometer may
|
||||
@ -25,10 +29,15 @@ Hklscan is a command which allows to scan in reciprocal space expressed as
|
||||
<dd>executes the HKL scan. NP is the number of points to do, mode is the
|
||||
counting mode and can be either timer or monitor and preset is the preset
|
||||
value for the counter at each step.
|
||||
<dt>hklscan2d sim NP mode preset
|
||||
<dd>This command only for hklscan2d. It tries to calculate all points
|
||||
in the hkl scan and complains if it cannot reached or stays
|
||||
silent. Use this to test if your hklscan2d can be performed.
|
||||
</dl>
|
||||
Data is written automatically into a slightly modified TOPSI data format
|
||||
file. The status display with topsistatus or scanstatus might be slightly
|
||||
erratic as it uses two theta as x-axis.
|
||||
file for hklscan. The status display with topsistatus or scanstatus
|
||||
might be slightly erratic as it uses two theta as x-axis. Hklscan2d
|
||||
writes data into NeXus files.
|
||||
</P>
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
59
doc/user/lowmax.htm
Normal file
59
doc/user/lowmax.htm
Normal file
@ -0,0 +1,59 @@
|
||||
<HTML>
|
||||
<HEAD>
|
||||
<TITLE>The Local Maximum Search Module</TITLE>
|
||||
</HEAD>
|
||||
<BODY>
|
||||
<h1>The Local Maximum Search Module</h1>
|
||||
<p>
|
||||
This module allows to search for local maxima in two-dimensional
|
||||
datasets stored within a SICS histogram memory. All commands
|
||||
act upon the current content of the histogram memory. The following
|
||||
commands are understood:
|
||||
<dl>
|
||||
<dt>lowmax stat hm
|
||||
<dd>calculates the average and the maximum count in the frame
|
||||
currently held in histogram memory hm.
|
||||
<dt>lowmax search hm
|
||||
<dd>searches the frame held in histogram memory hm for local
|
||||
maxima. Local maxima are returned as sets of three numbers which are
|
||||
the x and y coordinates and the intensity. Each set of numbers is
|
||||
separated from the next one by the @ symbol.
|
||||
<dt>lowmax cog hm x y
|
||||
<dd>calculates the center ogf gravity for the pixel at coordinates x
|
||||
and y in histogram memory hm. Four numbers are returned: the new x and
|
||||
y coordinates, the intensity of the peak and the number of points
|
||||
contributing to the peak.
|
||||
<dt>lowmax steepness val
|
||||
<dd>accesses the steepness parameter for the peak search. With a
|
||||
parameter val sets a new value, without print the current value.
|
||||
<dt>lowmax window val
|
||||
<dd>accesses the window parameter for the peak search. With a
|
||||
parameter val sets a new value, without print the current value.
|
||||
<dt>lowmax threshold val
|
||||
<dd>accesses the thresholds parameter for the peak search. With a
|
||||
parameter val sets a new value, without print the current value.
|
||||
<dt>lowmax cogwindow val
|
||||
<dd>accesses the cogwindow parameter for the peak search. With a
|
||||
parameter val sets a new value, without print the current value.
|
||||
<dt>lowmax cogcontour val
|
||||
<dd>accesses the cogcontour parameter for the peak search. With a
|
||||
parameter val sets a new value, without print the current value.
|
||||
</dl>
|
||||
The local maximum search can be tuned through the parameters: The
|
||||
window parameter sets the size of the quadratic area for which a
|
||||
candidate pixel must be the local maximum. Threshold sets a minimum
|
||||
count rate for a local maximum. Steepness sets a minimum difference to
|
||||
the borders of the window used for the local maximum search which must
|
||||
be fulfilled.
|
||||
</p>
|
||||
<p>
|
||||
The center of gravity calculation can be tuned mainly through the
|
||||
cogcontour parameter which determines at which percentage of the
|
||||
maximum value of the peak the center of gravity calculation
|
||||
stops. Cogwindow is the size of the area in which a center of gravity
|
||||
is calculated. Can be set rather generously.
|
||||
</p>
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
||||
|
@ -7,14 +7,25 @@
|
||||
<p>
|
||||
SICS has a built in macro facility. This macro facility is aimed at instrument managers and users alike. Instrument managers may provide customised measurement procedures in this language, users may write batch files in this language. The macro language is John Ousterhout's Tool Command Language (TCL). Tcl has control constructs, variables of its own, loop constructs, associative arrays and procedures. Tcl is well documented by several books and online tutorials, therefore no details on Tcl will be given here. All SICS commands are available in the macro language. Some potentially harmful Tcl commands have been deleted from the standard Tcl interpreter. These are: exec, source, puts, vwait, exit,gets and socket. A macro or batch file can be executed with the command:</p>
|
||||
<p>
|
||||
<b> fileeval <i>name</i> </b> tries to open the file name and executes the script in this file. </p>
|
||||
<b> fileeval <i>name</i> </b> tries to open the file name and
|
||||
executes the script in this file.
|
||||
</p>
|
||||
<p>
|
||||
<b>batchrun <i>name</i></b> prepends to name a directory name
|
||||
configured in the variable batchroot and then executes that
|
||||
batchfile. The usage scenerio is that you have a directory where you
|
||||
keep batch files. Then the variable batcroot is set to contain the path
|
||||
to that directory. Batchrun then allows to start scripts in that
|
||||
directory without specifying the full path.
|
||||
Then there are some special commands which can be used within macro-sripts:
|
||||
<p>
|
||||
<b> ClientPut sometext1 ... </b> writes everything after ClientPut to
|
||||
the client which started the script. This is needed as SICS supresses
|
||||
the output from intermediate commands in scripts. Except error
|
||||
messages and warnings. With clientput this scheme can be circumvented
|
||||
and data be printed from within scripts.</p>
|
||||
<b> ClientPut sometext1 ... </b>Usally SICS suppresses any messages
|
||||
from SICS during the processing of batch files. This is in order not
|
||||
to confuse users with the output of intermediate results during
|
||||
the processing of batch files. Error messages and warnings, however,
|
||||
come through always. Clientput now allows to send messages to the
|
||||
user on purpose from within scripts.
|
||||
</p>
|
||||
<p>
|
||||
<b> SICSType object </b> allows to query the type of the object specified by object. Possible return values are<ul>
|
||||
<li> <b> DRIV </b> if the object is a SICS drivable object such as a motor
|
||||
|
@ -47,8 +47,83 @@ or equal to zero for the motor being movable.
|
||||
<li> <b> Precision </b> denotes the precision to expect from the motor in positioning. Can usually only be set by managers.
|
||||
<li> <b> AccessCode </b> specifies the level of user privilege necessary to operate the motor. Some motors are for adjustment only and can be harmful to move once the adjustment has been done. Others must be moved for the experiment. Values are 0 - 3 for internal, manager, user and spy. This parameter can only be changed by managers.
|
||||
<li> <b> Sign </b> reverses the operating sense of the motor.
|
||||
For cases where electricians and not physicists have defined the operating sense of the motor. Usually a parameter not to be changed by ordinary users.
|
||||
For cases where electricians and not physicists have defined the
|
||||
operating sense of the motor. Usually a parameter not to be changed
|
||||
by ordinary users.
|
||||
<li><b> failafter </b>This is the number of consecutive failures of
|
||||
positioning operations this motor allows before it thinks that
|
||||
something is really broken and aborts the experiment.
|
||||
<li><b> maxretry </b>When a motor finishes driving, SICS checks if the
|
||||
desired position was reached. If the position read back from the motor
|
||||
is not within precision to the desired value, the motor is
|
||||
restarted. This is done at max maxretry times. After maxretry retries,
|
||||
the motor throws an error.
|
||||
<li></b> ignorefault </b>If this is bigger then 0, positioning faults
|
||||
from the motor will be ignored.
|
||||
</ul>
|
||||
<p>
|
||||
<h2>Motor Error Handling Concepts</h2>
|
||||
<p>
|
||||
As mechanical components motors are prone to errors. SICS knows about
|
||||
two different classes of motor errors:
|
||||
<dl>
|
||||
<dt>HWFault
|
||||
<dd>This is when there is a problem communicating with the motor, a
|
||||
limit is violated etc. SICS assumes that such errors are so grave that
|
||||
no fix is possible. If such a HWFault is detected a configurable
|
||||
interrupt (see parameter InterruptMode) is set which can be used by
|
||||
upper level code to act upon the problem.
|
||||
<dt>HWPosFault
|
||||
<dd>This is a positioning failure, i.e. The motor did not reach the
|
||||
desired position. Such a positioning problem can come from two
|
||||
sources:
|
||||
<ul>
|
||||
<li>The positioning problem is reported by the motor driver. SICS then
|
||||
assumes that the driver has done something to solve the problem and
|
||||
promotes this problem to a HWFault.
|
||||
<li>The motor driver reported no error and SICS figures out by itself,
|
||||
that the desired position has not been reached. SICS thinks that this
|
||||
is the case if the difference between the desired position and the
|
||||
position read from the motor controller is greater then the parameter
|
||||
precision. If SICS detects such a problem it tries to reposition the
|
||||
motor. This is done for the number of times specified through the
|
||||
parameter maxretries. If the position has not been reached after
|
||||
maxretries repositionings, a HWFault is assumed.
|
||||
</ul>
|
||||
</dl>
|
||||
In any case lots of warnings and infos are printed.
|
||||
</p>
|
||||
<p>
|
||||
If SICS tries to drive an axis which is for some reason broken to
|
||||
often hardware damage may occur (and HAS occurred!). Now, SICS has no
|
||||
means to detect if the mispositioning of a motor is due to a concrete
|
||||
block in the path of the instrument or any other reason. What SICS can
|
||||
do though is to count how often a motor mispositions in
|
||||
sequence. This means SICS counts mispositionings if it cannot drive a
|
||||
motor, if the motor is driven succesfully, the count is cleared. If
|
||||
the count of mispositionings becomes higher then the parameter
|
||||
failafter, SICS thinks that there is something really, really wrong
|
||||
and aborts the measurement and prints an error message containing the
|
||||
string: MOTOR ALARM.
|
||||
</p>
|
||||
<p>
|
||||
There are some common pitfalls with this scheme:
|
||||
<dl>
|
||||
<dt>You want upper level code to be signalled when your critical motor
|
||||
fails.
|
||||
<dd>Solution: set the parameter interruptmode to something useful and
|
||||
check for the interrupt in upper level code.
|
||||
<dt>SICS falsly reports mispositionings.
|
||||
<dd>Solution: increase the precision parameter.
|
||||
<dt>You know that a motor is broken, you cannot fix it, but you want
|
||||
to measure anyway.
|
||||
<dd>Solution: increase the precision parameter, if SICS finds the
|
||||
positioning problem, increase maxretries, increase the failafter
|
||||
parameter. In the worst case set the ignorefault parameter to greater
|
||||
0, this will prevent all motor alarms.
|
||||
</dl>
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
|
||||
|
98
doc/user/peaksearch.htm
Normal file
98
doc/user/peaksearch.htm
Normal file
@ -0,0 +1,98 @@
|
||||
<HTML>
|
||||
<HEAD>
|
||||
<TITLE>TRICS PSD Peak Search</TITLE>
|
||||
</HEAD>
|
||||
<BODY>
|
||||
<H1>TRICS PSD Peak Search</H1>
|
||||
<P>
|
||||
For almost any measurement at TRICS a UB matrix has to be determined
|
||||
beforehand. In order to do this a couple of peak must be located by
|
||||
some means. This section describes how the computer can help in
|
||||
finding an initial set of peaks.
|
||||
</P>
|
||||
<p>
|
||||
The algorithm is quite simple: It consists of a big loop over ranges
|
||||
of the four circle angles two theta, omega, chi and phi. At each
|
||||
position a counting operation is performed. Then peaks are located on
|
||||
all three detectors through a local maximum search. For this, the
|
||||
<a href="lowmax.htm">local maximum search</a> module is used.
|
||||
If a candidate
|
||||
peak is found, it is refined in omega and written to a file. The
|
||||
tricky bit is the adjustement of the local maximum search parameters
|
||||
in order to minimize false maxima caused by a spicky background or
|
||||
powder lines.
|
||||
</p>
|
||||
<p>
|
||||
The peak search facility need a lot of parameters in order to
|
||||
operate. This includes angle ranges, count parameters and the maximum
|
||||
search parameters. Commands are provided for adjusting these
|
||||
parameters. The general operation of these commands follow a pattern:
|
||||
typing the command alone prints the current values of the
|
||||
parameters. In order to set new values the command name must be typed
|
||||
plus new values for all the parameters listed by this command. An
|
||||
Example:
|
||||
<pre>
|
||||
ps.sttrange
|
||||
</pre>
|
||||
prints the range in two theta for the peaksearch.
|
||||
<pre>
|
||||
ps.sttrange startval endval step
|
||||
</pre>
|
||||
sets new values for the two theta range and prints them afterwards.
|
||||
The following commands are provided:
|
||||
<dl>
|
||||
<dt>ps.sttrange
|
||||
<dd>adjustment of the two theta range for the peak search.
|
||||
<dt>ps.omrange
|
||||
<dd>adjustment of the omega range for the peak search.
|
||||
<dt>ps.chirange
|
||||
<dd>adjustment of the chi range for the peak search.
|
||||
<dt>ps.phirange
|
||||
<dd>adjustment of the phi range for the peak search.
|
||||
<dt>ps.countpar
|
||||
<dd>adjustment of the counting parameters for the peak search.
|
||||
<dt>ps.scanpar
|
||||
<dd>adjustment of the parameters used by ps.scanlist for scanning
|
||||
located peaks. See below.
|
||||
<dt>ps.maxpar
|
||||
<dd>Adjusts the maximum finding parameters for the peak search. These
|
||||
parameters need some explanation:
|
||||
<dl>
|
||||
<dt>window
|
||||
<dd>window is the size of the quadratic area which will be searched
|
||||
around each point in order to determine if it is a local maximum.
|
||||
<DT>threshold
|
||||
<dd>This is a minimum intensity a candidate local maximum must have
|
||||
before it is accepted as a peak. The value given is multiplied
|
||||
with the average counst on the data frame before use. This threshold
|
||||
is the strongest selection parameter.
|
||||
<dt>steepness
|
||||
<dd> A candidate peak should drop of towards the sides. This is
|
||||
tested for by checking if the pixels on the borders of the local
|
||||
maximum detection window are below maximum value - steepness.
|
||||
<dt>cogwindow
|
||||
<dd>In order to refine the peaks position a center of gravity
|
||||
calculation is perfomed. For this calculation pixels within the
|
||||
cogwindow around the candidate peak position are considered.
|
||||
<dt>cogcontour
|
||||
<dd>In order not to base the COG calculation on background pixels,
|
||||
only pixels above cogcontour * maxvalue are used for the
|
||||
calculation. With the spicky background at TRICS .5 seems a good value.
|
||||
</dl>
|
||||
<dt>ps.list
|
||||
<dd>lists all parameters for the peak search.
|
||||
<dt>ps.listpeaks
|
||||
<dd> lists all the peaks already found.
|
||||
<dt>ps.run filename
|
||||
<dd>starts the peak search and stores peaks identified in file
|
||||
filename.
|
||||
<dt>ps.continue
|
||||
<dd>continues a peak search which was interrupted for one reason or
|
||||
another.
|
||||
<dt>ps.scanlist
|
||||
<dd>performs an omega scan for each reflection found in the current
|
||||
peak list.
|
||||
</dl>
|
||||
</P>
|
||||
</BODY>
|
||||
</HTML>
|
@ -21,9 +21,6 @@ manually from the command line through the following commands:
|
||||
is minutes. Default is 20 minutes.
|
||||
<DT>storedata intervall <i>newval</i>
|
||||
<DD>Sets the update intervall to newval minutes.
|
||||
<DT>killfile
|
||||
<DD>This command will overwrite the last data file written and thus
|
||||
effectively erase it. Therefore this command requires manager privilege.
|
||||
</DL>
|
||||
</P>
|
||||
</BODY>
|
||||
|
16
doc/user/psddata.htm
Normal file
16
doc/user/psddata.htm
Normal file
@ -0,0 +1,16 @@
|
||||
<HTML>
|
||||
<HEAD>
|
||||
<TITLE>TRICS PSD Data Analysis</TITLE>
|
||||
</HEAD>
|
||||
<BODY>
|
||||
<h1>TRICS PSD Data Analysis</h1>
|
||||
<p>
|
||||
As of now two packages are provided:
|
||||
<ul>
|
||||
<li>A data analysis package based on <a href="xds.htm">XDS</a>.
|
||||
<li>An experimental package based on a
|
||||
novel <a href="auto.htm">volume matching </a> approach.
|
||||
</ul>
|
||||
</P>
|
||||
</BODY>
|
||||
</HTML>
|
@ -18,16 +18,19 @@ devices.
|
||||
<li><a href="#lsc">LakeShore Model 340</a> temperature controllers.
|
||||
<li>Oxford Instruments <a href="#itc4">ITC-4</a> or ITC-503 temperature
|
||||
controllers.
|
||||
<li><a href="#dilu">Dilution</a> Cryostat.
|
||||
<li>Haake <a href="#haake">waterbath </a> thermostat.
|
||||
<li><a href="#ltc11">The CryoFurnace</a> with its Neocera LTC-11 temperature
|
||||
controller.
|
||||
<li><a href="#euro">Eurotherm Temperature Controller</a>.
|
||||
<li><a href="#bruker">Bruker</a> Magnet Controller.
|
||||
<li>The Risoe <a href="#a1931">A1931</a> Temperature Controller.
|
||||
<li>The <a href="#el755">PSI-EL755</a> Magnet Controller.
|
||||
<li>The <a href="#psidsp">PSI-DSP</a> Magnet Controller, also known as
|
||||
SLS controller.
|
||||
SLS controller.
|
||||
</ul>
|
||||
Obsolete:
|
||||
<ul>
|
||||
<li>Old <a href="#dilu">Dilution</a> Cryostat.
|
||||
<li>The <a href="#ltc11">Neocera LTC-11</a> temperature
|
||||
controller (was used for the Cryofurnace).
|
||||
</ul>
|
||||
</p>
|
||||
<!latex-on>
|
||||
@ -65,7 +68,7 @@ for understanding SICS environment device handling. Then there will be another
|
||||
section discussing the special devices known to the system.
|
||||
</p>
|
||||
<p>
|
||||
<h2>SampleEnvironment Error Handling</h2>
|
||||
<h2>Sample Environment Error Handling</h2>
|
||||
A <a name="error"> sample</a> environment device may fail to stay at its preset value during a
|
||||
measurement. This condition will usually be detected by the emon. The question
|
||||
is how to deal with this problem. The requirements for this kind of error
|
||||
@ -190,6 +193,15 @@ handling is set. Valid values are:
|
||||
<DT>SafeValue
|
||||
<DD> The value to drive the controller to when an error has been detected and
|
||||
Safe error handling is set.
|
||||
<DT>MaxWait
|
||||
<DD> Maximal time in minutes to wait in a drive temperature command.
|
||||
If maxwait is set to 0: If the temperature is not reached within tolerance,
|
||||
it waits indefinitely.
|
||||
<DT>Settle
|
||||
<DD> Wait time [minutes] after reaching temperature. Indicates how long to wait
|
||||
after reaching temperature. If the temperatures goes again out
|
||||
of tolerance during the settling time, the time outside tolerance
|
||||
is not taken into account.
|
||||
</DL>
|
||||
</p>
|
||||
<P>
|
||||
@ -213,15 +225,17 @@ can be achieved by using the drive command.
|
||||
and <b>log frequency</b> (both below)
|
||||
</DL>
|
||||
<h3>Logging </h3>
|
||||
The values of any sample environement device can be logged. There are two
|
||||
The values of any sample environement device can be logged. There are three
|
||||
features:
|
||||
<ul>
|
||||
<li>Logging to a file wih a configurable time intervall between log
|
||||
file entries.
|
||||
<li>Sums are kept internally which allow the calculation of the mean
|
||||
value and the standard deviation at all times.
|
||||
<li>A circular buffer holding 1000 timestamps plus values is
|
||||
automatically updated.
|
||||
</ul>
|
||||
The last system is automatically switched on after the first drive or
|
||||
The last two systems are automatically switched on after the first drive or
|
||||
run command on the environment device completed.
|
||||
This system is run through the following commands.
|
||||
<DL>
|
||||
@ -233,7 +247,7 @@ standard deviation.
|
||||
values and prints them.
|
||||
<DT>name log frequency val
|
||||
<DD> With a parameter sets, without a parameter requests the logging intervall
|
||||
for the log file.
|
||||
for the log file and the circular buffer.
|
||||
This parameter specifies the time intervall in seconds
|
||||
between log records. The default is 300 seconds.
|
||||
<DT>name log file filename
|
||||
@ -243,12 +257,22 @@ Logging will happen any 5 minutes initially. The logging frequency
|
||||
of the form date time value. The name of the file must be specified relative
|
||||
to the SICS server.
|
||||
<DT>name log flush
|
||||
<DD>DigitalUnix buffers output heavily. With this command an update of
|
||||
<DD>Unix buffers output heavily. With this command an update of
|
||||
the file can be enforced.
|
||||
<DT>name log status
|
||||
<DD>Queries if logging to file is currently happening or not.
|
||||
<DT>name log close
|
||||
<DD> Stops logging data to the file.
|
||||
<dt>name log tosicsdata dataname
|
||||
<dd>copies the content of the circular buffer to a sicsdata
|
||||
buffer. This is used by graphical clients to display the content of
|
||||
the circular buffer.
|
||||
<dt>name log dump
|
||||
<dd>Prints the content of the circular log buffer to screen.
|
||||
<dt>name log dumptofile filename
|
||||
<dd>Prints the content of the circular log buffer into the file
|
||||
specified as filename. Note, this file is on the computer where the
|
||||
SICS server resides.
|
||||
</DL>
|
||||
</P>
|
||||
|
||||
@ -263,41 +287,24 @@ that special device. All of the general commands listed above work as well!
|
||||
This is <i>the</i> temperature controller for cryogenic applications and
|
||||
should replace at least the Oxford & Neocera controllers at SINQ.<p>
|
||||
The control is handled by a seperate server process TECS (TEmperature
|
||||
Control Server) and is initialized by default. If there is already an other
|
||||
device selected, it must be deleted and TECS must be reinstalled:
|
||||
Control Server) and is initialized by default on most instruments. If there is already an other
|
||||
device selected, it must be deleted with:
|
||||
<BLOCKQUOTE>
|
||||
EVFactory del temperature<br>
|
||||
EVFactory new temperature tecs
|
||||
EVFactory del temperature
|
||||
</BLOCKQUOTE>
|
||||
The sample environment device is selected automatically by a coding in the
|
||||
plug of the sensor/heater cable(s). If this does not work (plugs without
|
||||
coding or temporarely use of a wrong cable) you may select the device
|
||||
with
|
||||
and TECS must be reinstalled with:
|
||||
<BLOCKQUOTE>
|
||||
temperature device <i>device</i>
|
||||
tecs on
|
||||
</BLOCKQUOTE>
|
||||
You may want to verify the selected device with
|
||||
<BLOCKQUOTE>
|
||||
temperature device
|
||||
</BLOCKQUOTE>
|
||||
The actually known devices (April 2000) are:
|
||||
<UL>
|
||||
<LI>orange cryostats: <b>ill1</b> (50mm), <b>ill2</b> (70mm),
|
||||
<b>ill3</b> (cryofurnace), <b>ill4</b> (FOCUS), <b>ill5</b> (100 mm)
|
||||
<LI>closed cycles: <b>cti1</b>, <b>cti2</b>, <b>cti3</b>, <b>cti4</b>,
|
||||
<b>cti5</b> (maxi), <b>cti6</b> (FOCUS), <b>apd</b> (TriCS), <b>ccr4k</b> (4K)
|
||||
<LI>other: <b>hef4c</b> (He-flow cryostat 4circle), <b>sup4t</b> (4 T supraconducting magnet)
|
||||
</UL>
|
||||
(This is just an abbreavation for EVFactory new temperature tecs)<p>
|
||||
More details can be found on the <a href=http://sinq.web.psi.ch/sinq/sample_env/tecs.html>Sample Environment Home Page</a>
|
||||
<p>
|
||||
<h3><a name="itc4">ITC-4</a> and ITC-503 Temperature Controllers</h3>
|
||||
<p>
|
||||
These temperature controller were fairly popular at SINQ. They are
|
||||
manufactured by
|
||||
Oxford Instruments. At the back of this controller is a RS-232
|
||||
socket which must be connected to a Macintosh computer running the SINQ
|
||||
terminal server program via a serial cable. Please make sure with a different
|
||||
Macintosh or a PC that the serial line is OK and the ITC-4 responding before
|
||||
plugging it in.
|
||||
socket which must be connected to a terminal server via a serial cable.
|
||||
</p>
|
||||
<h4>ITC-4 Initialisation</h4>
|
||||
<p>
|
||||
@ -306,23 +313,21 @@ An ITC-4 can be configured into the system by:
|
||||
EVFactory new Temp ITC4 computer port channel
|
||||
</BLOCKQUOTE>
|
||||
This creates an ITC-4 controller object named Temp within the system. The
|
||||
ITC-4 is expected to be connected to the serial port channel at the
|
||||
Macintosh computer computer running the SINQ terminal server program
|
||||
listening at port port. For example:
|
||||
ITC-4 is expected to be connected to the serial port channel of the serial
|
||||
port server porgramm at localhost listening at the specified port. For example:
|
||||
<BLOCKQUOTE>
|
||||
EVFactory new Temp ITC4 lnsp22.psi.ch 4000 7
|
||||
EVFactory new Temp ITC4 localhost 4000 7
|
||||
</BLOCKQUOTE>
|
||||
connects Temp to the Macintosh named lnsp22, serial port 6
|
||||
(7 above is no typo!), listening at port 4000.
|
||||
connects Temp to the serial port 7, listening at port 4000.
|
||||
</P>
|
||||
<h4>ITC-4 Additional Parameters</h4>
|
||||
<p>
|
||||
The ITC-4 has a few more parameter commands:
|
||||
<DL>
|
||||
<DT>timeout
|
||||
<DD>Is the timeout for the Macintosh terminal server program waiting for
|
||||
<DD>Is the timeout for the SerPortServer waiting for
|
||||
responses from the ITC-4. Increase this parameter if error messages
|
||||
containg ?TMO appear.
|
||||
contaning ?TMO appear.
|
||||
<DT> sensor
|
||||
<DD> Sets the sensor number to be used for reading temperature.
|
||||
<DT> control
|
||||
@ -341,17 +346,17 @@ the comma.
|
||||
<h4>Installing an ITC4 step by step</h4>
|
||||
<p>
|
||||
<ol>
|
||||
<li>Connect the ITC temperature controller to port 6 on the Macintosh
|
||||
serial port extension box. Port 6 is specially configured for dealing with
|
||||
<li>Connect the ITC temperature controller to port 7 on the terminal server
|
||||
box. Port 7 is specially configured for dealing with
|
||||
the ideosyncracies of that device. No null modem is needed.
|
||||
<li>Install the ITC4 into SICS with the command: <br>
|
||||
evfactory new name Macintoshname 4000 7<br>
|
||||
Thereby replace name with the name you want to address the ITC4 in SICS. A
|
||||
good choice for a name is temperature, as such a value will be written to data files.
|
||||
evfactory new temperature localhost 4000 7<br>
|
||||
You may choose an other name than "temperature", but then it is in general not stored
|
||||
in the data file.
|
||||
Please note, that SICS won't let you use that name if it already exists. For
|
||||
instance if you already had a controller in there. Then the command:<br>
|
||||
evfactory del name <br>
|
||||
will help. Macintoshname is the name of the instrument Macintosh PC.
|
||||
will help.
|
||||
<li>Configure the upper and lowerlimits for your controller appropriatetly.
|
||||
<li>Figure out which sensor you are going to use for reading temperatures.
|
||||
Configure the sensor and the divisor parameter accordingly.
|
||||
@ -373,7 +378,7 @@ current one.
|
||||
<h4>ITC-4 Trouble Shooting</h4>
|
||||
<p>
|
||||
If the ITC-4 <b>does not respond at all</b>, make sure the serial connection to
|
||||
the Macintosh is working. Use standard RS-232 debugging procedures for doing
|
||||
is working. Use standard RS-232 debugging procedures for doing
|
||||
this. The not responding message may also come up as a failure to
|
||||
connect
|
||||
to the ITC-4 during startup.
|
||||
@ -420,9 +425,8 @@ within the tolerance. That is the temperature value you wanted after all.
|
||||
<p>
|
||||
This is sort of a bucket full of water equipped with a temperature
|
||||
control system. The RS-232 interface of this device can only be operated at
|
||||
4800 baud max. This is why it has to be connected to the serial printer port
|
||||
of the Macintosh serial port server computer. This makes the channel number to
|
||||
use for initialisation a 1 always. The driver for this device has been
|
||||
4800 baud max. This is why it has to be connected to a specially configured port.
|
||||
The driver for this device has been
|
||||
realised in the Tcl extension language of the SICS server. A prerequisite
|
||||
for the usage of this device is that the file hakle.tcl is sourced in the
|
||||
SICS initialisation file and the command inihaakearray has been published.
|
||||
@ -432,11 +436,11 @@ initialisation parameters, second install the device with evfactory. A
|
||||
command procedure is supplied for the first step. Thus the initialisation
|
||||
sequence becomes:
|
||||
<BLOCKQUOTE>
|
||||
inihaakearray name-of-array macintosh-computer name port channel<br>
|
||||
inihaakearray name-of-array localhost name port channel<br>
|
||||
evfactory new temperature tcl name-of-array
|
||||
</BLOCKQUOTE>An example for the SANS:
|
||||
<BLOCKQUOTE>
|
||||
inihaakearray eimer lnsp25.psi.ch 4000 1 <br>
|
||||
inihaakearray eimer localhost 4000 1 <br>
|
||||
evfactory new temperature tcl eimer
|
||||
</BLOCKQUOTE>
|
||||
Following this, the thermostat can be controlled with the other environment
|
||||
@ -452,35 +456,6 @@ temperature sensor val
|
||||
</BLOCKQUOTE>
|
||||
val can be either intern or extern.
|
||||
</p>
|
||||
<h3><a name="dilu">Dilution</a> Cryostat</h3>
|
||||
<p>
|
||||
This is a large ancient device for reaching very low temperatures. This
|
||||
cryostat can be configured into SICS with the command:
|
||||
<pre>
|
||||
EVFactory new Temp dillu computer port channel table.file
|
||||
</pre>
|
||||
Temp is the name of the dilution controller command in SICS, dillu is the
|
||||
keyword which selects the dilution driver, computer, port and channel are
|
||||
the parameters of the Macintosh-PC running the serial port server program.
|
||||
table.file is the fully qualified name of a file containing a translation
|
||||
table for this cryostat. The readout from the dilution controller is a
|
||||
resistance. This table allows to interpolate the temperature from the
|
||||
resistance measurements and back. Example:
|
||||
<pre>
|
||||
evfactory new temperature dillu lnsp19.psi.ch 4000 1 dilu.tem
|
||||
</pre>
|
||||
installs a new dilution controller into SICS. This controller is connected
|
||||
to port 1 at the Macintos-PC with the newtwork adress lnsp19.psi.ch. On this
|
||||
macintosh-PC runs a serial port server program listening at TCP/IP port
|
||||
4000. The name of the translation table file is dilu.tem.
|
||||
</p>
|
||||
<p>
|
||||
The dilution controller has no special commands, but two caveats: As of
|
||||
current (October 1998) setting temperatures does not work due to problems
|
||||
with the electronics. Second the dilution controller MUST be connected to
|
||||
port 1 as only this port supports the 4800 maximum baud rate this device
|
||||
digests.
|
||||
</p>
|
||||
<h3><a name="bruker">Bruker</a> Magnet Controller B-EC-1</h3>
|
||||
<p>
|
||||
This is the Controller for the large magnet at SANS. The controller is a
|
||||
@ -490,24 +465,23 @@ an external hall sensor at the magnet. In <b>current</b> mode, the output curren
|
||||
of the device is controlled. This magnet can be configured into SICS with a
|
||||
command syntax like this:
|
||||
<BLOCKQUOTE>
|
||||
evfactory new name bruker Mac-PC Mac-port Mac-channel
|
||||
evfactory new name bruker localhost port channel
|
||||
</BLOCKQUOTE>
|
||||
</p>
|
||||
<p>
|
||||
name is a placeholder for the name of the device within SICS. A good
|
||||
suggestion (which will be used throughout the rest of the text) is magnet.
|
||||
bruker is the keyword for selecting the bruker driver. Mac-PC is the name of
|
||||
the Macintosh PC to which the controller has been connected, Mac-Port is the
|
||||
port number at which the Macintosh-PC's serial port server listens.
|
||||
Mac-channel is the RS-232 channel to which the controller has been
|
||||
bruker is the keyword for selecting the bruker driver. port is the
|
||||
port number at which the serial port server listens.
|
||||
channel is the RS-232 channel to which the controller has been
|
||||
connected. For example (at SANS):
|
||||
<pre>
|
||||
evfactory new magnet bruker lnsp25.psi.ch 4000 9
|
||||
evfactory new magnet bruker localhost 4000 9
|
||||
</pre>
|
||||
</p>
|
||||
<p>
|
||||
creates a new command magnet for a Bruker magnet Controller connected to
|
||||
serial port 9 at lnsp25.
|
||||
serial port 9.
|
||||
</p>
|
||||
In addition to the standard environment controller commands this magnet
|
||||
controller understands the following special commands:
|
||||
@ -540,60 +514,6 @@ a magnetic field. This is so in order to support SICS control logic.
|
||||
You can read values at all times explicitly using magnet current or
|
||||
magnet field.
|
||||
</p>
|
||||
<h3><a name="ltc11">The CryoFurnace.</a></h3>
|
||||
<p>
|
||||
The CryoFurnace at PSI is equipped with a Neocera LTC-11 temperature
|
||||
controller. This controller can control either an heater or an analag output
|
||||
channel. Futhermore a choice of sensors can be selected for controlling the
|
||||
device. The LTC-11 behaves like a normal SICS environment control device
|
||||
plus a few additional commands. An LTC-11 can be configured into SICS with
|
||||
the following command:
|
||||
<BLOCKQUOTE>
|
||||
evfactory new name ltc11 Mac-PC Mac-port Mac-channel
|
||||
</BLOCKQUOTE>
|
||||
</p>
|
||||
<p>
|
||||
name is a placeholder for the name of the device within SICS. A good
|
||||
suggestion is temperature.
|
||||
ltc11 is the keyword for selecting the LTC-11 driver. Mac-PC is the name of
|
||||
the Macintosh PC to which the controller has been connected, Mac-Port is the
|
||||
port number at which the Macintosh-PC's serial port server listens.
|
||||
Mac-channel is the RS-232 channel to which the controller has been
|
||||
connected. For example (at DMC):
|
||||
<pre>
|
||||
evfactory new temperature ltc11 lnsp18.psi.ch 4000 6
|
||||
</pre>
|
||||
</p>
|
||||
<p>
|
||||
creates a new command magnet for a LTC-11 temperature Controller connected to
|
||||
serial port 6 at lnsp18.
|
||||
</p>
|
||||
<p>
|
||||
The additional commands understood by the LTC-11 controller are:
|
||||
<dl>
|
||||
<dt>temperature sensor
|
||||
<dd> queries the current sensor used for temperature readout.
|
||||
<dt>temperature sensor val
|
||||
<dd> selects the sensor val for temperature readout.
|
||||
<dt>temperature controlanalog
|
||||
<dd> queries the sensor used for controlling the analog channel.
|
||||
<dt>temperature controlanalog val
|
||||
<dd> selects the sensor val for controlling the analog channel.
|
||||
<dt>temperature controlheat
|
||||
<dd> queries the sensor used for controlling the heater channel.
|
||||
<dt>temperature controlheat val
|
||||
<dd> selects the sensor val for controlling the heater channel.
|
||||
<dt>temperature mode
|
||||
<DD>queries if the LTC-11 is in analog or heater control mode.
|
||||
</dl>
|
||||
</p>
|
||||
<p>
|
||||
Further notes: As the CryoFurnace is very slow and the display at the
|
||||
controller becomes unusable when the temperature is read out to often, the
|
||||
LTC-11 driver buffers the last temperature read for 5 seconds. Setting the
|
||||
mode of the LTC-11 is possible by computer, but not yet fully understood and
|
||||
therefore unusable.
|
||||
</p>
|
||||
<h3><a name="euro">The Eurotherm Temperature Controller</a></h3>
|
||||
<p>
|
||||
At SANS there is a Eurotherm temperature controller for the sample heater.
|
||||
@ -601,23 +521,22 @@ At SANS there is a Eurotherm temperature controller for the sample heater.
|
||||
with the following command. The eurotherm needs to be connected with a
|
||||
nullmodem adapter.
|
||||
<BLOCKQUOTE>
|
||||
evfactory new name euro Mac-PC Mac-port Mac-channel
|
||||
evfactory new name euro computer port channel
|
||||
</BLOCKQUOTE>
|
||||
</p>
|
||||
<p>
|
||||
name is a placeholder for the name of the device within SICS. A good
|
||||
suggestion is temperature.
|
||||
euro is the keyword for selecting the Eurotherm driver. Mac-PC is the name of
|
||||
the Macintosh PC to which the controller has been connected, Mac-Port is the
|
||||
port number at which the Macintosh-PC's serial port server listens.
|
||||
Mac-channel is the RS-232 channel to which the controller has been
|
||||
euro is the keyword for selecting the Eurotherm driver. port is the
|
||||
port number at which the serial port server listens.
|
||||
channel is the RS-232 channel to which the controller has been
|
||||
connected. <b>WARNING:</b> The eurotherm needs a RS-232 port with an unusual
|
||||
configuration: 7bits, even parity, 1 stop bit. Currently only the SANS
|
||||
Macintosh port 13 (the last in the upper serial port connection box) is
|
||||
port 13 is
|
||||
configured like this! Thus, an example for SANS and the name temperature
|
||||
looks like:
|
||||
<pre>
|
||||
evfactory new temperature euro lnsp25.psi.ch 4000 13
|
||||
evfactory new temperature euro localhost 4000 13
|
||||
</pre>
|
||||
</p>
|
||||
<p>
|
||||
@ -671,14 +590,14 @@ read back but just the set value after ramping. This is a serious
|
||||
limitation because the computer cannot recognize a faulty power supply
|
||||
or magnet. The EL755 is connected to SICS with the command:
|
||||
<BLOCKQUOTE>
|
||||
evfactory new name el755 Mac-PC Mac-port Mac-channel index
|
||||
evfactory new name el755 localhost port channel index
|
||||
</BLOCKQUOTE>
|
||||
with Mac-PC, Mac-port and Mac-channel being the usual data items for
|
||||
describing the location of the EL755-controller at the Macintosh
|
||||
with port and channel being the usual data items for
|
||||
describing the location of the EL755-controller at the
|
||||
serial port server. index is special and is the number of the power
|
||||
supply to which the magnet is connected. An example:
|
||||
<pre>
|
||||
evfactory new maggi el755 lnsa09.psi.ch 4000 5 3
|
||||
evfactory new maggi el755 localhost 4000 5 3
|
||||
</pre>
|
||||
connects to power supply 3 at the EL755-controller connected to lnsa09
|
||||
at channel 5. The magnet is then available in the system as maggi. No
|
||||
@ -718,6 +637,90 @@ configures a magnet named maggi which is connectd to port 16 at the
|
||||
terminal server psts224. maggi can now be read and driven like any
|
||||
other environment device.
|
||||
</p>
|
||||
<h3><a name="dilu">Old Dilution</a> Cryostat (Obsolete)</h3>
|
||||
<p>
|
||||
This is a large ancient device for reaching very low temperatures. This
|
||||
cryostat can be configured into SICS with the command:
|
||||
<pre>
|
||||
EVFactory new Temp dillu computer port channel table.file
|
||||
</pre>
|
||||
Temp is the name of the dilution controller command in SICS, dillu is the
|
||||
keyword which selects the dilution driver, computer, port and channel are
|
||||
the parameters of the Macintosh-PC running the serial port server program.
|
||||
table.file is the fully qualified name of a file containing a translation
|
||||
table for this cryostat. The readout from the dilution controller is a
|
||||
resistance. This table allows to interpolate the temperature from the
|
||||
resistance measurements and back. Example:
|
||||
<pre>
|
||||
evfactory new temperature dillu lnsp19.psi.ch 4000 1 dilu.tem
|
||||
</pre>
|
||||
installs a new dilution controller into SICS. This controller is connected
|
||||
to port 1 at the Macintos-PC with the newtwork adress lnsp19.psi.ch. On this
|
||||
macintosh-PC runs a serial port server program listening at TCP/IP port
|
||||
4000. The name of the translation table file is dilu.tem.
|
||||
</p>
|
||||
<p>
|
||||
The dilution controller has no special commands, but two caveats: As of
|
||||
current (October 1998) setting temperatures does not work due to problems
|
||||
with the electronics. Second the dilution controller MUST be connected to
|
||||
port 1 as only this port supports the 4800 maximum baud rate this device
|
||||
digests.
|
||||
</p>
|
||||
<h3><a name="ltc11">Old CryoFurnace Controller (Obsolete)</a></h3>
|
||||
<p>
|
||||
The CryoFurnace at PSI is equipped with a Neocera LTC-11 temperature
|
||||
controller. This controller can control either an heater or an analag output
|
||||
channel. Futhermore a choice of sensors can be selected for controlling the
|
||||
device. The LTC-11 behaves like a normal SICS environment control device
|
||||
plus a few additional commands. An LTC-11 can be configured into SICS with
|
||||
the following command:
|
||||
<BLOCKQUOTE>
|
||||
evfactory new name ltc11 computer port channel
|
||||
</BLOCKQUOTE>
|
||||
</p>
|
||||
<p>
|
||||
name is a placeholder for the name of the device within SICS. A good
|
||||
suggestion is temperature.
|
||||
ltc11 is the keyword for selecting the LTC-11 driver. Computer is the name of
|
||||
the computer running David Maden's SerPortServer program, port is the
|
||||
port number at which the SerPortServer program listens.
|
||||
Channel is the RS-232 channel to which the controller has been
|
||||
connected. For example (at DMC):
|
||||
<pre>
|
||||
evfactory new temperature ltc11 localhost 4000 6
|
||||
</pre>
|
||||
</p>
|
||||
<p>
|
||||
creates a new command magnet for a LTC-11 temperature Controller connected to
|
||||
serial port 6 at lnsp18.
|
||||
</p>
|
||||
<p>
|
||||
The additional commands understood by the LTC-11 controller are:
|
||||
<dl>
|
||||
<dt>temperature sensor
|
||||
<dd> queries the current sensor used for temperature readout.
|
||||
<dt>temperature sensor val
|
||||
<dd> selects the sensor val for temperature readout.
|
||||
<dt>temperature controlanalog
|
||||
<dd> queries the sensor used for controlling the analog channel.
|
||||
<dt>temperature controlanalog val
|
||||
<dd> selects the sensor val for controlling the analog channel.
|
||||
<dt>temperature controlheat
|
||||
<dd> queries the sensor used for controlling the heater channel.
|
||||
<dt>temperature controlheat val
|
||||
<dd> selects the sensor val for controlling the heater channel.
|
||||
<dt>temperature mode
|
||||
<DD>queries if the LTC-11 is in analog or heater control mode.
|
||||
</dl>
|
||||
</p>
|
||||
<p>
|
||||
Further notes: As the CryoFurnace is very slow and the display at the
|
||||
controller becomes unusable when the temperature is read out to often, the
|
||||
LTC-11 driver buffers the last temperature read for 5 seconds. Setting the
|
||||
mode of the LTC-11 is possible by computer, but not yet fully understood and
|
||||
therefore unusable.
|
||||
</p>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
|
@ -24,19 +24,20 @@ these SICS client programs. SICS Clients and the SICServer communicate
|
||||
with each other through the TCP/IP network.
|
||||
</p>
|
||||
<p>
|
||||
Currently these SICS clients are available:
|
||||
Currently the following SICS clients are available:
|
||||
<uL>
|
||||
<li> A command line control client for sending commands to the SICS
|
||||
server and displaying its repsonses.
|
||||
<li> A status display for the powder diffractometers DMC and HRPT.
|
||||
<li> A status display for TOPSI.
|
||||
<li> A status display for SANS.
|
||||
<li> A status display for SANS and SANS2.
|
||||
<li> A status display for FOCUS.
|
||||
<li> A AMOR control and status program.
|
||||
<li> A triple axis control and status program.
|
||||
<li> A SICS variable watcher. This application graphically logs the
|
||||
change of a SICS variable over time. Useful for monitoring for
|
||||
instance temperature controllers.
|
||||
<li>A graphical client for TRICS.
|
||||
</ul>
|
||||
</p>
|
||||
<p>
|
||||
@ -71,12 +72,26 @@ following commands at the command prompt:
|
||||
<DD> for the triple axis status display and control application.
|
||||
<DT>varwatch &
|
||||
<DD> for the variable watcher.
|
||||
<dt>trics-&
|
||||
<dd>for the starting the TRICS graphical client.
|
||||
</dl>
|
||||
On a PC you may find icons for starting the different programs on the
|
||||
desktop.
|
||||
Each of these clients has usage instructions online which can be displayed
|
||||
through the help/about menu entry.
|
||||
</p>
|
||||
<p>
|
||||
Another option to start SICS clients is the Java Webstart mechanism
|
||||
which is available for most platforms. Java webstart requires both
|
||||
Java and Java webstart to be installed on the computer running the
|
||||
client. Then clients can be started directly from a WWW-page. The
|
||||
advantage is that clients are automatically updated in this system as
|
||||
soon as new version have been copied to the WWW-site. Installation
|
||||
instructions for Java webstart and links to start all SICS clients
|
||||
though this mechanism can be found at:
|
||||
<a href="http://lns00.psi.ch/sics/wstart"> the SICS webstart</a>
|
||||
page. This service is only accessible within the PSI network.
|
||||
</p>
|
||||
<h2>Connecting</h2>
|
||||
<p>
|
||||
After startup any SICS client is not connected to a SICS server and thus not
|
||||
@ -101,11 +116,11 @@ the SICS server log in as the instrument user at the instrument computer and
|
||||
invoke the appropriate command to start the server. These are:
|
||||
<dl>
|
||||
<DT>DMC
|
||||
<DD>Computer = lnsa05,User = DMC
|
||||
<DD>Computer = lnsa05, User = DMC
|
||||
<DT>TOPSI
|
||||
<DD>Computer = lnsa07,User = TOPSI
|
||||
<DD>Computer = topsi, User = TOPSI
|
||||
<DT>SANS
|
||||
<DD>Computer = lnsa10,User = SANS
|
||||
<DD>Computer = sans, User = SANS
|
||||
<DT>TRICS
|
||||
<DD>Computer = lnsa18, User = TRICS
|
||||
<DT>HRPT
|
||||
@ -115,7 +130,7 @@ invoke the appropriate command to start the server. These are:
|
||||
<DT>AMOR
|
||||
<DD>Computer = lnsa14, User = AMOR
|
||||
<DT>TASP
|
||||
<DD>Computer = lnsa12, User = TASP
|
||||
<DD>Computer = tasp, User = TASP
|
||||
<DT>POLDI
|
||||
<DD>Computer = poldi, User = POLDI
|
||||
</dl>
|
||||
|
@ -11,7 +11,27 @@
|
||||
<p>
|
||||
<b> resetserver </b> resets the server after an interrupt.</p>
|
||||
<p>
|
||||
<b> dir </b> a single word command which lists all objects available in the SICS system in its current configuration.</p>
|
||||
<b> dir </b> a command which lists objects available in the SICS
|
||||
system. Dir without any options prints a list of all objects. The
|
||||
list can be restricted with:
|
||||
<dl>
|
||||
<dt>dir var
|
||||
<dd>prints all SICS primitive variables
|
||||
<dt>dir mot
|
||||
<dd>prints a list of all motors
|
||||
<dt>dir inter driv
|
||||
<dd> prints a list of all drivable objects. This is more then motors
|
||||
and includes virtual motors such as environment devices and wavelength
|
||||
as well.
|
||||
<dt>dir inter count
|
||||
<dd>Shows everything which can be counted upon.
|
||||
<dt>dir inter env
|
||||
<dd>Shows all currently configured environment devices.
|
||||
<dt>dir match wildcard
|
||||
<dd>lists all objects which match the wildcard string given in
|
||||
wildcard.
|
||||
</dl>
|
||||
</p>
|
||||
<p>
|
||||
<b> status </b> A single word command which makes SICS print its current
|
||||
status. Possible return values can be:
|
||||
@ -45,5 +65,12 @@ above and restores SICS to the state it was in when the status was saved with
|
||||
backup. If no file argument is given the system default file gets
|
||||
read.
|
||||
</p>
|
||||
<p>
|
||||
<b>killfile</b> decrements the data number used for SICS file writing
|
||||
and thus consequently overwrites the last datafile. This is useful
|
||||
when useless data files have been created during tests. As this is
|
||||
critical command in normal user operations, this command requires
|
||||
managers privilege.
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
||||
|
1
doc/user/tascommands.html
Normal file
1
doc/user/tascommands.html
Normal file
@ -0,0 +1 @@
|
||||
<h2><a name="Commands">TASMAD Commands</a></h2>
|
@ -72,9 +72,9 @@
|
||||
e.g. ALF1-ALF4 (carry out command given on variables between ALF1 and
|
||||
ALF4 in storage order; see section V)
|
||||
e.g. DM,ALF1-ALF4,SS,DA (a combination of the above) Variables separated
|
||||
by commas need not be typed in their order of storage in THE Program.
|
||||
by commas need not be typed in their order of storage in the program.
|
||||
|
||||
Note : that for this type of syntax (type a) the only acceptable
|
||||
Note : that for this type of syntax (type A) the only acceptable
|
||||
variable separators are ' ' (i.e. a space), ',' and '-' (' ' and ','
|
||||
are equivalent).
|
||||
|
||||
@ -87,9 +87,9 @@
|
||||
variables in storage [QK, QL] take the values 0 and 2 )
|
||||
e.g. QH=1,0,2.0,AS=3.24,CC=90 (a combination of the above)
|
||||
|
||||
In commands involving this construction type (B) THE Program echoes
|
||||
the variable names and values it has understood.
|
||||
Possible separators are ',' and ' ' ('space')
|
||||
In commands involving this construction type (B) the program echoes
|
||||
the variable names and values it has understood.
|
||||
Possible separators are ',' and ' ' ('space')
|
||||
|
||||
There is a third type of commands which requires no parameters. These
|
||||
commands are:-
|
||||
@ -159,7 +159,7 @@
|
||||
<pre>
|
||||
|
||||
CO(UNT) : Counts for a given preset TIme or MoNitor.
|
||||
This is a command of type b syntax. If the command is issued alone,
|
||||
This is a command of type B syntax. If the command is issued alone,
|
||||
the preset used will be that most recently set. However, the preset
|
||||
may also be specified on the same line as the COUNT command.
|
||||
(For use of COnt in a P.A. file, see SCan and PA).
|
||||
@ -223,11 +223,11 @@
|
||||
new position and the appropriate variable is altered in the memory.
|
||||
|
||||
A DRIVE command will fail (non destructively) if:
|
||||
l a motor or power supply is protected or fixed
|
||||
l a software or hard limit is exceeded; the soft limits may be changed
|
||||
- a motor or power supply is protected or fixed
|
||||
- a software or hard limit is exceeded; the soft limits may be changed
|
||||
if necessary using the SET command provided the value desired is
|
||||
within the allowed range.
|
||||
l there is ambiguity among the driven variables.
|
||||
- there is ambiguity among the driven variables.
|
||||
e.g. DR KI=2.662,A2=40<CR>
|
||||
sets two different targets for A2 and fails.
|
||||
|
||||
@ -332,7 +332,7 @@
|
||||
(within a certain tolerance) to the positions.
|
||||
Clear exceptions are for a power supply which has
|
||||
been turned disabled, the abort of a DRive via
|
||||
^C^C and, for instance, the incident wavevector
|
||||
Interrupt and, for instance, the incident wavevector
|
||||
after a drive of A1 or A2.
|
||||
</pre>
|
||||
<h3><a name="LOG">LOG</a></h3>
|
||||
@ -379,7 +379,7 @@
|
||||
non-zero.(This is because it no longer behaves as a flipper.)
|
||||
|
||||
Note that the ON and OFF commands are the only ones which can be used
|
||||
to change F1 and F2. Both ON and OFF are of type Asyntax.
|
||||
to change F1 and F2. Both ON and OFF are of type A syntax.
|
||||
|
||||
|
||||
</pre>
|
||||
@ -398,8 +398,9 @@
|
||||
be printed for every point in every scan until disabled.
|
||||
Typing OU with NO following variables will stop the output of ALL
|
||||
variables apart from scanned ones.
|
||||
Type A syntax. A variable that has to be output because it is scanned a
|
||||
nd has also been selected with the OUT command will only be output once.
|
||||
Type A syntax. A variable that has to be output because it is scanned
|
||||
and has also been selected with the OUT command will only be output
|
||||
once.
|
||||
|
||||
e.g. OU A3,A4<CR>
|
||||
A3 & A4 will be printed in addition to the scan variables.
|
||||
@ -546,23 +547,9 @@
|
||||
|
||||
2) data files :
|
||||
|
||||
All of this data is also output to a disk file. This file is called
|
||||
either TEMP##.SCN or SV####.SCN where # represents a digit between 0
|
||||
and 9. Both types of data files are used sequentially and thus
|
||||
periodically overwritten but obviously the TEMP##.SCN files disappear
|
||||
sooner.
|
||||
|
||||
A scan initiated from the terminal will be stored in a TEMP file
|
||||
(unless the appropriate SWITCH is on ) while scans input from .JOB files
|
||||
are always saved permanently. The TEMP files are lost ( but see SAVE).
|
||||
For more details on data files see section VI below.
|
||||
|
||||
All SV####.SCN files are copied to the mainframe computer automatically
|
||||
and transfered to the SPECTRA database for Backup and archiving. They
|
||||
can be accessed by the SPECTRA program or by the 3-axis programs (PKFIT
|
||||
or FILING).
|
||||
Programs for manipulating data files are described in another manual
|
||||
(PKFIT, FILING, LOOK, LIST, LHEAD etc.)
|
||||
All tas####.dat files are copied to the mainframe computer
|
||||
automatically.
|
||||
|
||||
3) Scan output :
|
||||
|
||||
@ -602,7 +589,7 @@
|
||||
|
||||
As with the DRIVE command, scans in Q-E space are carried out at fixed
|
||||
KI (FX=1) or fixed KF (FX=2). During a scan with Kf fixed (i.e.FX=2)
|
||||
THE Program will automatically check and adjust A5 and A6; for Ki
|
||||
the program will automatically check and adjust A5 and A6; for Ki
|
||||
fixed (FX=1) however, MAD Program will not adjust at check and adjust
|
||||
at every point A1 and A2 because these variables are not likely to
|
||||
move in a Ki-fix scan.
|
||||
@ -680,9 +667,9 @@
|
||||
described below. In response to the command <em>SW</em>, MAD
|
||||
generates output of the following form:
|
||||
|
||||
1 Powder Mode OFF
|
||||
2 Polarization mode OFF
|
||||
Give Switch Number to change or RETURN to finish >
|
||||
1 Powder Mode OFF
|
||||
2 Polarization mode OFF
|
||||
Give Switch Number to change or RETURN to finish >
|
||||
|
||||
To change a value of one switch, enter the appropriate number
|
||||
(from 1 to 2) and hit <Return>. To make no change, type
|
||||
@ -847,7 +834,7 @@ however, corresponds to a transmission minimum for Ki neutrons.
|
||||
by SET.
|
||||
|
||||
The following list gives the variable identifiers and definitions,
|
||||
where the order is as the variables are stored in THE Program.
|
||||
where the order is as the variables are stored in the program.
|
||||
|
||||
|
||||
P.A Variables : Variables marked with an asterisk are not recognized
|
||||
|
1
doc/user/tasvariables.html
Normal file
1
doc/user/tasvariables.html
Normal file
File diff suppressed because one or more lines are too long
@ -345,6 +345,7 @@ H H L
|
||||
%html histogram.htm 2
|
||||
%html nextrics.htm 2
|
||||
%html peaksearch.htm 2
|
||||
%html lowmax.htm 2
|
||||
%html trscan.htm 2
|
||||
|
||||
%html psddata.htm 1
|
||||
|
@ -11,6 +11,7 @@ TRICS with a PSD requires the following special features.
|
||||
histogram memory</a>.
|
||||
<li><a href="nextrics.htm">NeXus</a> data handling for TRICS.
|
||||
<li>A <a href="peaksearch.htm">peak search</a> command.
|
||||
<li>A <a href="lowmax.htm">local maximum search</a> command.
|
||||
<li>A TRICS specific <a href="trscan.htm">count and scan</a> command.
|
||||
</ul>
|
||||
</p>
|
||||
|
@ -41,7 +41,11 @@ This means the log file has been started at August, 8, 2001 at 00:01:01.
|
||||
There is a new log file daily. Load appropriate files into the editor and
|
||||
look what really happened.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Another good ideas is to use the unix command grep on assorted log
|
||||
files. A grep for the strings ERROR or WARNING will more ofteh then
|
||||
not give an indication for the nature of the problem.
|
||||
</p>
|
||||
<p>
|
||||
The log files show you all commands given and all the responses of the system.
|
||||
Additionally there are hourly time stamps in the file which allow to narrow
|
||||
@ -63,12 +67,8 @@ The log files show you all commands given and all the responses of the system.
|
||||
<dt>EL737__BAD_BSY
|
||||
<dd>A counting operation was aborted while the beam was off. Unfortunately,
|
||||
the counter box does not respond to commands in this state and ignores the
|
||||
stop command sent to it during the abort operation. This can be resolved by
|
||||
the command:
|
||||
<pre>
|
||||
counter stop
|
||||
</pre>
|
||||
when the beam is on again.
|
||||
stop command sent to it during the abort operation. This can be
|
||||
safely ignored, SICS fixes this condition.
|
||||
</dl>
|
||||
</p>
|
||||
<h2>Starting SICS</h2>
|
||||
|
34
doc/user/trscan.htm
Normal file
34
doc/user/trscan.htm
Normal file
@ -0,0 +1,34 @@
|
||||
<HTML>
|
||||
<HEAD>
|
||||
<TITLE>TRICS specific Count and Scan Command </TITLE>
|
||||
</HEAD>
|
||||
<BODY>
|
||||
<H1>PSD-TRICS Count and Tricsscan Command</H1>
|
||||
<P>
|
||||
Two special commands have been defined for TRICS with a PSD:
|
||||
<dl>
|
||||
<dt>count <tt>mode preset </tt>
|
||||
<dd>counts with all three detectors. The parameter mode defines which
|
||||
counting mode is used, supported are <b>preset</b> for counting up to a
|
||||
preset monitor or <b>timer</b> for counting for a specified time intervall.
|
||||
The second prameter preset is either the preset monitor or the preset
|
||||
counting time, depending on the mode choosen. Both parameters are
|
||||
optional, if they are notc specified values from the last run will be used.
|
||||
count does not store any data.
|
||||
<dt>tricsscan <tt>start step np mode preset</tt>
|
||||
<dd>This command creates a new data file and then performs a scan in omega,
|
||||
storing meausured data after each step. <tt>start step np</tt> define the
|
||||
scan range in omega. Start is the start position, step the step width to
|
||||
use and np is the number of steps to do. The optional parameters mode and
|
||||
preset have the same meaning as in the count command described above.
|
||||
Mode and preset how data is collected at each step in omega.
|
||||
<dt>psdrefscan filename step np mode preset
|
||||
<dd>reads reflection HKL values from file filename and performs
|
||||
tricsscans for each reflection. These will be done eith step width
|
||||
step, the number of steps np with counting mode mode and a preset of
|
||||
preset. These parameters have the same meaning as described above.
|
||||
</dl>
|
||||
</P>
|
||||
|
||||
</BODY>
|
||||
</HTML>
|
104
doc/user/userrefman
Normal file
104
doc/user/userrefman
Normal file
@ -0,0 +1,104 @@
|
||||
\documentclass[12pt,a4paper]{report}
|
||||
%%\usepackage[dvips]{graphics}
|
||||
%%\usepackage{epsf}
|
||||
\setlength{\textheight}{24cm}
|
||||
\setlength{\textwidth}{16cm}
|
||||
\setlength{\headheight}{0cm}
|
||||
\setlength{\headsep}{0cm}
|
||||
\setlength{\topmargin}{0cm}
|
||||
\setlength{\oddsidemargin}{0cm}
|
||||
\setlength{\evensidemargin}{0cm}
|
||||
\setlength{\hoffset}{0cm}
|
||||
\setlength{\marginparwidth}{0cm}
|
||||
|
||||
\begin{document}
|
||||
%html -d hr " "
|
||||
%html -s report
|
||||
\begin{center}
|
||||
\begin{huge}
|
||||
SICS Master User Manual\\
|
||||
\end{huge}
|
||||
\today \\
|
||||
Dr. Mark K\"onnecke \\
|
||||
Labor f\"ur Neutronenstreuung\\
|
||||
Paul Scherrer Institut\\
|
||||
CH--5232 Villigen--PSI\\
|
||||
Switzerland\\
|
||||
\end{center}
|
||||
\clearpage
|
||||
\clearpage
|
||||
\tableofcontents
|
||||
\clearpage
|
||||
|
||||
\chapter{Introduction}
|
||||
This is the master user manual for SICS. It gives an overview over all
|
||||
command implemented, independent of a specific instrument. This is to
|
||||
be used as the source for more instrument specific user manuals and
|
||||
gives an overview of the commands available within SICS. Please note,
|
||||
that many instruments have special commands realized as scripts in the
|
||||
SICS built in scripting language. Only the most common of such
|
||||
commands are listed here.
|
||||
|
||||
\chapter{System Commands and Concepts}
|
||||
%html sicsinvoc.htm 2
|
||||
%html basic.htm 2
|
||||
%html logging.htm 2
|
||||
%html logbook.htm 3
|
||||
%html commandlog.htm 3
|
||||
%html batch.htm 2
|
||||
%html macro.htm 3
|
||||
%html buffer.htm 3
|
||||
%html token.htm 2
|
||||
%html system.htm 2
|
||||
%html config.htm 2
|
||||
%html madsim.htm 2
|
||||
%html trouble.htm 2
|
||||
|
||||
|
||||
\chapter{Hardware Related Commands}
|
||||
%html drive.htm 1
|
||||
%html motor.htm 2
|
||||
%html chopper.htm 2
|
||||
%html counter.htm 2
|
||||
%html count.htm 2
|
||||
%html histogram.htm 2
|
||||
%html samenv.htm 2
|
||||
%html ctrl.htm 2
|
||||
%html velocity.htm 2
|
||||
%html velolambda.htm 2
|
||||
|
||||
\chapter{Common User Commands}
|
||||
%html topscan.htm 2
|
||||
%html hkl.htm 2
|
||||
%html optimise.htm 2
|
||||
%html xytable.htm 2
|
||||
%html lowmax.htm 2
|
||||
|
||||
\chapter{PSI Specific Commands}
|
||||
\section{Commands specific to the TOF--diffractometer FOCUS}
|
||||
%html focussps.htm 3
|
||||
%html fowrite.htm 3
|
||||
|
||||
\section{Reflectometer AMOR specific Commands}
|
||||
%html amor2t.htm 3
|
||||
%html amorstore.htm 3
|
||||
%html amortof.htm 3
|
||||
|
||||
\section{TRICS Specific Commands}
|
||||
%html hklscan.htm 3
|
||||
%html trscan.htm 3
|
||||
%html mesure.htm 3
|
||||
%html nextrics.htm 3
|
||||
%html peaksearch.htm 3
|
||||
|
||||
\section{Fourier Diffractometer POLDI Specific Commands}
|
||||
%html poldiscan.htm 2
|
||||
%html poldiwrite.htm 3
|
||||
|
||||
\section{Triple Axis Spectrometer Specific Commands}
|
||||
%html tasmad.html 3
|
||||
%html tasvariables.html 3
|
||||
%html tascommands.html 3
|
||||
|
||||
|
||||
\end{document}
|
359
doc/user/xds.htm
Normal file
359
doc/user/xds.htm
Normal file
@ -0,0 +1,359 @@
|
||||
<HTML>
|
||||
<HEAD>
|
||||
<TITLE>TRICS Data Analysis with XDS</TITLE>
|
||||
</HEAD>
|
||||
<BODY>
|
||||
<H1>TRICS Data Analysis with XDS</H1>
|
||||
<P>
|
||||
A set of programs exist for TRICS data analysis which have been derived from
|
||||
the XDS package designed and written by Wolfgang Kabsch. Due to the different
|
||||
diffraction geometry at TRICS the program had to be subdivided. Data Analysis
|
||||
with this system requires four steps:
|
||||
<ol>
|
||||
<li>Location of strong diffraction spots with the program <b>spots</b>.
|
||||
<li>Indexing of diffraction spots and refining of a UB matrix with programs of
|
||||
your choice.
|
||||
<li>Integration of the diffraction spots with the program <b>reflex</b>.
|
||||
<li>Optionally, reflections collected in various runs can be merged
|
||||
with the program <b>xscale</b>.
|
||||
</ol>
|
||||
The main limitation of this software is that only reflections at normal
|
||||
lattice positions can be analysed. Magnetic or superstructure reflections
|
||||
will not be integrated due to the fact that XDS uses predicted reflection
|
||||
positions for integration and has no facilities to predict either magnetic
|
||||
or superstructure reflections.
|
||||
</P>
|
||||
<h2>LEGAL STUFF</h2>
|
||||
<p>
|
||||
The programs <b>spots</b>, <b>reflex</b>and <b>xscale</b> are no
|
||||
official versions of XDS. The responsability for these programs lies
|
||||
with PSI and not with Wolfang
|
||||
Kabsch. Binaries of the above mentioned programs may be distributed, but
|
||||
according to an agreement with Wolgang Kabsch the source code may not be
|
||||
redistributed. If you are interested in an official version of XDS, please
|
||||
contact Wolgang Kabsch directly.
|
||||
</p>
|
||||
|
||||
<h2><b>Spots</b> and <b>reflex</b> Control File</h2>
|
||||
<p>
|
||||
The programs <b>spots</b> and <b>reflex</b> both require a control file
|
||||
to be specified as a command line parameter. The format of this control
|
||||
file resembles a Windows .ini file and is common for both programs. The syntax
|
||||
is: keyword = value.
|
||||
</p>
|
||||
|
||||
<h2>Running <b>spots</b></h2>
|
||||
<p>
|
||||
The purpose of <b>spots</b> is to search for strong diffraction spots
|
||||
in the data and write them out in a format suitable for
|
||||
indexing. spots can be started by typing:
|
||||
<pre>
|
||||
spots controlfile
|
||||
</pre>
|
||||
at the unix command prompt. All necessary parameters live in the
|
||||
control file. spots recognizes the following keywords in the control
|
||||
file:
|
||||
<dl>
|
||||
<dt>numfiles
|
||||
<dd>The number of files to process.
|
||||
<dt>fileXX
|
||||
<dd>Replace XX by the number of the file. For instance file00 is the
|
||||
first file to process. The value for this keyword is the filename to
|
||||
process.
|
||||
<dt>numdetectors
|
||||
<dd>The number of detectors to process. TRICS can have up to three
|
||||
detector banks, if the electronics group finally makes them available
|
||||
by an act of grace.
|
||||
<dt>det1dist, det2dist, det3dist
|
||||
<dd> The respective distances of the detectors from the sample
|
||||
positions.
|
||||
<dt>det1x, det2x, det3x
|
||||
<dd>The number of pixels each detector supports in the x-direction.
|
||||
<dt>det1y, det2y, det3y
|
||||
<dd>The number of pixels each detector supports in the y-direction.
|
||||
<dt>
|
||||
<dt>det1pixx, det2pixx,det3pixx
|
||||
<dd>The size of a detector pixel in x-direction in mm for each detector.
|
||||
<dt>det1pixy, det2pixy,det3pixy
|
||||
<dd>The size of a detector pixel in y-direction in mm for each
|
||||
detector.
|
||||
<dt>wavelength
|
||||
<dd>The neutron wavelength.
|
||||
<dt>bifile
|
||||
<dd>Switches on the writing of reflection positions converted to
|
||||
bissecting positions as from a normal four circle diffractometer. The
|
||||
value is the name of the file to which to write the list.
|
||||
<dt>nbfile
|
||||
<dd>Switches on the writing of reflection positions converted to
|
||||
normal beam positions as from a normal beamdiffractometer. The
|
||||
value is the name of the file to which to write the list.
|
||||
<dt>xyzfile
|
||||
<dd>Switches on the writing of reflection positions in XYZ format. The
|
||||
value is the name of the file to which to write the list.
|
||||
</dl>
|
||||
bifile, nbfile or xyzfile are choices. Chhose the one which fits best
|
||||
with your preferred indexing program.
|
||||
</p>
|
||||
<h2>Indexing and UB Matrix Refinement</h2>
|
||||
<p>
|
||||
For indexing a variety of programs are available:
|
||||
<ul>
|
||||
<li>The ancient combination of index and rafin from ILL. For a
|
||||
description see the four circle single detector section.
|
||||
<li><b>orient</b> A modern indexing program extracted from Difrac. It
|
||||
has originally been written by R. A. Jacobsen, Ames Research
|
||||
laboratory. orient will not only index the reflections found and
|
||||
determine a UB matrix. It will also refine the UB matrix based on the
|
||||
reflections given to it and tries to determine the space group as
|
||||
well.
|
||||
</ul>
|
||||
</p>
|
||||
<h3>Running <b>orient</b></h3>
|
||||
<p>
|
||||
In order to start orient, type <b>orient</b> at the unix prompt. A
|
||||
selection dialog for the file type will show up. Select 2, then give
|
||||
the path to the file created with the spots option bifile. You will
|
||||
also be asked for the neutron wavelength. The following dialogs are
|
||||
self explaining. When orient finishes, the new UB matrix can be found
|
||||
in either the LPT1 or printer.out file.
|
||||
</p>
|
||||
|
||||
<h2>Running <b>reflex</b></h2>
|
||||
<p>
|
||||
<b>reflex</b> is controlled through the same style control.ini file as
|
||||
used by spots. The options specified for <b>spots</b> have to be
|
||||
present in the control file for reflex as well. Additionally the
|
||||
following options are required:
|
||||
<dl>
|
||||
<dt>ub1, ub2, ub3
|
||||
<dd>The three rows of the UB-matrix as determined by one of the
|
||||
indexing programs.
|
||||
<dt>axis=0 0 -1
|
||||
<dd>These are the coordinates of the rotation axis in XDS's own
|
||||
coordinate system. Leave this at the values stated,
|
||||
everything else is shit if you are using TRICS.
|
||||
<dt>beam=0 1 0
|
||||
<dd>These are the coordinates of the incoming neutron beam in XDS's own
|
||||
coordinate system. Leave this at the values stated,
|
||||
everything else is shit if you are using TRICS.
|
||||
<dt>polarisation=.5 1 0 0
|
||||
<DD>Some values for handling X-ray polarisation. Leave at the values
|
||||
given.
|
||||
<dt>spacegroup
|
||||
<dd>Set this to the space group selected. Expected is the number of
|
||||
the space group as given in the international tables.
|
||||
<dt>divergence
|
||||
<dd>The beam divergence. See below for a comment.
|
||||
<dt>mosaic
|
||||
<dd>The crystal mosaic. mosaic and divergence together determine the
|
||||
size of the box in reciprocal space which will be integrated for each
|
||||
reflection. reflex writes a representation of the integration box and
|
||||
of the reflection to its output file (PROFIT.LP). Inspect this
|
||||
carefully. If reflections are cut of in the reflection box or the
|
||||
reflection box is to large, modify these values in order to achieve a
|
||||
good fit. As more experience is gathered, the instrument scientist
|
||||
will be able to provide you with reasonable defaults for these values.
|
||||
</dl>
|
||||
reflex is run by typing <b> reflex control.ini</b> at the unix
|
||||
prompt. control.ini is the name of the control file. PROFIT.LP is the
|
||||
main log file which shows what has been done. PROFIT.HKL is a binary
|
||||
file holding the reflections integrated.
|
||||
</p>
|
||||
|
||||
<h2>Running <b>xscale</b></h2>
|
||||
<p>
|
||||
xscale has not been modified since it has been received from
|
||||
W. Kabsch. Therefore the original documentation, reproduced below is
|
||||
still valid.
|
||||
<pre>
|
||||
C***********************************************************************
|
||||
C********************** DESCRIPTION OF FILES ***************************
|
||||
C***********************************************************************
|
||||
C *
|
||||
C XSCALE.INP (formatted sequential) *
|
||||
C ========== *
|
||||
C *
|
||||
C This file contains the input parameters you have to provide to run *
|
||||
C the XSCALE program.(free format) *
|
||||
C *
|
||||
C line # DESCRIPTION OF INPUT PARAMETERS *
|
||||
C *
|
||||
C 1 Resolution shell limits (Angstrom). Only the high resolution*
|
||||
C limit of each shell is given. Up to NRES (20) resolution *
|
||||
C shells will be accepted. The shell limits must be specified *
|
||||
C in decreasing order. The resolution shells are used to *
|
||||
C report statistical properties of the data sets as a function*
|
||||
C of resolution. *
|
||||
C 2 Space group number and unit cell parameters *
|
||||
C (Angstrom and degrees) *
|
||||
C 3... Each line describes a reflection file used for scaling *
|
||||
C and contains the following items: *
|
||||
C >Optional control character - or * of the following meaning *
|
||||
C -: ignore this data set (this line will be skipped) *
|
||||
C *: put all data sets to the same scale as this one; *
|
||||
C default is the first data set. *
|
||||
C >File name of data set used for scaling. *
|
||||
C The name must not be longer than 50 characters and *
|
||||
C intervening blanks are not allowed. *
|
||||
C >File type must be one of the three following keywords *
|
||||
C DIRECT: the file is of type XDS.HKL as generated by XDS. *
|
||||
C UNIQUE: the file is of type UNIQUE.HKL as produced by XDS.*
|
||||
C OLDHKL: the ASCII file consists of free format records *
|
||||
C H,K,L,INTENSITY,SIGMA *
|
||||
C The standard deviation SIGMA may be omitted and *
|
||||
C is estimated then as SIGMA=0.1*INTENSITY *
|
||||
C Reflection data files of type UNIQUE or OLDHKL *
|
||||
C may be unsorted and the reflection indices need *
|
||||
C not be the asymmetric indices. This simplifies *
|
||||
C the scaling of data sets generated by other *
|
||||
C programs than XDS. *
|
||||
C >Resolution window for accepting reflections from this file *
|
||||
C low resolution limit (Angstrom) *
|
||||
C high resolution limit (Angstrom) *
|
||||
C >Frame separation (mandatory for data sets of type DIRECT) *
|
||||
C specifying the maximum number of frames between FRIEDEL- *
|
||||
C pairs to be included in the estimated anomalous intensity *
|
||||
C difference. *
|
||||
C >Number of batches (optional for data sets of type DIRECT) *
|
||||
C This number gives the number of subdivisions of the *
|
||||
C rotation range covering the data set. Typically, it is *
|
||||
C the total rotation range divided by 2.5...5 degrees, but *
|
||||
C should not exceed a value of 36. This leads to at most *
|
||||
C 9*36=324 scaling factors for a single data set. The total *
|
||||
C number of scaling factors from all data sets together *
|
||||
C must not exceed the value given by "MAXFAC" (1000). *
|
||||
C >SAVE=file-name (optional); default file-name is XSCALE.HKL *
|
||||
C The type of the SAVE-file produced is UNIQUE. Symmetry *
|
||||
C related reflections from input data sets sharing the same *
|
||||
C SAVE-file are used after scaling to estimate a mean *
|
||||
C intensity, an anomalous intensity difference, and their *
|
||||
C standard deviations. Scaling factors for each data set *
|
||||
C are determined from all symmetry related reflections *
|
||||
C regardless whether they go to different SAVE-files. *
|
||||
C *
|
||||
C***********************************************************************
|
||||
C *
|
||||
C XSCALE.LP (formatted sequential) *
|
||||
C ========= *
|
||||
C *
|
||||
C This file contains the printed messages and results from running the *
|
||||
C XSCALE-program. *
|
||||
C *
|
||||
C***********************************************************************
|
||||
C *
|
||||
C Description of XSCALE input file format of type DIRECT as produced *
|
||||
C by XDS. *
|
||||
C *
|
||||
C XDS.HKL (unformatted direct access) *
|
||||
C ======= *
|
||||
C *
|
||||
C The corrected reflection intensities are saved on this unformatted *
|
||||
C direct access file of record length 68 bytes for each reflection. *
|
||||
C The file is sorted with respect to the unique reflection indices. *
|
||||
C This means: *
|
||||
C For each reflection with the original indices H,K,L all symmetry *
|
||||
C equivalent indices are generated including Friedel related ones. *
|
||||
C Among all these indices we choose the unique reflection indices *
|
||||
C HA,KA,LA in the following order: HA is the largest H-index, among *
|
||||
C those with the same HA-value select those with the largest K-index *
|
||||
C which is KA, and finally the largest L-index which is called LA. *
|
||||
C The unique indices HA,KA,LA thus found are packed into a 32-bit *
|
||||
C word KEY=(LA+511)+(KA+511)*1024+(HA+511)*1048576 . *
|
||||
C The reflections are then sorted in growing values of KEY. *
|
||||
C *
|
||||
C Record structure *
|
||||
C *
|
||||
C 16bit-WORD # CONTENTS *
|
||||
C 1 HA (The last record is indicated by HA=10000) *
|
||||
C 2 KA HA,KA,LA are the unique reflection indices. *
|
||||
C 3 LA Any two reflections have the same unique *
|
||||
C indices if and only if they are related by *
|
||||
C symmetry. (HA,KA,LA are integer*2) *
|
||||
C 4 H Original reflection indices H,K,L. *
|
||||
C 5 K H,K,L are integer*2. *
|
||||
C 6 L *
|
||||
C 7 S Identifying number of symmetry operator used *
|
||||
C to go from original to unique indices. *
|
||||
C (integer*2). A negative sign indicates that *
|
||||
C a mirror operation has been applied. This *
|
||||
C information may be useful if a special *
|
||||
C treatment for anomalous differences is *
|
||||
C required which goes beyond the method of *
|
||||
C the XDS-program. *
|
||||
C 8 IPEAK Percentage of observed reflection intensity. *
|
||||
C A value less than 100 indicates either a *
|
||||
C reflection overlap or bad spots in the profile*
|
||||
C 9 ICORR Percentage of correlation (integer*2) between *
|
||||
C observed and expected reflection profile. *
|
||||
C 10,11 FFADD LP-corrected intensity of this reflection *
|
||||
C obtained by straight summation of counts *
|
||||
C within spot region ( background subtracted). *
|
||||
C The intensity is also corrected for radiation *
|
||||
C damage and absorption. (real*4) *
|
||||
C 12,13 SDADD Standard deviation of FFADD.(real*4) *
|
||||
C 14,15 RLP Reciprocal LP-correction factor (real*4) *
|
||||
C 16 ABSCAY Combined absorption and decay correction *
|
||||
C factor*1000 (integer*2). *
|
||||
C In case you want to remove this calculated *
|
||||
C correction, divide intensities and standard *
|
||||
C deviations by ABSCAY/1000.0 . *
|
||||
C 17 IALFA IALFA and IBETA (both integer*2) are polar- *
|
||||
C 18 IBETA coordinates of the spindle axis in units of a *
|
||||
C hundreth of a degree. The lab coordinates of *
|
||||
C the spindle axis are: *
|
||||
C Ux=sin(BETA)*cos(ALPHA) *
|
||||
C Uy=sin(BETA)*sin(ALPHA) *
|
||||
C Uz=cos(BETA) *
|
||||
C where ALPHA=IALFA/5729.578, *
|
||||
C BETA =IBETA/5729.578. *
|
||||
C 19 IFRM Frame number at diffraction of this reflection*
|
||||
C (integer*2) *
|
||||
C 20 PHI Calculated spindle position for this *
|
||||
C reflection at diffraction in units of a *
|
||||
C hundreth of a degree. (integer*2) *
|
||||
C 21 IX, Calculated detector x- and y-coordinates for *
|
||||
C 22 IY this reflection at diffraction in units of a *
|
||||
C tenth of a pixel times 512.0/NX and 512.0/NY, *
|
||||
C respectively. NX, NY are the numbers of pixels*
|
||||
C along the detector X- and Y-axis. *
|
||||
C IX,IY are integer*2. *
|
||||
C 23-28 S0 Laboratory coordinates of direct beam wave- *
|
||||
C vector ( rec. Angstroem). S0 points from the *
|
||||
C x-ray source towards the crystal. *
|
||||
C 29-34 S1 Laboratory coordinates of scattered beam wave-*
|
||||
C vector. Length is 1.0/lambda (rec. Angstroem) *
|
||||
C S0 and S1 are real*4 arrays of length 3. S1 *
|
||||
C points from the crystal towards the detector. *
|
||||
C At diffraction, laboratory coordinates of the *
|
||||
C reflection H,K,L are: S1(.)-S0(.) *
|
||||
C *
|
||||
C***********************************************************************
|
||||
C *
|
||||
C Description of XSCALE input file format of type UNIQUE as produced *
|
||||
C by XDS. *
|
||||
C *
|
||||
C UNIQUE.HKL (formatted sequential) *
|
||||
C ========== *
|
||||
C *
|
||||
C DESCRIPTION OF SHORT OUTPUT FILE *
|
||||
C *
|
||||
C Symmetry related reflections are averaged and written with *
|
||||
C FORMAT(3I5,4E12.4). Each record consists of *
|
||||
C *
|
||||
C HA,KA,LA,INTENSITY,STANDARD DEVIATION OF INTENSITY, *
|
||||
C ANOMALOUS INTENSITY DIFFERENCE,STANDARD DEVIATION OF DIFFERENCE *
|
||||
C *
|
||||
C where HA,KA,LA are the unique reflection indices. The file is sorted *
|
||||
C with respect to these unique reflection indices. The last record *
|
||||
C is indicated by HA=10000. *
|
||||
C Unobserved ANOMALOUS INTENSITY DIFFERENCE and its STANDARD DEVIATION *
|
||||
C are both set to zero. *
|
||||
C *
|
||||
C***********************************************************************
|
||||
</pre>
|
||||
xscale can be started by typing <b>xscale</b> at the unix
|
||||
prompt. Please note that xscale expects an input file named XSCALE.INP
|
||||
in the current directory.
|
||||
</p>
|
||||
</BODY>
|
||||
</HTML>
|
Reference in New Issue
Block a user