Physique et chimie avec LaTeX, PSTricks et PPCHTeX

Manuel Luque

Nouveautés et mises à jour récentes

9 septembre 2007

Mise à jour du package sur les phénomènes de diffraction lumineuse.

21 août

Voyage dans l'épaisseur d'un trait avec PStricks.

10 août 2007-1 septembre 2007

Transformations géométriques avec PStricks, quelques commandes et exemples.

1 mai 2007

Modulation et démodulation d'amplitude.

29 octobre 2006

Énergie de liaison par nucléon : courbe d'Aston.

23 août 2006

Représentation un solide ou un texte en 3D : une mise-à-jour de pst-vue3d.

30 août 2004

Solides de diffraction : un complément aux figures de diffraction.

22 août 2004

La vie et l'œuvre d'Augustin Fresnel, illustrées avec PSTricks

27 août 2004

Mise à jour des figures de diffraction, avec l'ajout du choix de la longueur d'onde et ajustement automatique de la couleur de la figure de diffraction, de la diffraction avec deux trous circulaires et un trou triangulaire.
http://melusine.eu.org/syracuse/mluque/figuresdiffraction/figuresdiffraction.html

8 avril 2004

Derniers projets en cours :

13 mars 2004

Notes de lectures : compte-rendu de deux livres d'Henriette Chardak :
  • Képler, le visionnaire de Prague (2004) ;
  • Tycho Brahé l'homme au nez d'or (2004).

Fichiers sources : tycho-brahe.zip

19 mars 2004

Mise à jour de pst-mapII (0.6) avec possibilité de personnaliser les cartes géographiques haute-défintion : pnodemapii-doc.html

7 mars 2004

Mise à jour de pst-map2d (0.99) avec possibilité de personnaliser les cartes géographiques : pnodemap.zip

12/12/2003 - 13/02/2004

Projections géographiques 2D et 3D : réalisation avec PSTricks.

5 janvier 2004

Représenter des objets et des scènes en 3D avec PSTricks : mise à jour et nouvelle documentation du package pst-vue3D (version 1.0), non compatible avec l'ancienne. Avec de nouvelles macros dont le dodécaèdre et de nombreux exemples. Documentation en français : vue3d-fr.tex
Represent objects and scenes 3D with PSTricks (with the cooperation of Herbert Voss): update and new documentation of the package pst-vue3D (version 1.0), not compatible with the old version. With macro news of which the dodecahedron and of numerous examples. Documentation in English : vue3d-e.tex

8 novembre 2003

Les utilisateurs de pst-osci : un utilitaire permettant de dessiner des écrans d'oscilloscopes pour toutes sortes de signaux électriques , seront heureux de savoir qu'il est désormais possible de faire une sortie en noir et blanc, grâce à une option rajoutée par Raoul Hatterer. Il suffit de remplacer l'ancien fichier pst-osci.tex, par celui qui est fourni avec la nouvelle documentation : pst-osci(new)

18 octobre 2003

Décidément aucun domaine ne peut échapper à PSTricks, grâce à Giuseppe Matarazzo c'est le tour des constructions mécaniques et civiles de bénéficier d'un package : PST-STRU. Celui-ci est encore en construction, cela va de soi :), mais si vous voulez visiter le chantier et, pourquoi pas, y apporter votre aide, voici son adresse : http://spazioinwind.libero.it/joematara/matastru.htm

8 octobre 2003

Phénomènes optiques : images vues dans l'eau par un aérien et images vues dans l'air par un aquatique, avec les commandes PSTricks permettant de créer d'autres images.

15 septembre 2003

Une gamme de polytopes complexes dessinés très simplement avec deux commandes PSTricks écrites par Jean-Gabriel LUQUE

14 août 2003

