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)
.
Examples
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
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
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
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.