# Data Calculator

The Data Calculator dialog

The Data Calculator can be used to perform mathematical operations with datasets to create new datasets. The Data Calculator is accessed in GMS by selecting the Dataset Calculator in the Edit menu. It is accessed in WMS by selecting the Data Calculator command from the Edit menu. The components of the Data Calculator are as follows:

### Expression Field

The most important part of the Data Calculator is the Expression field. This is where the mathematical expression is entered. The expression should be formulated using the same rules that are used in formulating equations in a spreadsheet. Parentheses should be used to clearly indicate the preferred order of evaluation. There is no limit on the length of the expression. The operators in the expression should be limited to the operators shown in the bottom-right of the Data Calculator. The operands in the expression should consist of user-defined constants (e.g., 3.14159), or datasets.

### List of Datasets

All of the datasets associated with the active object (TIN, Grid, Mesh, or Scatter Point Set) are listed at the top of the Data Calculator. If a transient dataset is highlighted, the time steps are listed on the right side of the Data Calculator. When a dataset is used in an expression, the name of the dataset should NOT be used. Rather, the letter associated with the dataset should be used. For example, if a dataset is listed as "b. head1", the dataset is referenced in the expression simply as "b".

When a transient dataset is used in an expression, either a single time step or the entire sequence of time steps may be used. For example, the expression "abs(d:100)" creates a single (steady state) dataset representing the absolute value of the dataset at time = 100.0. However, the expression "abs(d:all)" creates a transient dataset representing the absolute value of each of the time steps in the original dataset.

### Result Name

When an expression is evaluated, a new dataset is created and the name of the new dataset is designated in the Result field.

### Operators

The allowable operators are listed in the bottom-right of the dialog. Selecting one of the operator buttons adds the selected operator to the end of the expression. However, the operators can also be typed directly in the expression field. The function of each of the operators is as follows:

Operator Function
+
-
Subtract
*
Multiply
/
Divide
(
Left parenthesis
)
Right parenthesis
log(x)
The base 10 logarithm of a dataset
ln(x)
The natural logarithm of a dataset
x^a
(x) raised to the (a) power. (x) and

(a) can be any mixture of constants and datasets

abs(x)
The absolute value of a dataset
sqrt(x)
The square root of a dataset
avg(x,y)
The average of two datasets
min(x,y)
The minimum of two datasets
max(x,y)
The maximum of two datasets
trunc(x,a,b)
Truncates a dataset (x) so that all

values are >= a and <= b

#### Operating With Transient Datasets

Each argument in the operators listed in the table above may be:

• A steady state (1 time step) dataset
• A specified time step of a transient dataset (i.e., x:#). In this case the # represents the index of the time step as specified in the Time steps window.
• A transient time step (i.e., x:all). These operations are only valid if all arguments/operands have matching time step values. In this case, the result will be a new transient dataset with identical time values as the arguments.

The data calculator supports an alternate format for computing attributes of a transient dataset. This alternate format applies to three of the operators. These operators compute a steady state (single time step) dataset that represents the spatially varied attribute operating on all the time steps.

Operator Function
ave(x:all)
The average, at each location, of all time steps in the dataset "x"
min(x:all)
The minimum, at each location, of all time steps in the dataset "x"
max(x:all)
The maximum, at each location, of all time steps in the dataset "x"

### Compute Button

Once an expression is formulated and a name for the resulting dataset has been specified, the expression can be evaluated by selecting the Compute button. At this point, the dataset is created and the name of the new dataset should appear in the list of datasets.