List of mathematical $functions

From m204wiki
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

As of Model 204 7.5, a set of high-performance, high-precision versions of the IBM mathematical $functions are built in to SOUL. These $functions, shown in the table below, eliminate the need to use external math libraries.

Note: Prior to version 7.5 of Model 204:

  • Your site could choose to use an external library instead of these integrated $functions. In such a case, these $functions would result in calls to the external library. For information on setting up an external math library for Model 204 version 7.4 or earlier, see your Model 204 installation guide for that version.
  • The high-performance, high-precision versions of these $functions were available as part of the Sirius Mods, and would be used if the SIRFUNC parameter has the X'01' bit turned on.

See Notation conventions for methods for information about the conventions followed in the $function descriptions.

Mathematical $function considerations

  • Error handling

    If invalid numerical values are passed to the mathematical functions (for example, a negative number to $Sqrt), an error message is printed at the user's terminal, and 0 is returned as the function's value.

Table of mathematical $functions

$FunctionDescription
$Abs(x)Absolute value
$ArcCos(x)Inverse cosine
$ArcSin(x)Inverse sine
$ArcTan(x)Arctangent
$ArcTan2(x,y)Arctangent of x/y
$Cos(x)Cosine of radian argument
$CosH(x)Hyperbolic cosine
$Cotan(x)Cotangent
$Erf(x)Error function
$ErfC(x)Complement error function
$Exp(x), $Exp_e(x)Get natural exponent of a number
$Exp2(x), $Exp_2(x)Get 2's exponent of a number
$Exp10(x), $Exp_10(x)Get 10's exponent of a number
$Gamma(x)Gamma function
$IxpI(x,y)Integer base, integer exponent
$LGamma(x)Log gamma function
$Log(x), $Log_e(x)Get natural log of a number
$Log2(x), $Log_2(x)Get log base 2 of a number
$Log10(x), $Log_10(x)Get log base 10 of a number
$Max(x1,x2,x3,x4,x5,x6,x7,x8)Return maximum of specified arguments
$Min(x1,x2,x3,x4,x5,x6,x7,x8)Return minimum of specified arguments
$PiValue of pi
$RxpI(x,y)Real base, integer exponent
$RxpR(x,y)Real base, real exponent
$Sin(x)Sine of radian argument
$SinH(x)Hyperbolic sine
$Sqrt(x)Square root of positive argument
$Tan(x)Tangent
$TanH(x)Hyperbolic tangent