\(\renewcommand\AA{\unicode{x212B}}\)

PDDetermineCharacterizations v1

../_images/ImageNotFound.png

Enable screenshots using DOCS_SCREENSHOTS in CMake

Summary

Determines the characterizations of a workspace.

Properties

Name

Direction

Type

Default

Description

InputWorkspace

Input

MatrixWorkspace

Workspace with logs to help identify frequency and wavelength

Characterizations

Input

TableWorkspace

Table of characterization information

ReductionProperties

Input

string

__pd_reduction_properties

Property manager name for the reduction

BackRun

Input

int list

0

Empty container run to use. 0 to use value in table, -1 to not use.

NormRun

Input

int list

0

Normalization run to use. 0 to use value in table, -1 to not use.

NormBackRun

Input

int list

0

Normalization background run to use. 0 to use value in table, -1 to not use.

EmptyEnv

Input

int list

0

Empty sample environment run to use. 0 to use value in table, -1 to not use.

EmptyInstr

Input

int list

0

Empty instrument run to use. 0 to use value in table, -1 to not use.

FrequencyLogNames

Input

str list

SpeedRequest1,Speed1,frequency,skf1.speed

Candidate log names for frequency

WaveLengthLogNames

Input

str list

LambdaRequest,lambda,skf12.lambda,BL1B:Det:TH:BL:Lambda,freq

Candidate log names for wave length

Description

This algorithm takes an InputWorkspace and Characterizations TableWorkspace and creates a PropertyManager with the appropriate characterization runs. This is done by determining the effective accelerator frequency and center wavelength and choosing the appropriate row from the table.

This algorithm is one of the workflow algorithms that helps SNSPowderReduction v1 and its child algorithm AlignAndFocusPowder v1.

Determining Frequency and Wavelength

The frequency is found by inspecting the logs (in order) SpeedRequest1, Speed1, and frequency. Whichever one has a nonzero value is used. Simlilarly, the wavelength is taken by inspecting LambdaRequest then Lambda. If either the frequency or wavelength cannot be determined, the algorithm will return a default PropertyManager with mostly zeros.

PropertyManager Contents

The PropertyManager will have the following keys and values. Listed in the table is also their default values. The “Alg Property” column is what property of this algorithm is used to override what is in the table. For all of those properties, “0” is interpreted as use the information from the supplied table, “-1” is interpreted as set the value to zero in the resulting PropertyManager.

Name

Type

Default

Alg Property

frequency

double

0

wavelength

double

0

bank

integer

1

vanadium

integerarray

[0]

NormRun

vanadium_background

integerarray

[0]

NormBackRun

container

integerarray

[0]

BackRun

empty_environment

integerarray

[0]

EmptyEnv

empty_instrument

integerarray

[0]

EmptyInstr

d_min

string

“”

d_max

string

“”

tof_min

double

0

tof_max

double

0

wavelength_min

double

0

wavelength_max

double

0

In the case of extra columns existing in the TableWorkspace denoting SampleContainer information: if the SampleContainer isn’t a property on the workspace, or the value isn’t one of the column labels, the value of the container column in the supplied TableWorkspace will be used instead.

For a description of the TableWorkspace see PDLoadCharacterizations.

Categories: AlgorithmIndex | Workflow\Diffraction\UsesPropertyManager

Source

C++ header: PDDetermineCharacterizations.h

C++ source: PDDetermineCharacterizations.cpp