expm1 - Compute exp(X)-1 accurately for small

  X - MATLAB ([original](https://in.mathworks.com/help/matlab/ref/double.expm1.html)) ([raw](?raw))

Main Content

Compute exp(X)-1 accurately for smallX

Syntax

Description

`Y` = expm1([X](#mw%5Fa073569b-cbf3-41bf-a27b-cae69c36cda6)) computesexp(X)-1 for each element in array X. This function is more accurate for small real values in X because it compensates for the round-off error in exp(X).

example

Examples

collapse all

Compare the accuracy of exp(X)-1 and expm1(X).

Create a vector of small real values.

X = 1×3 10-13 ×

-0.0001 0.0100 0.2000

Calculate exp(X)-1 using the exp function.

Y = 1×3 10-13 ×

     0    0.0111    0.1998

The results can be zeros or have large relative errors. For example, Y(2) is not close to X(2), which is 1e-15.

Calculate exp(X)-1 using the expm1 function.

Y = 1×3 10-13 ×

-0.0001 0.0100 0.2000

In this case, where expm1(X) is approximately X, the results are more accurate. For example, Y(2) is now close to X(2), which is 1e-15.

Input Arguments

collapse all

Input array, specified as a scalar, vector, matrix, multidimensional array, table, or timetable.

Data Types: single | double | table | timetable
Complex Number Support: Yes

Extended Capabilities

expand all

Theexpm1 function fully supports tall arrays. For more information, see Tall Arrays.

The expm1 function fully supports GPU arrays. To run the function on a GPU, specify the input data as a gpuArray (Parallel Computing Toolbox). For more information, see Run MATLAB Functions on a GPU (Parallel Computing Toolbox).

Version History

Introduced before R2006a

expand all

The expm1 function can calculate on all variables within a table or timetable without indexing to access those variables. All variables must have data types that support the calculation. For more information, see Direct Calculations on Tables and Timetables.