OOMMF Home next up previous contents index
Next: ODT Table Concatenation: odtcat Up: Command Line Utilities Previous: Process Nicknames: nickname


ODT Derived Quantity Calculator: odtcalc

The odtcalc utility reads an ODT file on stdin that contains one or more tables, and prints to stdout an ODT file consisting of the same tables augmented by additional columns as controlled by command line arguments. This utility enables the calculation and recording of new data table columns that can be computed from existing columns.

Launching
The odtcalc launch command is:

tclsh oommf.tcl odtcalc [standard options] [var expr unit ...] \
    <infile >outfile
where
var expr unit ...
Each triplet of command line arguments determines the calculation to make for the production of a new column in the output data table. Each var value becomes the new Columns: entry in the data table header, labeling the new column of data. Each unit value becomes the new Units: entry in the data table header, reporting the measurement unit for the new column of data. Each expr value is a Tcl expression to be evaluated to compute each new data value to be stored in the new column of data. See below for more details.
<infile
odtcalc reads its input from stdin. Use the redirection operator ``<'' to read input from a file.
>outfile
odtcalc writes its output to stdout. Use the redirection operator ``>'' to send output to a file.

The computation of a new data value for each row of each new column of data is performed by passing the corresponding expr command line argument to Tcl's expr command. The standard collection of operators and functions are available. The value of other columns in the same row may be accessed by use of the column label as a variable name. For example, the value of the Iteration column can be used in expr by including the variable substitution $Iteration. When column labels include colons, the expr has the option of using just the portion of the column label after the last colon as the variable name. For example, the value of the Oxs_UZeeman::Bx column can be used in expr by including the variable substitution $Bx. When multiple triples specifying new data columns are provided, the values of earlier new columns may be used to compute the values of later new columns. The order of command line arguments controls the order of the new columns that are added to the right side of the data table.


OOMMF Home next up previous Contents index

OOMMF Documentation Team
May 11, 2021