diff options
-rw-r--r-- | Master/texmf-dist/doc/latex/dynkin-diagrams/README | 4 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/dynkin-diagrams/dynkin-diagrams.pdf | bin | 810526 -> 842401 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/dynkin-diagrams/dynkin-diagrams.tex | 135 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/dynkin-diagrams/dynkin-diagrams.sty | 75 |
4 files changed, 142 insertions, 72 deletions
diff --git a/Master/texmf-dist/doc/latex/dynkin-diagrams/README b/Master/texmf-dist/doc/latex/dynkin-diagrams/README index 5d7efb31447..8c3a097ae40 100644 --- a/Master/texmf-dist/doc/latex/dynkin-diagrams/README +++ b/Master/texmf-dist/doc/latex/dynkin-diagrams/README @@ -1,6 +1,6 @@ Dynkin diagrams -v3.141592653589793 -31 March 2021 +v3.1415926535897932 +04 April 2021 Authors: Ben McKay diff --git a/Master/texmf-dist/doc/latex/dynkin-diagrams/dynkin-diagrams.pdf b/Master/texmf-dist/doc/latex/dynkin-diagrams/dynkin-diagrams.pdf Binary files differindex 870e3afa275..d5748302d26 100644 --- a/Master/texmf-dist/doc/latex/dynkin-diagrams/dynkin-diagrams.pdf +++ b/Master/texmf-dist/doc/latex/dynkin-diagrams/dynkin-diagrams.pdf diff --git a/Master/texmf-dist/doc/latex/dynkin-diagrams/dynkin-diagrams.tex b/Master/texmf-dist/doc/latex/dynkin-diagrams/dynkin-diagrams.tex index 8c882f70f26..1cc6083977f 100644 --- a/Master/texmf-dist/doc/latex/dynkin-diagrams/dynkin-diagrams.tex +++ b/Master/texmf-dist/doc/latex/dynkin-diagrams/dynkin-diagrams.tex @@ -1,7 +1,7 @@ \documentclass{amsart} \title[The Dynkin diagrams package]% {The Dynkin diagrams package \\ -Version 3.141592653589793} +Version 3.141\,592\,653\,589\,793\,2} %% My name: \makeatletter \DeclareRobustCommand{\scotsMc}{\scotsMcx{c}} @@ -20,12 +20,12 @@ Version 3.141592653589793} \author{Ben \scotsMc{}Kay} \address{School of Mathematical Sciences, University College Cork, Cork, Ireland} \email{b.mckay@ucc.ie} -\date{31 March 2021} +\date{4 April 2021} \usepackage[T1]{fontenc} \usepackage[utf8]{inputenx} \usepackage{etoolbox} \usepackage{lmodern} -\RequirePackage[tt=lining]{cfr-lm} +\RequirePackage[tt={lining=true,variable=false}]{cfr-lm} \usepackage[kerning=true,tracking=true]{microtype} \usepackage{amsmath} \usepackage{amsfonts} @@ -50,7 +50,6 @@ Version 3.141592653589793} \usepackage{fancyvrb} \usepackage{xspace} \newcommand{\TikZ}{Ti\textit{k}Z\xspace} -\usepackage{filecontents} \usetikzlibrary{decorations.markings} \usetikzlibrary{decorations.pathmorphing} \usepackage{tikz-cd} @@ -232,7 +231,7 @@ The Dynkin diagram of \(B_3\) is \renewcommand\do[1]{\dyn#1} \begin{dynkinTable}{The Dynkin diagrams of the reduced simple root systems \cite{Bourbaki:2002} pp. 265--290, plates I--IX}{2.25cm}{2.5cm} -\docsvlist{A{},C{},D{},E6,E7,E8,F4,G2} +\docsvlist{A{},B{},C{},D{},E6,E7,E8,F4,G2} \end{dynkinTable} @@ -398,6 +397,7 @@ Optionally, you can add label directions to say where to put each label relative \begin{tcblisting}{title={The \texttt{foreach} notation I}} \dynkin[labels={1,3,...,7}]A9 \end{tcblisting} +\newpage \begin{tcblisting}{title={The \texttt{foreach} notation II}} \dynkin[labels={,\alpha_2,\alpha_...,\alpha_7}]A7 \end{tcblisting} @@ -631,12 +631,25 @@ For extended diagrams, this list starts at \(0\)-offset. edge length=.75cm, edge/.style={blue!50,thick}, arrow width=2mm, - arrow style={red,width=2mm,line width=1pt}]{F}{4} + arrow style={red,width=2mm,line width=1pt}]F4 +\end{tcblisting} +\begingroup +\tikzset{/Dynkin diagram,edge length=1cm,root radius=1mm,edge/.style=thick} +\begin{tcblisting}{title={Popular arrow shapes. These mess with nonwhite backgrounds, but are prettier than the default shape.}} +\begin{tabular}{rcc} + default&\dynkin G2 &\dynkin F4\\ +Bourbaki&\dynkin[Bourbaki arrow]G2&\dynkin[Bourbaki arrow]F4\\ + bird&\dynkin[bird arrow]G2 &\dynkin[bird arrow]F4 +\end{tabular} \end{tcblisting} -\begin{tcblisting}{title={Arrow shapes}} +\endgroup +Use \verb!\tikzset{/Dynkin diagram,Bourbaki arrow}! to force all arrows to have Bourbaki style throughout your document. +\begin{tcblisting}{title={Other arrow shapes}} \dynkin[edge length=.5cm, arrow width=2mm, arrow shape/.style={-{Stealth[blue,width=2mm]}}]F4 +\dynkin[edge length=1cm, + arrow shape/.style={-{Bourbaki[length=7pt]}}]F4 \end{tcblisting} \begin{tcblisting}{title={Edge lengths}} The Dynkin diagram of \(A_3\) is \dynkin[edge length=1.2]A3 @@ -650,6 +663,7 @@ The Dynkin diagram of \(A_3\) is \dynkin[edge length=1.2]A3 \dynkin[mark=x]E8 \dynkin[mark=X]E8 \end{tcblisting} + At the moment, you can only use: \par\noindent\begin{tabular}{>{\ttfamily}ccl} * &\dynkin[mark=*]A1& solid dot \\ @@ -675,7 +689,6 @@ The parabolic subgroup \(E_{8,124}\) is \dynkin[parabolic=124,x/.style={brown,ve \dynkin[arrows=false]F4 \dynkin[arrows=false]G2 \end{tcblisting} -\newpage \begin{tcblisting}{title={Reverse arrows}} \dynkin[reverse arrows]F4 \dynkin[reverse arrows]G2 @@ -715,6 +728,7 @@ The parabolic subgroup \(E_{8,124}\) is \dynkin[parabolic=124,x/.style={brown,ve \draw[black] (root 2) circle (.05cm); \end{dynkinDiagram} \end{tcblisting} +\newpage \begin{tcblisting}{title={Draw curves between the roots}} \begin{dynkinDiagram}[label]E8 \draw[very thick, black!50,-latex] @@ -765,8 +779,6 @@ reverse arrows]G2 \ClassicalLieSuperalgebras[.07cm]{We need a slightly larger root radius parameter to distinguish the tensor product symbols from the solid dots.} -\newpage - \ClassicalLieSuperalgebras{Here we see the problem with using the default root radius parameter, which is too small for tensor product symbols.} @@ -916,7 +928,7 @@ D_4 & \end{tcblisting} Default is Bourbaki. Sources are Adams \cite{Adams:1996} p. 56--57, Bourbaki \cite{Bourbaki:2002} p. pp. 265--290 plates I-IX, Carter \cite{Carter:2005} p. 540--609, Dynkin \cite{Dynkin:1952}, Kac \cite{Kac:1990} p. 43. -\newpage + \NewDocumentCommand\tablerow{mm}% {% #1_{#2}& @@ -949,6 +961,7 @@ The marks are set down in order according to the current root ordering: \dynkin[label,ordering=Carter]E{*otxXOt*} \dynkin[label,ordering=Kac]E{*otxXOt*} \end{tcblisting} +\newpage \begin{tcblisting}{title={Convert between orderings}} \newcount\r \dynkinOrder E8.Carter::6->Bourbaki.{\r} @@ -973,25 +986,26 @@ cells={nodes={anchor=center}}] \end{tikzcd} \end{tcblisting} +\newpage + \begin{filecontents*}{hermitian-symmetric-spaces.tex} \NewDocumentCommand\HSS{mommm} {#1&\IfNoValueTF{#2}{\dynkin{#3}{#4}}{\dynkin[parabolic=#2]{#3}{#4}}\\} +\RenewDocumentCommand\do{m}{\HSS #1} \renewcommand*{\arraystretch}{1.5} \begin{longtable} {>{\columncolor[gray]{.9}}>$l<$>{\columncolor[gray]{.9}}>$l<$>{\columncolor[gray]{.9}}l} -\caption{The Hermitian symmetric spaces}\endfirsthead -\caption{\dots continued}\\ \endhead -\caption{continued \dots}\\ \endfoot -\endlastfoot -\HSS{A_n}A{**.*x*.**}{Grassmannian of $k$-planes in $\C{n+1}$} -\HSS{B_n}[1]B{}{$(2n-1)$-dimensional hyperquadric, i.e. the variety of null lines in $\C{2n+1}$} -\HSS{C_n}[16]C{}{space of Lagrangian $n$-planes in $\C{2n}$} -\HSS{D_n}[1]D{}{$(2n-2)$-dimensional hyperquadric, i.e. the variety of null lines in $\C{2n}$} -\HSS{D_n}[32]D{}{one component of the variety of maximal dimension null subspaces of $\C{2n}$} -\HSS{D_n}[16]D{}{the other component} -\HSS{E_6}[1]E6{complexified octave projective plane} -\HSS{E_6}[32]E6{its dual plane} -\HSS{E_7}[64]E7{the space of null octave 3-planes in octave 6-space} +\caption{The Hermitian symmetric spaces}\endhead\endfoot\endlastfoot +\docsvlist{% +{{A_n}A{**.*x*.**}{Grassmannian of $k$-planes in $\C{n+1}$}}, +{{B_n}[1]B{}{$(2n-1)$-dimensional quadric hypersurface}}, +{{C_n}[16]C{}{space of Lagrangian $n$-planes in $\C{2n}$}}, +{{D_n}[1]D{}{$(2n-2)$-dimensional quadric hypersurface}}, +{{D_n}[32]D{}{component of maximal null subspaces of $\C{2n}$}}, +{{D_n}[16]D{}{the other component}}, +{{E_6}[1]E6{complexified octave projective plane}}, +{{E_6}[32]E6{its dual plane}}, +{{E_7}[64]E7{the space of null octave 3-planes in octave 6-space}}} \end{longtable} \end{filecontents*} \begingroup @@ -999,6 +1013,7 @@ cells={nodes={anchor=center}}] \endgroup \VerbatimInput{hermitian-symmetric-spaces.tex} +\newpage \section{Extended Dynkin diagrams} \begin{tcblisting}{title={Extended Dynkin diagrams}} @@ -1013,6 +1028,7 @@ The extended Dynkin diagrams are also described in the notation of Kac \cite{Kac \begin{dynkinTable}{The Dynkin diagrams of the extended simple root systems}{3cm}{5cm} \docsvlist{A{1},A{},B{},C{},D{},E6,E7,E8,F4,G2} \end{dynkinTable} +\newpage \begin{tcblisting}{title={Directed edges}} \dynkin[% edge length=.75cm, @@ -1127,6 +1143,7 @@ The \(D^{(1)}_{\ell}\) diagrams can be folded on their left end and separately o \dynkin[fold right]D[1]{} \ \dynkin[fold]D[1]{} \end{tcblisting} +\newpage We have to be careful about the 4-ply foldings of \(D^{(1)}_{2\ell}\), for which we can have two different patterns, so by default, the package only draws as much as it can without distinguishing the two: \begin{tcblisting}{title={Default \(D^{(1)}_{2\ell}\) and the two ways to finish it}} \dynkin[ply=4]D[1]{****.*****.*****}% @@ -1303,6 +1320,7 @@ We can then connect the two with folding edges: \end{pgfonlayer} \end{dynkinDiagram} \end{tcblisting} +\newpage The following diagrams arise in the Satake diagrams of the pseudo-Riemannian symmetric spaces \cite{Baba:2009}. \begin{tcblisting}{} \pgfkeys{/Dynkin diagram,edge length=.5cm,fold radius=.5cm} @@ -1311,33 +1329,25 @@ The following diagrams arise in the Satake diagrams of the pseudo-Riemannian sym \node (a) at (-.3,-.4){}; \dynkin[name=2,at=(a)]A{IIIb} \begin{pgfonlayer}{Dynkin behind} - \foreach \i in {1,...,7}% - {% + \foreach \i in {1,...,7}{ \draw[/Dynkin diagram/fold style] - ($(1 root \i)$) - -- - ($(2 root \i)$);% - }% + ($(1 root \i)$) -- ($(2 root \i)$);} \end{pgfonlayer} \end{tikzpicture} \end{tcblisting} \begin{tcblisting}{} \pgfkeys{/Dynkin diagram, -edge length=.75cm, -edge/.style={draw=example-color,double=black,very thick}} + edge length=.75cm, + edge/.style={draw=example-color,double=black,very thick}} \begin{tikzpicture} - \foreach \d in {1,...,4} - { + \foreach \d in {1,...,4}{ \node (current) at ($(\d*.05,\d*.3)$){}; - \dynkin[name=\d,at=(current)]D{oo.oooo} - } + \dynkin[name=\d,at=(current)]D{oo.oooo}} \begin{pgfonlayer}{Dynkin behind} - \foreach \i in {1,...,6}% - {% - \draw[/Dynkin diagram/fold style] ($(1 root \i)$) -- ($(2 root \i)$);% - \draw[/Dynkin diagram/fold style] ($(2 root \i)$) -- ($(3 root \i)$);% - \draw[/Dynkin diagram/fold style] ($(3 root \i)$) -- ($(4 root \i)$);% - }% + \newcommand\df[2]{ + \draw[/Dynkin diagram/fold style] + ($(#1 root \i)$) -- ($(#2 root \i)$);} + \foreach \i in {1,...,6}{\df{1}{2}\df{2}{3}\df{3}{4}} \end{pgfonlayer} \end{tikzpicture} \end{tcblisting} @@ -1629,32 +1639,21 @@ Below we draw the Vogan diagrams of some affine Lie superalgebras \cite{Ransingh \section{Example: the complex simple Lie algebras} \begin{filecontents*}{simple-lie-algebras.tex} -\NewDocumentEnvironment{bunch}{}% -{ +\NewDocumentEnvironment{bunch}{}{ \renewcommand*{\arraystretch}{1} \begin{array}{@{}ll@{}} \\ \midrule }{ - \\ \midrule\end{array} -} + \\ \midrule\end{array}} \small -\NewDocumentCommand\nct{mm} -{ - \newcolumntype{#1}{>{\columncolor[gray]{.9}}>{$}m{#2cm}<{$}} -} -\nct{G}{.3} -\nct{J}{2.1} -\nct{K}{3} -\nct{R}{3.7} -\nct{S}{3} +\NewDocumentCommand\nct{mm}{ + \newcolumntype{#1}{>{\columncolor[gray]{.9}}>{$}m{#2cm}<{$}}} +\nct{G}{.3}\nct{J}{2.1}\nct{K}{3}\nct{R}{3.7}\nct{S}{3} \NewDocumentCommand\LieG{}{\mathfrak{g}} -\NewDocumentCommand\W{om} -{ +\NewDocumentCommand\W{om}{ \ensuremath{ \mathbb{Z}^{#2} - \IfValueT{#1}{/\left<#1\right>} - } -} + \IfValueT{#1}{/\left<#1\right>}}} \renewcommand*{\arraystretch}{1.5} \NewDocumentCommand\quo{}{\text{quotient of } E_8} \begin{longtable}{@{}GJKRS@{}} @@ -1764,22 +1763,18 @@ G_2& line cap=round, line width=1mm, shorten <=1mm, - shorten >=1mm} -} + shorten >=1mm}} \newcommand\catholic[2]{ - \draw[big arrow,green!25!white] (root #1) to (root #2); -} + \draw[big arrow,green!25!white] (root #1) to (root #2);} \newcommand\protestant[2]{ \begin{scope}[transparency group, opacity=.25] \draw[big arrow,orange] (root #1) to (root #2); - \end{scope} -} + \end{scope}} \begin{dynkinDiagram}[% edge length=1.2cm, indefinite edge/.style={ thick, - loosely dotted - }, + loosely dotted}, labels*={0,1,2,3,\ell-3,\ell-2,\ell-1,\ell}] D[1]{} \catholic 06\catholic 17 @@ -1858,6 +1853,10 @@ The environment syntax is \verb!\begin{dynkinDiagram}! followed by the same para & whether to draw the arrows that arise along the edges \\ \optionLabel{backwards}{\truefalse}{false} & whether to reverse right to left \\ +\optionLabel{bird arrow}{\truefalse}{false} +& whether to use bird style arrows in \(G_2,F_4\).\\ +\optionLabel{Bourbaki arrow}{\truefalse}{false} +& whether to use Bourbaki style arrows in \(G_2,F_4\). \\ \optionLabel{ceref}{\truefalse}{false} & whether to draw roots in a ``ceref'' style \\ \optionLabel{Coxeter}{\truefalse}{false} diff --git a/Master/texmf-dist/tex/latex/dynkin-diagrams/dynkin-diagrams.sty b/Master/texmf-dist/tex/latex/dynkin-diagrams/dynkin-diagrams.sty index df3bc2ef693..baebba3f354 100644 --- a/Master/texmf-dist/tex/latex/dynkin-diagrams/dynkin-diagrams.sty +++ b/Master/texmf-dist/tex/latex/dynkin-diagrams/dynkin-diagrams.sty @@ -1,6 +1,6 @@ % The Dynkin Diagrams package. % -% Version 3.141592653589793 +% Version 3.141 592 653 589 793 2 % % This package draws Dynkin diagrams in LaTeX % documents, using the TikZ package. @@ -13,7 +13,7 @@ % Released under the LaTeX Project Public License v1.3c or later, see % http://www.latex-project.org/lppl.txt \NeedsTeXFormat{LaTeX2e}[1994/06/01] -\ProvidesPackage{dynkin-diagrams}[2021/03/31 Dynkin diagrams] +\ProvidesPackage{dynkin-diagrams}[2021/04/04 Dynkin diagrams] \RequirePackage{tikz} \RequirePackage{xstring} \RequirePackage{xparse} @@ -2067,6 +2067,18 @@ at/.default = {(0,0)}, backwards/.is if = dynkin@is@backwards, backwards = false, + bird-arrow/.style = { + arrow shape/.style={-{bird[length=1.25*\dynkin@root@radius]}}, + }, + bird arrow/.style = { + arrow shape/.style={-{bird[length=1.25*\dynkin@root@radius]}}, + }, + Bourbaki-arrow/.style={ + arrow shape/.style={-{Bourbaki[length=2*\dynkin@root@radius]}}, + }, + Bourbaki arrow/.style = { + arrow shape/.style={-{Bourbaki[length=2*\dynkin@root@radius]}}, + }, Coxeter/.is if = dynkin@Coxeter, Coxeter=false, double edges/.style = { @@ -5561,5 +5573,64 @@ [\dynkin@error@series]% }% +%% An arrow type for drawing arrows in G2 and F4 diagrams: +\pgfdeclarearrow{ +name = Bourbaki, +parameters = { \the\pgfarrowlength }, +setup code = {}, +drawing code = { + \pgfsetdash{}{0pt} % do not dash + \pgfsetroundjoin % fix join + \pgfsetroundcap % fix cap + \pgfsetlinewidth{4\pgflinewidth} + \pgfsetstrokecolor{white} + \pgfpathmoveto{\pgfpoint{-.75\pgfarrowlength}{.75\pgfarrowlength}} + \pgfpathlineto{\pgfpoint{0}{0}} + \pgfpathlineto{\pgfpoint{-.75\pgfarrowlength}{-.75\pgfarrowlength}} + \pgfusepathqstroke + \pgfsetlinewidth{.25\pgflinewidth} + \pgfsetstrokecolor{black} + \pgfpathmoveto{\pgfpoint{-.75\pgfarrowlength}{.75\pgfarrowlength}} + \pgfpathlineto{\pgfpoint{0}{0}} + \pgfpathlineto{\pgfpoint{-.75\pgfarrowlength}{-.75\pgfarrowlength}} + \pgfusepathqstroke +}, +defaults = { length = 2*\dynkin@root@radius } +} + +%% An arrow type for drawing arrows in G2 and F4 diagrams: +\pgfdeclarearrow{ +name = bird, +parameters = { \the\pgfarrowlength }, +setup code = {}, +drawing code = { + \pgfsetdash{}{0pt} % do not dash + \pgfsetroundjoin % fix join + \pgfsetroundcap % fix cap +\begin{pgfscope} + \pgfpathmoveto{\pgfpoint{-1.25\pgfarrowlength}{-2.5\pgfarrowlength}} + \pgfpathlineto{\pgfpoint{0}{-2.5\pgfarrowlength}} + \pgfpathlineto{\pgfpoint{0}{2.5\pgfarrowlength}} + \pgfpathlineto{\pgfpoint{-1.25\pgfarrowlength}{2.5\pgfarrowlength}} + \pgfpathlineto{\pgfpoint{-1.25\pgfarrowlength}{-2.5\pgfarrowlength}} +\pgfusepathqclip + \pgfsetlinewidth{4\pgflinewidth} + \pgfsetstrokecolor{white} +% \pgfsetstrokeopacity{.75} + \pgfpathmoveto{\pgfpoint{0}{0}} + \pgfpatharc{250}{190}{1.4\pgfarrowlength} + \pgfpathmoveto{\pgfpoint{0}{0}} + \pgfpatharc{110}{170}{1.4\pgfarrowlength} + \pgfusepathqstroke +\end{pgfscope} + \pgfsetstrokecolor{black} + \pgfpathmoveto{\pgfpoint{0}{0}} + \pgfpatharc{250}{190}{1.4\pgfarrowlength} + \pgfpathmoveto{\pgfpoint{0}{0}} + \pgfpatharc{110}{170}{1.4\pgfarrowlength} + \pgfusepathqstroke +}, +defaults = { length = 1.25*\dynkin@root@radius } +} \endinput |