ModeratorTzero v1

Summary

Corrects the time of flight of an indirect geometry instrument by a time offset that is dependent on the energy of the neutron after passing through the moderator.

See Also

ModeratorTzeroLinear

Properties

Name

Direction

Type

Default

Description

InputWorkspace

Input

MatrixWorkspace

Mandatory

The name of the input workspace, containing events and/or histogram data, in units of time-of-flight

OutputWorkspace

Output

MatrixWorkspace

Mandatory

The name of the output workspace

EMode

Input

string

Indirect

The energy mode (default: Indirect). Allowed values: [‘Indirect’, ‘Direct’, ‘Elastic’]

tolTOF

Input

number

0.1

Tolerance in the calculation of the emission time, in microseconds (default:1)

Niter

Input

m

1

Number of iterations (default:1)

Description

Corrects the time of flight (TOF) by a time offset that is dependent on the energy of the neutron after passing through the moderator. A heuristic formula for the correction is stored in the instrument definition file. Below is shown the entry in the instrument file for the VISION beamline:

<!-- formula for t0 calculation. See http://muparser.sourceforge.net/mup_features.html#idDef2 for available operators -->
<parameter name="t0_formula" type="string">
  <value val="(incidentEnergy < 34.7332) ? 37.011296*incidentEnergy^(-0.052874) : (incidentEnergy < 88.7556) ? 124.267307*incidentEnergy^(-0.394282) : (incidentEnergy < 252.471) ? 963.775145*incidentEnergy^(-0.850919) : (incidentEnergy < 420.145) ? 33.225834*incidentEnergy^(-0.242105) : (incidentEnergy < 100000.0) ? 120.569231*incidentEnergy^(-0.455477) : 0.0" />
</parameter>

The recorded TOF=t0+ti+tf with

  • t0: emission time from the moderator

  • t1: time from moderator to sample or monitor

  • t2: time from sample to detector

This algorithm will replace TOF with TOF=TOFt0=ti+tf

For a direct geometry instrument, the incident energy E1 is the same for all neutrons. Hence, the moderator emission time is the same for all neutrons. For an indirect geometry instrument, E1 is different for each neutron and is not known. However, the final energy E2 selected by the analyzers is known.

  • t0=func(E1) , a function of the incident energy

  • t1=L1/v1 with L1 the distance from moderator to sample, and v1 the initial unknown velocity (E1=1/2mv12)

  • t2=L2/v2 with L2 the distance from sample to detector, and v2 is the final fixed velocity (E2=1/2mv22)

Note

We obtain TOF as an iterative process, taking into account the fact that the correction t0 is much smaller than ti+tf. Thus TOFt0(n)=L1/v1(n)+L2/v2 , n=0,1,2,.. Set t0(0)=0 and obtain v1(0) from the previous formula. From v1(0) we obtain E1(0) Set t0(1)=func(E1(0)) and repeat the steps until |t0(n+1)t0(n+1)|<tolTOF. With tolTOF=0.1microsecond, only one iteration is needed for convergence.

Here’s the result of applying ModeratorTzero to both the event list and the histogrammed data of a run in the VISION beamline. The transformation of either events or histograms shifts the curve to smaller TOF’s. The transformed curves are not supposed to be identical, but similar and differentiated from the original curve.

Summed Histogram
Elastic Line
Inelastic Peaks

For indirect instruments featuring an incoming neutron flux having a sufficiently narrow distribution of energies, a linear relationship between t0 and the wavelength of the incoming neutron can be established. This relation allows for coding of an algorithm with faster execution times. For indirect instruments that comply with these conditions, use of ModeratorTzeroLinear v1 is preferred.

Categories: AlgorithmIndex | CorrectionFunctions\InstrumentCorrections

Source

C++ header: ModeratorTzero.h

C++ source: ModeratorTzero.cpp