<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook MathML Module V1.1b1//EN"
              "http://www.oasis-open.org/docbook/xml/mathml/1.1CR1/dbmathml.dtd">
<refentry>
    <refentryinfo>
        <keywordset>
            <keyword>Math Built-In Functions</keyword>
        </keywordset>
    </refentryinfo>
    <refmeta>
        <refentrytitle>Math Built-In Functions</refentrytitle>
        <refmiscinfo>
            <copyright>
                <year>2007-2010</year>
                <holder>The Khronos Group Inc. 
 Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and/or associated documentation files (the
"Materials"), to deal in the Materials without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Materials, and to
permit persons to whom the Materials are furnished to do so, subject to
the condition that this copyright notice and permission notice shall be included
in all copies or substantial portions of the Materials.</holder>
            </copyright>
        </refmiscinfo>
        <manvolnum>3</manvolnum>
    </refmeta>
    <refnamediv>
        <refname>Math Built-In Functions</refname> 
        <refpurpose>The table below describes the list of built-in math functions. These functions can take scalar or vector arguments. Click an item in the table for details about that function.</refpurpose> 
    </refnamediv>
     
<refsect1 id="springboard"><title></title>
<informaltable frame="all"><tgroup cols="4" align="center" colsep="1" rowsep="1">
    <colspec colnum="1" colwidth="25*" colname="col1" />
    <colspec colnum="2" colwidth="25*" colname="col2" />
    <colspec colnum="3" colwidth="25*" colname="col3" />
    <colspec colnum="4" colwidth="25*" colname="col4" />
    <tbody>
        <row>
            <entry><citerefentry><refentrytitle>acos</refentrytitle></citerefentry></entry>
            <entry><citerefentry href="acos"><refentrytitle>acosh</refentrytitle></citerefentry></entry>
            <entry><citerefentry href="acos"><refentrytitle>acospi</refentrytitle></citerefentry></entry>
            <entry><citerefentry><refentrytitle>asin</refentrytitle></citerefentry></entry>
        </row>
        <row>
            <entry><citerefentry href="asin"><refentrytitle>asinh</refentrytitle></citerefentry></entry>
            <entry><citerefentry href="asin"><refentrytitle>asinpi</refentrytitle></citerefentry></entry>
            <entry><citerefentry><refentrytitle>atan</refentrytitle></citerefentry></entry>
            <entry><citerefentry href="atan"><refentrytitle>atan2</refentrytitle></citerefentry></entry>
        </row>
        <row>
            <entry><citerefentry href="atan"><refentrytitle>atanh</refentrytitle></citerefentry></entry>
            <entry><citerefentry href="atan"><refentrytitle>atanpi</refentrytitle></citerefentry></entry>
            <entry><citerefentry href="atan"><refentrytitle>atan2pi</refentrytitle></citerefentry></entry>
            <entry><citerefentry><refentrytitle>cbrt</refentrytitle></citerefentry></entry>
        </row>
        <row>
            <entry><citerefentry><refentrytitle>ceil</refentrytitle></citerefentry></entry>
            <entry><citerefentry><refentrytitle>copysign</refentrytitle></citerefentry></entry>
            <entry><citerefentry><refentrytitle>cos</refentrytitle></citerefentry></entry>
            <entry><citerefentry href="cos"><refentrytitle>cosh</refentrytitle></citerefentry></entry>
        </row>
        <row>
            <entry><citerefentry href="cos"><refentrytitle>cospi</refentrytitle></citerefentry></entry>
            <entry><citerefentry href="erf"><refentrytitle>erfc</refentrytitle></citerefentry></entry>
            <entry><citerefentry><refentrytitle>erf</refentrytitle></citerefentry></entry>
            <entry><citerefentry><refentrytitle>exp</refentrytitle></citerefentry></entry>
        </row>
        <row>
            <entry><citerefentry href="exp"><refentrytitle>exp2</refentrytitle></citerefentry></entry>
            <entry><citerefentry href="exp"><refentrytitle>exp10</refentrytitle></citerefentry></entry>
            <entry><citerefentry href="exp"><refentrytitle>expm1</refentrytitle></citerefentry></entry>
            <entry><citerefentry><refentrytitle>fabs</refentrytitle></citerefentry></entry>
        </row>
        <row>
            <entry><citerefentry><refentrytitle>fdim</refentrytitle></citerefentry></entry>
            <entry><citerefentry><refentrytitle>floor</refentrytitle></citerefentry></entry>
            <entry><citerefentry><refentrytitle>fma</refentrytitle></citerefentry></entry>
            <entry><citerefentry><refentrytitle>fmax</refentrytitle></citerefentry></entry>
        </row>
        <row>
            <entry><citerefentry><refentrytitle>fmin</refentrytitle></citerefentry></entry>
            <entry><citerefentry><refentrytitle>fmod</refentrytitle></citerefentry></entry>
            <entry><citerefentry><refentrytitle>fract</refentrytitle></citerefentry></entry>
            <entry><citerefentry><refentrytitle>frexp</refentrytitle></citerefentry></entry>
        </row>
        <row>
            <entry><citerefentry><refentrytitle>hypot</refentrytitle></citerefentry></entry>
            <entry><citerefentry><refentrytitle>ilogb</refentrytitle></citerefentry></entry>
            <entry><citerefentry><refentrytitle>ldexp</refentrytitle></citerefentry></entry>
            <entry><citerefentry><refentrytitle>lgamma</refentrytitle></citerefentry></entry>
        </row>
        <row>
            <entry><citerefentry href="lgamma"><refentrytitle>lgamma_r</refentrytitle></citerefentry></entry>
            <entry><citerefentry><refentrytitle>log</refentrytitle></citerefentry></entry>
            <entry><citerefentry href="log"><refentrytitle>log2</refentrytitle></citerefentry></entry>
            <entry><citerefentry href="log"><refentrytitle>log10</refentrytitle></citerefentry></entry>
        </row>
        <row>
            <entry><citerefentry href="log"><refentrytitle>log1p</refentrytitle></citerefentry></entry>
            <entry><citerefentry href="log"><refentrytitle>logb</refentrytitle></citerefentry></entry>
            <entry><citerefentry><refentrytitle>mad</refentrytitle></citerefentry></entry>
            <entry><citerefentry href="mag"><refentrytitle>maxmag</refentrytitle></citerefentry></entry>
        </row>
        <row>       
            <entry><citerefentry href="mag"><refentrytitle>minmag</refentrytitle></citerefentry></entry>    
            <entry><citerefentry><refentrytitle>modf</refentrytitle></citerefentry></entry>
            <entry><citerefentry><refentrytitle>nan</refentrytitle></citerefentry></entry>
            <entry><citerefentry><refentrytitle>nextafter</refentrytitle></citerefentry></entry>
        </row>
        <row>
            <entry><citerefentry><refentrytitle>pow</refentrytitle></citerefentry></entry>
            <entry><citerefentry href="pow"><refentrytitle>pown</refentrytitle></citerefentry></entry>
            <entry><citerefentry href="pow"><refentrytitle>powr</refentrytitle></citerefentry></entry>
            <entry><citerefentry><refentrytitle>remainder</refentrytitle></citerefentry></entry>
        </row>
        <row>
            <entry><citerefentry><refentrytitle>remquo</refentrytitle></citerefentry></entry>
            <entry><citerefentry><refentrytitle>rint</refentrytitle></citerefentry></entry>
            <entry><citerefentry><refentrytitle>rootn</refentrytitle></citerefentry></entry>
            <entry><citerefentry><refentrytitle>round</refentrytitle></citerefentry></entry>
        </row>
        <row>
            <entry><citerefentry href="sqrt"><refentrytitle>rsqrt</refentrytitle></citerefentry></entry>
            <entry><citerefentry><refentrytitle>sin</refentrytitle></citerefentry></entry>
            <entry><citerefentry href="sin"><refentrytitle>sincos</refentrytitle></citerefentry></entry>
            <entry><citerefentry href="sin"><refentrytitle>sinh</refentrytitle></citerefentry></entry>
        </row>
        <row>
            <entry><citerefentry href="sin"><refentrytitle>sinpi</refentrytitle></citerefentry></entry>
            <entry><citerefentry><refentrytitle>sqrt</refentrytitle></citerefentry></entry>
            <entry><citerefentry><refentrytitle>tan</refentrytitle></citerefentry></entry>
            <entry><citerefentry href="tan"><refentrytitle>tanh</refentrytitle></citerefentry></entry>
        </row>
        <row>
            <entry><citerefentry href="tan"><refentrytitle>tanpi</refentrytitle></citerefentry></entry>
            <entry><citerefentry><refentrytitle>tgamma</refentrytitle></citerefentry></entry>
            <entry><citerefentry><refentrytitle>trunc</refentrytitle></citerefentry></entry>
        </row>
    </tbody>    
        
    </tgroup></informaltable>   
    <para></para><para>The table below describes the list of built-in math functions that are defined with the <constant>half_</constant> or <constant>native_</constant> prefix</para>
    <informaltable frame="all"><tgroup cols="4" align="center" colsep="1" rowsep="1">
    <colspec colnum="1" colwidth="25*" colname="col1" />
    <colspec colnum="2" colwidth="25*" colname="col2" />
    <colspec colnum="3" colwidth="25*" colname="col3" />
    <colspec colnum="4" colwidth="25*" colname="col4" />
    <tbody>
        <row>
            <entry><citerefentry href="cos"><refentrytitle>(half | native)_ cos</refentrytitle></citerefentry></entry>
            <entry><citerefentry href="divide"><refentrytitle>(half | native)_ divide</refentrytitle></citerefentry></entry>
            <entry><citerefentry href="exp"><refentrytitle>(half | native)_ exp</refentrytitle></citerefentry></entry>
            <entry><citerefentry href="exp"><refentrytitle>(half | native)_ exp2</refentrytitle></citerefentry></entry>
        </row> 
        <row>
            <entry><citerefentry href="exp"><refentrytitle>(half | native)_exp10</refentrytitle></citerefentry></entry>
            <entry><citerefentry href="log"><refentrytitle>(half | native)_ log</refentrytitle></citerefentry></entry>
            <entry><citerefentry href="log"><refentrytitle>(half | native)_ log2</refentrytitle></citerefentry></entry>
            <entry><citerefentry href="log"><refentrytitle>(half | native)_ log10</refentrytitle></citerefentry></entry>
        </row>
        <row>
            <entry><citerefentry href="pow"><refentrytitle>(half | native)_ powr</refentrytitle></citerefentry></entry>
            <entry><citerefentry href="recip"><refentrytitle>(half | native)_ recip</refentrytitle></citerefentry></entry>
            <entry><citerefentry href="sqrt"><refentrytitle>(half | native)_ rsqrt</refentrytitle></citerefentry></entry>
            <entry><citerefentry href="sin"><refentrytitle>(half | native)_ sin</refentrytitle></citerefentry></entry>
        </row>
        <row>
            <entry><citerefentry href="sqrt"><refentrytitle>(half | native)_ sqrt</refentrytitle></citerefentry></entry>
            <entry><citerefentry href="tan"><refentrytitle>(half | native)_ tan</refentrytitle></citerefentry></entry>
        </row>
    </tbody>    
        
    </tgroup></informaltable>   
    </refsect1>
    
    <refsect1 id="description"><title>Description</title>
        <para>
            The built-in math functions are not affected by the prevailing rounding mode in the calling environment, and always return the same value as they would if called with the round to nearest even rounding mode. 
        </para> 
        <para>
        The regular built-in math functions can take scalar or vector arguments. For any specific use of a function, the actual type has to be the same for all arguments and the return type, unless otherwise specified. For more information, see the reference page for a specific function.
        </para> 
        <para> 
        The built-in math functions are extended with <citerefentry><refentrytitle>cl_khr_fp64</refentrytitle></citerefentry> to include appropriate versions of functions that take <type>double</type> and <type>double{2|3|4|8|16}</type> as arguments and return values. They are also extended with <citerefentry><refentrytitle>cl_khr_fp16</refentrytitle></citerefentry> to include appropriate versions of functions that take <type>half</type> and <type>half{2|3|4|8|16}</type> as arguments and return values. 
        </para>
        <para>
            The vector versions of the math functions operate component-wise.
             The description is per-component.
        </para>
        <para>
        Support for denormal values is optional for <constant>half_</constant> functions. The <constant>half_</constant> functions may return any result allowed by section 7.5.3, even when -cl-denorms-are-zero is not in force. Support for denormal values is implementation-defined for <constant>native_</constant> functions.
        </para>
        <para>
            The math functions that are defined with the <constant>half_</constant> prefix are implemented with a minimum of 10-bits of accuracy i.e. an ULP value &lt;= 8192 ulp.
        </para>
        <para>
            The math functions that are defined with the <constant>native_</constant> prefix may map to one or more native device instructions and will typically have better performance compared to the corresponding functions (without the <constant>native_</constant> prefix) described. The accuracy (and in some cases the input range(s)) of these functions is implementation-defined.
        </para>
    </refsect1>

    
<!-- ================================ SPECIFICATION  -->
<!-- Set the "uri" attribute in the <olink /> element to the "named destination" for the PDF page
--> 
    <refsect1 id="specification"><title>Specification</title>
        <para>
            <imageobject>
                <imagedata fileref="pdficon_small1.gif" format="gif" />
            </imageobject>
                                                 
            <olink uri="mathFunctions">OpenCL Specification</olink>
        </para>
    </refsect1>     
    
<!-- ================================ ALSO SEE  --> 
    <refsect1 id="seealso"><title>Also see</title>
        <para>
            <citerefentry href="mathConstants"><refentrytitle>Symbolic Math Constants</refentrytitle></citerefentry>, 
            <citerefentry href="FP_CONTRACT"><refentrytitle>Floating Point Pragma</refentrytitle></citerefentry>, 
            <citerefentry href="macroLimits"><refentrytitle>Macros and Limits</refentrytitle></citerefentry> 
        </para>
    </refsect1> 
    

<!-- ============================== COPYRIGHT -->
<!-- Content included from copyright.inc.xsl -->

    <refsect3 id="Copyright"><title></title>
        <imageobject>
                <imagedata fileref="KhronosLogo.jpg" format="jpg" />
        </imageobject>
        <para />
    </refsect3>

</refentry>
