LoadSpiceAscii v1

../_images/LoadSpiceAscii-v1_dlg.png

LoadSpiceAscii dialog.

Summary

Load Spice data to workspaces in general.

Properties

Name Direction Type Default Description
Filename Input string Mandatory Name of SPICE data file. Allowed extensions: [‘.dat’]
FloatSampleLogNames Input str list   List of log names that will be imported as float property.
IntegerSampleLogNames Input str list   List of log names that will be imported as integer property.
StringSampleLogNames Input str list   List of log names that will be imported as string property.
IgnoreUnlistedLogs Input boolean False If it is true, all log names are not listed in any of above 3 input lists will be ignored. Otherwise, any log name is not listed will be treated as string property.
DateAndTimeLog Input str list date,MM/DD/YYYY,time,HH:MM:SS AM Name and format for date and time
OutputWorkspace Output TableWorkspace Mandatory Name of TableWorkspace containing experimental data.
RunInfoWorkspace Output MatrixWorkspace Mandatory Name of TableWorkspace containing experimental information.

Description

This algorithm is to import data file generated by SPICE, a data acquisition software used in HFIR , and record the data and run information to TableWorkspaces.

Format of SPICE data file

There are two parts of content in SPICE data file. One is the run information, in which line that starts with #.

In most cases, the run information is give as

# run info name = run info value

The other is the experimental data. The first item is an integer as the index of experimental data point.

Output Worskpaces

Two table worskpaces will be exported from the algorith.

‘OutputWorkspace’ is the table workspace containing the measured experimental data. Each row of it contains all the measured parameters of one data point.

‘RunInfoWorkspace’ is the table workspace that stores the run information, such as scan number, IPTS, sample information and etc.

Usage

Example - load a SPICE .dat file:

LoadSpiceAscii(Filename="HB2A_exp0231_scan0001.dat",
      IntegerSampleLogNames="Sum of Counts, scan, mode, experiment_number",
      FloatSampleLogNames="samplemosaic, preset_value, Full Width Half-Maximum, Center of Mass",
      OutputWorkspace="HB2A_0231_0001_Data",
      RunInfoWorkspace="HB2A_0231_Info")
datatbws = mtd['HB2A_0231_0001_Data']
infows = mtd['HB2A_0231_Info']

print "Number of measuring points = %d" % (datatbws.rowCount())
print "Number of columns in data workspace = %d" % (datatbws.columnCount())
propertylist = infows.getRun().getProperties()
print "Number of run information = %d" % (len(propertylist))
for i in xrange(len(propertylist)):
    print "Property %d: Name = %-20s." % (i, propertylist[i].name)
print "Sum of Counts = %d" % (infows.getRun().getProperty("Sum of Counts").value)
print "Center of Mass = %.5f +/- %.5f" % (infows.getRun().getProperty("Center of Mass").value,
    infows.getRun().getProperty("Center of Mass.error").value)

Output:

Number of measuring points = 61
Number of columns in data workspace = 70
Number of run information = 35
Property 0: Name = Center of Mass      .
Property 1: Name = Center of Mass.error.
Property 2: Name = Full Width Half-Maximum.
Property 3: Name = Full Width Half-Maximum.error.
Property 4: Name = Sum of Counts       .
Property 5: Name = analyzer            .
Property 6: Name = builtin_command     .
Property 7: Name = col_headers         .
Property 8: Name = collimation         .
Property 9: Name = command             .
Property 10: Name = date                .
Property 11: Name = def_x               .
Property 12: Name = def_y               .
Property 13: Name = experiment          .
Property 14: Name = experiment_number   .
Property 15: Name = latticeconstants    .
Property 16: Name = local_contact       .
Property 17: Name = mode                .
Property 18: Name = monochromator       .
Property 19: Name = preset_channel      .
Property 20: Name = preset_type         .
Property 21: Name = preset_value        .
Property 22: Name = proposal            .
Property 23: Name = runend              .
Property 24: Name = samplemosaic        .
Property 25: Name = samplename          .
Property 26: Name = sampletype          .
Property 27: Name = scan                .
Property 28: Name = scan_title          .
Property 29: Name = sense               .
Property 30: Name = time                .
Property 31: Name = ubconf              .
Property 32: Name = ubmatrix            .
Property 33: Name = users               .
Property 34: Name = run_start           .
Sum of Counts = 1944923
Center of Mass = 9.00076 +/- 0.00921

Categories: Algorithms | DataHandling\Text

Source

C++ source: LoadSpiceAscii.cpp

C++ header: LoadSpiceAscii.h