summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/generic/pst-osci/pst-osci-doc.tex
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/doc/generic/pst-osci/pst-osci-doc.tex')
-rw-r--r--Master/texmf-dist/doc/generic/pst-osci/pst-osci-doc.tex553
1 files changed, 553 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/generic/pst-osci/pst-osci-doc.tex b/Master/texmf-dist/doc/generic/pst-osci/pst-osci-doc.tex
new file mode 100644
index 00000000000..602df3541d1
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/pst-osci/pst-osci-doc.tex
@@ -0,0 +1,553 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -*- Mode: Latex -*- %%%%%%%%%%%%%%%%%%%%%%%%%%
+%% pst-osci.doc --- Documentation for `pst-osci' PSTricks package
+%%
+%% Authors : Manuel LUQUE <Mluque5130@aol.com>
+%% Christophe JORSSEN <Christophe.Jorssen@wanadoo.fr>
+%% Created : Thu 2 Sept 1999
+%% Last mod. by : Christophe JORSSEN <Christophe.Jorssen@wanadoo.fr>
+%% Last mod. the : Wed 17 Nov 1999
+%% Last mod. by : Herbert Voss
+%% Last mod. the : Wed 7 Nov 2005
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\documentclass{article}
+
+\usepackage{pstricks,pst-osci,multicol} % PSTricks package for Oscilloscope screen shots
+\usepackage[baw,pstricks]{fvrb-ex} % Example environments with `fancyvrb'
+\usepackage[a4paper,left=1.5cm,right=1.5cm,top=1.5cm,bottom=1.5cm]{geometry}
+\usepackage{fancyhdr}
+
+% Modifications in `fvrb-ex' to use only 7 bits characters as escape ones
+% * will be for comment in place of £, and /() for commands in place of §µ¶
+% (this work here because these four characters are not used in the examples)
+
+\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
+
+% Example environments with numbers, single frame, label on top and margin
+\fvset{numbers=none,frame=single,labelposition=topline}
+
+% For macro names
+\DeclareRobustCommand\cs[1]{\texttt{\char`\\#1}}
+
+\newcommand{\OsciPackage}{\textbf{`pst-osci'}}
+\let\phi\varphi
+
+\lhead{\OsciPackage}\rhead{A PSTricks package for oscilloscopes} \pagestyle{fancy}
+
+\begin{document}
+
+\title{\OsciPackage\thanks{Thanks to Denis \textsc{Girou} for his most valuable
+help and his encouragements.}\\ A PSTricks package for oscilloscopes}
+\author{\shortstack{\makeatletter Manuel \textsc{Luque} \texttt{<Mluque5130@aol.com>}\\
+Christophe \textsc{Jorssen} \texttt{<Christophe.Jorssen@free.fr>}\makeatother}}
+\date{\shortstack{Version 2.82\\ \small Documentation revised November 07, 2005 by hv}}
+
+\maketitle
+
+\begin{center}
+\psframebox[framearc=0.3,framesep=5mm,linewidth=0.7mm]{%
+\parbox{15cm}{%
+{\Large\textbf{Abstract}}: \OsciPackage{} is a PSTricks package to draw easily
+oscilloscope screen shots. Three channels can be used to represent the most common
+signals (damped or not): namely sinusoidal ($y=A\exp (-\lambda t)\sin
+(\frac{2\pi}{T}t+m\cdot\sin(\frac{2\pi}{T_m}t)+\phi) + c$), rectangular, triangular,
+dog's tooth (left and right oriented). The third channel allows you to add, to
+subtract or to multiply the two other signals. \textsc{Lissajous} diagrams (XY-mode)
+can also be obtained.}}
+\end{center}
+
+\setlength{\columnseprule}{0.6pt}
+\begin{multicols}{2}
+{\parskip 0pt \tableofcontents}
+\end{multicols}
+
+\section{Introduction}
+
+\OsciPackage{} offers a unique macro with few parameters to interact on it (it is
+the same approach as in Denis \textsc{Girou}'s \textbf{`pst-poly'} package).
+\par
+The syntax is simply: \fbox{\cs{Oscillo}\texttt{[optional\_parameters]}}.
+\par
+\textbf{As for a real oscilloscope, it is important to choose the correct sensivity
+for each channel in relation to the amplitude of the signal. If you did the wrong
+choice, you will get bad-looking curves.}
+\par
+The style of the curves can be customized using the standard PSTricks parameters.
+
+\section{Usage}
+
+\subsection{Parameters}
+
+There are thirty specific parameters defined to change the way the screen shots are
+drawn.
+\par
+Henceforth, the signals represented on channels A, B and C will be called `SignalA',
+`SignalB' and `SignalC'.
+\begin{description}
+
+\item[\HLTTc{period1} (real):] period $T_1$ (in ms) of SignalA (\emph{default:~20}).
+
+\item[\HLTTc{period2} (real):] period $T_2$ (in ms) of SignalB (\emph{default:~20}).
+
+\item[\HLTTc{amplitude1} (real):] amplitude $A_1$ (in V) of SignalA (\emph{default:~2}).
+
+\item[\HLTTc{amplitude2} (real):] amplitude $A_2$ (in V) of SignalB
+(\emph{default:~0 -- no signal}).
+
+\item[\HLTTc{periodmodulation1} (real):] period $T_{m1}$ (in ms) of SignalA
+(\emph{default:~100}).
+
+\item[\HLTTc{periodmodulation2} (real):] period $T_{m2}$ (in ms) of SignalB
+(\emph{default:~100}).
+
+\item[\HLTTc{freqmod1} (real):] modulation factor $m_1$ of SignalA (\emph{default:~0}).
+
+\item[\HLTTc{freqmod2} (real):] modulation factor $m_2$ of SignalB (\emph{default:~0}).
+
+\item[\HLTTc{phase1} (real):] phase $\phi_1$ (in deg) of SignalA (\emph{default:~0}).
+
+\item[\HLTTc{phase2} (real):] phase $\phi_2$ (in deg) of SignalB (\emph{default:~0}).
+
+\item[\HLTTc{CC1} (real):] continuous component $c_1$ (in V) of SignalA (\emph{default:~0}).
+
+\item[\HLTTc{CC2} (real):] continuous component $c_2$ (in V) of SignalB (\emph{default:~0}).
+
+\item[\HLTTc{damping1} (real):] damping $\lambda_1$ of SignalA
+(\emph{default:~0 -- no damping}).
+
+\item[\HLTTc{damping2} (real):] damping $\lambda_2$ of SignalB
+(\emph{default:~0 -- no damping}).
+
+\item[\HLTTc{wave1}:] type of the SignalA chosen between \cs{SinusA}, \cs{RectangleA},
+\cs{TriangleA}, \cs{LDogToothA}, \cs{RDogToothA} (\emph{default: \cs{SinusA}}).
+
+\item[\HLTTc{wave2}:] type of the SignalB chosen between \cs{SinusB}, \cs{RectangleB},
+\cs{TriangleB}, \cs{LDogToothB}, \cs{RDogToothB} (\emph{default: \cs{SinusB}}).
+
+\item[\HLTTc{timediv} (real):] scale (in ms) of the time axis (\emph{default:~5}).
+
+\item[\HLTTc{Lissajous} (boolean):] switch to XY-mode (true) or not (false)
+(\emph{default: false}).
+
+\item[\HLTTc{sensivity1} (real):] scale (in V) of the channel A vertical axis
+(\emph{default:~1}).
+
+\item[\HLTTc{sensivity2} (real):] scale (in V) of the channel B vertical axis
+(\emph{default:~1}).
+
+\item[\HLTTc{plotstyle1}:] determines what kind of plot you will get for
+channel A (\emph{default: GreenContA}). Note that you can customize the plotstyle
+using the \cs{newpsstyle} macro (see below for examples).
+
+\item[\HLTTc{plotstyle2}:] determines what kind of plot you will get for
+channel B (\emph{default: BlueContB}). Same remark as above.
+
+\item[\HLTTc{plotstyle3}:] determines what kind of plot you will get for
+XY-mode (\emph{default: RedContLissajous}). Same remark as above.
+
+\item[\HLTTc{plotstyle4}:] determines what kind of plot you will get for
+add, sub or mul operation (third channel) (\emph{default: MagentaContAddSub}). Same
+remark as above.
+
+\item[\HLTTc{combine} (boolean):] if true allows to draw combination of SignalA
+and SignalB on channel C (namely addition, subtraction or multiplication)
+(\emph{default: false -- no signal}). See next item.
+
+\item[\HLTTc{operation}:] determines what kind of operation will be applied to
+SignalA and SignalB to get SignalC. The valid parameters are add, sub and mul
+(\emph{default: \cs{relax} -- no operation}).
+
+\item[\HLTTc{Fourier} (integer):] see below (Section \ref{Rectangular})
+(\emph{default:~100}).
+
+\item[\HLTTc{offset1} (real):] offset $c'_1$ (in V) of SignalA (\emph{default:~0}).
+
+\item[\HLTTc{offset2} (real):] offset $c'_2$ (in V) of SignalB (\emph{default:~0}).
+
+\item[\HLTTc{offset3} (real):] offset $c'_2$ (in V) of SignalC (\emph{default:~0}).
+
+
+\end{description}
+
+\subsection{Rectangular, triangular and dog's tooth signals\label{Rectangular}}
+
+The parameter \HLTTc{Fourier} controls the precision of the Fourier transform used to
+draw rectangular, triangular and dog's tooth signals. The number of terms is fixed to
+100 by default in order to minimize the computation time. But you can give
+\HLTTc{Fourier} any value you want.
+\par
+Note that those signals can also be damped using the \HLTTc{damping1} and
+\HLTTc{damping2} parameters. By default, there is no damping ($\lambda=1$).
+
+\subsection{\OsciPackage{} and \LaTeX}
+
+\OsciPackage{} defines colors that may interact with the \textbf{`color'} package.
+You should then use the \textbf{`pst-col'} package and load \OsciPackage{} this way:
+\begin{Verbatim}
+ \usepackage{pstcol,pst-osci}
+\end{Verbatim}
+
+\subsection{Reducing the size of the Oscilloscope}
+
+The oscilloscope is put inside a 10\,cm square \HLTTc{pspicture} environment. There
+are two ways to reduce the size of the box, depending on the fonts you use.
+
+\subsubsection{Using PostScript fonts}
+
+We recommend that solution because it allows you to treat fonts like any other
+PostScript object. As a matter of fact, you can, for instance, put your \cs{Oscillo}
+macro inside a PSTricks \cs{psscalebox}. It is very simple and offers good results.
+However, pay attention to the fact that, if you are using non-PS fonts, the result
+will look ugly!
+
+\subsubsection{Using non-PostScript fonts}
+
+If you use non-PS fonts and if you want to reduce the size of the Oscilloscope, you
+should type something like:
+\begin{Verbatim}
+ {\psset{unit=0.5}\footnotesize\Oscillo}
+\end{Verbatim}
+
+\section{Examples}
+
+\subsection{Basic examples}
+
+\begin{CenterExample}[label={The \cs{Oscillo} macro, default parameters}]
+ \psscalebox{0.5}{\Oscillo}
+\end{CenterExample}
+
+\textbf{In order to minimize the size of the file, all the oscilloscopes are drawn
+scaled $\frac{1}{2}$. This reduced scale is not represented.}
+
+\makeatletter
+\let\Oldpst@Oscillo\pst@Oscillo
+\def\pst@Oscillo[#1]{\psscalebox{0.5}{\Oldpst@Oscillo[#1]}}
+\makeatother
+
+\par
+If you only want to see SignalA then set \HLTTc{offset2} in order to have
+$\HLTTc{offset2}\in ]-\infty,-4\times \HLTTc{sensivity2}[ \cup
+]4\times\HLTTc{sensivity2},+\infty[$:
+
+\begin{SideBySideExample}[label=SignalB invisible, xrightmargin=5.5cm]
+ \Oscillo[offset2=/HLCBWz(5)]
+\end{SideBySideExample}
+
+Let's have a look at Channel A:
+
+\begin{CenterExample}[label=The importance of sensivity]
+ % Extrema invisible
+ \psscalebox{0.5}{\Oscillo[offset2=5,/HLCBWz(amplitude1)=5]}
+ % Good sensivity choice
+ \hfill
+ \psscalebox{0.5}{\Oscillo[offset2=5,amplitude1=5,/HLCBWz(sensivity1)=2]}
+\end{CenterExample}
+
+Now, let's have two signals on Channel A and B. By default, the two signals have the
+same period and the same phase:
+
+\begin{CenterExample}
+ % Different amplitude
+ \psscalebox{0.5}{\Oscillo[amplitude1=3,/HLCBWz(amplitude2)=1.5]}
+ % Different period
+ £\hfill
+ \psscalebox{0.5}{\Oscillo[amplitude1=3,amplitude2=1.5,/HLCBWz(period2)=50]}
+ % Different phase
+ £\hfill
+ \psscalebox{0.5}{\Oscillo[amplitude1=3,amplitude2=1.5,/HLCBWz(phase1)=60,/HLCBWz(phase2)=-30]}
+\end{CenterExample}
+
+\begin{SideBySideExample}[label=Damping and amplification,xrightmargin=5.5cm]
+ \psscalebox{0.5}{\Oscillo[amplitude1=3,amplitude2=1.5,
+ /HLCBWz(damping2)=0.005,/HLCBWz(damping1)=-0.005]}
+\end{SideBySideExample}
+
+\begin{SideBySideExample}[label=Changing the time scale,xrightmargin=5.5cm]
+ \psscalebox{0.5}{\Oscillo[amplitude2=1.5,/HLCBWz(timediv)=10]}
+\end{SideBySideExample}
+
+\begin{SideBySideExample}[label=Vertical translations,xrightmargin=5.5cm]
+ \psscalebox{0.5}{\Oscillo[amplitude1=1.5,amplitude2=1.5,
+ /HLCBWz(offset1)=1.5,/HLCBWz(offset2)=-1.5]}
+\end{SideBySideExample}
+
+\begin{CenterExample}[label=Changing the plot style]
+ /HLCBWz(\newpsstyle){BlueDots}{plotstyle=dots,
+ linecolor=blue,linewidth=0.02,plotpoints=50}
+ \psscalebox{0.5}{\Oscillo[amplitude1=3,/HLCBWz(plotstyle2)=BlueDots,amplitude2=2]}
+ /HLCBWz(\newpsstyle){GreenDash}{linestyle=dashed,
+ linecolor=green,linewidth=0.035,plotpoints=50}
+ £\hfill
+ \psscalebox{0.5}{\Oscillo[amplitude1=2,phase1=90,amplitude2=3.8,period1=25,
+ period2=50,phase2=10,/HLCBWz(plotstyle1)=GreenDash]}
+\end{CenterExample}
+
+\subsection{Channel C: operations}
+
+Note that \HLTTc{offset1} and \HLTTc{offset2} are \textbf{not} taken into account in
+the operations when the \HLTTc{combine} parameter is set to true.
+
+\begin{CenterExample}[label=Additions]
+ \psscalebox{0.5}{\Oscillo[amplitude2=1.5,period2=50,period1=10,
+ /HLCBWz(combine)=/HLCBWz(true),/HLCBWz(operation)=/HLCBWz(add)]}
+ £\hfill
+ \psscalebox{0.5}{\Oscillo[amplitude2=1.5,period2=50,period1=10,
+ /HLCBWz(combine)=/HLCBWz(true),/HLCBWz(operation)=/HLCBWz(add),offset1=2,offset2=2]}
+ £\hfill
+ % SignalA and SignalB are invisible
+ \psscalebox{0.5}{\Oscillo[amplitude2=1.5,period2=50,period1=10,
+ /HLCBWz(combine)=/HLCBWz(true),/HLCBWz(operation)=/HLCBWz(add),offset1=6,offset2=6]}
+\end{CenterExample}
+
+\begin{SideBySideExample}[label=Subtraction,xrightmargin=5.5cm]
+ \psscalebox{0.5}{\Oscillo[amplitude2=1.5,period2=50,period1=10,
+ /HLCBWz(combine)=/HLCBWz(true),
+ /HLCBWz(operation)=/HLCBWz(sub)]}
+\end{SideBySideExample}
+
+\begin{CenterExample}[label=Multiplications]
+ \psscalebox{0.5}{\Oscillo[amplitude2=1.5,period2=50,period1=10,
+ /HLCBWz(combine)=/HLCBWz(true),/HLCBWz(operation)=/HLCBWz(mul)]}
+ £\hfill
+ \psscalebox{0.5}{\Oscillo[amplitude1=1,amplitude2=2,
+ period2=50,period1=2,/HLCBWz(combine)=/HLCBWz(true),/HLCBWz(operation)=/HLCBWz(mul)]}
+\end{CenterExample}
+
+\subsection{Channel C: XY-mode}
+
+\begin{SideBySideExample}[label={Basic \textsc{Lissajous} curve},xrightmargin=5.5cm]
+ \psscalebox{0.5}{\Oscillo[/HLCBWz(Lissajous)=/HLCBWz(true),amplitude2=2]}
+\end{SideBySideExample}
+
+\begin{CenterExample}
+ \psscalebox{0.5}{\Oscillo[Lissajous=true,amplitude2=3,phase2=45]}
+ \hfill
+ \psscalebox{0.5}{\Oscillo[Lissajous=true,amplitude2=2,phase2=90]}
+\end{CenterExample}
+
+\begin{CenterExample}
+ \psscalebox{0.5}{\Oscillo[amplitude1=3.5,phase1=90,amplitude2=3.5,
+ period1=20,period2=10,phase2=0,Lissajous=true]}
+ \hfill
+ \psscalebox{0.5}{\Oscillo[amplitude1=3.5,phase1=90,amplitude2=3.5,
+ period1=25,period2=5,phase2=60,Lissajous=true]}
+\end{CenterExample}
+
+\begin{SideBySideExample}[label={A damped \textsc{Lissajous} diagram},xrightmargin=5.5cm]
+ \psscalebox{0.5}{\Oscillo[amplitude1=3.5,phase1=90,
+ amplitude2=3.5,period1=50,period2=50,
+ Lissajous=true,damping1=0.01,damping2=0.01]}
+\end{SideBySideExample}
+
+\subsection{Non sinusoidal signals}
+
+\begin{CenterExample}[label=Exponential signals]
+ \psscalebox{0.5}{\Oscillo[amplitude1=3.5,phase1=90,
+ period1=/HLCBWz(2E30),offset2=5,damping1=0.02]}
+ \hfill
+ \psscalebox{0.5}{\Oscillo[amplitude1=3.5,phase1=90,
+ period1=/HLCBWz(2E30),offset2=3,amplitude2=-3,damping1=0.02,
+ period2=/HLCBWz(2E31),damping2=0.02,phase2=90]}
+\end{CenterExample}
+
+\textbf{Note:} the maximum value for \HLTTc{period1} and \HLTTc{period2} is $\pm$2E31.
+
+\begin{CenterExample}[label={Non-sinusoidal signals}]
+ \psscalebox{0.5}{\Oscillo[/HLCBWz(Wave1)=/HLCBWz(\TriangleA),amplitude2=2,period2=20,period1=25]}
+ \hfill
+ \psscalebox{0.5}{\Oscillo[/HLCBWz(Wave1)=/HLCBWz(\RectangleA),amplitude2=2,period2=20,period1=25]}
+\end{CenterExample}
+
+\begin{CenterExample}[label=Combine examples]
+ \psscalebox{0.5}{\Oscillo[Wave2=\TriangleB,combine=true,operation=mul,amplitude2=2,
+ period2=50,period1=2,amplitude1=1]}
+ \hfill
+ \psscalebox{0.5}{\Oscillo[combine=true,operation=add,amplitude2=1.5,
+ Wave1=\RectangleA,amplitude1=1.5,period2=15]}
+ \hfill
+ \psscalebox{0.5}{\Oscillo[combine=true,operation=add,amplitude2=1.5,
+ Wave1=\RectangleA,amplitude1=1.5,period2=15,Wave2=\TriangleB]}
+\end{CenterExample}
+
+\begin{CenterExample}[label={Dog's tooth signal}]
+ \psscalebox{0.5}{\Oscillo[combine=true,operation=mul,amplitude2=1.5,
+ /HLCBWz(Wave1)=/HLCBWz(\RDogToothA),amplitude1=1.5,period2=15]}
+ £\hfill
+ \psscalebox{0.5}{\Oscillo[amplitude1=3.5,phase1=90,amplitude2=3.5,
+ period1=25,period2=6.25,phase2=0,Lissajous=true,Wave2=\RDogToothB]}
+\end{CenterExample}
+
+\subsection{Frequency modulation examples}
+
+\begin{SideBySideExample}[xrightmargin=5.5cm]
+ \psscalebox{0.5}{\Oscillo[/HLCBWz(periodmodulation1)=200,/HLCBWz(freqmod1)=5,
+ period1=30,
+ timediv=50,plotpoints=1000,amplitude2=2,period2=200]}
+\end{SideBySideExample}
+
+\begin{SideBySideExample}[xrightmargin=5.5cm]
+ \psscalebox{0.5}{\Oscillo[amplitude1=1,amplitude2=1,
+ period2=25,period1=2,combine=true,operation=mul]}
+\end{SideBySideExample}
+
+\begin{SideBySideExample}[xrightmargin=5.5cm]
+ \psscalebox{0.5}{\Oscillo[amplitude1=1,amplitude2=1,/HLCBWz(CC2)=2,
+ period2=25,period1=2,combine=true,operation=mul,offset1=5]}
+\end{SideBySideExample}
+
+\begin{SideBySideExample}[xrightmargin=5.5cm]
+ \psscalebox{0.5}{\Oscillo[amplitude1=1,amplitude2=1,CC2=1.5,
+ Wave2=\TriangleB,
+ period2=25,period1=2,combine=true,operation=mul,offset1=5]}
+\end{SideBySideExample}
+
+\begin{SideBySideExample}[xrightmargin=5.5cm]
+ \psscalebox{0.5}{\Oscillo[amplitude1=1,amplitude2=1,CC2=2,
+ Wave2=\RDogToothB,
+ period2=25,period1=2,combine=true,operation=mul,offset1=5]}
+\end{SideBySideExample}
+
+\begin{SideBySideExample}[xrightmargin=5.5cm]
+ \psscalebox{0.5}{\Oscillo[amplitude1=1,amplitude2=1,CC2=-2,
+ Wave2=\LDogToothB,
+ period2=20,period1=3,combine=true,operation=mul,offset1=5]}
+\end{SideBySideExample}
+
+\begin{SideBySideExample}[xrightmargin=5.5cm]
+ \psscalebox{0.5}{\Oscillo[amplitude1=1,amplitude2=1,CC2=2,
+ Wave2=\RDogToothB,
+ period2=25,period1=2,combine=true,operation=mul,
+ offset1=5,offset3=-1]}
+\end{SideBySideExample}
+
+\begin{SideBySideExample}[xrightmargin=5.5cm]
+ \psscalebox{0.5}{\Oscillo[amplitude1=1,amplitude2=1,CC2=-2,
+ Wave2=\LDogToothB,
+ period2=20,period1=3,combine=true,operation=mul,
+ offset1=5,offset3=1]}
+\end{SideBySideExample}
+
+\subsection{More examples}
+
+\begin{SideBySideExample}[xrightmargin=5.5cm]
+ \psscalebox{0.5}{\Oscillo[amplitude1=3.5,phase1=90,amplitude2=3.5,
+ period1=50,
+ period2=50,phase2=0,Lissajous=true,damping1=0.01,
+ Wave2=\RectangleB]}
+\end{SideBySideExample}
+
+\begin{SideBySideExample}[xrightmargin=5.5cm]
+ \psscalebox{0.5}{\Oscillo[amplitude1=2,amplitude2=1.8,
+ Wave1=\RectangleA,
+ Fourier=500,period1=25,period2=12.5,combine=true,
+ operation=add,Wave2=\RectangleB]}
+\end{SideBySideExample}
+
+\begin{SideBySideExample}[xrightmargin=5.5cm]
+ \psscalebox{0.5}{\Oscillo[amplitude1=4,amplitude2=3,
+ period1=50,
+ period2=5,Lissajous=true,Wave1=\RectangleA]}
+\end{SideBySideExample}
+
+\begin{SideBySideExample}[xrightmargin=5.5cm]
+ \psscalebox{0.5}{\Oscillo[amplitude1=3,phase1=90,
+ amplitude2=3,damping1=0.05,
+ period1=25,period2=12.5,phase2=0,
+ Lissajous=true,Wave2=\RDogToothB]}
+\end{SideBySideExample}
+
+\begin{SideBySideExample}[xrightmargin=5.5cm]
+ \psscalebox{0.5}{\Oscillo[amplitude1=4,amplitude2=3,period1=25,
+ period2=50,Lissajous=true,damping1=0.02,
+ Wave2=\TriangleB]}
+\end{SideBySideExample}
+
+\begin{SideBySideExample}[xrightmargin=5.5cm]
+ \psscalebox{0.5}{\Oscillo[Wave2=\LDogToothB,combine=true,
+ operation=mul,
+ amplitude2=2,period2=50,period1=2,amplitude1=1]}
+\end{SideBySideExample}
+
+\begin{SideBySideExample}[xrightmargin=5.5cm]
+ \psscalebox{0.5}{\Oscillo[amplitude1=3.5,phase1=90,%
+ amplitude2=3.5,period1=50,
+ period2=50,phase2=0,Lissajous=true,damping1=0.01,
+ Wave2=\RectangleB,damping2=0.01]}
+\end{SideBySideExample}
+
+\end{document}