* are defined in radians, and log is the natural logarithm. step(x) = 0 if x is less than 0, 1 otherwise. delta(x) = 1 if x is 0, 0 otherwise.
* are defined in radians, and log is the natural logarithm. step(x) = 0 if x is less than 0, 1 otherwise. delta(x) = 1 if x is 0, 0 otherwise.
* select(x,y,z) = z if x = 0, y otherwise. An expression may also involve intermediate quantities that are defined following the main expression, using ";" as a separator.
* select(x,y,z) = z if x = 0, y otherwise. An expression may also involve intermediate quantities that are defined following the main expression, using ";" as a separator.
*
* Expressions used in ComputePerDof and ComputeSum steps can also use the following
* functions that operate on vectors: cross(a, b) is the cross product of two
* vectors; dot(a, b) is the dot product of two vectors; _x(a), _y(a), and _z(a)
* extract a single component from a vector; and vector(a, b, c) creates a new
* vector with the x component of the first argument, the y component of the
* second argument, and the z component of the third argument. Remember that every
* quantity appearing in a vector expression is a vector. Functions that appear
* to return a scalar really return a vector whose components are all the same.
* For example, _z(a) returns the vector (a.z, a.z, a.z). Likewise, wherever a
* constant appears in the expression, it really means a vector whose components
* all have the same value.
*
*
* In addition, you can call addTabulatedFunction() to define a new function based on tabulated values. You specify the function by
* In addition, you can call addTabulatedFunction() to define a new function based on tabulated values. You specify the function by
* creating a TabulatedFunction object. That function can then appear in expressions.
* creating a TabulatedFunction object. That function can then appear in expressions.