Supporting technologies

DAVE-ML relies on MathML, version 2.0, as a means to describe mathematical relationships. MathML is a low-level specification for describing mathematics as a basis for machine to machine communication. It is used in DAVE-ML to describe relationships between variables and function tables and may also be used for providing high-quality typeset documentation from the DAVE-ML source files. More information is available at the MathML home web page, found at http://www.w3.org/Math/.

MathML provides a fairly complete set of mathematical functions, including trigonometric, exponential and switching functions. One function that is available in most programming languages and computer-aided design tools, but is missing from MathML 2, is the two-argument arc tangent function which provides a continuous angle calculation by comparing the sine and cosine components of a two-dimensional coordinate set. Thus DAVE-ML provides a means to extend MathML 2 for a small predefined set of functions (currently only the 'atan2' function is supported). Thus, a DAVE-ML compliant processing tool should recognize this extension (which is accomplished using the valid MathML 2 'csymbol' element). See the variable definition element section for a discussion and an example of inserting an extension to MathML 2, the atan2 function, into a DAVE-ML calculation element.