Recherche des racines d'une équation avec PSTricks : méthode graphique et affichage des valeurs des racines

  1. Présentation
  2. PPCHTeX
  3. PSTricks
  4. Le mariage de PSTricks et de PPCHTeX
  5. La page didactique sur LateX, PSTricks et PPCHTeX :
  6. PST-node et les flèches
  7. Perspective conique : Une étude théorique de la perspective avec des exemples d'application réalisés avec PSTricks, deux commandes spécialement écrites à cet effet : \perspective et \pnodeTroisD, et Vue directe en 3D avec un package: pst-vue3d(version 0.51)
  8. TEX et les Calculs
  9. Un problème de géométrie traité avec PSTricks
  10. Des jeux de dés
  11. Des transformations du cube
  12. Corde vibrante de Melde.
  13. Des problèmes de physique d'Henri Bouasse, simples mais étonnants, mis en scène avec PSTricks et son prolongement vers l'animation.
  14. Des cartes postales de Venise réalisées avec pst-fill
  15. Recherche des racines d'une équation avec PSTricks : méthode graphique et aussi affichage des valeurs des racines
  16. Les lettres cursives d'Emmanuel Beffara
  17. Des liens

1 Présentation :

LaTeX est un traitement de texte scientifique très utilisé dans les universités, en particulier par les mathématiciens, mais il peut aussi permettre aux physiciens et aux chimistes de produire des documents de qualité.
En effet, les deux packages suivants :

sont des outils d'une richesse et d'une puissance étonnantes. Ce sont les possibilités de ces deux packages, que je vais tour à tour développer.

2 PPCHTeX :

Deux exemples d'équations que l'on peut faire avec PPCHTeX. Vous trouverez le source et bien d'autres exemples dans le fichier à télécharger : FormulesChimie.zip

Fichier à télécharger : DosageAspirine.tex

On peut aussi aller voir d'autres exemples sur la page didactique.
En fait, le plus simple est d'aller sur le site des auteurs de PPCHTeX : J.Hagen & A.F. Otten et de télécharger le package et la documentation(en anglais), laquelle est très volumineuse, avec des centaines d'exemples : http://www.ntg.nl/context/support.htm

Si le mode d'emploi est assez aisé pour des formules simples, cela devient assez compliqué dès lors que les équations et les formules deviennent complexes. Il faut donc prévoir d'y passer un certain temps avant de maîtriser son fonctionnement, mais je pense que cela en vaut la peine car on peut presque tout faire : je ne connais pas d'exemple puisé dans le programme de chimie niveau bac m'ayant résisté(toute modestie mise à part).

3 PSTricks :

PSTricks est une interface extraordinaire(je pèse mes mots) avec PostScript. Elle est due à: Timothy van Zandt, et elle a été enrichie par divers auteurs et essentiellement par : Denis.Girou@idris.fr, qui assure la pérennité de PSTricks sur le site : http://tug.org/applications/PSTricks/.
Les possibilités de PSTricks sont tellement nombreuses que je vais scinder cet exposé en deux parties :
  1. Les graphiques ;
  2. les schémas nécessitant des calculs, parfois complexes, ce dont PostScript s'acquitte fort bien :
    1. La verrerie de chimie ;
    2. Dosages acido-basiques ;
    3. Simulation de phénomènes physiques :
      1. Interférences lumineuses ;
      2. Diffraction par un trou rectangulaire.
    4. Parabole de sûreté ;
    5. Constructions géométriques ;
    6. 3D ;
    7. Système solaire.

3.1 Les graphiques :

Toute fonction explicitement définie :

ou implicitement définie :

trouvera sa représentation graphique avec l'extension à PSTricks : pst-plot
Voici deux exemples de représentation graphique concernant la modulation d'amplitude :

et la réponse d'un circuit RLC à une tension en créneaux :

J'ai réalisé, souvent grâce à l'aide de Denis Girou, un certain nombre de petits modules, chacun spécifique d'une partie du programme de physique de Lycée ou de prépa. On peut télécharger les extensions suivantes qui sont accompagnées d'une documentation en français plus ou moins développée, mais toujours illustrées avec des exemples.
  1. Équations différentielles du premier ordre : concerne les circuits RC, RL.PST-RC.zip
  2. Équations différentielles du second ordre et Van der Pol : concerne les circuits RLC (entre autres). VanDerPol.zip
  3. Réponse d'un circuit RLC à une tension en créneaux. Eqdiff.zip
  4. Modulation d'amplitude et démodulation (en partie). modulation.zip
  5. Fonctions de Bessel : bessel.zip

