mardi 8 avril 2014

Pendules couplés par un ressort

C’est un problème classique et largement présent sur le Web, cependant les calculs précis dans le cas général ne sont pas en général traités, une exception pour l’étude de Gilbert Gastebois qui comprend aussi le cas des petits angles avec l’étude des modes propres et des battements le tout complété par une superbe animation en java.

Cette étude est donc reprise dans ce document, tout au moins jusqu'à l'établissement des équations différentielles couplées, d'abord d'un point de vue théorique puis avec des animations réalisées avec le package animate, la résolution numérique étant confiée au package pst-ode, on ne limite donc pas aux petits angles.
http://manuel.luque.perso.neuf.fr/pst-ressort-package/2-pendula-coupled-spring.pdf
http://manuel.luque.perso.neuf.fr/pst-ressort-package/2-pendula-coupled-spring.tex 

Pour les animations elles concernent les modes propres et les battements :
http://manuel.luque.perso.neuf.fr/pst-ressort-package/2-pendula-coupled-spring-part2.pdf 
http://manuel.luque.perso.neuf.fr/pst-ressort-package/2-pendula-coupled-spring-part2.tex 

Je rappelle que les animations sont intégrées dans le fichier pdf.

Voici deux conversions de ces animations au format Gif animé :
 L'animation précédente contient 50 images.
L'animation suivante, les battements, contient 500 images !!!. Il faudra donc attendre le temps nécessaire pour que le navigateur mette en cache ces images afin que l'animation soit fluide.
 
 http://manuel.luque.perso.neuf.fr/pst-ressort-package/2pendulescouplesv2.gif


La troisième partie traite de différents exemples avec des points d’attache des ressorts différents.

http://manuel.luque.perso.neuf.fr/pst-ressort-package/2-pendula-coupled-spring-part3.pdf 
http://manuel.luque.perso.neuf.fr/pst-ressort-package/2-pendula-coupled-spring-part3.tex 

Les fichiers de l'animation des pendules en opposition de phase :

http://manuel.luque.perso.neuf.fr/pst-ressort-package/2-pendula-coupled-spring-opposition.pdf 
http://manuel.luque.perso.neuf.fr/pst-ressort-package/2-pendula-coupled-spring-opposition.tex 


Mise à jour de "pst-perspective"

Thomas Söll a effectué une mise à jour de "pst-perspective" avec des exemples supplémentaires comme, par exemple, un magnifique pont (ou un aqueduc) à voûte dont les piles sont joliment dessinées.La documentation du package existe maintenant en anglais et en allemand.



Tous les nouveaux fichiers sont dans ce répertoire :
http://manuel.luque.perso.neuf.fr/pst-perspective/

Thomas a aussi créé un exemple combinant pst-ressort et pst-perspective pour illustrer le phénomène d’induction et la loi de Lenz.


http://manuel.luque.perso.neuf.fr/pst-perspective/schraegbilder.tex
http://manuel.luque.perso.neuf.fr/pst-perspective/schraegbilder.pdf

Cette version de pst-perspective sera prochainement sur le serveur du CTAN.


jeudi 3 avril 2014

Oscillateurs sur un banc à coussin d’air : une extrémité libre

Premier mode : les mobiles vibrent en phase.
Deuxième mode : les mobiles vibrent en opposition de phase :
Le listing qui après la séquence : LaTeX -> DVIPS -> ps2pdf donnera le fichier pdf contenant les 2 animations créées avec le package animate. Pour les packages pst-ode, animate et pst-ressort voir les messages précédents.

