EXPM1(3)

NOM
expm1, expm1f, expm1l - Exponentielle moins 1

SYNOPSIS
#include <math.h>

double expm1(double x);
float expm1f(float x);
long double expm1l(long double x);

Effectuez l'édition des liens avec l'option -lm.

Exigences de macros de test de fonctionnalités pour la glibc (consultez feature_test_macros(7)) :

expm1() :
    _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE >= 500 || _XOPEN_SOURCE && _XOPEN_SOURCE_EXTENDED || _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L
    ou cc -std=c99
expm1f(), expm1l() :
    _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE >= 600 || _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L
    ou cc -std=c99

DESCRIPTION
expm1(x) renvoie une valeur équivalente à :
    exp(x) - 1
Elle est calculée de telle manière que la précision est conservée même lorsque x est proche de zéro, alors que exp(x) - 1 serait imprécise car les deux nombres sont trop proches.

VALEUR RENVOYÉE
En cas de réussite, ces fonctions renvoient exp(x) - 1. Si x est un NaN, la valeur renvoyée est un NaN. Si x vaut +0 (resp. -0), +0 (resp. -0) est renvoyé. Si x est une valeur infinie positive, une valeur positive infinie est renvoyée. Si x est une valeur infinie négative, -1 est renvoyé. En cas de dépassement pour le résultat, une erreur d'intervalle se produit et les fonctions renvoient -HUGE_VAL, -HUGE_VALF ou -HUGE_VALL, respectivement.

ERREURS
Consultez math_error(7) pour savoir comment déterminer qu'une erreur est survenue lors de l'appel de ces fonctions.

Les erreurs suivantes peuvent se produire :

Erreur d'intervalle, dépassement
    errno est définie à ERANGE (mais consultez la section des BOGUES). Une exception de dépassement en virgule flottante (FE_OVERFLOW) est levée.

ATTRIBUTS

  Multithreading (voir pthreads(7))
Les fonctions expm1(), expm1f() et expm1l() sont sûres dans un contexte multithread.

CONFORMITÉ
C99, POSIX.1-2001.

BOGUES
Pour certaines grandes valeurs négatives de x (pour lesquelles le résultat de la fonction s'approche de -1), expm1() lève à tort une exception de virgule flottante de soupassement (« underflow »). Pour certaines grandes valeurs positives de x, expm1() lève à tort une exception de virgule flottante incorrecte en plus de l'exception de dépassement et renvoie un NaN au lieu d'une valeur infinie positive. Avant la version 2.11, l'implémentation de la glibc ne définissait pas errno à ERANGE lorsqu'une erreur d'intervalle se produisait.

VOIR AUSSI
exp(3), log(3), log1p(3)

COLOPHON
Cette page fait partie de la publication 3.70 du projet man-pages Linux. Une description du projet et des instructions pour signaler des anomalies peuvent être trouvées à l'adresse http://www.kernel.org/doc/man-pages/.

TRADUCTION
Depuis 2010, cette traduction est maintenue à l'aide de l'outil po4a <http://po4a.alioth.debian.org/> par l'équipe de traduction francophone au sein du projet perkamon <http://perkamon.alioth.debian.org/>.

Christophe Blaess <http://www.blaess.fr/christophe/> (1996-2003), Alain Portal <http://manpagesfr.free.fr/> (2003-2006). Florentin Duneau et l'équipe francophone de traduction de Debian (2006-2009).

Veuillez signaler toute erreur de traduction en écrivant à <perkamon-fr@traduc.org>.

Vous pouvez toujours avoir accès à la version anglaise de ce document en utilisant la commande « LC_ALL=C man <section> <page_de_man> ».