\(\renewcommand\AA{\unicode{x212B}}\)
SaveHKLCW v1¶
Summary¶
Save a PeaksWorkspace to SHELX76 format required by WINGX
See Also¶
Properties¶
| Name | Direction | Type | Default | Description | 
|---|---|---|---|---|
| Workspace | Input | IPeaksWorkspace | Mandatory | PeaksWorkspace to be saved | 
| OutputFile | Input | string | Mandatory | Output File. Allowed values: [‘hkl’, ‘int’] | 
| Header | Input | boolean | True | If to include the header in the output | 
| DirectionCosines | Input | boolean | False | If to include the direction cosines output | 
Description¶
Input¶
This algorithm will save a peaks workspace to a SHELX76 formatted file which is made to be compatible with Fullprof and WINGX. This is a simplified version compared to SaveHKL v1 and it assumes a constant wavelength. It also assume integer HKL and will round to the nearest integer value.
For output with direction cosines the format is.
| h | k | l | F^2 | sigma(F^2) | N | IX | DX | IY | DY | IZ | DZ | 
|---|---|---|---|---|---|---|---|---|---|---|---|
| I4 | I4 | I4 | F8.2 | F8.2 | I4 | F8.5 | F8.5 | F8.5 | F8.5 | F8.5 | F8.5 | 
The corresponding format without direction cosines is.
| h | k | l | F^2 | sigma(F^2) | N | 
|---|---|---|---|---|---|
| I4 | I4 | I4 | F8.2 | F8.2 | I4 | 
The output file contains a short header containing the default title, format string and wavelength. See the docmentation for SaveHKL v1 for additional information about convetions in direction cosines.
Usage¶
Example: Output with direction cosines
# create a temporary workspace
ws = CreateSampleWorkspace()
# create the peaks workspace
peaks = CreatePeaksWorkspace(ws, NumberOfPeaks=0)
# set the UB, require for direction cosine calculation
SetUB(peaks)
# add some peaks
peaks.addPeak(peaks.createPeakHKL([1, 1, 1]))
peaks.addPeak(peaks.createPeakHKL([1, -1, 1]))
# Save the output
file_name = "Usage_Example.hkl"
path = os.path.join(os.path.expanduser("~"), file_name)
SaveHKLCW(peaks, path, DirectionCosines=True)
# Does the file exist? If it exists, print it!
if os.path.isfile(path):
    with open(path, 'r') as f:
         data = f.readlines()
    for entry in data:
        print(entry[:-1]) # leave out the last character to remove unnecessary newlines
Output: The resulting output file (Usage_Example.hkl) looks like this
Single crystal data
(3i4,2f8.2,i4,6f8.5)
0.66667  0   0
   1   1   1    0.00    0.00   1-1.00000 0.33333-0.00000-0.66667-0.00000-0.66667
   1  -1   1    0.00    0.00   1-1.00000 0.33333-0.00000 0.66667-0.00000-0.66667
Categories: AlgorithmIndex | Diffraction\DataHandling
Source¶
Python: SaveHKLCW.py