Longueur d'un arc de courbe Grand Oral · mathématiques, physique-chimie, NSI Un support de connaissances pour construire sa propre question

← Tous les textes du Grand Oral

MathsPCNSI

Mesurer un segment est facile : c'est une distance. Mesurer une courbe l'est beaucoup moins : la longueur d'un câble suspendu entre deux pylônes, celle de la trajectoire d'un ballon, celle d'une route de montagne ou d'une côte découpée. Ce texte rassemble ce qu'il faut savoir pour comprendre comment on définit et comment on calcule une telle longueur. Il ouvre plusieurs directions (mathématiques, physique, informatique) : à chacun de choisir la sienne et d'y construire sa question.

Sommaire
  1. Mesurer une courbe avec des segments
  2. De la ligne brisée à l'intégrale
  3. Des longueurs que l'on sait calculer exactement
  4. Calculer une longueur avec Python
  5. En physique : trajectoires et câbles
  6. Quand la longueur devient infinie : côtes et fractales
  7. Des directions pour construire sa question
Mesurer une courbe avec des segments

L'idée est très ancienne : pour mesurer une courbe, on la remplace par une ligne brisée, une suite de segments dont les extrémités sont sur la courbe. On sait mesurer chaque segment ; on additionne. Plus les segments sont nombreux et courts, plus la ligne brisée « colle » à la courbe.

var f = function (x) { return 0.2*x*x + 2*Math.sin(x); }; var n = board.create('slider', [[-3.2, 5.9], [1.8, 5.9], [1, 4, 40]], {name: 'n', snapWidth: 1, digits: 0}); board.create('functiongraph', [f, -3, 5], {strokeColor: '#1565c0', strokeWidth: 2}); var c = board.create('curve', [[0], [0]], {strokeColor: '#d32f2f', strokeWidth: 1.5}); c.updateDataArray = function () { var m = Math.round(n.Value()), h = 8 / m, i; this.dataX = []; this.dataY = []; for (i = 0; i <= m; i++) { this.dataX.push(-3 + i*h); this.dataY.push(f(-3 + i*h)); } }; board.create('text', [-3.3, 5.1, function () { var m = Math.round(n.Value()), h = 8 / m, s = 0, i; for (i = 0; i < m; i++) { s += Math.sqrt(h*h + Math.pow(f(-3 + (i+1)*h) - f(-3 + i*h), 2)); } return 'longueur de la ligne brisée : ' + s.toFixed(4).replace('.', ','); }], {fontSize: 12, useKatex: false, useMathJax: false, parse: false, cssStyle: 'background:#fff;padding:0 3px;border-radius:3px'}); board.update(); La courbe de $f(x) = 0{,}2x^2 + 2\sin x$ sur $[-3\,;5]$ et une ligne brisée de $n$ segments.

Partageons l'intervalle $[a\,;b]$ en $n$ morceaux de même largeur $h = \dfrac{b-a}{n}$, avec les abscisses $x_k = a + kh$. Le segment qui joint les points $\big(x_k\,;f(x_k)\big)$ et $\big(x_{k+1}\,;f(x_{k+1})\big)$ a pour longueur, d'après le théorème de Pythagore, $\sqrt{h^2 + \big(f(x_{k+1}) - f(x_k)\big)^2}$. La longueur de la ligne brisée est donc

$$L_n = \sum_{k=0}^{n-1} \sqrt{h^2 + \big(f(x_{k+1}) - f(x_k)\big)^2}.$$

Pour la fonction de la figure, on obtient : $L_1 \approx 8{,}15$ ; $L_5 \approx 12{,}58$ ; $L_{10} \approx 13{,}05$ ; $L_{100} \approx 13{,}2665$ ; $L_{1000} \approx 13{,}26884$. Les valeurs augmentent et semblent se stabiliser vers $13{,}2689$.

