Math Module
Jump to navigation
Jump to search
The math module defines XQuery Functions to perform mathematical operations, such as pi, asin and acos. All functions are preceded by the math: prefix. Some of the functions have also been specified in the Functions and Operators Specification of the upcoming XQuery 3.0 Recommendation.
math:pi
| Signatures | math:pi() as xs:double |
| Summary | Returns the value of the mathematical constant π. |
| Rules | This function returns the xs:double value whose lexical representation is 3.141592653589793. |
| Examples | The expression 2*math:pi() returns 6.283185307179586e0.The expression 60 * (math:pi() div 180) converts an angle of 60 degrees to radians. |
math:e
| Signatures | math:e() as xs:double |
| Summary | Returns the value of the mathematical constant e. |
| Rules | This function returns the xs:double value whose lexical representation is 2.718281828459045. |
| Examples | The expression 5*math:e() returns 13.591409142295225. |
math:sqrt
| Signatures | math:sqrt($arg as xs:double?) as xs:double? |
| Summary | Returns the square root of the argument. |
| Rules | If $arg is the empty sequence, the function returns the empty sequence.Otherwise the result is the xs:double value of the mathematical square root of $arg. |
math:sin
| Signatures | math:sin($arg as xs:double?) as xs:double? |
| Summary | Returns the sine of the argument, expressed in radians. |
| Rules | If $arg is the empty sequence, the function returns the empty sequence.Otherwise the result is the sine of $arg, treated as an angle in radians. |
math:cos
| Signatures | math:cos($arg as xs:double?) as xs:double? |
| Summary | Returns the cosine of the argument, expressed in radians. |
| Rules | If $arg is the empty sequence, the function returns the empty sequence.Otherwise the result is the cosine of $arg, treated as an angle in radians. |
math:tan
| Signatures | math:tan($ as xs:double?) as xs:double? |
| Summary | Returns the tangent of the argument, expressed in radians. |
| Rules | If $arg is the empty sequence, the function returns the empty sequence.Otherwise the result is the tangent of $arg, treated as an angle in radians. |
math:asin
| Signatures | math:asin($arg as xs:double?) as xs:double? |
| Summary | Returns the arc sine of the argument. |
| Rules | If $arg is the empty sequence, the function returns the empty sequence.Otherwise the result is the arc sine of $arg, returned as an angle in radians in the range -π/2 to +π/2. |
math:acos
| Signatures | math:acos($arg as xs:double?) as xs:double? |
| Summary | Returns the arc cosine of the argument. |
| Rules | If $arg is the empty sequence, the function returns the empty sequence.Otherwise the result is the arc cosine of $arg, returned as an angle in radians in the range 0 to +π. |
math:atan
| Signatures | math:atan($arg as xs:double?) as xs:double? |
| Summary | Returns the arc tangent of the argument. |
| Rules | If $arg is the empty sequence, the function returns the empty sequence.Otherwise the result is the arc tangent of $arg, returned as an angle in radians in the range -π/2 to +π/2. |
math:atan2
| Signatures | math:atan2($arg1 as xs:double?, $arg2 as xs:double?) as xs:double? |
| Summary | Returns the arc tangent of the first argument divided by the second argument, the result being in the range -π/2 to +π/2 radians. |
| Rules | If $arg1 is the empty sequence, the function returns the empty sequence.Otherwise the result is the arc tangent of $arg1 divided by $arg2, returned as an angle in radians in the range -π to +π. |
math:pow
| Signatures | math:pow($arg1 as xs:double?, $arg2 as xs:double?) as xs:double? |
| Summary | Returns the first argument raised to the power of the second argument. |
| Rules | If $arg1 is the empty sequence, the function returns the empty sequence.Otherwise the result is the $arg1 raised to the power of $arg2. |
| Examples | The expression math:pow(2, 3) returns 8. |
math:exp
| Signatures | math:exp($arg as xs:double?) as xs:double? |
| Summary | Returns e raised to the power of the argument. |
| Rules | If $arg1 is the empty sequence, the function returns the empty sequence.Otherwise the result is the value of e raised to the power of $arg. |
| Examples | The expression math:exp(1) returns e. |
math:log
| Signatures | math:log($arg as xs:double?) as xs:double? |
| Summary | Returns the natural logarithm of the argument. |
| Rules | If $arg1 is the empty sequence, the function returns the empty sequence.Otherwise the result is the natural logarithm (base e) of $arg. |
| Examples | The expression math:log(math:e()) returns 1. |
math:log10
| Signatures | math:log10($arg as xs:double?) as xs:double? |
| Summary | Returns the base 10 logarithm of the argument. |
| Rules | If $arg1 is the empty sequence, the function returns the empty sequence.Otherwise the result is the base 10 logarithm of $arg. |
| Examples | The expression math:log(100) returns 2. |
math:random
| Signatures | math:random() as xs:double? |
| Summary | Returns a random value. |
| Rules | This function returns a random xs:double value between 0.0 and 1.0. |
math:sinh
| Signatures | math:sinh($arg as xs:double?) as xs:double? |
| Summary | Returns the hyperbolic sine of the argument. |
| Rules | If $arg is the empty sequence, the function returns the empty sequence.Otherwise the result is the hyperbolic sine of $arg. |
| Examples | The expression math:sinh(0) returns 0. |
math:cosh
| Signatures | math:cosh($arg as xs:double?) as xs:double? |
| Summary | Returns the hyperbolic cosine of the argument. |
| Rules | If $arg is the empty sequence, the function returns the empty sequence.Otherwise the result is the hyperbolic cosine of $arg. |
| Examples | The expression math:cosh(0) returns 1. |
math:tanh
| Signatures | math:tanh($arg as xs:double?) as xs:double? |
| Summary | Returns the hyperbolic tangent of the argument. |
| Rules | If $arg is the empty sequence, the function returns the empty sequence.Otherwise the result is the hyperbolic tangent of $arg. |
| Examples | The expression math:tanh(100) returns 1. |
--CG 17:59, 21 January 2011 (CET)