summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/feyn/feyn.sty
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/latex/feyn/feyn.sty')
-rw-r--r--Master/texmf-dist/tex/latex/feyn/feyn.sty250
1 files changed, 215 insertions, 35 deletions
diff --git a/Master/texmf-dist/tex/latex/feyn/feyn.sty b/Master/texmf-dist/tex/latex/feyn/feyn.sty
index ab49e7f276d..59207ad9361 100644
--- a/Master/texmf-dist/tex/latex/feyn/feyn.sty
+++ b/Master/texmf-dist/tex/latex/feyn/feyn.sty
@@ -6,7 +6,7 @@
%%
%% feyn.dtx (with options: `package')
%% Feyn: package to manage the font feyn10
-%% This software is copyright, 1991, 1994, 2001, Norman Gray.
+%% This software is copyright, 1991, 1994, 2001, 2002, 2005, 2008, Norman Gray.
%%
%% This program is free software; you can redistribute it and/or
%% modify it under the terms of the GNU General Public License
@@ -27,16 +27,10 @@
%%
%% See the file LICENCE for a copy of the GPL.
%% You can also find an online copy at http://www.gnu.org/copyleft/gpl.html .
-%% RCS Info $Id: feyn.dtx,v 1.11 2002/04/23 11:26:15 norman Exp $
-\def\ParseRCSDate$#1: #2 #3 ${\def\FEYN@Date{#2}}
-\ParseRCSDate$Date: 2002/04/23 11:26:15 $
-\def\filename{feyn}
-\def\fileversion{0.1} %%VERSION%%
-\def\filedate{\FEYN@Date}
-\def\docdate{\FEYN@Date}
+%% RCS Info $Id: feyn.dtx.in,v 1.18 2008/02/29 20:45:59 norman Exp $
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{feyn}[\filedate\space\fileversion\space textpos]
-\typeout{Package: `feyn' \fileversion\space<\filedate>}
+\ProvidesPackage{feyn}[2008/02/29 \space0.3.1\space textpos]
+\typeout{Package: `feyn' 0.3.1\space<2008/02/29 >}
%% \CharacterTable
%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
@@ -52,39 +46,224 @@
%% Right bracket \] Circumflex \^ Underscore \_
%% Grave accent \` Left brace \{ Vertical bar \|
%% Right brace \} Tilde \~}
+\newif\ifFeyn@globalbang
+\@ifpackageloaded{amsmath}{\Feyn@globalbangtrue}{\Feyn@globalbangfalse}
+\DeclareOption{globalbang}{\Feyn@globalbangtrue}
+\DeclareOption{noglobalbang}{\Feyn@globalbangfalse}
+\ProcessOptions
\DeclareFontFamily{OMS}{feyn}{\skewchar\font'000}
\DeclareFontShape{OMS}{feyn}{m}{n}{%
<-10.5>feyn10%
<10.5-11.5>feyn11%
-<11.5->feyn12%
+<11.5-15>feyn12%
+ <15-21>feyn18%
+ <21->feyn24%
}{}
\DeclareFontFamily{OMS}{textfeyn}{\skewchar\font'000}
\DeclareFontShape{OMS}{textfeyn}{m}{n}{%
<-10.5>feyntext10%
<10.5-11.5>feyntext11%
-<11.5->feyntext12%
+<11.5-15>feyntext12%
+ <15-21>feyntext18%
+ <21->feyntext24%
}{}
\DeclareSymbolFont{feynman}{OMS}{feyn}{m}{n}
-\DeclareSymbolFontAlphabet{\feyn}{feynman}
+\DeclareSymbolFontAlphabet{\feyn@alphabet}{feynman}
\DeclareSymbolFont{textfeynman}{OMS}{textfeyn}{m}{n}
-\DeclareSymbolFontAlphabet{\Feyn}{textfeynman}
+\DeclareSymbolFontAlphabet{\Feyn@alphabet}{textfeynman}
+\ifFeyn@globalbang
+ \catcode`\!=\active
+ \def!{\char`\!} % ! produces this character everywhere
+ \def\feyn{\begingroup
+ \let!\momentum % ...except within \feyn
+ \feyn@}
+ \def\Feyn{\begingroup
+ \let!\momentum % ...or \Feyn
+ \Feyn@}
+\else
+ {\catcode`\!=\active % only make ! active within \feyn
+ \gdef\feyn{%
+ \begingroup % ends in \feyn@
+ \catcode`\!=\active
+ \let!=\momentum
+ \feyn@}
+ \gdef\Feyn{%
+ \begingroup % ends in \Feyn@
+ \catcode`\!=\active
+ \let!=\momentum
+ \Feyn@}}
+\fi
+\def\feyn@#1{\feyn@alphabet{#1}\endgroup}
+\def\Feyn@#1{\Feyn@alphabet{#1}\endgroup}
\DeclareMathSymbol{\FeynSpaceChar}{\mathord}{feynman}{"7F}
\setbox0=\hbox{$\FeynSpaceChar$}
-\newdimen\FEYN@module \FEYN@module=2\wd0
-\newdimen\FEYN@maxis \FEYN@maxis=\ht0
-\def\Diagram#1{\setbox0=\hbox{\vbox{\offinterlineskip \let\\\cr
+\newdimen\feyn@mfmodule \feyn@mfmodule=\wd0
+\newdimen\feyn@module \feyn@module=2\wd0
+\newdimen\feyn@maxis \feyn@maxis=\ht0
+{\catcode`\!=\active
+ \gdef\Diagram{%
+ \begingroup % ends in \Diagram@
+ \catcode`\!=\active
+ \let!\momentum
+ \Diagram@}}
+\def\Diagram@#1{\setbox0=\hbox{\vbox{\offinterlineskip \let\\\cr
\halign{&$\displaystyle\feyn{##}$\cr #1\crcr}}}%
\@tempdima=\ht0
- \advance\@tempdima by 2\FEYN@maxis \ht0=\@tempdima
- \vcenter{\box0}}
-\def\maxis#1{\raise\FEYN@maxis \hbox{$#1$}}
+ \advance\@tempdima by 2\feyn@maxis \ht0=\@tempdima
+ \vcenter{\box0}%
+ \endgroup}% end group begun in \Diagram
+\def\maxis#1{\raise\feyn@maxis \hbox{$#1$}}
+\newdimen\feyn@nudge \feyn@nudge=\feyn@mfmodule \divide\feyn@nudge by 3
+\def\feyn@pos@top#1#2#3{% top
+ \leavevmode
+ \@tempdima=#2\feyn@mfmodule \advance\@tempdima\feyn@nudge
+ \setbox1=\hbox{\raise \@tempdima\hbox to 0pt{%
+ \hskip #1\feyn@mfmodule
+ \hbox to 0pt{\hss$\scriptstyle #3$\hss}\hss}}%
+ \ht1=0pt \dp1=0pt \box1}
+\def\feyn@pos@urt#1#2#3{% urt
+ \leavevmode
+ \@tempdima=#2\feyn@mfmodule \advance\@tempdima\feyn@nudge
+ \setbox1=\hbox{\raise \@tempdima\hbox to 0pt{%
+ \hskip #1\feyn@mfmodule \hskip\feyn@nudge $\scriptstyle #3$\hss}}%
+ \ht1=0pt \dp1=0pt \box1}
+\def\feyn@pos@lrt#1#2#3{% lrt
+ \leavevmode
+ \setbox0=\hbox to 0pt{\hskip\feyn@nudge $\scriptstyle #3$\hss}%
+ \@tempdima=#2\feyn@mfmodule
+ \advance\@tempdima -\ht0
+ \advance\@tempdima-\feyn@nudge
+ \setbox1=\hbox{\raise \@tempdima\hbox to 0pt{%
+ \hskip #1\feyn@mfmodule \box0\hss}}%
+ \ht1=0pt \dp1=0pt \box1}
+\def\feyn@pos@bot#1#2#3{% bot
+ \leavevmode
+ \setbox0=\hbox to 0pt{\hss$\scriptstyle #3$\hss}%
+ \@tempdima=#2\feyn@mfmodule
+ \advance\@tempdima -\ht0
+ \advance\@tempdima-\feyn@nudge
+ \setbox1=\hbox{\raise \@tempdima\hbox to 0pt{%
+ \hskip #1\feyn@mfmodule \box0\hss}}%
+ \ht1=0pt \dp1=0pt \box1}
+\def\feyn@pos@llft#1#2#3{% llft
+ \leavevmode
+ \setbox0=\hbox to 0pt{\hss$\scriptstyle #3$\hskip\feyn@nudge}%
+ \@tempdima=#2\feyn@mfmodule
+ \advance\@tempdima -\ht0
+ \advance\@tempdima-\feyn@nudge
+ \setbox1=\hbox{\raise \@tempdima\hbox to 0pt{%
+ \hskip #1\feyn@mfmodule \box0\hss}}%
+ \ht1=0pt \dp1=0pt \box1}
+\def\feyn@pos@ulft#1#2#3{% ulft
+ \leavevmode
+ \@tempdima=#2\feyn@mfmodule \advance\@tempdima\feyn@nudge
+ \setbox1=\hbox{\raise \@tempdima\hbox to 0pt{%
+ \hskip #1\feyn@mfmodule
+ \hbox to 0pt{\hss$\scriptstyle #3$\hskip\feyn@nudge}\hss}}%
+ \ht1=0pt \dp1=0pt \box1}
+\def\feyn@annotation#1#2#3#4{%
+ \expandafter\def\csname feyn@ann@#1\endcsname##1{%
+ \csname feyn@pos@\ifx\@tempa\@empty #4\else\@tempa\fi\endcsname
+ {#2}{#3}{##1}%
+ #1}}
+\feyn@annotation{f}{0.99974}{0.35}{top}% "f"
+\feyn@annotation{fA}{0.99974}{0.35}{top}% "F"
+\feyn@annotation{fV}{0.99974}{0.35}{top}% 6
+\feyn@annotation{fu}{0.70692}{0.95692}{ulft}% "e"
+\feyn@annotation{fuA}{0.70692}{0.95692}{ulft}% "E"
+\feyn@annotation{fuV}{0.70692}{0.95692}{ulft}% 5
+\feyn@annotation{fd}{0.70692}{0.95692}{urt}% "d"
+\feyn@annotation{fdA}{0.70692}{0.95692}{urt}% "D"
+\feyn@annotation{fdV}{0.70692}{0.95692}{urt}% 4
+\feyn@annotation{fv}{0}{1.24974}{urt}% "b"
+\feyn@annotation{fvA}{0}{1.24974}{urt}% "B"
+\feyn@annotation{fvV}{0}{1.24974}{urt}% 2
+\feyn@annotation{m}{0.99974}{0.32802}{top}% "m"
+\feyn@annotation{mA}{0.99974}{0.32802}{top}% "M"
+\feyn@annotation{mV}{0.99974}{0.32802}{top}% 13
+\feyn@annotation{ms}{0.49986}{0.32802}{top}% 11
+\feyn@annotation{fl}{0}{1.85}{top}% "l"
+\feyn@annotation{flA}{0}{1.85}{top}% "L"
+\feyn@annotation{flV}{0}{1.85}{top}% 12
+\feyn@annotation{flu}{0}{-1.35}{bot}% "n"
+\feyn@annotation{fluA}{0}{-1.35}{bot}% "N"
+\feyn@annotation{fluV}{0}{-1.35}{bot}% 14
+\feyn@annotation{flS}{0}{1.23335}{top}% "o"
+\feyn@annotation{flSA}{0}{1.23335}{top}% "O"
+\feyn@annotation{flSV}{0}{1.23335}{top}% 15
+\feyn@annotation{flSu}{0}{-0.90001}{bot}% "w"
+\feyn@annotation{flSuA}{0}{-0.90001}{bot}% "W"
+\feyn@annotation{flSuV}{0}{-0.90001}{bot}% 23
+\feyn@annotation{g}{0.99974}{0.45}{top}% "g"
+\feyn@annotation{gA}{0.99974}{0.45}{top}% "G"
+\feyn@annotation{gV}{0.99974}{0.45}{top}% 7
+\feyn@annotation{gu}{0.70692}{0.95692}{ulft}% "u"
+\feyn@annotation{guA}{0.70692}{0.95692}{ulft}% "U"
+\feyn@annotation{guV}{0.70692}{0.95692}{ulft}% 21
+\feyn@annotation{gd}{0.70692}{0.95692}{urt}% "v"
+\feyn@annotation{gdA}{0.70692}{0.95692}{urt}% "V"
+\feyn@annotation{gdV}{0.70692}{0.95692}{urt}% 22
+\feyn@annotation{gv}{0}{1.24974}{urt}% "}"
+\feyn@annotation{gvA}{0}{1.24974}{urt}% "]"
+\feyn@annotation{gvV}{0}{1.24974}{urt}% 29
+\feyn@annotation{g1}{-1.41422}{1.66422}{ulft}% "q"
+\feyn@annotation{g1A}{-1.41422}{1.66422}{ulft}% "Q"
+\feyn@annotation{g1V}{-1.41422}{1.66422}{ulft}% 17
+\feyn@annotation{g2}{1.41422}{1.66422}{urt}% "r"
+\feyn@annotation{g2A}{1.41422}{1.66422}{urt}% "R"
+\feyn@annotation{g2V}{1.41422}{1.66422}{urt}% 18
+\feyn@annotation{g3}{1.41422}{-1.16422}{lrt}% "s"
+\feyn@annotation{g3A}{1.41422}{-1.16422}{lrt}% "S"
+\feyn@annotation{g3V}{1.41422}{-1.16422}{lrt}% 19
+\feyn@annotation{g4}{-1.41422}{-1.16422}{llft}% "t"
+\feyn@annotation{g4A}{-1.41422}{-1.16422}{llft}% "T"
+\feyn@annotation{g4V}{-1.41422}{-1.16422}{llft}% 20
+\feyn@annotation{gl}{0}{2.25}{urt}% "y"
+\feyn@annotation{glA}{0}{2.25}{urt}% "Y"
+\feyn@annotation{glV}{0}{2.25}{urt}% 25
+\feyn@annotation{glu}{0}{-1.75}{llft}% "z"
+\feyn@annotation{gluA}{0}{-1.75}{llft}% "Z"
+\feyn@annotation{gluV}{0}{-1.75}{llft}% 26
+\feyn@annotation{glB}{0}{2.91667}{urt}% "{"
+\feyn@annotation{glBA}{0}{2.91667}{urt}% "["
+\feyn@annotation{glBV}{0}{2.91667}{urt}% 27
+\feyn@annotation{glS}{0}{1.5833}{llft}% "|"
+\feyn@annotation{glSA}{0}{1.5833}{llft}% "\"
+\feyn@annotation{glSV}{0}{1.5833}{llft}% 28
+\feyn@annotation{h}{0.99974}{0.25}{top}% "h"
+\feyn@annotation{hA}{0.99974}{0.25}{top}% "H"
+\feyn@annotation{hV}{0.99974}{0.25}{top}% 8
+\feyn@annotation{hu}{0.70464}{0.95464}{ulft}% "i"
+\feyn@annotation{huA}{0.70464}{0.95464}{ulft}% "I"
+\feyn@annotation{huV}{0.70464}{0.95464}{ulft}% 9
+\feyn@annotation{hd}{0.70464}{0.95464}{urt}% "j"
+\feyn@annotation{hdA}{0.70464}{0.95464}{urt}% "J"
+\feyn@annotation{hdV}{0.70464}{0.95464}{urt}% 10
+\feyn@annotation{hs}{0.49986}{0.25}{top}% "K"
+\feyn@annotation{c}{0.65044}{0.90044}{top}% "c"
+\feyn@annotation{p}{0.65}{0.9}{top}% "p"
+\feyn@annotation{P}{0.65044}{0.90044}{top}% "P"
+\feyn@annotation{x}{0}{0.55641}{top}% "x"
+\def\momentum{\@ifnextchar[\momentum@{\momentum@[]}}
+\def\momentum@[#1]#2#3{%
+ \def\@tempa{#1}
+ \ifx\@tempa\@empty \else
+ \@ifundefined{feyn@pos@#1}
+ {\@latex@error{No annotation position #1}%
+ {You cannot call \string\momentum[#1]{...}^^J(must be one
+ of top, urt, lrt, bot, llft, ulft)}%
+ #2}%
+ \fi
+ \@ifundefined{feyn@ann@#2}%
+ {\@latex@error{No annotation defined for #2}%
+ {You cannot call \string\momentum{#2}{...}}%
+ #2}%
+ {\csname feyn@ann@#2\endcsname{#3}}}
\def\vertexlabel#1#2{\setbox0=\hbox to 0pt{\hss$\scriptstyle #2$\hss}
\ifcat #1^
- \vbox to 0pt{\vss\box0\nointerlineskip\kern2\FEYN@maxis}
- %\vbox to 0pt{\vss\box0\nointerlineskip\kern6pt}
+ \vbox to 0pt{\vss\box0\nointerlineskip\kern2\feyn@maxis}
\else\ifcat #1_
- \vbox to 0pt{\kern\FEYN@maxis\nointerlineskip\box0\vss}
- %\vbox to 0pt{\kern2pt\nointerlineskip\box0\vss}
+ \vbox to 0pt{\kern\feyn@maxis\nointerlineskip\box0\vss}
\else
\PackageError{feyn}
{Bad arguments for \string\vertexlabel}
@@ -92,24 +271,25 @@
\fi\fi
}
\def\annotate#1#2#3{\vcenter to 0pt{\vss
- \hbox to 0pt{\hskip #1\FEYN@module\hbox to 0pt{\hss$\scriptstyle #3$\hss}\hss
- }\vskip #2\FEYN@module}}
+ \hbox to 0pt{\hskip #1\feyn@module\hbox to 0pt{\hss$\scriptstyle #3$\hss}\hss
+ }\vskip #2\feyn@module}}
\def\tannotate#1#2#3{\vcenter to 0pt{\vss
- \hbox to 0pt{\hskip #1\FEYN@module\hbox to 0pt{\hss #3\hss}\hss
- }\vskip #2\FEYN@module}}
+ \hbox to 0pt{\hskip #1\feyn@module\hbox to 0pt{\hss #3\hss}\hss
+ }\vskip #2\feyn@module}}
\def\feynstrut#1#2{\setbox\strutbox=\hbox{\vrule
-height #1\FEYN@module depth #2\FEYN@module width 0pt}}
-\def\arrow#1#2#3{\@tempcnta="28 \advance\@tempcnta by #3\vcenter to 0pt{\vss
- \hbox to 0pt{\hskip #1\FEYN@module\hbox to 0pt{$\feyn{\char\@tempcnta}$}\hss
- }\vskip #2\FEYN@module}}
+height #1\feyn@module depth #2\feyn@module width 0pt}}
+\def\arrow#1#2#3{\@latex@error{Do not use the \string\arrow macro any more}{}}
\DeclareMathSymbol{\wfermion}{0}{feynman}{"64}
\DeclareMathSymbol{\hfermion}{0}{feynman}{"6B}
\DeclareMathSymbol{\shfermion}{0}{feynman}{"6C}
\DeclareMathSymbol{\whfermion}{0}{feynman}{"6D}
\DeclareMathSymbol{\gvcropped}{0}{feynman}{"07}
-\DeclareMathSymbol{\bigbosonloop}{0}{feynman}{"21}
-\DeclareMathSymbol{\Bigbosonloop}{7}{feynman}{"21}
-\DeclareMathSymbol{\smallbosonloop}{0}{feynman}{"20}
+\DeclareMathSymbol{\bigbosonloop}{0}{feynman}{"7B}
+\DeclareMathSymbol{\smallbosonloop}{0}{feynman}{"7C}
+\DeclareMathSymbol{\bigbosonloopA}{0}{feynman}{"5B}
+\DeclareMathSymbol{\smallbosonloopA}{0}{feynman}{"5C}
+\DeclareMathSymbol{\bigbosonloopV}{0}{feynman}{"1B}
+\DeclareMathSymbol{\smallbosonloopV}{0}{feynman}{"1C}
\endinput
%%
%% End of file `feyn.sty'.