Si l'on ajoute un point de la courbe entre deux points d'une ligne brisée, sa longueur augmente (ou reste la même). Un segment $[AB]$ est remplacé par deux segments $[AM]$ et $[MB]$. D'après l'inégalité triangulaire, $AB \leqslant AM + MB$, avec égalité seulement si $M$ est sur le segment $[AB]$. On appelle longueur de la courbe la limite des longueurs des lignes brisées inscrites quand le plus long de leurs segments tend vers $0$, lorsque cette limite existe et est finie. On dit alors que la courbe est rectifiable. C'est exactement la démarche d'Archimède pour $\pi$ : il encadrait le périmètre du cercle par ceux de polygones à 96 côtés. Pour le demi-cercle de rayon $1$, les lignes brisées à $2$, $10$, $100$ et $1\,000$ segments mesurent environ $2{,}828$ ; $3{,}115$ ; $3{,}1408$ ; $3{,}14157$, et la limite est $\pi$.

Cette définition relie la longueur au chapitre des suites et des limites : la suite $(L_n)$ est majorée pour une courbe « raisonnable », et c'est sa limite qu'on appelle longueur. Elle laisse aussi une question ouverte : la limite existe-t-elle toujours ? La dernière partie montre que non.

De la ligne brisée à l'intégrale

Additionner des milliers de segments n'est pas une formule. Quand $f$ est dérivable, on peut aller plus loin. Pour un petit $h$, le nombre dérivé donne $f(x_{k+1}) - f(x_k) \approx f'(x_k)\,h$ : c'est l'approximation affine, celle qui définit la tangente. Notons $\ell_k$ la longueur du $k$-ième segment. Grâce à cette approximation, puis parce que $h > 0$ :

$\ell_k$ & $\approx$ & $\sqrt{h^2 + f'(x_k)^2 h^2}$ & & $=$ & $\sqrt{1 + f'(x_k)^2}\; h$ &

La longueur de la ligne brisée ressemble donc à $\displaystyle\sum_{k=0}^{n-1} \sqrt{1 + f'(x_k)^2}\; h$, qui est une somme de rectangles de largeur $h$ (la méthode des rectangles du calcul intégral) pour la fonction $x \mapsto \sqrt{1 + f'(x)^2}$. Quand $n$ tend vers $+\infty$, cette somme tend vers une intégrale.

Si $f$ est dérivable sur $[a\,;b]$ et si $f'$ est continue, la longueur de la courbe de $f$ entre les abscisses $a$ et $b$ est $$L = \int_a^b \sqrt{1 + f'(x)^2}\,\mathrm{d}x.$$ La formule n'est pas au programme de terminale, mais tout ce qu'elle utilise l'est : nombre dérivé, approximation affine, théorème de Pythagore, somme de rectangles et intégrale. Le passage « $\approx$ » se justifie rigoureusement avec le théorème des accroissements finis, vu après le bac. Elle a été trouvée en 1659 par le Néerlandais Hendrik van Heuraet.

