summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/pgf/incoming/KarlheinzOchs/macros.sty
blob: 024b248cc76f270b0c5288a81d41e9df33905c72 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
% Some macros for signal flow diagrams.
%
% Author: Dr. Karlheinz Ochs, Ruhr-University of Bochum, Germany
% Version: 0.1
% Date: 2007/01/05

\NeedsTeXFormat{LaTeX2e}
\RequirePackage{tikz}
\RequirePackage{signalflowdiagram}
\ProvidesPackage{macros}
              [2007/01/05 v0.1 Some user-defined macros for signal flow diagrams]

%
% Creates the signal flow diagram of a minimum shift keying coder.
%
% #1 = global label
% #2 = parameter for placement
\newcommand{\mskCoder}[3]{%
   % building blocks
   \node[modulator]  (#1-in)  [#2] {};
   \node[multiplier] (mul)    [below from=#1-in] {$\mathrm{j}$};
   \node[delay]      (del)    [right from=#1-in] {$T$};
   \node[node]       (#1-out) [right from=del]   {};
   % signal paths
   \path[c>] (#1-in)  -- (del);
   \path[c>] (del)    -- (#1-out);
   \path[c>] (#1-out) |- (mul);
   \path[c>] (mul)    -- (#1-in);
}%


% Creates the signal flow diagram of a pulse shaper.
%
% #1 = global label
% #2 = parameter for placement
\newcommand{\pulseShaper}[4]{%
   % building blocks
   \node[modulator]  (#1-in)  [#2] {};
   \node[coordinate] (pam)
      [above from = #1-in,
       label=above:$\sum\limits_{\nu=-\infty}^{\infty} \delta(t-t_\nu)$] {};
   \node[filter]     (#1-out) [right from = #1-in] {$q(t)$};
   % signal paths
   \path[r>] (pam)   -- (#1-in);
   \path[c>] (#1-in) -- (#1-out);
}%