# + - * / ^ % (Arithmetic Operators)

## Syntax:

val1 op val2

 val1 - A scalar, series, or table. val2 - A scalar, series, or table.

## Returns:

If one or both of the expressions is a series, then a series results. The following is a list of type conversion rules:

 Integer + Integer yields Integer Integer + Real yields Real Integer + Series yields Series Real + Complex yields Complex Real + Series yields Series Complex + Real Series yields Complex Series

## Example:

128 + 13.29

displays the real result 141.29.

## Example:

W1: {1,2,0,4,5)

4 * (W1)

multiplies each element of the series by a factor of four and produces the new series {4, 8, 0, 16, 20}.

## Example:

-3 ^ 1.8

displays -7.224674.

## Example:

(-3) ^ 1.8

displays the complex result 5.844884 - 4.246557i.

Note that the ^ (power) operator has higher precedence than the – (unitary minus) operator.

## Example:

12 % 5 returns 2, the remainder when 12 is divided by 5.

## Example:

The right divide operator performs division such that

a b == b * (1 / a) == b / a

For example 10 5 == 5 * (1 / 10) == 5 / 10 == 0.5

## Example:

The .* and ./ operators perform standard scalar multiply and divide. For example:

a = {3, 6, 9};

b = a .* 3;

c = a ./ 3;

b == {9, 18, 27}

c == {1, 2, 3}

## Remarks:

The DEFAULT_MATH_VALUE and USE_DEFAULT_MATH_VALUE configuration parameters determine the result of exceptions for operations such as 1/0 and log(0).

If USE_DEFAULT_MATH_VALUE is 1, the value specified by DEFAULT_MATH_VALUE is returned.

If USE_DEFAULT_MATH_VALUE is 0, the internal exception value determined by the math processor is returned.

For example:

setconf("DEFAULT_MATH_VALUE", "0.0");

setconf("USE_DEFAULT_MATH_VALUE", "1");

a = 1 / 0;

setconf("USE_DEFAULT_MATH_VALUE", "0");

b = 1 / 0;

a == 0.0;

b == inf;

The ^ operator can return a complex result if the first expression is negative and the second expression has a non-zero fractional part.

See *^ (Matrix Multiply) to perform matrix multiplication.

See ^^ (Matrix Power) to raise a matrix to a power.

See \^ (Matrix Solve) to solve a system of equations.

See /^ (Matrix Right Division) to perform matrix right division.

See ' (Matrix Transpose) to transpose a matrix.

See DADiSP/VectorXL to optimize arithmetic operations on series.