MathUtils Namespace
MOOSE includes a number of C++ utility classes and functions that may be useful for developing applications with mathematical expressions.
Polynomial evaluations
MathUtils::poly
evaluates a polynomial for any integer order using the Horner's method of evaluation,
Clamp
MathUtils::clamp
returns a clamped value between an upper and lower bound, and respectively,
SmootherStep
MathUtils::smootherStep
returns a smoothed step transition between a starting and ending bounds, and respectively, for a given value , This method ensures a smooth transition from 0 to 1 between the two bounds, while also ensuring the first and second derivatives are zero at the two bounds. Use of this method is especially useful when transitioning between two non-smooth regimes. The derivative with respect to the passed value is returned using the optional derivative bool. Note that if , then zero will be returned.