La conception d'un pendule simple est assez ... simple. Mais son étude physique, si l'on veut la simplifier, entraine quelques contraintes assez importantes. Voyons lesquelles:
Bref, il s'agit de construire une machine dont les caractéristiques approchent
le plus possible la simplicité physique.
En général, on construit un pendule simple avec une bille métallique de petite
taille, que l'on suspend à une potence par l'intermédiaire d'un fil métallique
fin et rigide. l'extrémité haute du fil repose sur un pivot pour réduire les
frottements.
Plaçons nous dans un laboratoire, sur une table stable, regardons et manipulons
cette machine simple:
Pour répondre à ces questions et comprendre la physique du pendule simple, nous
devons le modéliser le plus finement possible et étudier ce que nous dit ce
modèle. C'est ce que je vous propose dans la suite.
Tout d'abord, schématisons notre pendule simple dans un référentiel (M, er, eq), que nous supposerons galiléen.
Pour modéliser le comportement du pendule, nous devons déterminer l'équation de
son mouvement dans le référentiel choisi, c'est à dire établir l'évolution de
l'angle q dans le temps. Pour ce faire, nous allons
appliquer le PFD (Principe Fondamental de la Dynamique ou seconde loi de
Newton). Il y a d'autres méthodes, qui ne sont pas du niveau de TS, et qui
aboutissent au même résultat.
La bille M, que nous pouvons considérer comme ponctuelle par hypothèse, parcourt
la trajectoire circulaire s. A l'instant t, la distance parcourue sur la
trajectoire s est égale à l*q. La trajectoire est
orientée comme indiquée sur le schéma.
La projection du vecteur P sur l'axe eq est
-mg*sin(q). Le signe - provient de l'orientation de
la trajectoire. Il indique que la force subit est une force de rappel, qui
ramène la bille à son état d'équilibre le plus stable.
En écrivant le PFD dans le référentiel, j'obtiens md2s/dt2 = -mg*sin(q). Sachant que s = l*q, en remplaçant cette valeur dans l'équation précédente et en simplifiant par m, j'obtiens l*d2q/dt2 = -g*sin(q), soit au final, en posant w = sqrt(g/l):
d2q/dt2 + w2 sin(q) = 0
Bon, voilà notre modèle! Une équation différentielle du second ordre, non linéaire...
Cette équation différentielle non linéaire n'a pas de solution analytique immédiate, sauf à faire appel aux fonctions elliptiques de Jacobi. Alors d'habitude, on approxime en remarquant que si l'angle q est petit, l'angle (en radian) a une valeur à peu près équivalente à son sinus. C'est l'approximation des "petits angles" que l'on fait en cours de méca de TS et même de math sup. D'ailleurs, cela m'inspire l'idée d'un travail personnel intéressant. Vous savez ou pas que cette approximation est justifiée par le développement limité de la fonction sinus qui est sin (x) = x - x^3/3! + x^5/5! + ... . Cette formule permet d'estimer l'erreur que l'on fait en fonction de la valeur de x, exprimé en radian bien sur, en posant sin(x) = x.
Mais cette approximation n'est pas très réaliste si l'on veut faire l'étude du comportement du pendule. Alors nous allons procéder à une résolution numérique de l'équation.
Le langage Scilab possède un outil puissant de résolution des équations
différentielles ordinaires (EDO) qui s'appelle ode(). Nous allons l'utiliser
sans entrer dans les détails de son fonctionnement, qui relèvent de l'analyse
numérique et ne sont donc pas dans le scope de cette page.
Précisons que ode() ne traite que des équations du premier ordre. Or il ne vous
a pas échappé que notre équation est du deuxième ordre. On va donc procéder en
rusant... Si vous ne comprenez pas bien ce qui suit, ce n'est pas grave. Le but
est de faire de la physique pas de l'analyse numérique!
Partons donc de notre équation, que je vais réécrire d2q/dt2
= -w2sin(q). Je vais faire
le changement de variables suivant : u1 = q et u2 =
dq/dt. Je noterai du1 = u2 et du2 = d2q/dt2
= -w2*sin(q) et donc
finalement vous retrouverez dans le programme ces notations. Pour couper court à
toute remarque sur la rigueur de la notation, je précise qu'il ne s'agit pas de
notation différentielle...
Voici le premier programme PenduleScilab1, qui trace la courbe d'évolution de
l'angle en fonction du temps. Les conditions initiales sur q
et dq/dt sont exprimées dans le vecteur u0. Elles
sont définies par l'utilisateur au lancement du programme. Ce programme trace
aussi le portrait de phase, c'est à dire la courbe de variation de la vitesse
angulaire en fonction de l'angle.
Vous noterez que j'ai fixé arbitrairement la valeur de l à 1 m. Vous pouvez la
modifier dans le code, pour vérifier son influence sur la période du pendule.
Voici le tracé obtenu avec un angle initial de 0.1 rd et une vitesse angulaire
initiale nulle:

Voici le tracé obtenu avec un angle initial de -3 rd et une vitesse angulaire initiale nulle:

Il est intéressant d'aborder l'étude du pendule simple sous
l'angle énergétique. Vous savez sans doute que l'énergie mécanique Em du pendule
est égale à la somme de son énergie potentielle Ep et de son énergie cinétique
Ec. Comme précisé plus haut, on suppose l'absence de frottement...
Etablissons Ec : elle est égale à (1/2)mv2, alors que v = l*dq/dt.
On obtient donc Ec = (1/2)m*l2*(dq/dt)2.
Passons à Ep: elle est égale à mgh, h étant l'altitude mesurée à
partir de l'altitude de repos h0=0. Un petit calcul de trigo montre que h = l*(1 - cos(q)).
On obtient donc Ep = m*g*l*(1 - cos(q)).
On peut donc écrire Em = (1/2)m*l2*(dq/dt)2
+ m*g*l*(1 - cos(q)).
Le programme PenduleScilab3.sce trace sur une même fenêtre
les courbes d'énergie potentielle et d'énergie cinétique. Il permet de suivre
l'évolution en fonction du temps de ces deux énergies et de vérifier la
conservation de l'énergie mécanique totale.
En faisant varier l'angle initial entre 0 et +p ou -p, il permet également d'analyser l'allure de
l'énergie potentielle et sa limite, qui est 2mgl comme vous l'aurez calculé!
D'ailleurs , que ce passe-t-il si cette limite est dépassée, c'est à dire qi
l'on fournit au pendule une énergie initiale supérieure à 2mgl?
Ci dessous, deux exemples: à gauche l'angle initial vaut 0.1 rd et à
droite 3.1 rd. Dans les deux cas, la vitesse initiale est nulle. Que
constatez-vous?
![]() |
![]() |
A l'aide des programmes Scilab que vous pouvez télécharger ci-dessus je vous invite aux manips suivantes:
et toutes celles que vous pourriez inventer!