sddsprocess APS.twi -define=column,sqrtBetax,"betax sqrt" -define=column,sqrtBetay,"betay sqrt"
Compute the horizontal beam-size, given by the equation
sddsprocess APS.twi -define=parameter,epsx,8.2e-9,units=nm -define=parameter,sigmaDelta,1e-3 -define=column,sigmax,"epsx betax * sigmaDelta etax * sqr + sqrt",units=m
sddsprocess [-pipe[=input][,output]] [inputFile] [outputFile] options
One or more range specifications may be combined to give a accept/reject status by employing the logic-operations, & (logical and) and | (logical or). For example, to select rows for which A is on [0, 1] and B is on [10, 20], one would use -filter=column,A,0,1,B,10,20,&.
If the first character of matchingString is ’@’, then the remainder of the string is taken to be the name of a parameter or column. In this case, the match is performed to the data in the named entity. For column-based matching, this is done row-by-row. For parameter-based matching, it is done page-by-page.
In addition, if instead of = one uses =+, then matching is case-insensitive. The plus sign is intended to be mnemonic, as the case-insensitive matching results in additional matches.
The use of several match tests and logic is done just as for -filter. For example, to match all the rows for which the column Name starts with ’A’ or ’B’, one could use -match=column,Name=A*,Name=B*,|. (This could also be done with -match=column,Name=[AB]*.)
If sourceName contains wildcards, then newName must contain at least one occurrence of the string “%s”. In this case, for each name that matches sourceName, an additional element is created, with a name created by substituting the name for “%s” in newName.
If sourceName contains wildcards, then newName must contain at least one occurrence of the string “%s”. In this case, for each name that matches sourceName, an additional element is created, with a name created by substituting the name for “%s” in newName.
If commandName contains wildcards, then newName must contain at least one occurrence of “%s”. In this case, for each name that matches commandName, an additional element is created, with a name created by substituting the name for “%s” in newName.
Using the select qualifier, it is possible to use a single -define option to specify
many instances of new column definitions. If select is given, the input is searched
for all the column names matching matchString. These are then optionally editted
using the editCommand specified with editSelection. The resulting strings are
then substituted one at a time into name and equation, replacing all occurances of
“%s”. For example, suppose a file contained a number of column-pairs of the form
PrefixV1 and PrefixV2; to take the difference of each pair, one could use
-define=column,%sDiff,%sV1 %sV2 -,select=*V1,edit=%/V1//
sddsprocess permits read access to individual elements of a column of data using
the rpn array feature. For each column, an array of name &ColumnName is created;
the ampersand is to remind the user that the variable &ColumnName is the address
of the start of the array. To get the first element of a column named Data, one would
use 0 &Data [. This will function only within or following a -define=column or
-redefine=column operation. It is an error to attempt to access data beyond the
bounds of an array.
The number of columns, and the current page and row number are pre-loaded into the rpn calculator memory according to the following table.
Quantity | rpn memory |
Page number | i_page |
Page number | table_number |
Row number | i_row |
Number of rows | n_rows |
For example, to generate a column of index number to a file, add the option -define=col,Index,i_row,type=long.
Recognized values for analysisName are:
Qualifiers for this switch are: