# NumericFunction

is an attribute that can be assigned to a symbol f to indicate that f[arg1,arg2,] should be considered a numeric quantity whenever all the argi are numeric quantities.

# Details # Examples

open allclose all

## Basic Examples(1)

Log has the NumericFunction attribute:

When Log has an argument that is a number, constant, or numeric, the result is numeric:

In most cases when NumericQ[expr] gives True, then N[expr] yields an explicit number:

## Scope(1)

Define f to be a numeric function:

If you have not assigned f to yield numerical values, then NumericQ gives misleading results:

Assign f to evaluate for arguments that are approximate numbers:

## Applications(2)

Consider the following two function definitions, where one has the NumericFunction attribute:

Define a function that evaluates faster for numeric input than for arbitrary input:

The evaluation of is faster when it is able to recognize that its argument can be treated as numeric:

Define a function that can represent an exact value:

Assign N[f[a]] to give the derivative with respect to a of the solution of an ODE at :

Assign f for approximate numbers:

f does not evaluate but represents a number:

It will work with any precision (within reasonable limits!):

A plot of the function:

## Properties & Relations(2)

Sin has the attribute NumericFunction:

The NumericFunction attribute informs NumericQ that Sin can be converted into a number when using N:

NumericQ can return True without having to evaluate N[Sin]:

Note that NumberQ returns False:

Some of the system symbols that are numeric functions: