Étude de fonctions#

Il n’y a pas de problème résolu, il n’y a que des problèmes plus ou moins résolus.

Henri Poincaré

L’étude complète d’une fonction réelle est l’un des exercices centraux de l’analyse. Elle combine les outils des chapitres précédents — limites, continuité, dérivation — pour dégager le comportement global et local d’une fonction, et en produire une représentation graphique fidèle.

Hide code cell source

import numpy as np
import matplotlib.pyplot as plt
import matplotlib.patches as patches
import seaborn as sns

sns.set_theme(style="whitegrid", palette="muted", font_scale=1.1)

Plan d’une étude complète#

L’étude d’une fonction \(f\) suit un plan systématique :

  1. Domaine de définition \(D_f\)

  2. Parité, imparité, périodicité — réduction du domaine d’étude

  3. Continuité, dérivabilité — régularité

  4. Limites aux bords et comportement asymptotique — branches infinies

  5. Dérivée \(f'\) : calcul, signe, tableau de variations

  6. Dérivée seconde \(f''\) : convexité, points d’inflexion

  7. Tableau de variations complet

  8. Tracé du graphe

Remarque 60

L’ordre peut varier. La parité et la périodicité, lorsqu’elles existent, permettent de réduire considérablement le travail en n’étudiant qu’une partie du domaine.

Domaine de définition#

Définition 100 (Domaine de définition)

Le domaine de définition de \(f\), noté \(D_f\), est l’ensemble maximal des réels \(x\) pour lesquels \(f(x)\) est définie et a un sens.

Exemple 58

  • \(f(x) = \dfrac{1}{x^2 - 1}\) : les racines de \(x^2-1\) sont \(\pm 1\), donc \(D_f = \mathbb{R} \setminus \{-1, 1\}\).

  • \(f(x) = \ln(x^2 - 4)\) : il faut \(x^2 - 4 > 0\), soit \(|x| > 2\), d’où \(D_f = ]-\infty, -2[ \cup ]2, +\infty[\).

  • \(f(x) = \sqrt{\sin x}\) : il faut \(\sin x \geq 0\), soit \(x \in [2k\pi, (2k+1)\pi]\), d’où \(D_f = \bigcup_{k \in \mathbb{Z}} [2k\pi, (2k+1)\pi]\).

  • \(f(x) = \arcsin(\ln x)\) : il faut \(\ln x \in [-1,1]\), soit \(x \in [e^{-1}, e]\), donc \(D_f = [1/e, e]\).

Parité et périodicité#

Définition 101 (Parité)

Soit \(f : D_f \to \mathbb{R}\) avec \(D_f\) symétrique par rapport à 0.

  • \(f\) est paire si \(\forall x \in D_f\), \(f(-x) = f(x)\) — graphe symétrique par rapport à l’axe \((Oy)\)

  • \(f\) est impaire si \(\forall x \in D_f\), \(f(-x) = -f(x)\) — graphe symétrique par rapport à \(O\)

Remarque 61

Si \(f\) est paire ou impaire, on restreint l’étude à \(D_f \cap [0, +\infty[\) et on complète par symétrie. En particulier, une fonction impaire continue en 0 vérifie \(f(0) = 0\).

Définition 102 (Périodicité)

\(f\) est \(T\)-périodique (\(T > 0\)) si \(\forall x \in D_f\), \(x + T \in D_f\) et \(f(x + T) = f(x)\). Si \(f\) est \(T\)-périodique, on restreint l’étude à un intervalle de longueur \(T\).

Proposition 152 (Stabilité de la parité et de la périodicité)

  • Somme, produit, composée de fonctions paires est paire ; idem pour les impaires sous réserve de parité cohérente.

  • Si \(f\) est paire et dérivable, \(f'\) est impaire (et réciproquement).

  • Si \(f\) est \(T_1\)-périodique et \(T_2\)-périodique, elle est \((T_1 \wedge T_2)\)-périodique (si cette période est bien définie).

Limites et comportement asymptotique#

Asymptotes#

Définition 103 (Asymptotes)

Soit \(f : D_f \to \mathbb{R}\).

  • La droite \(x = a\) est une asymptote verticale si \(\lim_{x \to a} |f(x)| = +\infty\) (avec \(a\) au bord de \(D_f\)).

  • La droite \(y = \ell\) est une asymptote horizontale en \(+\infty\) (resp. \(-\infty\)) si \(\lim_{x \to +\infty} f(x) = \ell\) (resp. \(\lim_{x \to -\infty} f(x) = \ell\)).

  • La droite \(y = ax + b\) est une asymptote oblique en \(+\infty\) si \(\lim_{x \to +\infty} (f(x) - ax - b) = 0\).

Proposition 153 (Recherche d’une asymptote oblique)

Si \(\lim_{x \to +\infty} \dfrac{f(x)}{x} = a \in \mathbb{R}\) et \(\lim_{x \to +\infty} (f(x) - ax) = b \in \mathbb{R}\), alors \(y = ax + b\) est asymptote oblique en \(+\infty\).

Remarque 62

Si \(a = 0\), l’asymptote oblique se réduit à une asymptote horizontale. Si \(\lim_{x \to +\infty} f(x)/x = \pm\infty\), il y a une branche parabolique de direction verticale. Si \(\lim_{x \to +\infty} f(x)/x = 0\) et \(f(x) \to \pm\infty\), il y a une branche parabolique de direction horizontale.

Exemple 59

  • \(f(x) = x + \sin x\) : \(f(x)/x = 1 + (\sin x)/x \to 1\), et \(f(x) - x = \sin x\) n’a pas de limite : pas d’asymptote oblique.

  • \(f(x) = \sqrt{x^2 + x} = |x|\sqrt{1 + 1/x}\) : en \(+\infty\), \(f(x) = x\sqrt{1+1/x} = x(1 + 1/(2x) + O(1/x^2)) = x + 1/2 + O(1/x)\) : asymptote \(y = x + 1/2\).

  • \(f(x) = x\ln\left(1 + \frac{1}{x}\right) = x(1/x - 1/(2x^2) + O(1/x^3)) = 1 - 1/(2x) + O(1/x^2) \to 1\) : asymptote horizontale \(y = 1\).

Développements asymptotiques#

Pour préciser le comportement d’une fonction au voisinage d’une asymptote, on utilise les développements limités et les notations de Landau.

Définition 104 (Notations de Landau)

Soit \(f\) et \(g\) des fonctions définies au voisinage de \(a \in \overline{\mathbb{R}}\).

  • \(f = O(g)\) en \(a\) s’il existe \(M > 0\) et un voisinage \(V\) de \(a\) tels que \(|f(x)| \leq M|g(x)|\) sur \(V\).

  • \(f = o(g)\) en \(a\) si \(f(x)/g(x) \to 0\) quand \(x \to a\).

  • \(f \sim g\) en \(a\) si \(f(x)/g(x) \to 1\) quand \(x \to a\).

Proposition 154 (Propriétés de \(\sim\))

  • \(f \sim g\) et \(g \sim h \implies f \sim h\) (transitivité)

  • \(f \sim g\) et \(f_1 \sim g_1 \implies ff_1 \sim gg_1\) (produit)

  • \(f \sim g \implies f^\alpha \sim g^\alpha\) pour \(\alpha \in \mathbb{R}\) (puissance)

  • Attention : \(f \sim g\) et \(f_1 \sim g_1\) n’implique pas \(f + f_1 \sim g + g_1\) en général.

Exemple 60

Pièges classiques :

  • \(e^x - 1 \sim x\) mais \((e^x - 1) - x = x^2/2 + O(x^3) \not\sim 0\).

  • \(\sin x - x \sim -x^3/6\) (et non \(\sim \sin x\)).

Dérivation et variations#

Calcul de la dérivée#

Le calcul de \(f'\) exploite les formules du chapitre 12. On cherche à :

  1. Factoriser \(f'\) pour étudier son signe

  2. Identifier les zéros et points de non-dérivabilité de \(f'\)

  3. En déduire le signe de \(f'\) sur chaque sous-intervalle

Proposition 155 (Critères de stricte monotonie)

Soit \(f\) continue sur \([a, b]\) et dérivable sur \(]a, b[\).

  • \(f' \geq 0\) sur \(]a,b[\) et \(f' = 0\) seulement en un nombre fini de points \(\implies\) \(f\) est strictement croissante.

  • \(f' > 0\) sur \(]a,b[\) (en tout point) \(\implies\) \(f\) est strictement croissante (condition suffisante plus forte).

Remarque 63

La condition « \(f' > 0\) en tout point » est stricte mais pas nécessaire : \(f(x) = x^3\) est strictement croissante avec \(f'(0) = 0\).

Tableau de variations#

Remarque 64

Le tableau de variations synthétise :

  • Ligne 1 : les valeurs remarquables de \(x\) (bords du domaine, zéros de \(f'\), points de non-dérivabilité)

  • Ligne 2 : le signe de \(f'\)

  • Ligne 3 : les variations de \(f\), avec les valeurs aux extrema et les limites aux bords

On y ajoute éventuellement le signe de \(f''\) et les points d’inflexion.

Convexité et points d’inflexion#

Définition 105 (Convexité)

\(f : I \to \mathbb{R}\) est convexe si pour tous \(x, y \in I\) et \(t \in [0,1]\) :

\[f(tx + (1-t)y) \leq tf(x) + (1-t)f(y).\]

\(f\) est concave si \(-f\) est convexe.

Proposition 156 (Caractérisations)

Soit \(f\) continue sur \(I\), dérivable sur \(\mathring{I}\).

  • \(f\) convexe \(\iff\) \(f'\) croissante sur \(\mathring{I}\)

  • Si \(f\) est deux fois dérivable : \(f\) convexe \(\iff\) \(f'' \geq 0\)

  • \(f\) convexe \(\iff\) \(\forall a \in \mathring{I}\), le graphe de \(f\) est au-dessus de sa tangente en \(a\)

  • \(f\) convexe \(\iff\) \(\forall x, y \in I\), \(x < y\), et \(x < c < y\) : \(\dfrac{f(c)-f(x)}{c-x} \leq \dfrac{f(y)-f(x)}{y-x} \leq \dfrac{f(y)-f(c)}{y-c}\) (pentes croissantes)

Définition 106 (Point d’inflexion)

\(a \in \mathring{I}\) est un point d’inflexion de \(f\) si la convexité de \(f\) change en \(a\), c’est-à-dire si \(f''\) change de signe en \(a\).

En un point d’inflexion, la tangente au graphe traverse la courbe.

Remarque 65

Condition nécessaire : si \(f\) est deux fois dérivable et admet un point d’inflexion en \(a\), alors \(f''(a) = 0\). Mais la réciproque est fausse : \(f(x) = x^4\) vérifie \(f''(0) = 0\) sans point d’inflexion (la convexité ne change pas). Condition suffisante : si \(f''(a) = 0\) et \(f'''(a) \neq 0\), alors \(a\) est bien un point d’inflexion.

Hide code cell source

fig, axes = plt.subplots(3, 1, figsize=(9, 14))

x = np.linspace(-2.5, 2.5, 500)

# Convexe et concave avec tangentes
ax = axes[0]
f1 = np.exp(x)
f2 = -x**2

ax.plot(x, f1, 'b-', lw=2.5, label="$e^x$ (convexe, $f''>0$)")
ax.plot(x, f2, 'r-', lw=2.5, label="$-x^2$ (concave, $f''<0$)")

# Tangentes à e^x en x=0 et x=1
for a, col in [(0, 'blue'), (1, 'cyan')]:
    tang = np.exp(a) + np.exp(a)*(x - a)
    ax.plot(x, tang, color=col, lw=1.2, ls='--', alpha=0.7)
    ax.scatter([a], [np.exp(a)], color=col, s=60, zorder=5)

ax.set_ylim(-5, 8)
ax.axhline(0, color='k', lw=0.8)
ax.axvline(0, color='k', lw=0.8)
ax.set_title('Convexe vs concave\n(tangentes sous/sur le graphe)')
ax.legend(fontsize=9)
ax.set_xlabel('$x$')

# Point d'inflexion
ax = axes[1]
f_infl = x**3 - 3*x
f_prime = lambda t: 3*t**2 - 3
f_second = lambda t: 6*t

ax.plot(x, f_infl, 'b-', lw=2.5, label="$f(x)=x^3-3x$")

# Point d'inflexion en 0
a_inf = 0
tang_inf = f_infl[250] + f_prime(a_inf)*(x - a_inf)
ax.plot(x, tang_inf, 'r--', lw=2, label="Tangente en $x=0$ (inflexion)")
ax.scatter([a_inf], [0], color='red', s=120, zorder=5, marker='D', label='Point d\'inflexion')

# Zones de convexité
ax.fill_between(x[x < 0], f_infl[x < 0], tang_inf[x < 0],
                where=(f_infl[x < 0] > tang_inf[x < 0]),
                alpha=0.1, color='green')
ax.fill_between(x[x > 0], f_infl[x > 0], tang_inf[x > 0],
                where=(f_infl[x > 0] < tang_inf[x > 0]),
                alpha=0.1, color='orange')

ax.axhline(0, color='k', lw=0.8)
ax.axvline(0, color='k', lw=0.8)
ax.set_ylim(-5, 5)
ax.set_title("Point d'inflexion en $x=0$\n$f''$ change de signe")
ax.legend(fontsize=9)
ax.set_xlabel('$x$')

# Attention : f''(a)=0 ne suffit pas — exemple x^4
ax = axes[2]
f4 = x**4
f4p2 = lambda t: 12*t**2

ax.plot(x, f4, 'b-', lw=2.5, label="$f(x)=x^4$\n$f''(0)=0$ sans inflexion")
# Tangente en 0 : y = 0
ax.plot(x, np.zeros_like(x), 'r--', lw=2, label='Tangente en 0 : $y=0$')
ax.scatter([0], [0], color='red', s=120, zorder=5, marker='D')
ax.fill_between(x, f4, np.zeros_like(x), where=(f4 >= 0),
                alpha=0.1, color='blue')

ax.set_ylim(-0.5, 5)
ax.axhline(0, color='k', lw=0.8)
ax.axvline(0, color='k', lw=0.8)
ax.set_title('$f\'\'(0)=0$ sans point d\'inflexion :\ngraphe toujours au-dessus de la tangente')
ax.legend(fontsize=9)
ax.set_xlabel('$x$')

plt.tight_layout()
plt.show()
_images/6d84ba81a6607ba87fb5fec4f41cb23e2691812724e2607bfbd32620d3b3e37a.png

Branches infinies#

Définition 107 (Branches infinies)

On distingue trois types de comportement en \(\pm\infty\) (ou en un point d’accumulation du domaine) :

  • Asymptote verticale : \(|f(x)| \to +\infty\) quand \(x \to a\)

  • Asymptote oblique ou horizontale : \(f(x) - (ax+b) \to 0\)

  • Branche parabolique de direction verticale : \(f(x)/x \to \pm\infty\)

  • Branche parabolique de direction horizontale : \(f(x)/x \to 0\) et \(f(x) \to \pm\infty\)

Proposition 157 (Méthode pour les branches paraboliques)

Si \(f(x)/x \to a \in \mathbb{R}\) avec \(a \neq 0\), on calcule \(f(x) - ax\). Si cette quantité a une limite finie \(b\), on a une asymptote oblique ; sinon le graphe s’écarte de toute droite tout en ayant la même « direction » que \(y = ax\).

Hide code cell source

fig, axes = plt.subplots(3, 1, figsize=(9, 14))

# Asymptote verticale
ax = axes[0]
x1 = np.linspace(-3, -1.05, 200)
x2 = np.linspace(-0.95, 0.95, 200)
x3 = np.linspace(1.05, 3, 200)

f = lambda t: t**2 / (t**2 - 1)

for xi in [x1, x2, x3]:
    ax.plot(xi, f(xi), 'b-', lw=2.5)

ax.axvline(1, color='red', ls='--', lw=2, alpha=0.8, label='AV : $x=\\pm 1$')
ax.axvline(-1, color='red', ls='--', lw=2, alpha=0.8)
ax.axhline(1, color='green', ls='--', lw=2, alpha=0.8, label='AH : $y=1$')
ax.set_ylim(-6, 6)
ax.axhline(0, color='k', lw=0.8)
ax.set_title(r'$f(x)=\dfrac{x^2}{x^2-1}$' + '\nAsymptotes verticales et horizontale')
ax.legend(fontsize=9)
ax.set_xlabel('$x$')

# Asymptote oblique
ax = axes[1]
x = np.linspace(0.05, 6, 500)
f2 = lambda t: t + 1/(2*t) + np.sin(t)/(t**2)  # f ~ x en +inf

# Exemple propre : f(x) = (x^2 + 1)/x = x + 1/x
f3 = lambda t: (t**2 + 1) / t
x_pos = np.linspace(0.2, 5, 400)
x_neg = np.linspace(-5, -0.2, 400)

for xi in [x_pos, x_neg]:
    ax.plot(xi, f3(xi), 'b-', lw=2.5)

# Asymptote oblique y = x
x_all = np.linspace(-5, 5, 400)
ax.plot(x_all, x_all, 'r--', lw=2, label='AO : $y=x$')
ax.axvline(0, color='orange', ls='--', lw=2, alpha=0.8, label='AV : $x=0$')
ax.axhline(0, color='k', lw=0.8)
ax.set_ylim(-8, 8)
ax.set_title(r'$f(x)=\dfrac{x^2+1}{x} = x + \dfrac{1}{x}$' + '\nAsymptote oblique $y=x$')
ax.legend(fontsize=9)
ax.set_xlabel('$x$')

# Branche parabolique
ax = axes[2]
x = np.linspace(0.01, 5, 400)
f_par = lambda t: np.sqrt(t**2 + t)  # ~ t + 1/2 en +inf

ax.plot(x, f_par(x), 'b-', lw=2.5, label='$f(x)=\\sqrt{x^2+x}$')
ax.plot(x, x + 0.5, 'r--', lw=2, label='AO : $y = x + \\frac{1}{2}$')

# Montrer l'écart qui tend vers 0
for xv in [1, 2, 3, 4]:
    ax.annotate('', xy=(xv, f_par(xv)),
                 xytext=(xv, xv + 0.5),
                 arrowprops=dict(arrowstyle='<->', color='green', lw=1.5))

ax.axhline(0, color='k', lw=0.8)
ax.set_title('$f(x)=\\sqrt{x^2+x}$\nAsymptote oblique $y=x+\\frac{1}{2}$\n($f(x)-(x+\\frac{1}{2}) \\to 0$)')
ax.legend(fontsize=9)
ax.set_xlabel('$x$')

plt.tight_layout()
plt.show()
_images/e354b68b6f89dbcfeadfaeed7b8870612ca126634119f85e8a41dea22b02057f.png

Règle de L’Hôpital#

Proposition 158 (Règle de L’Hôpital)

Soient \(f, g : \:]a, b[ \to \mathbb{R}\) dérivables avec \(g'\) ne s’annulant pas sur \(]a, b[\). Supposons que

\[\lim_{x \to a^+} f(x) = \lim_{x \to a^+} g(x) = 0 \quad \text{ou} \quad \lim_{x \to a^+} |g(x)| = +\infty.\]

Si \(\lim_{x \to a^+} \dfrac{f'(x)}{g'(x)} = \ell \in \overline{\mathbb{R}}\), alors \(\lim_{x \to a^+} \dfrac{f(x)}{g(x)} = \ell\).

Le résultat s’applique également en \(b^-\) et pour \(a, b \in \overline{\mathbb{R}}\).

Remarque 66

La règle de L’Hôpital s’applique aux formes indéterminées \(0/0\) et \(\infty/\infty\). Les autres formes (\(0 \cdot \infty\), \(\infty - \infty\), \(1^\infty\), \(0^0\), \(\infty^0\)) s’y ramènent par transformation algébrique ou en passant au logarithme.

Mise en garde : La règle est souvent utilisée à tort quand les développements limités sont plus efficaces et plus élégants. En prépa, les DL sont préférés.

Exemple 61

Formes \(0/0\) :

  • \(\lim_{x \to 0} \dfrac{\sin x}{x} = \lim_{x \to 0} \dfrac{\cos x}{1} = 1\).

  • \(\lim_{x \to 0} \dfrac{e^x - 1 - x}{x^2} = \lim_{x \to 0} \dfrac{e^x - 1}{2x} = \lim_{x \to 0} \dfrac{e^x}{2} = \frac{1}{2}\).

Formes \(\infty/\infty\) :

  • \(\lim_{x \to +\infty} \dfrac{\ln x}{x} = \lim_{x \to +\infty} \dfrac{1/x}{1} = 0\).

Forme \(0 \cdot \infty\) :

  • \(\lim_{x \to 0^+} x \ln x = \lim_{x \to 0^+} \dfrac{\ln x}{1/x} = \lim_{x \to 0^+} \dfrac{1/x}{-1/x^2} = \lim_{x \to 0^+} (-x) = 0\).

Proof. Cas \(0/0\). On donne la preuve dans le cas où \(a\) est fini, \(f(a) = g(a) = 0\) avec \(f, g\) continues sur \([a, b[\). Par le théorème de Cauchy (généralisation du TAF) : pour tout \(x \in ]a, b[\), il existe \(c \in ]a, x[\) tel que

\[\frac{f(x)}{g(x)} = \frac{f(x) - f(a)}{g(x) - g(a)} = \frac{f'(c)}{g'(c)}.\]

Quand \(x \to a^+\), on a \(c \to a^+\), donc \(f'(c)/g'(c) \to \ell\).

Exemples complets d’étude#

Exemple 1 : \(f(x) = xe^{-x}\)#

Domaine : \(D_f = \mathbb{R}\).

Parité : Ni paire ni impaire.

Limites :

\[\lim_{x \to -\infty} xe^{-x} = -\infty \quad \text{(car } e^{-x} \to +\infty\text{)}\]
\[\lim_{x \to +\infty} xe^{-x} = 0 \quad \text{(croissance comparée : } x = o(e^x)\text{)}\]

Asymptote horizontale \(y = 0\) en \(+\infty\).

Dérivée : \(f'(x) = e^{-x} - xe^{-x} = (1-x)e^{-x}\). Comme \(e^{-x} > 0\) : \(f'(x) > 0\) si \(x < 1\), \(f'(x) < 0\) si \(x > 1\). Maximum en \(x = 1\) : \(f(1) = e^{-1}\).

Dérivée seconde : \(f''(x) = -(1-x)e^{-x} + e^{-x}(-1) \cdot (-1)\)… Recalculons :

\[f''(x) = ((1-x)e^{-x})' = -e^{-x} - (1-x)e^{-x} \cdot (-1) = e^{-x}(x-2).\]

Point d’inflexion en \(x = 2\) : \(f(2) = 2e^{-2}\). \(f\) est concave sur \(]-\infty, 2[\) et convexe sur \(]2, +\infty[\).

Comportement en \(-\infty\) : \(f(x)/x = e^{-x} \to +\infty\) : branche parabolique de direction verticale.

Exemple 2 : \(f(x) = \dfrac{x^2}{x^2 - 1}\)#

Domaine : \(D_f = \mathbb{R} \setminus \{-1, 1\}\).

Parité : \(f(-x) = f(x)\) : \(f\) est paire. On étudie sur \([0, +\infty[ \setminus \{1\}\).

Écriture simplifiée : \(f(x) = 1 + \dfrac{1}{x^2 - 1}\). Cela donne directement l’asymptote et facilite la dérivation.

Limites :

\[\lim_{x \to 1^+} f(x) = 1 + \frac{1}{0^+} = +\infty, \quad \lim_{x \to 1^-} f(x) = -\infty\]

Asymptote verticale \(x = 1\) (et \(x = -1\) par parité). Asymptote horizontale \(y = 1\) en \(\pm\infty\).

Dérivée : \(f'(x) = \dfrac{-2x}{(x^2 - 1)^2}\). Sur \([0, +\infty[ \setminus \{1\}\) : \(f'(x) \leq 0\) (\(= 0\) en 0). \(f\) est décroissante sur \([0, 1[\) et sur \(]1, +\infty[\).

Valeurs remarquables : \(f(0) = 0\), \(f(x) \to 1\) en \(+\infty\), \(f(x) \to +\infty\) en \(1^+\).

Exemple 3 : \(f(x) = x - \ln(1 + x^2)\)#

Domaine : \(D_f = \mathbb{R}\).

Limites :

\[\lim_{x \to +\infty} \left(x - \ln(1+x^2)\right) = \lim_{x \to +\infty} x\left(1 - \frac{\ln(1+x^2)}{x}\right) = +\infty\]

car \(\ln(1+x^2) \sim 2\ln x = o(x)\).

\[\lim_{x \to -\infty} f(x) = -\infty.\]

Comportement en \(+\infty\) : \(f(x)/x = 1 - \ln(1+x^2)/x \to 1\), et \(f(x) - x = -\ln(1+x^2) \to -\infty\). Pas d’asymptote oblique en \(+\infty\) — branche parabolique de direction \(y = x\).

Dérivée :

\[f'(x) = 1 - \frac{2x}{1 + x^2} = \frac{1 + x^2 - 2x}{1 + x^2} = \frac{(x - 1)^2}{1 + x^2} \geq 0.\]

\(f\) est croissante, avec \(f'(x) = 0\) uniquement en \(x = 1\) : pas d’extremum, mais possible point d’inflexion.

Dérivée seconde :

\[f''(x) = \frac{2(x-1)(1+x^2) - (x-1)^2 \cdot 2x}{(1+x^2)^2} = \frac{2(x-1)(1+x^2-x(x-1))}{(1+x^2)^2} = \frac{2(x-1)(1+x)}{(1+x^2)^2}.\]

\(f''\) change de signe en \(x = -1\) et \(x = 1\) : deux points d’inflexion.

Exemple 4 : \(f(x) = \sqrt{x^2 + x}\) (branche parabolique et asymptote oblique)#

Domaine : \(x^2 + x \geq 0 \iff x(x+1) \geq 0 \iff x \leq -1\) ou \(x \geq 0\). Donc \(D_f = ]-\infty, -1] \cup [0, +\infty[\).

Comportement en \(+\infty\) :

\[f(x) = x\sqrt{1 + 1/x} = x\left(1 + \frac{1}{2x} - \frac{1}{8x^2} + O(x^{-3})\right) = x + \frac{1}{2} - \frac{1}{8x} + O(x^{-2}).\]

Asymptote oblique en \(+\infty\) : \(y = x + \dfrac{1}{2}\), avec \(f(x) - (x + 1/2) \sim -1/(8x) \to 0^-\) : le graphe arrive par en dessous de l’asymptote.

Comportement en \(-\infty\) :

\[f(x) = \sqrt{x^2+x} = |x|\sqrt{1+1/x} = -x\sqrt{1+1/x} \quad (x < 0)\]
\[= -x - \frac{1}{2} + \frac{1}{8x} + O(x^{-2}).\]

Asymptote oblique en \(-\infty\) : \(y = -x - \dfrac{1}{2}\), graphe par au-dessus.

Hide code cell source

fig, axes = plt.subplots(2, 2, figsize=(14, 10))

# Exemple 1 : xe^{-x}
ax = axes[0, 0]
x = np.linspace(-1.5, 5, 500)
f1 = x * np.exp(-x)
f1p = (1 - x) * np.exp(-x)

ax.plot(x, f1, 'b-', lw=2.5, label='$f(x) = xe^{-x}$')
ax.axhline(0, color='k', lw=0.8)
ax.axvline(0, color='k', lw=0.8)

# Maximum en x=1
ax.scatter([1], [np.exp(-1)], color='red', s=120, zorder=5, label=f'Max : $(1, e^{{-1}}) \\approx (1, {np.exp(-1):.2f})$')
# Point d'inflexion en x=2
ax.scatter([2], [2*np.exp(-2)], color='orange', s=120, zorder=5, marker='D', label=f'Inflexion : $(2, 2e^{{-2}})$')

# Tangente en x=1 (horizontale)
ax.plot([0.2, 2], [np.exp(-1), np.exp(-1)], 'r:', lw=1.5, alpha=0.7)

# Coloration convexe/concave
x_arr = np.linspace(-1.5, 5, 500)
f_arr = x_arr * np.exp(-x_arr)
ax.fill_between(x_arr, f_arr, where=(x_arr < 2), alpha=0.08, color='orange', label='Concave ($f\'\'<0$)')
ax.fill_between(x_arr, f_arr, where=(x_arr > 2), alpha=0.08, color='blue', label='Convexe ($f\'\'>0$)')

ax.set_ylim(-2, 0.6)
ax.set_title('$f(x) = xe^{-x}$\nMax en $x=1$, inflexion en $x=2$')
ax.legend(fontsize=8)
ax.set_xlabel('$x$')

# Exemple 2 : x^2/(x^2-1)
ax = axes[0, 1]
f2 = lambda t: t**2 / (t**2 - 1)
for seg in [np.linspace(-4, -1.05, 200), np.linspace(-0.95, 0.95, 200), np.linspace(1.05, 4, 200)]:
    ax.plot(seg, f2(seg), 'b-', lw=2.5)

ax.axvline(1, color='red', ls='--', lw=1.8, alpha=0.8, label='AV $x=\\pm 1$')
ax.axvline(-1, color='red', ls='--', lw=1.8, alpha=0.8)
ax.axhline(1, color='green', ls='--', lw=1.8, alpha=0.8, label='AH $y=1$')
ax.scatter([0], [0], color='blue', s=100, zorder=5, label='$f(0)=0$ (min local)')
ax.set_ylim(-6, 6)
ax.axhline(0, color='k', lw=0.8)
ax.set_title(r'$f(x) = \dfrac{x^2}{x^2-1}$' + '\nFonction paire')
ax.legend(fontsize=9)
ax.set_xlabel('$x$')

# Exemple 3 : x - ln(1+x^2)
ax = axes[1, 0]
x = np.linspace(-4, 6, 500)
f3 = x - np.log(1 + x**2)
f3p = (x - 1)**2 / (1 + x**2)

ax.plot(x, f3, 'b-', lw=2.5, label='$f(x) = x - \\ln(1+x^2)$')

# Points d'inflexion en x=-1 et x=1
for xp in [-1, 1]:
    yp = xp - np.log(1 + xp**2)
    slope = (xp - 1)**2 / (1 + xp**2)
    tang = yp + slope * (x - xp)
    ax.scatter([xp], [yp], color='red', s=120, zorder=5, marker='D')
    ax.plot(x, tang, 'r:', lw=1.5, alpha=0.6)

ax.axhline(0, color='k', lw=0.8)
ax.axvline(0, color='k', lw=0.8)
ax.set_ylim(-6, 4)
ax.set_title('$f(x) = x - \\ln(1+x^2)$\nCroissante, 2 points d\'inflexion ($x=\\pm 1$)')
ax.legend(fontsize=9)
ax.set_xlabel('$x$')

# Exemple 4 : sqrt(x^2 + x)
ax = axes[1, 1]
x_pos = np.linspace(0, 6, 400)
x_neg = np.linspace(-6, -1, 400)

ax.plot(x_pos, np.sqrt(x_pos**2 + x_pos), 'b-', lw=2.5, label='$f(x) = \\sqrt{x^2+x}$')
ax.plot(x_neg, np.sqrt(x_neg**2 + x_neg), 'b-', lw=2.5)

# Asymptotes obliques
x_all = np.linspace(-6, 6, 400)
ax.plot(x_all, x_all + 0.5, 'r--', lw=2, label='AO $y = x + \\frac{1}{2}$ (en $+\\infty$)')
ax.plot(x_all, -x_all - 0.5, 'g--', lw=2, label='AO $y = -x - \\frac{1}{2}$ (en $-\\infty$)')

ax.axhline(0, color='k', lw=0.8)
ax.axvline(0, color='k', lw=0.8)
ax.scatter([-1, 0], [0, 0], color='blue', s=80, zorder=5)
ax.set_ylim(-0.5, 7)
ax.set_xlim(-6, 6)
ax.set_title('$f(x) = \\sqrt{x^2+x}$\nDeux asymptotes obliques')
ax.legend(fontsize=9)
ax.set_xlabel('$x$')

plt.tight_layout()
plt.show()
_images/da01a29373f5467cf78d54094fcf63118cf319c678a9579eb24081a227de4192.png

Fonctions à connaître parfaitement#

Les tracés de graphes ci-dessous constituent un aide-mémoire visuel des courbes fondamentales à reconnaître immédiatement en analyse.

Hide code cell source

fig, axes = plt.subplots(3, 2, figsize=(12, 14))

# Gauche haut : 1/x et 1/x^2
ax = axes[0, 0]
x_pos = np.linspace(0.15, 4, 300)
x_neg = np.linspace(-4, -0.15, 300)
ax.plot(x_pos, 1/x_pos, 'b-', lw=2, label='$1/x$')
ax.plot(x_neg, 1/x_neg, 'b-', lw=2)
ax.plot(x_pos, 1/x_pos**2, 'r-', lw=2, label='$1/x^2$')
ax.plot(x_neg, 1/x_neg**2, 'r-', lw=2)
ax.set_ylim(-5, 7)
ax.axhline(0, color='k', lw=0.8)
ax.axvline(0, color='k', lw=0.8)
ax.set_title('$1/x$ et $1/x^2$')
ax.legend()

# Milieu haut : ln et sqrt
ax = axes[0, 1]
x = np.linspace(0.01, 5, 400)
ax.plot(x, np.log(x), 'b-', lw=2, label='$\\ln x$')
ax.plot(x, np.sqrt(x), 'r-', lw=2, label='$\\sqrt{x}$')
ax.plot(x, x**(1/3), 'g-', lw=2, label='$x^{1/3}$')
ax.axhline(0, color='k', lw=0.8)
ax.axvline(0, color='k', lw=0.8)
ax.set_ylim(-2, 4)
ax.set_title('$\\ln$, $\\sqrt{x}$, $x^{1/3}$')
ax.legend()

# Droite haut : arctan
ax = axes[1, 0]
x = np.linspace(-6, 6, 500)
ax.plot(x, np.arctan(x), 'b-', lw=2.5, label='$\\arctan x$')
ax.axhline(np.pi/2, color='r', ls='--', lw=1.5, label='$\\pm\\pi/2$')
ax.axhline(-np.pi/2, color='r', ls='--', lw=1.5)
ax.set_yticks([-np.pi/2, 0, np.pi/2])
ax.set_yticklabels(['$-\\pi/2$', '0', '$\\pi/2$'])
ax.axhline(0, color='k', lw=0.8)
ax.axvline(0, color='k', lw=0.8)
ax.set_title('$\\arctan$')
ax.legend()

# Gauche bas : polynômes degrés 3 et 4
ax = axes[1, 1]
x = np.linspace(-2, 2, 400)
ax.plot(x, x**3 - 3*x, 'b-', lw=2, label='$x^3-3x$')
ax.plot(x, x**4 - 2*x**2, 'r-', lw=2, label='$x^4-2x^2$')
ax.axhline(0, color='k', lw=0.8)
ax.axvline(0, color='k', lw=0.8)
ax.set_ylim(-4, 4)
ax.set_title('Polynômes typiques')
ax.legend()

# Milieu bas : xe^{-x} et e^{-x^2}
ax = axes[2, 0]
x = np.linspace(-2, 5, 500)
ax.plot(x, x*np.exp(-x), 'b-', lw=2, label='$xe^{-x}$')
ax.plot(x, np.exp(-x**2), 'r-', lw=2, label='$e^{-x^2}$ (Gaussienne)')
ax.plot(x, np.exp(-x), 'g-', lw=2, label='$e^{-x}$')
ax.axhline(0, color='k', lw=0.8)
ax.axvline(0, color='k', lw=0.8)
ax.set_ylim(-0.5, 2)
ax.set_title('Fonctions à décroissance exponentielle')
ax.legend(fontsize=9)

# Droite bas : fonctions rationnelles avec AO
ax = axes[2, 1]
x_pos2 = np.linspace(0.1, 5, 300)
x_neg2 = np.linspace(-5, -0.1, 300)
f_rat = lambda t: (t**2 + 1) / t  # = t + 1/t

for seg in [x_pos2, x_neg2]:
    ax.plot(seg, f_rat(seg), 'b-', lw=2.5)

x_all = np.linspace(-5, 5, 400)
ax.plot(x_all, x_all, 'r--', lw=1.5, label='AO $y=x$', alpha=0.8)
ax.axvline(0, color='orange', ls='--', lw=1.5, label='AV $x=0$', alpha=0.8)
ax.axhline(0, color='k', lw=0.8)
ax.set_ylim(-8, 8)
ax.set_title(r'$f(x)=\dfrac{x^2+1}{x}$' + ' : AV et AO')
ax.legend(fontsize=9)

plt.suptitle('Graphes fondamentaux à maîtriser', fontsize=14, fontweight='bold')
plt.tight_layout()
plt.show()
_images/4e58309ae064cdc97090b9186114a341bd51ac7a649fb9e2f80e6edfd53b6d24.png

Remarques méthodologiques de niveau prépa#

Remarque 67

Priorité aux DL plutôt qu’à L’Hôpital. En Maths Sup/Spé, on préfère systématiquement les développements limités à la règle de L’Hôpital, car ils donnent plus d’information (le terme suivant dans le développement précise comment la limite est atteinte).

Par exemple, \(\dfrac{e^x - 1 - x}{x^2} \xrightarrow[x \to 0]{} \dfrac{1}{2}\) se lit directement depuis \(e^x = 1 + x + x^2/2 + O(x^3)\).

Remarque 68

Position du graphe par rapport à ses asymptotes. Après avoir trouvé une asymptote \(y = ax + b\), il est important de préciser si le graphe arrive par au-dessus ou par en dessous. Cela se lit sur le signe de \(f(x) - (ax + b)\) pour \(x\) grand.

Pour \(f(x) = \sqrt{x^2+x}\), on a montré \(f(x) - (x + 1/2) \sim -1/(8x) < 0\) en \(+\infty\) : le graphe arrive par en dessous de l’asymptote.

Remarque 69

Équivalents et comparaison. En \(+\infty\), la hiérarchie est :

\[(\ln x)^a \ll x^b \ll e^{cx} \ll e^{x^2} \quad \forall a, b, c > 0.\]

Ces ordres de grandeur guident l’étude des formes indéterminées sans calcul.