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

SavePHX v1

Summary

Writes the detector geometry information of a workspace into a PHX format file.

See Also

SaveSPE

Properties

Name

Direction

Type

Default

Description

InputWorkspace

Input

MatrixWorkspace

Mandatory

The input workspace

Filename

Input

string

Mandatory

The filename to use for the saved data

Description

Saves the geometry information of the detectors in a workspace into a PHX format ASCII file. The angular positions and angular sizes of the detectors are calculated using FindDetectorsPar v1 algorithm.

Mantid generated PHX file is an ASCII file consisting of the header and 7 text columns. Header contains the number of the rows in the phx file excluding the header (number of detectors). The column has the following information about a detector:

Column Number

Column Description

1st

secondary flightpath,e.g. sample to detector distance (m)

2nd

0

3rd

scattering angle (deg)

4th

azimuthal angle (deg) (west bank = 0 deg, north bank = 90 deg etc.) Note the reversed sign convention wrt the .par files. For details, see: SavePAR v1

5th

angular width e.g. delta scattered angle (deg)

6th

angular height e.g. delta azimuthal angle (deg)

7th

 detector ID   – this is Mantid specific value, which may not hold similar meaning in files written by different applications.

In standard phx file only the columns 3,4,5 and 6 contain useful information. You can expect to find column 1 to be the secondary flightpath and the column 7 – the detector ID in Mantid-generated phx files only.

Usage

Example - Save PHX file

# import os functions to work with folders
import os
# create sample workspace
ws=CreateSampleWorkspace()
# test file name
file_name = os.path.join(config["defaultsave.directory"], "TestSavePhx.phx")
 # save the file
SavePHX(ws,Filename=file_name);

print("target file exists? {0}".format(os.path.exists(file_name)))

Output:

target file exists? True

Categories: AlgorithmIndex | DataHandling\SPE | Inelastic\DataHandling

Source

C++ header: SavePHX.h

C++ source: SavePHX.cpp