diff options
author | Karl Berry <karl@freefriends.org> | 2009-01-22 01:40:51 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2009-01-22 01:40:51 +0000 |
commit | 25849400ed3a564641cc47c0ed070f3079f5a611 (patch) | |
tree | e6d33de6d10a6d5693dc675e8850a78017832a62 | |
parent | 1f747b52ef79b4ea4fbc870c9423139e82bd9b60 (diff) |
pst-match 0.21 (20jan09)
git-svn-id: svn://tug.org/texlive/trunk@11942 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r-- | Master/texmf-dist/doc/generic/pst-math/Changes | 6 | ||||
-rw-r--r-- | Master/texmf-dist/doc/generic/pst-math/README | 20 | ||||
-rw-r--r-- | Master/texmf-dist/doc/generic/pst-math/pst-math-doc.bib | 150 | ||||
-rw-r--r-- | Master/texmf-dist/doc/generic/pst-math/pst-math-doc.pdf | bin | 155766 -> 197429 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/generic/pst-math/pst-math-doc.tex | 720 | ||||
-rw-r--r-- | Master/texmf-dist/dvips/pst-math/pst-math.pro | 105 | ||||
-rw-r--r-- | Master/texmf-dist/source/generic/pst-math/Makefile | 69 | ||||
-rw-r--r-- | Master/texmf-dist/tex/generic/pst-math/pst-math.tex | 9 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/pst-math/pst-math.sty | 9 |
9 files changed, 655 insertions, 433 deletions
diff --git a/Master/texmf-dist/doc/generic/pst-math/Changes b/Master/texmf-dist/doc/generic/pst-math/Changes index 0f3c21108b8..b45e32673f0 100644 --- a/Master/texmf-dist/doc/generic/pst-math/Changes +++ b/Master/texmf-dist/doc/generic/pst-math/Changes @@ -1,9 +1,5 @@ ..... pst-math.pro -0.3 2007-11-01 added SEC, COSEC and COTAN functions (cj) - added a range check on ACOS, ASIN, ACOSH and ATANH - added ArgumentOutOfRange to issue a warning message - in the postscript document if needed - fixed a small bug in SINC +0.3 2009-01-20 added SIMPSON for numeric integration (dr/hv) 0.2 2007-08-30 added GAMMA function (hv) 0.1 first CTAN version (cj) diff --git a/Master/texmf-dist/doc/generic/pst-math/README b/Master/texmf-dist/doc/generic/pst-math/README index 2ac88bb4551..96b79438348 100644 --- a/Master/texmf-dist/doc/generic/pst-math/README +++ b/Master/texmf-dist/doc/generic/pst-math/README @@ -1,2 +1,18 @@ -Material in this directory is an enhancement of postscript math operators -to use with pstricks
\ No newline at end of file +pst-math: PostScript extension for mathematical functions: + +Save the files pst-math.sty|pro|tex in a directory, which is part of your +local TeX tree. The pro file should go into $TEXMF/dvips/pstricks/ +Then do not forget to run texhash to update this tree. +For more information see the documentation of your LATEX distribution +on installing packages into your local TeX system or read the +TeX Frequently Asked Questions: +(http://www.tex.ac.uk/cgi-bin/texfaq2html?label=instpackages). + +pst-math needs pst-plot (pstricks-add) and pstricks, which should +be part of your local TeX installation, otherwise get it from a +CTAN server, f.ex. ftp://ftp.ctan.org + +PSTricks is PostScript Tricks, the documentation cannot be run +with pdftex, use the sequence latex->dvips->ps2pdf. + +%% $Id: README 56 2008-11-14 15:55:45Z herbert $ diff --git a/Master/texmf-dist/doc/generic/pst-math/pst-math-doc.bib b/Master/texmf-dist/doc/generic/pst-math/pst-math-doc.bib new file mode 100644 index 00000000000..5cb6f4cf4a1 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pst-math/pst-math-doc.bib @@ -0,0 +1,150 @@ +%% -*-bibtex-*- +@STRING{tugboat = {TUGboat} } +@STRING{beiprogramm = {{\TeX}-Beiprogramm} } +@STRING{bretter = {Bretter, die die Welt bedeuten} } +@STRING{dtk = {{D}ie {\TeX}nische {K}om{\"o}die} } +@STRING{editorial = {Editorial} } +@STRING{fremdebuehne = {Von fremden B{\"u}hnen} } +@STRING{fundus = {Aus dem Fundus} } +@STRING{hinterbuehne = {Hinter der B{\"u}hne} } +@STRING{leserbrief = {Leserbrief(e)} } +@STRING{magazin = {Magazin} } +@STRING{rezension = {Rezensionen} } +@STRING{schonimmer = {Was Sie schon immer {\"u}ber {\TeX} wissen wollten \dots} } +@STRING{theaterkasse = {Von der Theaterkasse} } +@STRING{theatertage = {{\TeX}-Theatertage} } + +@Article{ dtk02.2:jackson.voss:plot-funktionen, + author = {Laura E. Jackson and Herbert Vo{\ss}}, + title = {Die {P}lot-{F}unktionen von {\texttt{pst-plot}}}, + journal = dtk, + year = 2002, + volume = {2/02}, + altvolume = 2, + altnumber = 14, + month = jun, + pages = {27--34}, + annote = bretter, + keywords = {}, + abstract = { Im letzten Heft wurden die mathematischen Funktionen von + \PS~im Zusammenhang mit dem {\LaTeX}-Paket + \texttt{pst-plot} zum Zeichnen von Funktionen beschrieben + und durch Beispiele erl{\"a}utert. In diesem Teil werden + die bislang nur erw{\"a}hnten Plot-Funktionen f{\"u}r + externe Daten behandelt. } +} + +@Article{ dtk02.1:voss:mathematischen, + author = {Herbert Vo{\ss}}, + title = {Die mathematischen {F}unktionen von {P}ost{S}cript}, + journal = dtk, + year = 2002, + volume = {1/02}, + altvolume = 1, + altnumber = 14, + month = mar, + pages = {}, + annote = bretter, + keywords = {}, + abstract = { \PS, faktisch genauso alt wie {\TeX}, ist im + Verh{\"a}ltnis dazu allgemein noch weniger bekannt, wenn es + darum geht zu beurteilen, was es denn nun im eigentlichen + Sinne ist. Au{\ss}erdem wird h{\"a}ufig vergessen, dass + sich mit den \PS-Funktionen viele Dinge erledigen lassen, + bei denen sonst auf externe Programme zur{\"u}ckgegriffen + wird. Dies wird im Folgenden f{\"u}r die mathematischen + Funktionen im Zusammenhang mit dem Paket \texttt{pst-plot} + gezeigt. } +} + +@Book{tlgc2, + author = {Michel Goosens and Frank Mittelbach and Sebastian Rahtz and Denis Roegel and Herbert Vo{\ss}}, + title = {The {\LaTeX} {G}raphics {C}ompanion}, + publisher = {{Addison-Wesley Publishing Company}}, + edition = second, + year = {2007}, + address = {Reading, Mass.} +} + + +@Article{girou:01:, + author = {Denis Girou}, + title = {Pr\'esentation de {PST}ricks}, + journal = {Cahier {GUT}enberg}, + year = 1994, + volume = {16}, + month = apr, + pages = {21-70} +} + +@Article{girou:02:, + author = {{Timothy van} Zandt and Denis Girou}, + title = {Inside {PST}ricks}, + journal = TUGboat, + year = 1994, + volume = {15}, + month = sep, + pages = {239-246} +} + +@Book{PostScript, + Author = {Kollock, Nikolai G.}, + Title = {Post{S}cript richtig eingesetzt: vom {K}onzept zum + praktischen {E}insatz}, + Publisher = {IWT}, + Address = {Vaterstetten}, + year = 1989, +} + +@Manual{pstricks, + Title = {PSTricks - {\PS} macros for generic {\TeX}}, + Author = {{Timothy van} Zandt}, + Organization = {}, + Address = {\url{http://www.tug.org/application/PSTricks}}, + Note = {}, + year = 1993 +} + +@Manual{pst-plot, + Title = {\texttt{pst-plot}: Plotting two dimensional functions and data}, + Author = {{Timothy van} Zandt}, + Organization = {}, + Address = {\url{CTAN:graphics/pstricks/generic/pst-plot.tex}}, + Note = {}, + year = 1999 +} + +@Manual{multido, + Title = {\texttt{multido.tex} - a loop macro, that supports fixed-point addition}, + Author = {{Timothy van} Zandt}, + Organization = {}, + Address = {\url{CTAN:/graphics/pstricks/generic/multido.tex}}, + Note = {}, + year = 1997 +} + +@Book{PSTricks2, + author = {Herbert Vo\ss}, + title = {\texttt{PSTricks} -- {G}rafik f\"ur \TeX{} und \LaTeX}, + edition = {5.}, + publisher = {DANTE -- Lehmanns}, + year = {2008}, + address = {Heidelberg/Hamburg} +} + +@Book{voss:math, + author = {Herbert Vo\ss}, + title = {Mathematiksatz mit {\LaTeX}}, + publisher = {{DANTE/Lehmanns Media}}, + year = {2009}, + address = {Heidelberg/Berlin} +} + +@Manual{wolfram, + author = {Eric Weisstein}, + title = {Wolfram MathWorld}, + publisher = {{Wolfram}}, + year = {2007}, + address = {\url{http://mathworld.wolfram.com}} +} + diff --git a/Master/texmf-dist/doc/generic/pst-math/pst-math-doc.pdf b/Master/texmf-dist/doc/generic/pst-math/pst-math-doc.pdf Binary files differindex 9b1fb2bc7da..5b2e55f12b8 100644 --- a/Master/texmf-dist/doc/generic/pst-math/pst-math-doc.pdf +++ b/Master/texmf-dist/doc/generic/pst-math/pst-math-doc.pdf diff --git a/Master/texmf-dist/doc/generic/pst-math/pst-math-doc.tex b/Master/texmf-dist/doc/generic/pst-math/pst-math-doc.tex index 671c45e405d..bc3698732c9 100644 --- a/Master/texmf-dist/doc/generic/pst-math/pst-math-doc.tex +++ b/Master/texmf-dist/doc/generic/pst-math/pst-math-doc.tex @@ -1,448 +1,434 @@ -\documentclass[fleqn,10pt]{article} - -\usepackage{multicol} -\usepackage[a4paper,margin=1.5cm,includeheadfoot]{geometry} -\usepackage{fancyhdr} +%% $Id: pst-func-doc.tex 72 2009-01-08 22:00:47Z herbert $ +\documentclass[11pt,english,BCOR10mm,DIV12,bibliography=totoc,parskip=false,smallheadings + headexclude,footexclude,oneside]{pst-doc} +\usepackage[utf8]{inputenc} +\usepackage{pst-math} +\let\pstMathFV\fileversion +\usepackage{pstricks-add} \usepackage[baw,pstricks]{fvrb-ex} -\usepackage{pstricks} -\usepackage{pst-math,pst-plot} -\usepackage{amsmath,amssymb} -\makeatletter - -\renewcommand{\Begin@Example}{% -\parindent=0pt -\multiply\topsep by 2 \VerbatimEnvironment -\begin{VerbatimOut}[codes={\catcode`\£=12\catcode`\/=12\catcode`\&=12% - \catcode`\"=12}]{\jobname.tmp}} - -\renewcommand{\Below@Example}[1]{% -\VerbatimInput[gobble=0,commentchar=£,commandchars=/&",numbersep=3pt]% - {\jobname.tmp} -\catcode`\£=9\relax% -\NoHighlight@Attributes % To suppress possible highlighting -\ifFvrbEx@Grid\vspace{5pt}\fi -#1% -\ifFvrbEx@Grid\vspace{5pt}\fi -\par} - -\renewcommand{\SideBySide@Example}[1]{% -\@tempdimb=\FV@XRightMargin \advance\@tempdimb -5mm -\begin{minipage}[c]{\@tempdimb} - \fvset{xrightmargin=0pt} - \catcode`\£=9\relax% - \NoHighlight@Attributes % To suppress possible highlighting - #1 -\end{minipage}% -\@tempdimb=\textwidth \advance\@tempdimb -\FV@XRightMargin \advance\@tempdimb 5mm -\begin{minipage}[c]{\@tempdimb} - \VerbatimInput[gobble=0,commentchar=£,commandchars=/&",numbersep=3pt, - xleftmargin=5mm,xrightmargin=0pt]{\jobname.tmp} -\end{minipage}} - -% The \NoHighlight@Attributes from `hbaw' and `hcolors' packages -% must be modified too -\def\NoHighlight@Attributes{% -\catcode`\/=0\relax% -\catcode`\&=1\relax% -\catcode`\"=2\relax% -\def\HLa##1{##1}% -\def\HLb##1{##1}% -\def\HLc##1{##1}% -\def\HLd##1{##1}% -\def\HLe##1{##1}% -\def\HLf##1{##1}% -\def\HLBFa##1{##1}% -\def\HLBFb##1{##1}% -\def\HLBFc##1{##1}% -\def\HLBFd##1{##1}% -\def\HLBFe##1{##1}% -\def\HLBFf##1{##1}% -\def\HLITa##1{##1}% -\def\HLITb##1{##1}% -\def\HLITc##1{##1}% -\def\HLITd##1{##1}% -\def\HLITe##1{##1}% -\def\HLITf##1{##1}% -\def\HLCBBa##1{##1}% -\def\HLCBBb##1{##1}% -\def\HLCBBc##1{##1}% -\def\HLCBBd##1{##1}% -\def\HLCBBe##1{##1}% -\def\HLCBBf##1{##1}% -\def\HLCBBz##1{##1}% -\def\HLCBWa##1{##1}% -\def\HLCBWb##1{##1}% -\def\HLCBWc##1{##1}% -\def\HLCBWd##1{##1}% -\def\HLCBWe##1{##1}% -\def\HLCBWf##1{##1}% -\def\HLCBWz##1{##1}% -} - -\makeatother - -\fvset{numbers=none,frame=single,labelposition=topline,gobble=4} - -\DeclareRobustCommand\cs[1]{\texttt{\char`\\#1}} - -\newcommand{\MathPackage}{\textbf{`pst-math'}} - -\lhead{\MathPackage}\rhead{A PSTricks package for enhancing mathematical operators in PSTricks} -\pagestyle{fancy} - -\psset{subgriddiv=1,griddots=10}% -\showgrid - +\lstset{pos=t,wide=true,language=PSTricks, + morekeywords={psGammaDist,psChiIIDist,psTDist,psFDist,psBetaDist,psPlotImpl},basicstyle=\footnotesize\ttfamily} +% +\def\pshlabel#1{\footnotesize#1} +\def\psvlabel#1{\footnotesize#1} +% \makeatletter - \def\DefOfOperator{\@ifstar{\DefOfOperator@}{\DefOfOperator@@}} \def\DefOfOperator@#1#2#3#4{{\operator@font#1}:\left\{\begin{array}{ccc} #2&\to\\ x&\mapsto\end{array}\right.} \def\DefOfOperator@@#1#2#3{{\operator@font#1}:\left\{\begin{array}{ccc} #2&\to\\ x&\mapsto&{\operator@font#1}(x)\end{array}\right.} - \makeatother \begin{document} -\title{\MathPackage\\ A PSTricks package for enhancing mathematical operators in PSTricks\\ -\normalsize ver. 0.3} -\author{Christophe \textsc{Jorssen} \texttt{<christophe.jorssen@libre.fr.invalid>}\\ \footnotesize `libre' is the french word for `free'} +\title{\texttt{pst-math}} +\subtitle{Special mathematical PostScript functions; v.\pstMathFV} +\author{Christoph Jorssen\\Herbert Vo\ss} +\docauthor{Christoph Jorssen\\Herbert Vo\ss} \date{\today} \maketitle -\setlength{\columnseprule}{0.6pt} -\begin{multicols}{2} -{\parskip 0pt \tableofcontents} -\end{multicols} +\tableofcontents + +\clearpage + +\begin{abstract} +\noindent +\LPack{pst-math} is an extension to the PostScript language. The files \LFile{pst-math.sty} +and \LFile{pst-math.tex} are only wrapper files for the \LFile{pst-math.pro} file, which +defines all the new mathgematical functions for use with PostScript. + +\vfill\noindent +Thanks to: \\ +Jacques L'helgoualc'h; Dominik Rodriguez +\end{abstract} \section{Trigonometry} -\MathPackage{} introduces natural trigonometric postscript operators COS, SIN and TAN defined by +\LPack{pst-math} introduces natural trigonometric postscript operators COS, SIN and TAN defined by \[\DefOfOperator{cos}{\mathbb R}{[-1,1]}\] \[\DefOfOperator{sin}{\mathbb R}{[-1,1]}\] \[\DefOfOperator{tan}{\mathbb R\backslash\{k\frac{\pi}2,k\in\mathbb Z\}}{\mathbb R}\] where $x$ is in \emph{radians}. TAN does \emph{not} produce PS error\footnote{TAN is defined with Div PSTricks operator rather than with div PS operator.} when $x=k\frac{pi}{2}$. -\begin{center} -\begin{tabular}{c|c|c|c} - \textbf{Stack} & \textbf{Operator} & \textbf{Result} & \textbf{Description} \\ - \hline - \textsf{\textsl{num}} & \textsf{\textbf{COS}} & \textsf{\textsl{real}} & Return cosine of - \textsf{\textsl{num}} radians \\ - \hline - \textsf{\textsl{num}} & \textsf{\textbf{SIN}} & \textsf{\textsl{real}} & Return sine of - \textsf{\textsl{num}} radians \\ - \hline - \textsf{\textsl{num}} & \textsf{\textbf{TAN}} & \textsf{\textsl{real}} & Return tangent of - \textsf{\textsl{num}} radians -\end{tabular} -\end{center} -\begin{SideBySideExample}[xrightmargin=10.5cm] - \begin{pspicture}*(-5,-2)(5,2) - \SpecialCoor % For label positionning - \psaxes[labels=y,Dx=/HLCBWz&\pstPI2"]{->}% - (0,0)(-5,-2)(5,2) - \uput[-90](!/HLCBWz&PI" 0){$\pi$} - \uput[-90](!/HLCBWz&PI" neg 0){$-\pi$} - \uput[-90](!/HLCBWz&PI" 2 div 0){$\frac{\pi}2$} - \uput[-90](!/HLCBWz&PI" 2 div neg 0)% - {$-\frac{\pi}2$} - \psplot[linecolor=blue]{-5}{5}{x /HLCBWz&COS"} - \psplot[linecolor=red]{-5}{5}{x /HLCBWz&SIN"} - \psplot[linecolor=green]{-5}{5}{x /HLCBWz&TAN"} - \end{pspicture} -\end{SideBySideExample} - -\MathPackage{} introduces natural trigonometric postscript operators SEC, COSEC and COTAN -defined by -\[\DefOfOperator{sec}{% - \mathbb R\backslash\{k\frac{\pi}{2},k\in\mathbb{Z}\}}{]-\infty,-1]\bigcup [1,+\infty[}\] -\[\DefOfOperator{cosec}% - {\mathbb R\backslash\{k\pi,k\in\mathbb Z\}}{]-\infty,-1]\bigcup [1,+\infty[}\] -\[\DefOfOperator{cotan}% - {\mathbb R\backslash\{k\pi,k\in\mathbb Z\}}{\mathbb R}\] -where $x$ is in \emph{radians}. \begin{center} -\begin{tabular}{c|c|c|c} - \textbf{Stack} & \textbf{Operator} & \textbf{Result} & \textbf{Description} \\ - \hline - \textsf{\textsl{num}} & \textsf{\textbf{SEC}} & \textsf{\textsl{real}} & Return secant of - \textsf{\textsl{num}} radians \\ - \hline - \textsf{\textsl{num}} & \textsf{\textbf{COSEC}} & \textsf{\textsl{real}} & Return cosecant of - \textsf{\textsl{num}} radians \\ - \hline - \textsf{\textsl{num}} & \textsf{\textbf{COTAN}} & \textsf{\textsl{real}} & Return cotangent -of \textsf{\textsl{num}} radians +\begin{tabular}{@{} >{\sffamily}l l >{\sffamily}l l @{} } +\emph{Stack} & \emph{Operator} & \emph{Result} & \emph{Description} \\\hline +num & \Lps{COS} & real & Return \Index{cosine} of \textsf{num} radians \\ +num & \Lps{SIN} & real & Return \Index{sine} of \textsf{num} radians \\ +num & \Lps{TAN} & real & Return \Index{tangent} of \textsf{num} radians\\\hline \end{tabular} \end{center} -\begin{SideBySideExample}[xrightmargin=10.5cm] - \begin{pspicture}*(-5,-2)(5,2) - \SpecialCoor % For label positionning - \psaxes[labels=y,Dx=/HLCBWz&\pstPI2"]{->}% - (0,0)(-5,-2)(5,2) - \uput[-90](!/HLCBWz&PI" 0){$\pi$} - \uput[-90](!/HLCBWz&PI" neg 0){$-\pi$} - \uput[-90](!/HLCBWz&PI" 2 div 0)% - {$\frac{\pi}{2}$} - \uput[-90](!/HLCBWz&PI" 2 div neg 0)% - {$-\frac{\pi}{2}$} - \psplot[linecolor=blue]{-5}{5}{x /HLCBWz&SEC"} - \psplot[linecolor=red]{-5}{5}{x /HLCBWz&COSEC"} - \psplot[linecolor=green]{-5}{5}{x /HLCBWz&COTAN"} - \end{pspicture} -\end{SideBySideExample} - - -\MathPackage{} introduces natural trigonometric postscript operators ACOS, ASIN and ATAN defined by +\begin{LTXexample}[pos=t,wide=false] +\begin{pspicture}*(-5,-2)(5,2) +\SpecialCoor % For label positionning +\psaxes[labels=y,Dx=\pstPI2]{->}(0,0)(-5,-2)(5,2) +\uput[-90](!PI 0){$\pi$} \uput[-90](!PI neg 0){$-\pi$} +\uput[-90](!PI 2 div 0){$\frac{\pi}2$} +\uput[-90](!PI 2 div neg 0){$-\frac{\pi}2$} +\psplot[linewidth=1.5pt,linecolor=blue]{-5}{5}{x COS} +\psplot[linewidth=1.5pt,linecolor=red]{-5}{5}{x SIN} +\psplot[linewidth=1.5pt,linecolor=green]{-5}{5}{x TAN} +\end{pspicture} +\end{LTXexample} + +\LPack{pst-math} introduces natural trigonometric postscript +operators \Lps{ACOS}, \Lps{ASIN} and \Lps{ATAN} defined by + \[\DefOfOperator{acos}{[-1,1]}{[0,\pi]}\] \[\DefOfOperator{asin}{[-1,1]}{[-\frac{\pi}2,\frac{\pi}2]}\] \[\DefOfOperator{atan}{\mathbb R}{]-\frac{\pi}2,\frac{\pi}2[}\] \begin{center} -\begin{tabular}{c|c|c|c} - \textbf{Stack} & \textbf{Operator} & \textbf{Result} & \textbf{Description} \\ - \hline - \textsf{\textsl{num}} & \textsf{\textbf{ACOS}} & \textsf{\textsl{angle}} & Return arccosine of - \textsf{\textsl{num}} in radians \\ - \hline - \textsf{\textsl{num}} & \textsf{\textbf{ASIN}} & \textsf{\textsl{angle}} & Return arcsine of - \textsf{\textsl{num}} in radians \\ - \hline - \textsf{\textsl{num}} & \textsf{\textbf{ATAN}} & \textsf{\textsl{angle}} & Return arctangent of - \textsf{\textsl{num}} in radians \\ +\begin{tabular}{@{} >{\sffamily}l l >{\sffamily}l l @{} } +\emph{Stack} & \emph{Operator} & \emph{Result} & \emph{Description} \\\hline +num & \Lps{ACOS} & angle & Return \Index{arccosine} of \textsf{num} in radians \\ +num & \Lps{ASIN} & angle & Return \Index{arcsine} of \textsf{num} in radians \\ +num & \Lps{ATAN} & angle & Return \Index{arctangent} of \textsf{num} in radians \\\hline \end{tabular} \end{center} -\textbf{Important :} ATAN is \emph{not} defined as PS operator atan. ATAN needs only \emph{one} +\medskip\noindent +\begin{tabularx}{\linewidth}{!{\vrule width3pt}X} +\Lps{ATAN} is \emph{not} defined as PS operator \Lps{atan}. \Lps{ATAN} needs only \emph{one} argument on the stack. - -\begin{SideBySideExample}[xrightmargin=10.5cm] - \begin{pspicture}(-5,-2)(5,4) - \SpecialCoor % For label positionning - \psaxes[labels=x,Dy=/HLCBWz&\pstPI2"]{->}% - (0,0)(-5,-2)(5,4) - \uput[0](!0 /HLCBWz&PI"){$\pi$} - \uput[0](!0 /HLCBWz&PI" 2 div){$\frac{\pi}2$} - \uput[0](!0 /HLCBWz&PI" 2 div neg)% - {$-\frac{\pi}2$} - \psplot[linecolor=blue]{-1}{1}% - {x /HLCBWz&ACOS"} - \psplot[linecolor=red]{-1}{1}% - {x /HLCBWz&ASIN"} - \psplot[linecolor=green]{-5}{5}% - {x /HLCBWz&ATAN"} - \end{pspicture} -\end{SideBySideExample} +\end{tabularx} + +\begin{LTXexample}[pos=t,wide=false] +\begin{pspicture}(-5,-2)(5,4) +\SpecialCoor % For label positionning +\psaxes[labels=x,Dy=\pstPI2]{->}(0,0)(-5,-2)(5,4) +\uput[0](!0 PI){$\pi$} \uput[0](!0 PI 2 div){$\frac{\pi}2$} +\uput[0](!0 PI 2 div neg){$-\frac{\pi}2$} +\psplot[linewidth=1.5pt,linecolor=blue]{-1}{1}{x ACOS} \psplot[linecolor=red]{-1}{1}{x ASIN} +\psplot[linewidth=1.5pt,linecolor=green]{-5}{5}{x ATAN} +\end{pspicture} +\end{LTXexample} \section{Hyperbolic trigonometry} -\MathPackage{} introduces hyperbolic trigonometric postscript operators COSH, SINH and TANH defined -by +\LPack{pst-math} introduces hyperbolic trigonometric postscript operators +\Lps{COSH}, \Lps{SINH} and \Lps{TANH} defined by + \[\DefOfOperator{cosh}{\mathbb R}{[1,+\infty[}\] \[\DefOfOperator{sinh}{\mathbb R}{\mathbb R}\] \[\DefOfOperator{tanh}{\mathbb R}{]-1,1[}\] + \begin{center} -\begin{tabular}{c|c|c|c} - \textbf{Stack} & \textbf{Operator} & \textbf{Result} & \textbf{Description} \\ - \hline - \textsf{\textsl{num}} & \textsf{\textbf{COSH}} & \textsf{\textsl{real}} & Return hyperbolic cosine of - \textsf{\textsl{num}} \\ - \hline - \textsf{\textsl{num}} & \textsf{\textbf{SINH}} & \textsf{\textsl{real}} & Return hyperbolic sine of - \textsf{\textsl{num}} \\ - \hline - \textsf{\textsl{num}} & \textsf{\textbf{TANH}} & \textsf{\textsl{real}} & Return hyperbolic tangent of - \textsf{\textsl{num}} +\begin{tabular}{@{} >{\sffamily}l l >{\sffamily}l l @{} } +\emph{Stack} & \emph{Operator} & \emph{Result} & \emph{Description} \\\hline +num & \Lps{COSH} & real & Return \Index{hyperbolic cosine} of \textsf{num} \\ +num & \Lps{SINH} & real & Return \Index{hyperbolic sine} of \textsf{num} \\ +num & \Lps{TANH} & real & Return \Index{hyperbolic tangent} of \textsf{num}\\\hline \end{tabular} \end{center} -\begin{SideBySideExample}[xrightmargin=10.5cm] - \begin{pspicture}*(-5,-5)(5,5) - \psaxes{->}(0,0)(-5,-5)(5,5) - \psplot[linecolor=blue]{-5}{5}{x /HLCBWz&COSH"} - \psplot[linecolor=red]{-5}{5}{x /HLCBWz&SINH"} - \psplot[linecolor=green]{-5}{5}{x /HLCBWz&TANH"} - \end{pspicture} -\end{SideBySideExample} - -\MathPackage{} introduces reciprocal hyperbolic trigonometric postscript operators ACOSH, ASINH and -ATANH defined by +\begin{LTXexample}[pos=t,wide=false] +\begin{pspicture}*(-5,-5)(5,5) +\psaxes{->}(0,0)(-5,-5)(5,5) +\psplot[linewidth=1.5pt,linecolor=blue]{-5}{5}{x COSH} +\psplot[linewidth=1.5pt,linecolor=red]{-5}{5}{x SINH} +\psplot[linewidth=1.5pt,linecolor=green]{-5}{5}{x TANH} +\end{pspicture} +\end{LTXexample} + +\LPack{pst-math} introduces reciprocal hyperbolic trigonometric postscript operators \Lps{ACOSH}, \Lps{ASINH} and +\Lps{ATANH} defined by \[\DefOfOperator{acosh}{[1,+\infty[}{\mathbb R}\] \[\DefOfOperator{asinh}{\mathbb R}{\mathbb R}\] \[\DefOfOperator{atanh}{]-1,1[}{\mathbb R}\] + \begin{center} -\begin{tabular}{c|c|c|c} - \textbf{Stack} & \textbf{Operator} & \textbf{Result} & \textbf{Description} \\ - \hline - \textsf{\textsl{num}} & \textsf{\textbf{ACOSH}} & \textsf{\textsl{real}} & Return reciprocal hyperbolic cosine of - \textsf{\textsl{num}} \\ - \hline - \textsf{\textsl{num}} & \textsf{\textbf{ASINH}} & \textsf{\textsl{real}} & Return reciprocal hyperbolic sine of - \textsf{\textsl{num}} \\ - \hline - \textsf{\textsl{num}} & \textsf{\textbf{ATANH}} & \textsf{\textsl{real}} & Return reciprocal hyperbolic tangent of - \textsf{\textsl{num}} +\begin{tabular}{@{} >{\sffamily}l l >{\sffamily}l l @{} } +\emph{Stack} & \emph{Operator} & \emph{Result} & \emph{Description} \\\hline +num & \Lps{ACOSH} & real & Return \Index{reciprocal hyperbolic cosine} of \textsf{num} \\ +num & \Lps{ASINH} & real & Return \Index{reciprocal hyperbolic sine} of \textsf{num} \\ +num & \Lps{ATANH} & real & Return \Index{reciprocal hyperbolic tangent} of \textsf{num}\\\hline \end{tabular} \end{center} -\begin{SideBySideExample}[xrightmargin=10.5cm] - \begin{pspicture}(-5,-4)(5,4) - \psaxes{->}(0,0)(-5,-4)(5,4) - \psplot[linecolor=blue]{1}{5}% - {x /HLCBWz&ACOSH"} - \psplot[linecolor=red]{-5}{5}% - {x /HLCBWz&ASINH"} - \psplot[linecolor=green]{-.999}{.999}% - {x /HLCBWz&ATANH"} - \end{pspicture} -\end{SideBySideExample} +\begin{LTXexample}[pos=t,wide=false] +\begin{pspicture}(-5,-4)(5,4) +\psaxes{->}(0,0)(-5,-4)(5,4) +\psplot[linewidth=1.5pt,linecolor=blue]{1}{5}{x ACOSH} +\psplot[linewidth=1.5pt,linecolor=red]{-5}{5}{x ASINH} +\psplot[linewidth=1.5pt,linecolor=green]{-.999}{.999}{x ATANH} +\end{pspicture} +\end{LTXexample} \section{Other operators} -\MathPackage{} introduces postscript operator EXP defined by +\LPack{pst-math} introduces postscript operator EXP defined by \[\DefOfOperator{exp}{\mathbb R}{\mathbb R}\] + \begin{center} -\begin{tabular}{c|c|c|c} - \textbf{Stack} & \textbf{Operator} & \textbf{Result} & \textbf{Description} \\ - \hline - \textsf{\textsl{num}} & \textsf{\textbf{EXP}} & \textsf{\textsl{real}} & Return exponential of - \textsf{\textsl{num}} +\begin{tabular}{@{} >{\sffamily}l l >{\sffamily}l l @{} } +\emph{Stack} & \emph{Operator} & \emph{Result} & \emph{Description} \\\hline +num & \Lps{EXP} & real & Return \Index{exponential} of \textsf{num}\\\hline \end{tabular} \end{center} -\begin{SideBySideExample}[xrightmargin=10.5cm] - \begin{pspicture}*(-5,-1)(5,5) - \psaxes{->}(0,0)(-5,-0.5)(5,5) - \psplot[linecolor=blue, - plotpoints=1000]{-5}{5}{x /HLCBWz&EXP"} - \end{pspicture} -\end{SideBySideExample} +\begin{LTXexample}[pos=t,wide=false] +\begin{pspicture}*(-5,-1)(5,5) +\psaxes{->}(0,0)(-5,-0.5)(5,5) +\psplot[linecolor=blue,linewidth=1.5pt,plotpoints=1000]{-5}{5}{x EXP} +\end{pspicture} +\end{LTXexample} + +\LPack{pst-math} introduces postscript operator \Lps{GAUSS} defined by -\MathPackage{} introduces postscript operator GAUSS defined by \[\DefOfOperator*{gauss}{\mathbb R}{\mathbb R}{\displaystyle\frac{1}{\sqrt{2\pi\sigma^2}}\exp-\frac{(x-\overline x)^2}{2\sigma^2}}\] + \begin{center} -\begin{tabular}{c|c|c|c} - \textbf{Stack} & \textbf{Operator} & \textbf{Result} & \textbf{Description} \\ - \hline - \textsf{\textsl{num}${}_1$} \textsf{\textsl{num}${}_2$} \textsf{\textsl{num}${}_3$} & - \textsf{\textbf{GAUSS}} & \textsf{\textsl{real}} & \parbox{4cm}{Return gaussian - of \textsf{\textsl{num}${}_1$} with mean \textsf{\textsl{num}${}_2$} and standart deviation \textsf{\textsl{num}${}_3$}} -\end{tabular} +\begin{tabularx}{\linewidth}{@{} >{\sffamily}l l >{\sffamily}l X @{} } +\emph{Stack} & \emph{Operator} & \emph{Result} & \emph{Description} \\\hline +num1 num2 num3 & \Lps{GAUSS} & real & Return gaussian of \textsf{num1} with + mean \textsf{num2} and \Index{standard deviation} \textsf{num3}\\\hline +\end{tabularx} \end{center} -\begin{SideBySideExample}[xrightmargin=10.5cm] - \psset{yunit=5} - \begin{pspicture}(-5,-.1)(5,1.1) - \psaxes{->}(0,0)(-5,-.1)(5,1.1) - \psplot[linecolor=blue, - plotpoints=1000]% - {-5}{5}{x 2 2 /HLCBWz&GAUSS"} - \psplot[linecolor=red, - plotpoints=1000]% - {-5}{5}{x 0 .5 /HLCBWz&GAUSS"} - \end{pspicture} -\end{SideBySideExample} - -\MathPackage{} introduces postscript operator SINC defined by +\begin{LTXexample}[pos=t,wide=false] +\psset{yunit=5} +\begin{pspicture}(-5,-.1)(5,1.1) +\psaxes{->}(0,0)(-5,-.1)(5,1.1) +\psplot[linecolor=blue,linewidth=1.5pt,plotpoints=1000]{-5}{5}{x 2 2 GAUSS} +\psplot[linecolor=red,linewidth=1.5pt,plotpoints=1000]{-5}{5}{x 0 .5 GAUSS} +\end{pspicture} +\end{LTXexample} + +\LPack{pst-math} introduces postscript operator \Index{SINC} defined by \[\DefOfOperator*{sinc}{\mathbb R}{\mathbb R}{\displaystyle\frac{\sin x}x}\] + \begin{center} -\begin{tabular}{c|c|c|c} - \textbf{Stack} & \textbf{Operator} & \textbf{Result} & \textbf{Description} \\ - \hline - \textsf{\textsl{num}} & \textsf{\textbf{SINC}} & \textsf{\textsl{real}} & Return cardinal sine of - \textsf{\textsl{num}} radians +\begin{tabular}{@{} >{\sffamily}l l >{\sffamily}l l @{} } +\emph{Stack} & \emph{Operator} & \emph{Result} & \emph{Description} \\\hline +num & \Lps{SINC} & real & Return \Index{cardinal sine} of \textsf{num} radians\\\hline \end{tabular} \end{center} -\begin{SideBySideExample}[xrightmargin=10.5cm] - \psset{xunit=.25,yunit=3} - \begin{pspicture}(-20,-.5)(20,1.5) - \SpecialCoor % For label positionning - \psaxes[labels=y,Dx=/HLCBWz&\pstPI1"]{->}% - (0,0)(-20,-.5)(20,1.5) - \uput[-90](!/HLCBWz&PI" 0){$\pi$} - \uput[-90](!/HLCBWz&PI" neg 0){$-\pi$} - \psplot[linecolor=blue, - plotpoints=1000]{-20}{20}{x /HLCBWz&SINC"} - \end{pspicture} -\end{SideBySideExample} - -\MathPackage{} introduces postscript operator GAMMA and GAMMALN defined by +\begin{LTXexample}[pos=t,wide=false] +\psset{xunit=.25,yunit=3} +\begin{pspicture}(-20,-.5)(20,1.5) +\SpecialCoor % For label positionning +\psaxes[labels=y,Dx=\pstPI1]{->}(0,0)(-20,-.5)(20,1.5) +\uput[-90](!PI 0){$\pi$} \uput[-90](!PI neg 0){$-\pi$} +\psplot[linecolor=blue,linewidth=1.5pt,plotpoints=1000]{-20}{20}{x SINC} +\end{pspicture} +\end{LTXexample} + +\LPack{pst-math} introduces postscript operator \Lps{GAMMA} and \Lps{GAMMALN} defined by \[\DefOfOperator*{\Gamma}{\mathbb{R} \backslash\mathbb{Z}}{\mathbb R}{\displaystyle\int_0^\infty t^{x-1}\mathrm e^{-t}\,\mathrm d t}\] \[\DefOfOperator*{\ln\Gamma}{]0,+\infty[}{\mathbb R}{\ln\displaystyle\int_0^t t^{x-1}\mathrm e^{-t}\,\mathrm d t}\] + \begin{center} -\begin{tabular}{c|c|c|c} - \textbf{Stack} & \textbf{Operator} & \textbf{Result} & \textbf{Description} \\\hline - \textsf{\textsl{num}} & \textsf{\textbf{GAMMA}} & \textsf{\textsl{real}} & Return $\Gamma$ function of \textsf{\textsl{num}}\\ - \textsf{\textsl{num}} & \textsf{\textbf{GAMMALN}} & \textsf{\textsl{real}} & Return logarithm of - $\Gamma$ function of \textsf{\textsl{num}} +\begin{tabular}{@{} >{\sffamily}l l >{\sffamily}l l @{} } +\emph{Stack} & \emph{Operator} & \emph{Result} & \emph{Description} \\\hline +num & \Lps{GAMMA} & real & Return $\Gamma$\index{Gamma func@$\Gamma$ function} function of \textsf{num}\\ +num & \Lps{GAMMALN} & real & Return \Index{logarithm} of $\Gamma$ function of \textsf{num}\\\hline \end{tabular} \end{center} -\begin{SideBySideExample}[xrightmargin=10.5cm] - \begin{pspicture*}(-.5,-.5)(6.2,6.2) - \psaxes{->}(0,0)(-.5,-.5)(6,6) - \psplot[linecolor=blue, - plotpoints=200]{.1}{6}{x /HLCBWz&GAMMA"} - \psplot[linecolor=red, - plotpoints=200]{.1}{6}{x /HLCBWz&GAMMALN"} - \end{pspicture*} -\end{SideBySideExample} - -\begin{SideBySideExample}[xrightmargin=10.5cm] - \psset{xunit=.25,yunit=3} - \begin{pspicture}(-20,-.5)(20,1.5) - \psaxes[Dx=5,Dy=.5]{->}% - (0,0)(-20,-.5)(20,1.5) - \psplot[linecolor=blue, - plotpoints=1000]{-20}{20}% - {x /HLCBWz&BESSEL_J0"} - \psplot[linecolor=red, - plotpoints=1000]{-20}{20}% - {x /HLCBWz&BESSEL_J1"} - \end{pspicture} -\end{SideBySideExample} - -\begin{SideBySideExample}[xrightmargin=10.5cm] - \psset{xunit=.5,yunit=3} - \begin{pspicture}*(-1.5,-.75)(19,1.5) - \psaxes[Dx=5,Dy=.5]{->}% - (0,0)(-1,-.75)(19,1.5) - \psplot[linecolor=blue, - plotpoints=1000]{0.0001}{20}% - {x /HLCBWz&BESSEL_Y0"} - \psplot[linecolor=red, - plotpoints=1000]{0.0001}{20}% - {x /HLCBWz&BESSEL_Y1"} - % \psplot[linecolor=green, - % plotpoints=1000]{0.0001}{20}% - % {x 2 /HLCBWz&BESSEL_Yn"} - \end{pspicture} -\end{SideBySideExample} - -\section{Warnings} - -Since version 0.3, there is a new feature. When an argument of \textsf{\textbf{ACOS}}, -\textsf{\textbf{ASIN}}, \textsf{\textbf{ACOSH}} or \textsf{\textbf{ATANH}} is out of range, -the result of the calculation does not product a PS error: a zero value is substitued and a -warning message is printed on the postscript version of the document. - -\begin{SideBySideExample}[xrightmargin=10.5cm] - \begin{pspicture}(-1,-4)(5,4) - \psaxes{->}(0,0)(-1,-4)(5,4) - \psplot[linecolor=blue]{/HLCBWz&0"}{5}% - {x ACOSH} - \end{pspicture} -\end{SideBySideExample} - -\section{Credits} - -Many thanks to Jacques L'helgoualc'h, Herbert Voss and Martin Chicoine. +\begin{LTXexample}[pos=t,wide=false] +\begin{pspicture*}(-.5,-.5)(6.2,6.2) +\psaxes{->}(0,0)(-.5,-.5)(6,6) +\psplot[linecolor=blue,linewidth=1.5pt,plotpoints=200]{.1}{6}{x GAMMA} +\psplot[linecolor=red,linewidth=1.5pt,plotpoints=200]{.1}{6}{x GAMMALN} +\end{pspicture*} +\end{LTXexample} + +\begin{LTXexample}[pos=t,wide=false] +\psset{xunit=.25,yunit=3} +\begin{pspicture}(-20,-.5)(20,1.5) +\psaxes[Dx=5,Dy=.5]{->}(0,0)(-20,-.5)(20,1.5) +\psplot[linecolor=blue,linewidth=1.5pt,plotpoints=1000]{-20}{20}{x BESSEL_J0} +\psplot[linecolor=red,linewidth=1.5pt,plotpoints=1000]{-20}{20}{x BESSEL_J1} +\end{pspicture} +\end{LTXexample} + +\begin{LTXexample}[pos=t,wide=false] +\psset{xunit=.5,yunit=3} +\begin{pspicture}*(-1.5,-.75)(19,1.5) +\psaxes[Dx=5,Dy=.5]{->}(0,0)(-1,-.75)(19,1.5) +\psplot[linecolor=blue,linewidth=1.5pt,plotpoints=1000]{0.0001}{20}{x BESSEL_Y0} +\psplot[linecolor=red,linewidth=1.5pt,plotpoints=1000]{0.0001}{20}{x BESSEL_Y1} +%\psplot[linecolor=green,plotpoints=1000]{0.0001}{20}{x 2 BESSEL_Yn} +\end{pspicture} +\end{LTXexample} + +\section{Numerical integration} + +\begin{center} +\begin{tabular}{@{} >{\sffamily}l l >{\sffamily}l l @{} } +\emph{Stack} & \emph{Operator} & \emph{Result} & \emph{Description} \\\hline +num num /var $\lbrace$ function $\rbrace$ num & \Lps{SIMPSON} & real & Return $\displaystyle\int\limits_a^b f(t)\mathrm{d}t$ +\end{tabular} +\end{center} + +%a b var f Ierr + +the first two variables are the low and high boundary integral, both can be values or +\PS\ expressions. \verb+/var+ is the definition of the integrated variable (not x!), which is +used in the following function description, which must be inside of braces. The last +number is the tolerance for the step adjustment. The function \Lps{SIMPSON} can be +nested. + +\begin{LTXexample}[pos=t,wide=false] +\psset{xunit=.75} +\begin{pspicture*}[showgrid=true](-0.4,-3.4)(10,3) + \psplot[linestyle=dashed,linewidth=1.5pt]{.1}{10}{1 x div} + \psplot[linecolor=red,linewidth=1.5pt]{.1}{10}{ + 1 % start + x % end + /t % variable + { 1 t div } % function + .001 % tolerance + SIMPSON } % + \psplot[linecolor=blue,linewidth=1.5pt]{.1}{10}{1 x /t { 1 t div } 1 SIMPSON } +\end{pspicture*} +\end{LTXexample} + +\begin{LTXexample}[pos=t,wide=false] +%%% Gaussian and relative integral from -x to x to its value sqrt{pi} +\psset{unit=2} +\begin{pspicture}[showgrid=true](-3,-1)(3,1) + \psplot[linecolor=red,linewidth=1.5pt]{-3}{3}{Euler x dup mul neg exp } + \psplot[linecolor=green,linewidth=1.5pt]{-3}{3} + { x neg x /t { Euler t dup mul neg exp } .001 SIMPSON Pi sqrt div} +\end{pspicture} +\end{LTXexample} + + +\psset{unit=1.75cm} +%%% successive polynomial developments of sine-cosine +\begin{pspicture}[showgrid=true](-3,-2)(3,2) +\psaxes{->}(0,0)(-3,-2)(3,2) +\psset{linewidth=1.5pt} +\psplot[linecolor=green, algebraic=false, plotpoints=61, showpoints=true] + {-3}{3}{0 x /tutu + {1 0 tutu /toto { toto } .1 SIMPSON sub} + .01 SIMPSON } +\psplot[linecolor=blue, algebraic=false, plotpoints=61, showpoints=true] + {-3}{3}{1 0 x /tata + {0 tata /tutu + {1 0 tutu /toto { toto } .1 SIMPSON sub} + .01 SIMPSON } + .01 SIMPSON sub} +\psplot[linecolor=yellow, algebraic=false, plotpoints=61, showpoints=true] + {-3}{3}{0 x /titi + {1 0 titi /tata + {0 tata /tutu + {1 0 tutu /toto { toto } .1 SIMPSON sub} + .01 SIMPSON } + .01 SIMPSON sub} + .01 SIMPSON } +\psplot[linecolor=red, algebraic=false, plotpoints=61, showpoints=true] + {-3}{3}{1 0 x /tyty + {0 tyty /titi + {1 0 titi /tata + {0 tata /tutu + {1 0 tutu /toto { toto } .1 SIMPSON sub} + .01 SIMPSON } + .01 SIMPSON sub} + .01 SIMPSON } + .01 SIMPSON sub} +\psplot[linecolor=magenta, algebraic=false, plotpoints=61, showpoints=true] + {-3}{3}{0 x /tete + {1 0 tete /tyty + {0 tyty /titi + {1 0 titi /tata + {0 tata /tutu + {1 0 tutu /toto { toto } .1 SIMPSON sub} + .01 SIMPSON } + .01 SIMPSON sub} + .01 SIMPSON } + .01 SIMPSON sub} + .01 SIMPSON }%%% FIVE nested calls +\end{pspicture} +\psset{unit=1cm} + +\begin{lstlisting} +\psset{unit=1.75cm} +%%% successive polynomial developments of sine-cosine +\begin{pspicture}[showgrid=true](-3,-2)(3,2) +\psaxes{->}(0,0)(-3,-2)(3,2) + \psplot[linecolor=green, algebraic=false, plotpoints=61, showpoints=true] + {-3}{3}{0 x /tutu + {1 0 tutu /toto { toto } .1 SIMPSON sub} + .01 SIMPSON } + \psplot[linecolor=blue, algebraic=false, plotpoints=61, showpoints=true] + {-3}{3}{1 0 x /tata + {0 tata /tutu + {1 0 tutu /toto { toto } .1 SIMPSON sub} + .01 SIMPSON } + .01 SIMPSON sub} + \psplot[linecolor=yellow, algebraic=false, plotpoints=61, showpoints=true] + {-3}{3}{0 x /titi + {1 0 titi /tata + {0 tata /tutu + {1 0 tutu /toto { toto } .1 SIMPSON sub} + .01 SIMPSON } + .01 SIMPSON sub} + .01 SIMPSON } + \psplot[linecolor=red, algebraic=false, plotpoints=61, showpoints=true] + {-3}{3}{1 0 x /tyty + {0 tyty /titi + {1 0 titi /tata + {0 tata /tutu + {1 0 tutu /toto { toto } .1 SIMPSON sub} + .01 SIMPSON } + .01 SIMPSON sub} + .01 SIMPSON } + .01 SIMPSON sub} + \psplot[linecolor=magenta, algebraic=false, plotpoints=61, showpoints=true] + {-3}{3}{0 x /tete + {1 0 tete /tyty + {0 tyty /titi + {1 0 titi /tata + {0 tata /tutu + {1 0 tutu /toto { toto } .1 SIMPSON sub} + .01 SIMPSON } + .01 SIMPSON sub} + .01 SIMPSON } + .01 SIMPSON sub} + .01 SIMPSON }%%% FIVE nested calls +\end{pspicture} +\end{lstlisting} + +\begin{LTXexample}[pos=t,wide=false] +% ce code definit la fonction [cos(2pix cos(t))-cos(2pix)]^2 / sin(t) avec x=h/lambda +\def\F{ + 0.01 3.1 + /t + { TwoPi x mul t COS mul COS TwoPi x mul COS sub 2 exp t SIN div } + .01 SIMPSON 60 mul } +% D = 2*(cos^2(2pix))/F +\def\fD{TwoPi x mul COS dup mul 2 mul \F\space div} +\psset{llx=-1.5cm,lly=-0.5cm,urx=0.2cm,ury=0.2cm, + xAxisLabel={$h/\lambda$},xAxisLabelPos={0.5,-45},yAxisLabel={$R_r$ en ohms}, + yAxisLabelPos={-0.1,150}} +\begin{psgraph}[Dy=50,Dx=0.1,xticksize=300 0,yticksize=1 0, + comma=true,axesstyle=frame](0,0)(1,300){10cm}{5cm} + \psplot{0}{1}{\F} + \psplot[linecolor=red]{0.01}{.1}{\fD}% +\end{psgraph} +\end{LTXexample} + + + +\bgroup +\raggedright +\nocite{*} +\bibliographystyle{plain} +\bibliography{pst-math-doc} +\egroup + +\printindex + + \end{document} diff --git a/Master/texmf-dist/dvips/pst-math/pst-math.pro b/Master/texmf-dist/dvips/pst-math/pst-math.pro index 333877ad284..711bb8f167c 100644 --- a/Master/texmf-dist/dvips/pst-math/pst-math.pro +++ b/Master/texmf-dist/dvips/pst-math/pst-math.pro @@ -2,63 +2,41 @@ % -*- Mode: Postscript -*- % pst-math.pro --- PostScript header file pst-math.pro % -% Author : Christophe JORSSEN <christophe.jorssen@libre.fr.invalid> -% ('libre' is the french word for 'free' if you want to contact me ;-)) +% Author : Christophe JORSSEN +% Author : Herbert Voß <hvoss@tug.org> % Created the : Sat 20 March 2004 -% Last Mod : Thu 01 November 2007 -% Version : 1.3 -% -/ArgumentOutOfRange {% - gsave /Times-Roman findfont 10 scalefont setfont 0 0 moveto - ([pst-math] At least one argument was out of range) show grestore} bind def - -/DIV { dup 0 eq { pop ArgumentOutOfRange} { div } ifelse } bind def - +% Last Mod : $Date: 2009/01/19 $ +% Version : 1.2 $ +% /PI 3.14159265359 def /ENeperian 2.71828182846 def - +% /DegToRad {PI mul 180 div} bind def /RadToDeg {180 mul PI div} bind def - +% /COS {RadToDeg cos} bind def /SIN {RadToDeg sin} bind def /TAN {dup SIN exch COS Div} bind def /tan {dup sin exch cos Div} bind def /ATAN {neg -1 atan 180 sub DegToRad} bind def - -/sec {cos 1 exch Div} bind def -/cosec {sin 1 exch Div} bind def -/cotan {dup cos exch sin Div} bind def -/SEC {RadToDeg sec} bind def -/COSEC {RadToDeg cosec} bind def -/COTAN {RadToDeg cotan} bind def - -/acos {dup dup -1 ge exch 1 le and - {dup dup mul neg 1 add sqrt exch atan} - {pop 0 ArgumentOutOfRange} ifelse} bind def -/ACOS {acos DegToRad} bind def -/asin {dup dup -1 ge exch 1 le and - {neg dup dup mul neg 1 add sqrt neg atan 180 sub} - {pop 0 ArgumentOutOfRange} ifelse} bind def -/ASIN {asin DegToRad} bind def - +/ACOS {dup dup mul neg 1 add sqrt exch atan DegToRad} bind def +/acos {dup dup mul neg 1 add sqrt exch atan} bind def +/ASIN {neg dup dup mul neg 1 add sqrt neg atan 180 sub DegToRad} bind def +/asin {neg dup dup mul neg 1 add sqrt neg atan 180 sub} bind def +% /EXP {ENeperian exch exp} bind def - +% /COSH {dup EXP exch neg EXP add 2 div} bind def /SINH {dup EXP exch neg EXP sub 2 div} bind def /TANH {dup SINH exch COSH div} bind def -/ACOSH {dup 1 ge - {dup dup mul 1 sub sqrt add ln} - {pop 0 ArgumentOutOfRange} ifelse} bind def +/ACOSH {dup dup mul 1 sub sqrt add ln} bind def /ASINH {dup dup mul 1 add sqrt add ln} bind def -/ATANH {dup dup -1 gt exch 1 lt and - {dup 1 add exch neg 1 add Div ln 2 div} - {pop 0 ArgumentOutOfRange} ifelse} bind def - -/SINC {dup 0 eq {pop 1} {dup SIN exch Div} ifelse} bind def - +/ATANH {dup 1 add exch neg 1 add Div ln 2 div} bind def +% +/SINC {dup SIN exch Div} bind def +% /GAUSS {dup mul 2 mul dup 4 -2 roll sub dup mul exch div neg EXP exch PI mul sqrt div} bind def - +% /GAMMA { 2 dict begin % hv 2007-08-30 /z exch def 1.000000000190015 % p(0) @@ -74,9 +52,9 @@ add % build the sum } for Pi 2 mul sqrt z div mul - z 5.5 add z 0.5 add exp mul Euler z 5.5 add neg exp mul + z 5.5 add z 0.5 add exp mul ENeperian z 5.5 add neg exp mul end } bind def - +% /GAMMALN {dup dup dup 5.5 add dup ln 3 -1 roll .5 add mul sub neg 1.000000000190015 0 1 5 { [76.18009172947146 -86.50532032941677 24.0140982483091 -1.231739572450155 @@ -84,7 +62,7 @@ 4 -1 roll 1 add dup 5 1 roll div add} for 4 -1 roll div 2.5066282746310005 mul ln add exch pop} bind def /BETA {2 copy add GAMMALN neg exch GAMMALN 3 -1 roll GAMMALN EXP} bind def - +% /HORNER {aload length dup 2 add -1 roll exch 1 sub { @@ -93,7 +71,7 @@ } repeat pop } bind def - +% /BESSEL_J0 {dup abs 8 lt { dup mul dup [57568490574 -13362590354 651619640.7 -11214424.18 77392.33017 -184.9052456] HORNER exch [57568490411 1029532985 9494680.718 59272.64853 267.8532712 1] HORNER @@ -104,7 +82,7 @@ exch [-.1562499995E-1 .1430488765E-3 -.6911147651E-5 .7621095161E-6 -.934945152E-7] HORNER 4 -1 roll SIN mul 3 -1 roll mul neg add mul} ifelse} bind def - +% /BESSEL_Y0 {dup 8 lt { dup dup mul dup [-2957821389 7062834065 -512359803.6 10879881.29 -86327.92757 228.4622733] HORNER exch [40076544269 745249964.8 7189466.438 47447.26470 226.1030244 1] HORNER @@ -115,7 +93,7 @@ exch [-.1562499995E-1 .1430488765E-3 -.6911147651E-5 .7621095161E-6 -.934945152E-7] HORNER 4 -1 roll COS mul 3 -1 roll mul add mul} ifelse} bind def - +% /BESSEL_J1 {dup abs 8 lt { dup dup mul dup 3 -2 roll [72362614232 -7895059235 242396853.1 -2972611.439 15704.48260 -30.16036606] HORNER mul exch [144725228442 2300535178 18583304.74 99447.43394 376.9991397 1] HORNER @@ -126,7 +104,7 @@ exch [.04687499995 6.2002690873E-3 .8449199096E-5 -.88228987E-6 .105787412E-6] HORNER 4 -1 roll SIN mul 3 -1 roll mul neg add mul exch dup abs Div mul} ifelse} bind def - +% /BESSEL_Y1 {dup 8 lt { dup dup dup mul dup [-.4900604943E13 .1275274390E13 -.5153428139E11 .7349264551E9 -.4237922726E7 .8511937935E4] HORNER exch [.2499580570E14 .4244419664E12 .3733650367E10 .2245904002E8 .1020426050E6 .3549632885E3 1] HORNER @@ -137,11 +115,38 @@ exch [.04687499995 -.2002690873E-3 .8449199096E-5 6.88228987E-6 .105787412E-6] HORNER 4 -1 roll COS mul 3 -1 roll mul add mul} ifelse} bind def - +% % En cours... /BESSEL_Yn {dup 0 eq {pop BESSEL_Y0}{dup 1 eq {pop BESSEL_Y1}{ exch dup BESSEL_Y0 exch dup BESSEL_Y1 exch 2 exch Div { mul 3 -1 roll mul 2 index sub pstack} for } ifelse } ifelse } bind def - +% +/SIMPSON { 1 dict begin %% on stack a b var f ierr Dominik Rodriguez + 3 index 5 index sub % compute h + 1 % a b var f ierr h n + 4 index 7 index def 3 index exec % a b var f ierr h n f(a) + 5 index 7 index def 4 index exec add % a b var f ierr h n f(a)+f(b) + 5 index 8 index 4 index 2 div add def 4 index exec % a b var f ierr h n f(a)+f(b) f(a+h/2) + exch 1 index 4 mul add 0 % a b var f ierr h n old=f(a+h/2) Estim=f(a)+f(b)+4f(a+h/2) NbLoop + { % a b var f ierr h n old Estim NbLoop + 5 -1 roll 2 div dup 6 1 roll % h<-h/2 + 5 -1 roll 2 mul 5 1 roll % n<-2n + % a b var f ierr h n old Estim NbLoop h + 2 div 10 index add 0 % a b var f ierr h n old Estim NbLoop a+h/2 Cumul + 5 index { + 1 index 10 index exch def 8 index exec add exch 6 index add exch + } repeat % a b var f ierr h n old Estim NbLoop a+nh/2 Cumul + exch pop % a b var f ierr h n old Estim NbLoop New + 2 index 1 index 4 mul 6 -1 roll 2 mul sub sub % a b var f ierr h n Estim NbLoop New Diff + 4 -1 roll 2 mul 1 index sub 4 1 roll % a b var f ierr h n Estim NbLoop New Diff + exch 4 1 roll % a b var f ierr h n old Estim NbLoop Diff + 5 index 6 div mul abs 6 index lt { exit } if + 1 add dup 9 eq { exit } if + } loop % a b var f ierr h n old Estim NbLoop + exch 5 -1 roll 6 div mul mark 10 2 roll cleartomark +end +} def +% +% % END pst-math.pro diff --git a/Master/texmf-dist/source/generic/pst-math/Makefile b/Master/texmf-dist/source/generic/pst-math/Makefile new file mode 100644 index 00000000000..d43113f5ddc --- /dev/null +++ b/Master/texmf-dist/source/generic/pst-math/Makefile @@ -0,0 +1,69 @@ +# `Makefile' for `pst-func.pdf', hv, 2006/08/11 + +.SUFFIXES : .tex .ltx .dvi .ps .pdf .eps + +PACKAGE = pst-math + +MAIN = $(PACKAGE)-doc + +LATEX = latex + +ARCHNAME = $(MAIN)-$(shell date +%y%m%d) + +ARCHFILES = $(PACKAGE).sty $(PACKAGE).tex $(PACKAGE).pro $(MAIN).tex README Changes Makefile + +TDS = ~/PSTricks/PSTricks-TDS + +all : doc clean tds clean +doc: $(MAIN).pdf + +$(MAIN).pdf : $(MAIN).ps + GS_OPTIONS=-dAutoRotatePages=/None ps2pdf $< + +$(MAIN).ps : $(MAIN).dvi + dvips $< + +$(MAIN).dvi : $(MAIN).tex + $(LATEX) $< + $(LATEX) $< + if ! test -f $(basename $<).glo ; then touch $(basename $<).glo; fi + if ! test -f $(basename $<).idx ; then touch $(basename $<).idx; fi + makeindex -s gglo.ist -t $(basename $<).glg -o $(basename $<).gls \ + $(basename $<).glo + makeindex -s pst-doc.ist -t $(basename $<).ilg -o $(basename $<).ind \ + $(basename $<).idx + bibtex $(basename $<) + $(LATEX) $< + $(LATEX) $< + +clean : + $(RM) $(addprefix $(MAIN), .log .aux .bbl .blg .glg .glo .gls .ilg .idx .ind .tmp .toc .out ) + $(RM) $(addprefix $(MAIN), .dvi .ps .xcp) + +veryclean : clean + $(RM) $(addprefix $(MAIN), .pdf .bbl .blg) + +arch : + zip $(ARCHNAME).zip $(ARCHFILES) + +tds: + cp -u Changes $(TDS)/doc/generic/$(PACKAGE)/ + cp -u README $(TDS)/doc/generic/$(PACKAGE)/ + cp -u $(MAIN).pdf $(TDS)/doc/generic/$(PACKAGE)/ +# + cp -u Changes $(TDS)/tex/latex/$(PACKAGE)/ + cp -u $(PACKAGE).sty $(TDS)/tex/latex/$(PACKAGE)/ +# + cp -u Changes $(TDS)/tex/generic/$(PACKAGE)/ + cp -u $(PACKAGE).tex $(TDS)/tex/generic/$(PACKAGE)/ +# + cp -u Changes $(TDS)/dvips/$(PACKAGE)/ + cp -u $(PACKAGE).pro $(TDS)/dvips/$(PACKAGE)/ +# + cp -u Changes $(TDS)/source/$(PACKAGE)/ + cp -u $(MAIN).tex $(TDS)/source/$(PACKAGE)/ + cp -u $(MAIN).bib $(TDS)/source/$(PACKAGE)/ + cp -u Makefile $(TDS)/source/$(PACKAGE)/ + + +# EOF diff --git a/Master/texmf-dist/tex/generic/pst-math/pst-math.tex b/Master/texmf-dist/tex/generic/pst-math/pst-math.tex index 7e3202a632e..ea0e35fbbd9 100644 --- a/Master/texmf-dist/tex/generic/pst-math/pst-math.tex +++ b/Master/texmf-dist/tex/generic/pst-math/pst-math.tex @@ -6,7 +6,7 @@ %% Package `pst-math.tex' %% %% Christophe Jorssen <christophe.jorssen@libre.fr.invalid> -%% ('libre' is the french word for 'free', to contact me) +%% Herbert Voss <hv@PSTricks.de> %% %% This program can be redistributed and/or modified under the terms %% of the LaTeX Project Public License Distributed from CTAN archives @@ -16,12 +16,9 @@ %% `pst-math' is a PSTricks package to enhance math in PSTricks %% %% -\def\RCS$#1: #2 ${\expandafter\def\csname RCS#1\endcsname{#2}} -\RCS$Revision: 1.0 $ \RCS$Date: 2004-06-15 22:29:36+02 $ +\def\fileversion{0.21} -\def\fileversion{0.3} - -\message{`pst-math' v\fileversion\space (Rev \RCSRevision, \RCSDate), C.Jorssen} +\message{`pst-math' v\fileversion\space, (CJ,hv)} \csname PSTmathLoaded\endcsname \let\PSTmathLoaded\endinput diff --git a/Master/texmf-dist/tex/latex/pst-math/pst-math.sty b/Master/texmf-dist/tex/latex/pst-math/pst-math.sty index 52ac7e7f6d4..9fb99e25041 100644 --- a/Master/texmf-dist/tex/latex/pst-math/pst-math.sty +++ b/Master/texmf-dist/tex/latex/pst-math/pst-math.sty @@ -1,6 +1,9 @@ -\ProvidesPackage{pst-math}[2004/03/20 package wrapper for PSTricks pst-math.tex] +\ProvidesPackage{pst-math}[2009/01/20 package wrapper for PSTricks pst-math.tex] \input pst-math.tex \ProvidesFile{pst-math.tex} - [\filedate\space v\fileversion\space `PST-math' (cj)] -\IfFileExists{pst-func.pro}{\@addtofilelist{pst-math.pro}}{}% + [\filedate\space v\fileversion\space `PST-math' (hv)] +\IfFileExists{pst-math.pro}{% + \ProvidesFile{pst-math.pro} + [2009/01/20 v. 0.3, PostScript prologue file (hv)] +\@addtofilelist{pst-math.pro}}{}% \endinput |