\documentclass[12pt]{article} \usepackage[a4paper]{geometry} \usepackage{pstricks,pst-node,pst-grad,pst-math,pst-char,pst-slpe} \usepackage{multido} \usepackage{pst-prisme} \usepackage{pst-xkey} \usepackage[T1]{fontenc} \usepackage[latin1]{inputenc}% \usepackage{url} %% \SpecialCoor % les calculs sont ceux de Gernot Hoffmann % dans http://www.fho-emden.de/~hoffmann/prism16072005.pdf \newcommand\cadre[1]{% \psframebox[fillstyle=solid,fillcolor=black]{\textcolor{white}{#1}}} \title{Une commande \cadre{\texttt{PSTricks}} permettant de simuler la \pscharpath[fillstyle=slopes,linestyle=none]{dispersion} de la lumière par un prisme} \date{19 octobre 2\,005} \author{Manuel Luque} \begin{document} \maketitle Cette commande permet de simuler la dispersion de la lumière blanche par un prisme. Il y a peu de paramètres, les valeurs indiquées sont celles par défaut. \begin{itemize} \item L'angle au sommet du prisme : \cadre{\texttt{AnglePrisme=60}}. \item L'angle que fait le plan (1), où l'on place l'émetteur, avec la verticale : \cadre{\texttt{AnglePlan1=25}}, les valeurs négatives sont possibles. \item L'angle que fait le plan (2), l'écran, avec la verticale : \cadre{\texttt{AnglePlan2=55}}, les valeurs négatives sont possibles. \item La position de l'émetteur par rapport à l'origine choisie $C_1$ sur le plan : $\overrightarrow{C_1E_1}=k\overrightarrow{u_1}$, \cadre{\texttt{k=1}}. \end{itemize} On modifiera la direction du rayon incident avec la valeur de \cadre{\texttt{AnglePlan1}} et le point d'incidence sur la face d'entrée avec \cadre{\texttt{k}}. \vfill La méthode de calculs adoptée est celle de Gernot Hoffmann qu'il détaille dans son document : \fcolorbox{red}{yellow!50}{\url{http://www.fho-emden.de/~hoffmann/prism16072005.pdf}}, ceci est donc une adaptation du magnifique travail de Gernot Hoffmann, cette méthode est présentée dans le document : \verb+prisme_xcolor_présentation2.tex+, qui se trouve dans le même répertoire que les autres fichiers : \fcolorbox{red}{yellow!50}{\url{http://melusine.eu.org/syracuse/mluque/pst-prisme/}} \clearpage \section{La figure obtenue avec les valeurs par défaut} \begin{verbatim} \begin{center} \psframebox[fillcolor=black,fillstyle=solid]{ \begin{pspicture}*(-7,-2)(7,8) \psprismeColor \end{pspicture}} \end{center} \end{verbatim} \begin{center} \psframebox[fillcolor=black,fillstyle=solid]{% \begin{pspicture}*(-7,-2)(7,8) \psprismeColor \end{pspicture}} \end{center} \clearpage \section{Le rayon incident est perpendiculaire à la face d'entrée} \begin{verbatim} \begin{center} \psframebox[fillcolor=black,fillstyle=solid]{ \begin{pspicture}*(-7,-2)(7,8) \psprismeColor[AnglePrisme=30,AnglePlan1=-15,k=5] \end{pspicture}} \end{center} \end{verbatim} \begin{center} \psframebox[fillcolor=black,fillstyle=solid]{ \begin{pspicture}*(-7,-2)(7,8) \psprismeColor[AnglePrisme=30,AnglePlan1=-15,k=5] \end{pspicture}} \end{center} \section{Ce qui n'a pas été prévu !} Ce qui n'a pas été prévu ce sont les impossibilités physiques. Si $r_2$ est supérieur à l'angle limite il n'y a donc pas de transmission dans l'air et le calcul de $i_2$ étant impossible se solde par un message de \texttt{postscript} : \begin{verbatim} Displaying page 1 Displaying page 2 Displaying page 3 Displaying page 4 Error: /rangecheck in --sqrt-- Operand stack: alpha2 -1.02701 -0.0547467 \end{verbatim} On rappelle que \texttt{alpha2} c'est $i_2$. Par exemple \cadre{\texttt{AnglePrisme=65}}, les autres paramètres par défaut étant inchangés. \begin{verbatim} \begin{center} \psframebox[fillcolor=black,fillstyle=solid]{% \begin{pspicture}*(-7,-2)(7,8) \psprismeColor[AnglePrisme=65] \end{pspicture}} \end{center} \end{verbatim} Tout reviendra correct en modifiant l'inclinaison du rayon incident : \begin{verbatim} \begin{center} \psframebox[fillcolor=black,fillstyle=solid]{% \begin{pspicture}*(-7,-2)(7,8) \psprismeColor[AnglePrisme=65,AnglePlan1=51,k=-2.25] \end{pspicture}} \end{center} \end{verbatim} \begin{center} \psframebox[fillcolor=black,fillstyle=solid]{% \begin{pspicture}*(-7,-2)(7,8) \psprismeColor[AnglePrisme=65,AnglePlan1=51,k=-2.25] \end{pspicture}} \end{center} On choisira \cadre{\texttt{k=-2.25}} pour que le rayon incident frappe la face d'entrée à peu-près en son milieu. Mais dans ces cas particuliers, c'est, n'est-ce-pas ? le savoir-faire du physicien qui interviendra ! (\textit{bis-repetita}) \end{document}