Lecture géométrique : sur une petite portion où la courbe est presque droite, un déplacement $\mathrm{d}x$ à l'horizontale s'accompagne d'un déplacement $f'(x)\,\mathrm{d}x$ à la verticale, et le petit morceau de courbe mesure $\sqrt{1 + f'(x)^2}\,\mathrm{d}x$. Plus la pente est forte, plus la courbe est longue pour une même largeur.

Des longueurs que l'on sait calculer exactement

La formule est simple, mais la primitive de $\sqrt{1 + f'^2}$ l'est rarement. Les quelques cas où le calcul aboutit sont célèbres.

Un segment

Pour $f(x) = mx + p$, on a $f'(x) = m$, donc

$$L = \int_a^b \sqrt{1+m^2}\,\mathrm{d}x = (b-a)\sqrt{1+m^2}.$$

C'est bien la distance entre les deux extrémités, donnée par Pythagore : la formule redonne ce que l'on savait.

La parabole semi-cubique de Neile (1657)

En 1657, William Neile, âgé de dix-neuf ans, calcule pour la première fois exactement la longueur d'une courbe algébrique autre qu'une droite ou un cercle. Prenons $f(x) = \dfrac{2}{3}x^{3/2}$ sur $[0\,;3]$. Alors $f'(x) = \sqrt{x}$ et $1 + f'(x)^2 = 1 + x$ :

$L$ & $=$ & $\displaystyle\int_0^3 \sqrt{1+x}\,\mathrm{d}x$ & & $=$ & $\left[\dfrac{2}{3}(1+x)^{3/2}\right]_0^3$ & & $=$ & $\dfrac{2}{3}\left(4^{3/2} - 1\right)$ & & $=$ & $\dfrac{14}{3}$ &

On a utilisé que $\frac{2}{3}(1+x)^{3/2}$ est une primitive de $(1+x)^{1/2}$, et que $4^{3/2} = 8$.

La chaînette

Pour $f(x) = \dfrac{\mathrm{e}^x + \mathrm{e}^{-x}}{2}$, on a $f'(x) = \dfrac{\mathrm{e}^x - \mathrm{e}^{-x}}{2}$ et un calcul direct donne $1 + f'(x)^2 = f(x)^2$. Comme $f(x) > 0$, $\sqrt{1 + f'(x)^2} = f(x)$, dont une primitive est $f'$. Sur $[-1\,;1]$ :

$L$ & $=$ & $f'(1) - f'(-1)$ & & $=$ & $\mathrm{e} - \dfrac{1}{\mathrm{e}} \approx 2{,}3504$ &

Cette courbe est celle d'un câble suspendu (voir plus loin) : c'est un des rares cas où la longueur se calcule avec les seules fonctions de terminale.

Le cercle et la parabole Pour le demi-cercle $f(x) = \sqrt{1-x^2}$, on trouve $\sqrt{1+f'(x)^2} = \dfrac{1}{\sqrt{1-x^2}}$, dont la primitive (la fonction arcsinus) n'est pas au programme ; l'intégrale vaut $\pi$. Pour la parabole $f(x) = \dfrac{x^2}{2}$ sur $[0\,;1]$, l'intégrale $\displaystyle\int_0^1 \sqrt{1+x^2}\,\mathrm{d}x$ vaut $\dfrac{\sqrt2 + \ln\!\big(1+\sqrt2\big)}{2} \approx 1{,}14779$ : le logarithme apparaît, mais la primitive n'est pas accessible en terminale. Pour presque toutes les courbes, on calcule donc la longueur de façon approchée : c'est le rôle de l'algorithme. Vérifier la chaînette Avec $f(x) = \dfrac{\mathrm{e}^x + \mathrm{e}^{-x}}{2}$, démontrer que $1 + f'(x)^2 = f(x)^2$ pour tout réel $x$.

Comme $\mathrm{e}^x\mathrm{e}^{-x} = 1$, en développant :

$$f'(x)^2 = \frac{\mathrm{e}^{2x} - 2 + \mathrm{e}^{-2x}}{4}$$

donc

$$1 + f'(x)^2 = \frac{\mathrm{e}^{2x} + 2 + \mathrm{e}^{-2x}}{4}.$$

On reconnaît le carré $\left(\dfrac{\mathrm{e}^x + \mathrm{e}^{-x}}{2}\right)^2$, c'est-à-dire $f(x)^2$.

Calculer une longueur avec Python

La définition par les lignes brisées se programme directement. La fonction ci-dessous reçoit une fonction $f$, les bornes $a$ et $b$ et le nombre $n$ de segments. On peut modifier le code et l'exécuter.

from math import sqrt def longueur(f, a, b, n): h = (b - a) / n total = 0 for k in range(n): x0 = a + k * h x1 = x0 + h total = total + sqrt(h**2 + (f(x1) - f(x0))**2) return total def parabole(x): return x**2 / 2 for n in [1, 10, 100, 1000]: print(n, longueur(parabole, 0, 1, n))

On obtient $1{,}11803$ pour $n = 1$, puis $1{,}14750$, $1{,}1477906$ et $1{,}14779355$, à comparer avec la valeur exacte $1{,}14779357\ldots$ Les écarts valent environ $3\times10^{-2}$, $3\times10^{-4}$, $3\times10^{-6}$ et $3\times10^{-8}$ : quand on multiplie le nombre de segments par $10$, l'erreur est divisée par $100$. On dit que la méthode est d'ordre 2 : l'erreur est proportionnelle à $\dfrac{1}{n^2}$.

Si l'on connaît $f'$, on peut aussi calculer l'intégrale $\displaystyle\int_a^b \sqrt{1 + f'(x)^2}\,\mathrm{d}x$ par la méthode du point milieu : on additionne les aires de rectangles dont la hauteur est prise au milieu de chaque intervalle.

from math import sqrt def longueur_integrale(fp, a, b, n): h = (b - a) / n total = 0 for k in range(n): milieu = a + (k + 0.5) * h total = total + sqrt(1 + fp(milieu)**2) * h return total def derivee(x): return x print(longueur_integrale(derivee, 0, 1, 100)) Ce que l'on peut approfondir en NSI
  • Coût du calcul : la boucle fait $n$ tours, chacun avec un nombre fixe d'opérations ; le coût est proportionnel à $n$. Gagner un chiffre de précision coûte environ trois fois plus de calculs avec une méthode d'ordre 2 ($\sqrt{10} \approx 3{,}2$).
  • Limites des nombres flottants : un ordinateur ne représente qu'environ 16 chiffres significatifs. Pour $n$ très grand, $h$ devient minuscule et les différences $f(x_{k+1}) - f(x_k)$ perdent leur précision : augmenter $n$ sans fin ne rend pas le résultat infiniment juste.
  • Choisir les points : on peut placer plus de points là où la courbe tourne beaucoup et moins là où elle est presque droite (méthodes adaptatives, récursives).
  • Données réelles : une application de course à pied calcule la distance parcourue exactement ainsi, en additionnant les distances entre des positions GPS successives.
En physique : trajectoires et câbles La distance parcourue par un projectile

Un ballon lancé avec une vitesse $v_0$ faisant un angle $\alpha$ avec l'horizontale suit, si l'on néglige les frottements, une trajectoire parabolique que donne la deuxième loi de Newton :

$$y = x\tan\alpha - \frac{g}{2v_0^2\cos^2\alpha}\,x^2.$$

Avec $v_0 = 20$ m/s, $\alpha = 45^\circ$ et $g = 9{,}81$ m/s², la portée (distance horizontale) est $\dfrac{v_0^2\sin 2\alpha}{g} \approx 40{,}8$ m, la hauteur maximale environ $10{,}2$ m, et la longueur de la trajectoire, calculée avec la formule de la longueur, environ $46{,}8$ m.

Un physicien obtient la même valeur autrement : la distance parcourue est l'intégrale de la vitesse sur la durée du vol. Le vecteur vitesse a pour coordonnées $\big(v_0\cos\alpha\,;\,v_0\sin\alpha - gt\big)$ ; la vitesse est sa norme

$$v(t) = \sqrt{(v_0\cos\alpha)^2 + (v_0\sin\alpha - gt)^2}$$

et la distance parcourue est $d = \displaystyle\int_0^{T} v(t)\,\mathrm{d}t$, avec $T = \dfrac{2v_0\sin\alpha}{g} \approx 2{,}88$ s. Le calcul donne aussi $46{,}8$ m. C'est la même idée : sur un court instant $\mathrm{d}t$, le mobile parcourt $\mathrm{d}x$ et $\mathrm{d}y$, donc une distance $\sqrt{\mathrm{d}x^2 + \mathrm{d}y^2}$ ; c'est la formule de la longueur d'une courbe paramétrée.

Le câble suspendu : la chaînette

Quelle forme prend un câble, une chaîne ou une ligne électrique tenue par ses deux extrémités ? Galilée, en 1638, la compare à une parabole. Le problème est posé en 1690 par Jacques Bernoulli et résolu en 1691 par Jean Bernoulli, Leibniz et Huygens : c'est la chaînette, d'équation $y = a\,\dfrac{\mathrm{e}^{x/a} + \mathrm{e}^{-x/a}}{2}$, où $a$ est une longueur qui dépend du câble et de la façon dont il est tendu.

L'équation de la chaînette se démontre en écrivant la deuxième loi de Newton pour un petit morceau de câble à l'équilibre (son poids, proportionnel à sa masse linéique, et les tensions à ses deux extrémités), ce qui conduit à une équation différentielle. Ce thème fait l'objet d'un texte à part sur la page Grand Oral ; ici, seule la longueur du câble nous intéresse. var ch = function (x) { return (Math.exp(x) + Math.exp(-x))/2 - 1; }; var k = ch(2) / 4; board.create('functiongraph', [ch, -2, 2], {strokeColor: '#1565c0', strokeWidth: 2.5}); board.create('functiongraph', [function (x) { return k*x*x; }, -2, 2], {strokeColor: '#d32f2f', strokeWidth: 1.5, dash: 2}); board.create('text', [-2.25, 3.35, 'chaînette (bleu) et parabole (rouge)'], {fontSize: 11, useKatex: false, parse: false, cssStyle: 'background:#fff;padding:0 3px;border-radius:3px'}); Une chaînette et la parabole de mêmes extrémités et de même point bas : elles se ressemblent beaucoup sans être égales.

Pour un câble tendu entre deux pylônes distants de $100$ m avec $a = 100$ m, la flèche (l'écart entre les points d'attache et le point le plus bas) vaut environ $12{,}76$ m, et la longueur du câble, avec le calcul fait plus haut, $2a\times\dfrac{\mathrm{e}^{0{,}5} - \mathrm{e}^{-0{,}5}}{2} \approx 104{,}22$ m. La parabole de même flèche mesure environ $104{,}19$ m : trois centimètres d'écart. Galilée n'avait pas tort en pratique, mais la parabole n'est pas la bonne forme ; l'écart devient visible quand le câble pend beaucoup.

Retournée, la chaînette donne la forme idéale d'un arc qui ne travaille qu'en compression : on la retrouve dans l'arche de Saint-Louis aux États-Unis (une chaînette légèrement modifiée) et dans les maquettes en chaînes suspendues de l'architecte Antoni Gaudí.
Quand la longueur devient infinie : côtes et fractales

Le physicien Lewis Fry Richardson remarque que la longueur d'une frontière ou d'une côte dépend de la règle utilisée : plus l'unité de mesure est petite, plus on suit les détails, et plus la longueur trouvée est grande. En 1967, Benoît Mandelbrot publie dans la revue Science un article resté célèbre : « Quelle est la longueur de la côte de la Bretagne ? » (il s'agit de la Grande-Bretagne). Sa réponse : cela dépend de l'échelle, et à la limite la longueur n'est pas finie.

Le flocon de Koch (Helge von Koch, 1904) en donne un modèle mathématique. On part d'un triangle équilatéral de côté $1$. À chaque étape, chaque segment est partagé en trois, et le tiers du milieu est remplacé par deux segments de même longueur, formant une pointe.

var etape = board.create('slider', [[0.05, 0.4], [0.55, 0.4], [0, 2, 5]], {name: 'étape', snapWidth: 1, digits: 0}); var c = board.create('curve', [[0], [0]], {strokeColor: '#1565c0', strokeWidth: 1.5}); function koch(x1, y1, x2, y2, n, X, Y) { if (n === 0) { X.push(x2); Y.push(y2); return; } var dx = (x2 - x1)/3, dy = (y2 - y1)/3; var ax = x1 + dx, ay = y1 + dy, bx = x1 + 2*dx, by = y1 + 2*dy; var px = ax + dx/2 - dy*Math.sqrt(3)/2, py = ay + dy/2 + dx*Math.sqrt(3)/2; koch(x1, y1, ax, ay, n-1, X, Y); koch(ax, ay, px, py, n-1, X, Y); koch(px, py, bx, by, n-1, X, Y); koch(bx, by, x2, y2, n-1, X, Y); } c.updateDataArray = function () { var X = [0], Y = [0]; koch(0, 0, 1, 0, Math.round(etape.Value()), X, Y); this.dataX = X; this.dataY = Y; }; board.create('text', [0.05, -0.05, function () { var k = Math.round(etape.Value()); return 'longueur d\'un côté : ' + Math.pow(4/3, k).toFixed(3).replace('.', ','); }], {fontSize: 12, useKatex: false, useMathJax: false, parse: false, cssStyle: 'background:#fff;padding:0 3px;border-radius:3px'}); board.update(); Un côté du flocon de Koch, de l'étape 0 à l'étape 5 : chaque étape multiplie la longueur par $\frac{4}{3}$.

Chaque segment est remplacé par quatre segments trois fois plus courts : la longueur est multipliée par $\dfrac{4}{3}$ à chaque étape. Le périmètre du flocon est donc la suite géométrique $p_n = 3\left(\dfrac{4}{3}\right)^n$ : $3$ ; $4$ ; $5{,}33$ ; $7{,}11$… Comme $\dfrac{4}{3} > 1$, $\lim\limits_{n\to+\infty} p_n = +\infty$. Le périmètre dépasse $1\,000$ à l'étape $21$, alors que le flocon tient toujours dans un disque : une courbe de longueur infinie entoure une aire finie.

La courbe limite est continue, mais elle n'a de tangente en aucun point : elle n'est dérivable nulle part. La formule intégrale ne s'applique pas, et la suite des lignes brisées n'a pas de limite finie : la courbe n'est pas rectifiable. Pour mesurer ces objets, Mandelbrot utilise une autre grandeur, la dimension fractale, qui vaut $\dfrac{\ln 4}{\ln 3} \approx 1{,}26$ pour le flocon de Koch : plus qu'une ligne (dimension 1), moins qu'une surface (dimension 2).

Le vivant exploite la même idée en trois dimensions : en se repliant à plusieurs échelles, une paroi offre une très grande surface dans un volume contenu. C'est le cas de la paroi de l'intestin (plis, villosités, microvillosités) et des poumons (bronches ramifiées jusqu'aux alvéoles) : plus de surface, donc plus d'échanges, pour le même encombrement. Ce thème fait l'objet d'un texte à part : Les fractales en biologie.
Des directions pour construire sa question

Ce texte n'est pas un Grand Oral. Il rassemble des connaissances dans lesquelles chacun peut choisir une direction, la creuser et formuler sa propre question. Quelques directions possibles :

Pour l'échange avec le jury : les notions du cours à maîtriser

Le jury peut interroger sur les chapitres de spécialité mobilisés. Avec ce thème, il est utile de connaître parfaitement : le théorème de Pythagore et l'inégalité triangulaire ; le nombre dérivé, la tangente et l'approximation affine ; les suites géométriques, les suites monotones et leurs limites ; l'intégrale, les primitives et la méthode des rectangles ; la fonction exponentielle ; et, en physique, la deuxième loi de Newton et le mouvement dans un champ de pesanteur.

Pour réviser ces chapitres, l'application Maths FlashBac reprend tout le cours de spécialité en cartes.

Pour aller plus loin