3.1 Les schémas :

  1. La verrerie
    J'avais réalisé une extension permettant de dessiner la verrerie et divers montages de chimie, toujours avec l'aide de Denis Girou et aussi le soutien de Christophe Jorssen, elle n'a jamais été finalisée, mais elle fonctionne tout de même. En voici un échantillon :

    Vous pouvez la télécharger ici, avec la doc : labo.zip

    Vous pouvez aller voir les magnifiques montages dessinés par Jean-Paul Vignault et les télécharger aux formats ps, pdf etc. sur le site : http://melusine.eu.org/syracuse/bbgraf/html/chimie.xml

  2. Les dosages
    On trouve sur le site :
    http://www.multimania.com/bnathalieb/sp-cialit--terminale/chimie/dosa.exe/odyframe.htm,
    un excellent logiciel de simulation de dosages acido-basique pour Windows95/98 : DosA, très bien fait et très complet. Cependant, si vous souhaitez rester avec LaTeX et PSTricks, voici un petit module bien plus modeste, (illustré ci-contre), qui par une simple commande, permet de tracer la plupart des courbes de pH des dosages acido-basiques. Il calcule la dérivée, et trace les tangentes, pour déterminer le point d'équivalence :
    http://syracuse.eu.org/syracuse/pstricks/pc/

  3. Une représention héliocentrique du système solaire, au jour que l'on fixe soi-même. J'ai quelques scrupules à mettre en ligne cette extension, car pour la représentation en 3D, j'ai repris, faute de trouver mieux par moi-même, le noyau de Pst-3D,
  4. en le modifiant de façon à paramétrer l'inclinaison du plan des orbites planétaires. Toutefois, si à titre expérimental, vous souhaitez vous rendre compte des possibilités de PSTricks en ce domaine, envoyez-moi un message (Mluque5130@aol.com) et je vous ferai parvenir ce module.
  5. La parabole de sûreté :

    Vous pouvez la télécharger ici : parabole.zip
  6. Interférences en lumière monochromatique, ou trichromatique, la largeur et l'écartement des fentes sont paramètrables ainsi que le choix de la longueur d'onde.

    Vous pouvez télécharger ce module ici : Young.zip
  7. Diffraction de Franhaufer, par un trou rectangulaire, dont les dimensions sont paramètrables, ainsi que la longueur d'onde et la distance focale de la lentille.

    Toute cette étude a été revue, complétée par :

    1. le choix de la longueur d'onde qui fixe automatiquement la couleur de la radiation et donc de la figure de diffraction ;
    2. la diffraction pat un trou circulaire a été complétée par la courbe repésentant les variations de l'intensité sur le premier quadrant ;
    3. la figure de diffraction par deux trous circulaires ;
    4. la figure de diffraction par un trou triangulaire.
    Ce nouvel ensemble est téléchargeable sur :
    http://melusine.eu.org/syracuse/mluque/figuresdiffraction/figuresdiffraction.html

    L'image peut être obtenue en négatif pour être photocopiée aisément. Pour faire un transparent, on peut obtenir un rendu plus réaliste:

    Les deux possibilités sont regroupées dans une commande unique, dans le fichier suivant, où tous les paramètres sont explicités.
    diffractionfente.zip
    Ces fichiers ont été mis en ligne de manière interactive (par l'intermédiaire d'un formulaire) par Jean-Michel SARLAT sur : http://melusine.eu.org/syracuse/texmelu
  8. Diffraction circulaire

    Ce module peut être téléchargé ici : diffractioncirculaire.zip(version 0.3)
  9. Diffraction circulaire en lumière RGB

    Ce module peut être téléchargé ici : diffractioncirculaireRGB.zip
  10. Ondes à la surface de l'eau

    La version finale(niveaux de gris et couleurs) peut être téléchargée :
    interferences.zip(14 juin 2002)
    Ce dossier comprend des interférences à 2, 3 et 4 ondes en niveaux de gris et/ou couleurs. L'animation est incluse pour tous les cas, mais c'est un peu trop lourd pour être affiché sur cette page (par manque de place). Aussi, si vous ne voulez pas créer vous même votre animation, je vous renvoie sur animations.
    Vous trouverez dans la documentation quelques pistes pour créer un GIF animé. Les précisions de Denis GIROU sur ce problème-là y sont incluses. Son fichier complémentaire dédié à l'animation est dans :
    AnimWaves.zip

    Jean-Michel SARLAT propose une solution Windows, pour créer un GIF animé à partir d'images PSTricks, voir à l'adresse :

    http://melusine.eu.org/syracuse/scripts/PST-anim/

  11. Diffraction à la surface de l'eau

    La documentation et la version finale (0.3) :
    docdiffractioncuve.zip
    Regardez la superbe animation interactive ! mise en place par Jean-Michel SARLAT, permettant de choisir le délai de défilement des images, etc. sur :
    http://melusine.eu.org/syracuse/mluque/diffractioncuve/animation01.html
  12. Dominique RODRIGUEZ est l'auteur d'un superbe package pst-eucl, permettant de réaliser toutes les constructions géométriques planes au moyen de commandes très simples et efficaces : en voici un exemple :

    Vous pouvez télécharger la version d'essai sur son site : http://dominique.rodriguez.9online.fr/pst-eucl/
  13. La 3D avec l'extension pst-3D de Timothy van Zandt est possible, certes, de façon très modeste, mais c'est suffisant pour illustrer un cours avec des exemples simples.
    Voici une petite aide à télécharger : ManuelPst3D.zip
    et un exemple :

    dont voici le fichier source : Solides3D.zip
  14. Sphère en 3D et coordonnées sphériques : suite à une question de Christophe GABORET, Denis GIROU a repris un petit bout de programme que j'avais fait et voici le résultat :

    Tout est paramétrable : rayon, position du point sur la sphère etc. Téléchargez le fichier source : t3-sphere.tex. Soyez patient et comptez deux à trois minutes pour permettre à TEX de faire les calculs.
  15. Une ébauche de perspective conique avec \pnodeTroisD : une commande à utiliser avec l'extension pst-node.

    Fichier source : pnode3DChaise.tex

    Fichier source : pnode3Dpont.tex

    Fichier source : pnode3DpontC.tex

    Fichier source : PontduCarousel.tex. Pour les calculs géométriques des arches, voyez : Un problème de géométrie traité avec PSTricks.

    Génération aléatoire d'un parterre de marguerites (une mémoire importante est nécessaire: 4 Mo).

    Fichiers sources : fleurs.zip ou bien avec une variante (quelques fleurs blanches) : fleurs2.zip

  16. Si vous souhaitez des renseignements sur le rôle des paramètres de la commande :
    \pnodeTroisD[PHI=15,THETA=60,Dobs=15,Decran=10](x,y,z){Nom}, regardez le schéma de la page Perspective. ( Il y a un bandeau de publicité en haut de la page - ceci est indépendant de ma volonté, mais qui n'est plus visible lorsqu'on descend dans la page.)

4 Le mariage de PSTricks et de PPCHTeX :

On peut faire cohabiter harmonieusement PSTricks et PPCHTeX : si l'on souhaite par exemple :

5 La page didactique sur LateX, PSTricks et PPCHTeX :

6 PST-node et les flèches :

En physique, lorsqu'on est amené a dessiner des circuits électriques ou des schémas d'optique, les tracés de flèches sont incontournables. Je pense en particulier au fléchage des tensions, des courants et des rayons lumineux. Avec PST-node et les commandes appropriées, c'est-à-dire : et en se servant des options que possède \pcline{->}{A}(B) il est facile de réaliser tous les fléchages indispensables aux schémas, et ce de la façon la plus précise qui soit. Les options sont les suivantes : Si on a besoin de placer un point a une position particulière sur une droite déterminée par deux points A et B, les instructions suivantes : permettent de définir le node M sur AB à la position déterminée par [npos=0.5] si l'on souhaite placer le point M au milieu de AB. npos=...est la fraction de AB mesurée à partir de A.
À partir de ces données, en utilisant PST-node, j'ai fabriqué une commande qui permet d'avoir accès à toutes les possibilités précédemment citées.
Cette commande s'appelle : \psArrows[\...](A)(B){nom}. Elle est expliquée et illustrée dans le document à télécharger :
fleches.zip
dont voici des copies d'écrans.

7 TEX et les Calculs :

