The EXP function returns the natural exponential function of *Expression*.

## Examples

### Example 1

Plot a Gaussian distribution with a 1/e width of 10 and a center of 50 by entering:

myPlot = PLOT(EXP(-(FINDGEN(100)/10. - 5.0)^2))

### Example 2

Create a simple PLOT of the decay of radioactive tritium (H^{3}) in a waste tank, beginning in 1995 and going for 35 years, given the following:

- initial concentration (
*N*_{0}) = 7,000,000 pCi/L - tank was sealed after initial filling
- half life tritium (
*t*_{1/2}) = 12.32 years - decay constant tritium (
*k*) = (-ln(2)/*t*_{1/2}) *t*= number of years from 1995- concentration in a given year (
*N*) =*N*_{0}*e*^{-kt}

Copy and paste the following code at the IDL command line to generate the plot below:

`; Decay constant of tritium.`

decay=(-(ALOG(2))/12.32)

`; Initial concentration in the tank in pCi/L.`

`ipCi=7000000`

`; Create the plot using 1995 as the base year.`

myPlot = PLOT((1995+FINDGEN(35)), (ipCi*EXP(decay*FINDGEN(35))), $

DIMENSIONS=[753, 500], XTITLE="Year", $

` TITLE="Simple Tritium Decay at Source (pCi/L)", $`

` YTITLE="Tritium Concentration (pCi/L)" )`

IDL creates the following plot:

## Syntax

*Result* = EXP(*Expression*)

## Return Value

Returns the natural exponential function of the given *Expression*.

## Arguments

### Expression

The expression to be evaluated. If *Expression* is double-precision floating or complex, the result is of the same type. All other types are converted to single-precision floating-point and yield floating-point results. The definition of the exponential function for complex arguments is:

EXP(*x*) = COMPLEX(*e*^{R}cos *I*, *e*^{R}sin *I*)

where:

*R* = real part of *x*, and *I* = imaginary part of *x*. If *Expression* is an array, the result has the same structure, with each element containing the result for the corresponding element of *Expression*.

## Keywords

### Thread Pool Keywords

This routine is written to make use of IDLâ€™s *thread pool*, which can increase execution speed on systems with multiple CPUs. The values stored in the !CPU system variable control whether IDL uses the thread pool for a given computation. In addition, you can use the thread pool keywords TPOOL_MAX_ELTS, TPOOL_MIN_ELTS, and TPOOL_NOTHREAD to override the defaults established by !CPU for a single invocation of this routine. See Thread Pool Keywords for details.

## Version History

Original |
Introduced |