\documentclass[fleqn]{article}
\usepackage[a4paper,margin=2cm]{geometry}
\usepackage[latin1]{inputenc}%
\usepackage[T1]{fontenc}
\usepackage[french]{babel}
\usepackage{lmodern}
\usepackage{pst-ode,multido,pst-ressort}
\usepackage{animate}
\usepackage{array,amsmath}
\def\Mobile{
    \pspolygon[fillstyle=solid,fillcolor=gray!50](-1,0.5)(1,0.5)(1,1.25)(0.9,1.25)(0.9,0.75)(-0.9,0.75)(-0.9,1.25)(-1,1.25)
    \pspolygon[fillstyle=solid,fillcolor=gray](-1,0)(1,0)(1,0.5)(-1,0.5)
}
\def\Rail{
    \psline[linewidth=0.1](-8,-0.5)(-8,1.25)
    \psframe[fillstyle=solid,fillcolor={[rgb]{0.75 0.75 0.5}}](-8,-0.5)(8,0.5)
    \multido{\n=-7.5+0.5}{31}{\psdot[dotstyle=o](\n,0.25)}
}
% x1    x2   x1'   x2'
% y[0] y[1]  y[2]  y[3]
\def\oscillateurs{y[2]|y[3]|(-2*y[0]+y[1])*O2|(-y[1]+y[0])*O2}
\def\initCond{x10 x20 v10 v20}
\SpecialCoor
\title{Oscillateurs sur un banc à coussin d'air}
\date{3 avril 2014}
\begin{document}
\maketitle
\begin{center}
\begin{pspicture}(-9,-1.5)(9,2)
\psset{li=4,N=10,dl=0.2,nS=15,alpha=30,R=0.25}
\Rail
\rput(-3,0){\Mobile}
\rput(3,0){\Mobile}
\psRessort[linewidth=0.02,linecolor=red]{o-o}(-8,1)(-4,1)
\psRessort[linewidth=0.02,linecolor=blue]{o-o}(-2,1)(2,1)
\psline{->}(-8,-1)(8,-1)
\psdots(-3,-1)(3,-1)
\uput[u](-3,-1){$O_1$}
\uput[u](3,-1){$O_2$}
\uput[u](8,-1){$x$}
\rput(-6,1.5){$k$}
\rput(0,1.5){$k$}
\uput[u](-3,1){$(m)$}
\uput[u](3,1){$(m)$}
\end{pspicture}
\end{center}
\[
\left\{
\begin{array}[m]{l}
 \ddot{x_1}=-\dfrac{2k}{m}x_1+\dfrac{k}{m}x_2\\[1em]
 \ddot{x_2}=\dfrac{k}{m}x_1-\dfrac{k}{m}x_2
\end{array}
\right.
\Longrightarrow
\left\{
\begin{array}[m]{l}
 \ddot{x_1}=-2\omega_0^2x_1+\omega_0^2x_2\\[1em]
 \ddot{x_2}=\hphantom{-2}\omega_0^2x_1-\omega_0^2x_2
\end{array}
\right.
\]
Valeurs propres $(\omega^2)$ et vecteurs propres :
\[
 \left[
    \begin {array}{c}
    \dfrac{3+\sqrt {5}}{2} {\omega_0}^{2}\\
    \noalign{\medskip}
    \dfrac{3-\sqrt {5}}{2} {\omega_0}^{2}
  \end {array}
   \right]
  \qquad
  \left[
    \begin {array}{cc}
    -\dfrac{\sqrt {5}+1}{2}&\dfrac{\sqrt {5}-1}{2}\\
    \noalign{\medskip}
    1&1
  \end {array}
   \right]
\]
\begin{verbatim}
\pstVerb{
    /k' 5 def   % constante de raideur (k)
    /m' 0.5 def % masse (m)
    /O2 k' m' div def % pulsation propre d'un oscillateur au carré
        }
% x1    x2   x1'   x2'
% y[0] y[1]  y[2]  y[3]
\def\oscillateurs{y[2]|y[3]|(-2*y[0]+y[1])*O2|(-y[1]+y[0])*O2}
\def\initCond{x10 x20 v10 v20}
\end{verbatim}
\newpage
Premier mode : les mobiles vibrent en phase.
\begin{center}
\psset{li=4,N=10,dl=0.2,nS=15,alpha=20,R=0.25}
\def\nFrames{50}% 50 images
\begin{animateinline}[controls,loop,%
                     begin={\begin{pspicture}(-9,-2)(9,2)},
                     end={\end{pspicture}}]{5}% 5 images/s
\pstVerb{% datas
    /k' 5 def   % constante de raideur (k)
    /m' 0.5 def % masse (m)
    /O2 k' m' div def % pulsation propre d'un oscillateur au carré
% mode 1
    /O1 k' m' div 3 5 sqrt sub 2 div mul sqrt def
    /T1 6.283185 O1 div def
    /x10 5 sqrt 1 sub 2 div 2 mul def
    /x20 1 2 mul def
    /v10 0 def
    /v20 0 def
        }%
% enregistrement des positions des 2 mobiles
\pstODEsolve[algebraic]{X12L}{0 1}{0}{T1}{\nFrames}{\initCond}{\oscillateurs}
\pstVerb{ % tableaux des positions des mobiles : 50 positions sur une période propre.
       /X12 [X12L] def
        /X1 [
         0 2 X12 length 2 sub {/ix1 exch def
         X12 ix1 get 3 sub % x1
         }for
         ] def
         /X2 [
         0 2 X12 length 2 sub {/ix2 exch def
         X12 ix2 1 add get 3 add % x2
         }for
         ] def
         }%
\multiframe{\nFrames}{i=0+1}{%
\psframe*[linecolor=yellow!20](-9,-1)(9,2)
\psgrid[subgriddiv=0,gridcolor=black,griddots=10,gridlabels=0pt](-9,-1)(9,2)
\Rail%
    \rput(! X1 \i\space get 0){\Mobile}
    \rput(! X2 \i\space get 0){\Mobile}
    \psRessort[linewidth=0.04,linecolor=red]{o-o}(-8,1)(! X1 \i\space get 1 sub 1)
    \psRessort[linewidth=0.04,linecolor=blue]{o-o}(! X1 \i\space get 1 add 1)(! X2 \i\space get 1 sub 1)
}%
\end{animateinline}
\end{center}


Deuxième mode : les mobiles vibrent en opposition de phase :

\begin{center}
\psset{li=4,N=10,dl=0.2,nS=15,alpha=20,R=0.25}
\def\nFrames{50}% 50 images
\begin{animateinline}[controls,loop,%
                     begin={\begin{pspicture}(-9,-1)(9,2)},
                     end={\end{pspicture}}]{10}% 10 images/s
\pstVerb{% datas
    /k' 5 def   % constante de raideur (k)
    /m' 0.5 def % masse (m)
    /O2 k' m' div def % pulsation propre d'un oscillateur au carré
    /T0 6.283185 m' div k' mul def
% mode 2
    /O1 k' m' div 3 5 sqrt add 2 div mul sqrt def
    /T1 6.283185 O1 div def
    /x10 5 sqrt 1 add 2 div neg def
    /x20 1 def
    /v10 0 def
    /v20 0 def
        }%
% enregistrement des positions des 2 mobiles
\pstODEsolve[algebraic]{X12S}{0 1}{0}{T1}{\nFrames}{\initCond}{\oscillateurs}
\pstVerb{ % tableaux des positions des mobiles : 50 positions sur une période propre.
       /X12 [X12S] def
        /X1 [
         0 2 X12 length 2 sub {/ix1 exch def
         X12 ix1 get 3 sub % x1
         }for
         ] def
         /X2 [
         0 2 X12 length 2 sub {/ix2 exch def
         X12 ix2 1 add get 3 add % x2
         }for
         ] def
         }%
\multiframe{\nFrames}{i=0+1}{%
\psframe*[linecolor=yellow!20](-9,-1)(9,2)
\psgrid[subgriddiv=0,gridcolor=black,griddots=10,gridlabels=0pt](-9,-1)(9,2)
\Rail%
    \rput(! X1 \i\space get 0){\Mobile}
    \rput(! X2 \i\space get 0){\Mobile}
    \psRessort[linewidth=0.04,linecolor=red]{o-o}(-8,1)(! X1 \i\space get 1 sub 1)
    \psRessort[linewidth=0.04,linecolor=blue]{o-o}(! X1 \i\space get 1 add 1)(! X2 \i\space get 1 sub 1)
}%
\end{animateinline}
\end{center}
\end{document}

lundi 31 mars 2014

Chaîne d'oscillateurs : partie 1

Dans cette première partie, on se limite à 3 mobiles et 4 ressorts.
Le système est représenté à l'équilibre. On peut supposer, sans que cela nuise à la généralité du problème, que les ressorts ne sont alors ni comprimés, ni tendus.
Le package pst-ode est utilisé pour la résolution numérique du système d'équations différentielles, le package pst-ressort pour le dessin des ressorts et le package animate pour les animations incluses dans le fichier pdf.
Pour le package pst-ode, les variables seront définies par :



 Nous étudions, dans ce document, un cas particulier : c’est une chaîne d’oscillateurs identiques :

Le calcul des modes propres est explicité dans le document :
http://manuel.luque.perso.neuf.fr/pst-ressort-package/chaine-oscillateurs-1.pdf
http://manuel.luque.perso.neuf.fr/pst-ressort-package/chaine-oscillateurs-1.tex

Les animations suivantes sont au format Gif. Les images ont été calculées avec PSTricks. Pour que l'animation soit fluide il faut attendre que le navigateur ait mis dans le cache les 50 images de l'animation.
Premier mode :
Deuxième mode :
Troisième mode :

Sur le document on trouvera une autre animation : propagation d'un ébranlement le long de la chaîne.

Les fichiers du package pst-ressort :
http://manuel.luque.perso.neuf.fr/pst-ressort-package/pst-ressort.tex
http://manuel.luque.perso.neuf.fr/pst-ressort-package/pst-ressort.sty
http://manuel.luque.perso.neuf.fr/pst-ressort-package/pst-ressort-doc.tex
http://manuel.luque.perso.neuf.fr/pst-ressort-package/pst-ressort-doc.pdf

Les packages pst-ode et animate d'Alexan­der Grahn :
http://www.ctan.org/pkg/pst-ode
http://www.ctan.org/pkg/animate

jeudi 27 mars 2014

Illustrations du couplage de deux oscillateurs avec les packages : pst-ressort, pst-ode et animate

Il ne s’agit pas d’un document sur l’étude des oscillateurs couplés, mais d’une suite
d’exemples réalisés avec PSTricks illustrant ce phénomène. Le système est constitué par deux mobiles auto-porteurs posés sur une table horizontale, chacun d’eux lié à un bord de la table par un ressort et reliés entre eux par un troisième ressort. Nous avons donc un système de deux oscillateurs (m1, k1) et (m2, k2) couplés par le ressort K.
Le système est représenté à l’équilibre. On peut supposer, sans que cela nuise à la généralité du problème, que les ressorts ne sont alors ni comprimés, ni tendus.
Si vous souhaitez des renseignements sur l’étude théorique, celle-ci est très bien faite par Gilbert Gastebois sur sa page personnelle :
http://gilbert.gastebois.pagesperso-orange.fr/java/oscillateur/couplage/theorie_couplage.htm

La résolution numérique du système d’équations différentielles est confiée au package pst-ode et l'animation incorporée au fichier pdf au package animate. Ces deux packages sont l’œuvre d’Alexander Grahn, ils pourraient être utilisés sans difficulté pour l’illustration du cas général.

Nous allons illustrer le cas de l’oscillateur symétrique m1 = m2 = m = 1 kg et k1 = k2 = 5N/m.
 Les fichiers sont dans le répertoire :
http://manuel.luque.perso.neuf.fr/pst-ressort-package/

Le document source concernant les oscillateurs couplés sont les suivants :
http://manuel.luque.perso.neuf.fr/pst-ressort-package/oscillateurs-couples-v3.tex
http://manuel.luque.perso.neuf.fr/pst-ressort-package/oscillateurs-couples-v3.pdf

Les fichiers relatifs au package pst-ressort :
http://manuel.luque.perso.neuf.fr/pst-ressort-package/pst-ressort.tex
http://manuel.luque.perso.neuf.fr/pst-ressort-package/pst-ressort.sty
http://manuel.luque.perso.neuf.fr/pst-ressort-package/pst-ressort-doc.tex
http://manuel.luque.perso.neuf.fr/pst-ressort-package/pst-ressort-doc.pdf

D'autres exemples sont dans le répertoire cité.
pst-ode et animate sont sur le serveur du CTAN :
http://www.ctan.org/pkg/pst-ode
http://www.ctan.org/pkg/animate


Les animations suivantes sont au format Gif animé, (pour observer une animation fluide, il faut attendre que les images aient été mises en cache par le navigateur). Les images ont été calculées avec PSTricks. Suivant les conditions initiales :
Premier mode propre : l'oscillateur symétrique.

 Deuxième mode propre : l'oscillateur antisymétrique

 Les battements :


jeudi 20 mars 2014

Oscillateur élastique horizontal : une application de pst-ressort

L’expérience se déroule sur une table horizontale à coussin d’air, avec mobile autoporteur.
Le mobile autoporteur :




Les ressorts non sollicités (à vide).

Les ressorts sont fixés au mobile autoporteur, le système est en équilibre.

Le mobile autoporteur est écarté vers la droite, puis lâché sans vitesse initiale.

x(t) :

Sur le document, l'animation a été réalisée avec le package animate et est incluse dans le fichier pdf.

http://manuel.luque.perso.neuf.fr/pst-ressort-package/mobileautoporteur2ressorts.pdf
http://manuel.luque.perso.neuf.fr/pst-ressort-package/mobileautoporteur2ressorts.tex

Tous les fichiers sont dans ce répertoire :

http://manuel.luque.perso.neuf.fr/pst-ressort-package/

Le début de l'écriture du package pst-ressort est à cette page :

http://pstricks.blogspot.fr/2014/03/representation-dun-ressort-en-pseudo.html