Retour

par-definirfonction.tex

Télécharger le fichier
\section {Définir une fonction}
 
Il est possible de définir des fonctions utilisables dans
l'environnement postscript. L'ensemble de départ peut être $R$, $R^2$
ou $R^3$, et l'ensemble d'arrivée peut être $R$, $R^2$ ou $R^3$.
 
La définition se fait avec la macro \verb!\defFunction!. Cette
macro nécessite six arguments, dont un seul est optionnel.
 
\verb!\defFunction[<options>]{<nom>}(<var>){<x(var)>}{<y(var)>}{<z(var)>}!
 
\begin{table}[h]
\begin{tabular}{p{2cm}p{11cm}}
\verb!<options>! & On y insère les option typiques de PSTricks, comme
\verb!linewidth! etc., et en plus, quelques unes définies par
\verb!pst-solides3d!. Une très charmante option est \verb!algebraic!,
avec quelle on peut éviter la notation RPN (Reverse Polish
Notation). Toutes options sont des paires (clé,valeur) et sont séparées
avec des virgules.\\
 
\verb!<nom>! & C'est un nom unique de votre choix -- mais attention:
évitez des noms avec des accents, PostScript ne les aime pas du
tout.\\
 
\verb!<var>! & On y insère au maximum trois variables arbitraires,
séparées avec des virgules. \\
 
\verb!<x(var)>! \verb!<y(var)>! \verb!<z(var)>! & On y met des
fonctions dépendant des variables définies pour les directions
euclidienness $x,\,y,\,z$. Si une de ces trois directions n'est pas
voulue, insérez  un 0 entre les parenthèses -- ce qui vous donne la
possibilité de définir aussi des projetés plans de courbes de fonctions.
\end{tabular}
\end{table}
 
Quand vous avez défini une fonction, cette fonction est toujours
reprise avec son \verb!<nom>! choisi.
 
Voil\`{a} quelques exemples:
\begin{itemize}
    \item \verb!\defFunction{moncercle}(t){t cos 3 mul}{0}{t sin 3 mul}!
 
    donne un cercle de rayon 3 dans le plan $xOz$ (notation RPN).
    \item \verb!\defFunction[algebraic]{helice}(t){cos(t)}{sin(t)}{t}!
 
    donne une hélice  en notation algèbrique.
 
    \item \verb!\defFunction[algebraic]{F}(t){t}{}{}!
    donne une fonction de \textbf{R} dans \textbf{R}
 
    \item \verb!\defFunction[algebraic]{F}(t){t}{}{}!
    donne une fonction de \textbf{R} dans \textbf{R$^{\textbf 2}$}
 
    \item \verb!\defFunction[algebraic]{F}(t){t}{t}{t}!
    donne une fonction de \textbf{R} dans \textbf{R$^{\textbf 3}$}
 
\end{itemize}
 
\llap {\dbend } Il nous reste encore du travail à faire sur cette
macro, et elle ne permet pour le moment pas de choisir des noms
de variables quelconques, car ils risquent d'entrer en conflit avec
des noms déjà existant. Merci d'utiliser des noms analogues à ceux
utilisés dans la documentation. Une bonne stratégie consiste à
utiliser systématiquement un ou plusieurs caractères numériques à la
fin de vos noms de variables.