Calculer avec LATEX n'est pas chose aisée. Heureusement, il existe deux packages qui rendent cela possible de façon simple : multido de Timothy van Zandt qui permet la création de boucles imbriquées avec de multiples paramètres et fp de Michael Mehlich qui permet de faire les calculs scientifiques usuels avec des réels, en les écrivant de la manière naturelle, c'est-à-dire comme on le ferait sur une feuille (enfin presque...). Tous les deux souffraient d'un défaut partiel de compatibilité, mais grâce au patch écrit par Denis Girou, tout est rentré dans l'ordre. Il faut placer les extensions dans l'ordre \usepackage{multido} patch (D.G.) \usepackage{fp}. Ce patch est inclus dans les exemples suivants. Comme les calculs en 3D sont un peu longs avec TEX, l'état d'avancement des calculs s'affiche à l'écran.
coupes.tex
spheres.zip

La géométrie dans l'espace avec PSTricks, c'est donc possible. Voici un exemple dans lequel on peut paramétrer la position de la section de la sphère (distance au centre, latitude et longitude du centre de la section-coupe), tout en dessinant le plan de coupe.
spherecoupe.tex
Des essais divers dans :
danslasphere.tex, et par points (plus long) : danslasphere2.tex
Un algorithme plus rapide et me semble-t-il, plus fiable, dans lequel diverses possibilités ont été introduites :
sphere3D.tex
Une variante avec des facettes en couleurs aléatoires.
spherecouleur.tex
Et pour conclure cette série illustrant les possibilités de calcul de TEX, (en l'occurence : les mérites du package fp), dont je n'ai pas, loin de là, fait le tour de toutes les possibilités, voici une tonne de calculs (mais assez rapides) permettant dessiner un cylindre en 3D. N'abusez pas de valeurs fantaisistes pour les paramètres, vous seriez décu du résultat, car je n'ai pas prévu beaucoup de tests.
L'idéal serait de construire des objets PSTricks, c'est-à-dire avec un noyau en PostScript, et à cet effet, si vous pensez que cela peut être intéressant, ou si vous avez déjà fait quelque chose de similaire : écrivez-moi .
cylindre.tex
Voici par exemple, ce que peut donner une commande PSTricks paramétrée de façon très simple, comme :
 \begin{document} % Inclinaison : inclinaison de la coupe / Oz, en degrés % Orientation : orientation du plan de section /Oy, en degrés % HauteurCoupe : cote du centre de la section sur Oz % Hauteur : celle du cylindre %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \psset{Dobs=40} \begin{pspicture}(-3,-3)(3,3) \CoupeCylindre[Inclinaison=50,PHI=30,THETA=30,Orientation=30,HauteurCoupe=10,Axes=true,BoiteCreuse=true] \end{pspicture} \end{document} 
Qui permet d'obtenir une section-coupe du cylindre, en choisissant l'inclinaison de la section, son orientation, la hauteur à laquelle elle se situe et le point de vue de l'observateur.
Cet exemple est dans le fichier source suivant :
CoupeCylindre.tex (version 1.1)
Et pour l'animation :
animcylindre.zip

J'ai ajouté l'option [BoiteCreuse=true] qui par défaut est positionnée à [BoiteCreuse=false] : coupe d'un cylindre plein.

Voici le premier exemple élargi à un nombre quelconques de cylindres, définis par leur position sur le sol (Xc,Yc), leur rayon (Radius) et leur hauteur (Hauteur), sous la forme d'une commande unique paramétrable.
Cette application est dans le fichier source suivant :
multicylindres.zip
Le premier schéma ci-dessus a été obtenu avec les instructions suivantes :
 \multido{\rYc=-5.66+11.32}{2}{% \MultiCylindres[Xc=-5.66,Yc=\rYc,Radius=3,Hauteur=8]} \MultiCylindres% paramétres par défaut \multido{\rYc=-5.66+11.32}{2}{% \MultiCylindres[Xc=5.66,Yc=\rYc,Radius=3,Hauteur=8]} 
Le positionnement des cylindres doit être prévu, de façon à placer d'abord le cylindre le plus éloigné de l'observateur et cætera, en remontant vers l'observateur. On pourrait évidemment imaginer de placer les objets dans un tableau, puis de faire le tri en fonction du critère énoncé ... alors si le cœur vous en dit ... il existe le package arrayjob de Zhuhan Jiang, dont Denis Girou a fait une documentation exemplaire : c'est-à-dire riche en exemples originaux et très belle.
Le positionnement de l'observateur était le suivant :
 \psset{PHI=60,THETA=10,Dobs=30}} 
Si l'on adopte le point de vue suivant :
 \psset{PHI=-30,THETA=30,Dobs=30}} 
On obtient la vue suivante. Certains choix de valeurs peuvent conduire à un message d'erreur de fp, que l'on peut essayer de résoudre avec un \FPclip{\variable}{\variable}, si on arrive à repérer la \variable fautive, à condition bien sûr, que les calculs ne conduisent pas à une impossibilité réelle.
Uniquement pour illustrer toujours la capacité de TEX voici venu le tour des cônes. Le temps de calcul est assez long (10-15 minutes pour l'exemple 3) et la méthode choisie pas fameuse, ce n'est donc pas à prendre comme exemple.
multicones.zip

10 Des jeux de dés :

Une ébauche de documentation est dans le fichier suivant. La compilation dure un peu de temps (moins de 5 minutes toutefois), car il y a de nombreux calculs et figures. Prévoir 2100000 bytes de mémoire.
docdies.zip(4 mai)

11 Des transformations du cube :

cube_transformations.zip(29 avril)

12 Corde vibrante de Melde :

melde.zip(15 septembre 2002)

13 Cartes postales de Venise réalisées avec pst-fill:

14 Recherche des racines d'une équation avec PSTricks:

Il s'agit de trois commandes écrites avec PSTricks permettant la recherche graphique des solutions d'une équation, l'affichage à l'endroit souhaité dans le texte des valeurs approchées des racines, ou bien l'affichage des valeurs dans le graphique lui-même. Le tout est réalisé très rapidement...

15 Représentation de polytopes complexes par des commandes PSTricks :

Il s'agit de deux commandes écrites avec PSTricks, permettant de dessiner très simplement un certain nombre de polytopes complexes définis, soit par leurs coordonnées, soit par un paramètre. La méthode permettant d'intégrer de nouveaux polytopes à ceux pré-existants est décrite en détail dans la documentation et ne présente aucune difficulté. D'autres fonctionnalités sont décrites dans la documentation.

16 Les lettres cursives d'Emmanuel Beffara :

http://beffara.org/stuff/frcursive

17 Calculer et représenter les images vues par réfraction à l'aide de commandes PSTricks :

Lorsqu’il nous arrive de regarder dans l’eau, les images que nous percevons des objets et des poissons qui s’y trouvent nous apparaissent différentes de ce qu’ils sont en réalité, ils nous semblent plus proches, plus petits, distordus. Le but de ce modeste article est d’essayer de comprendre et de représenter ce phénomène. On envisage les deux cas : un observateur aérien observe le monde aquatique et inversement.

18 Des liens :

Chemical Formulas - PPCHTeX-Database

Cours de PSTricks - Ahmad Daaboul

Les livres sur TeX et LaTeX en français :

  1. Le TeXbook de Donald E. Knuth traduit en français par Jean-Côme Charpentier: TeXbook
  2. LaTeX par la pratique : Christian Rolland : O'REILLY (avec CD-ROM TeX-LIVE). Contient un chapitre sur PSTricks.
  3. LaTeX Apprentissage, guide et référence : Bernard Desgraupes : VUIBERT.
  4. L'essentiel de LaTeX et GNU-Emacs : Dominique Rodriguez (avec CD-ROM TeX-LIVE): DUNOD. Contient un chapitre sur PSTricks.
  5. LaTeX Companion : Michel Goossens ... : CAMPUSPRESS.
  6. La maîtrise de TeX et LaTeX : T.Lachand-Robert : MASSON.
En anglais le LaTeX GRAPHICS Companion : Addison Wesley éditeur, contient des chapitres sur PSTricks et PPCHTeX.

[Retour au début de la page] [Page suivante]

Page créée le 17 avril 2001 - Dernière mise à jour très partielle le 9 septembre 2007