%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% polygonesCoordinate\pst-coxcoor_doc.tex
% 7 Authors: J.-G. Luque and M. Luque
% 8 Purpose: Documentation for pst-coxcoor
% 9 Created: 02/02/2008
% 10 License: LGPL
% 11 Project: PST-Cox V1.00
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% polygonesCoordinate\Gallery.tex
% Authors: J.-G. Luque and M. Luque
% Purpose: Demonstration of the library pst-coxcoor
% Created: 02/02/2008
% License: LGPL
% Project: PST-Cox V1.00
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Copyright © 2008 Jean-Gabriel Luque, Manuel Luque.
% This work may be distributed and/or modified under the condition of
% the Lesser GPL.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% This file is part of PST-Cox V1.00.
%
% PST-Cox V1.00 is free software: you can redistribute it and/or modify
% it under the terms of the Lesser GNU General Public License as published by
% the Free Software Foundation, either version 3 of the License, or
% (at your option) any later version.
%
% PST-Cox V1.00 is distributed in the hope that it will be useful,
% but WITHOUT ANY WARRANTY; without even the implied warranty of
% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
% Lesser GNU General Public License for more details.
%
% You should have received a copy of the Lesser GNU General Public License
% along with PST-Cox V1.00. If not, see .
%
\documentclass[a4paper]{article}
\usepackage[latin1]{inputenc}%
\usepackage[margin=2cm]{geometry}
\usepackage{pst-coxcoor}
\usepackage{multido}
\usepackage{amssymb}
\usepackage{amsfonts}
\usepackage{amsmath}
\usepackage{graphics}
% d\'emonstration
% JG Luque 12 août 2003
\newtheorem{example}{Example}[section]
\newcount\ChoicePolytope
\def\C{{\mathbb C}}
\title{The Library {\tt pst-coxcoor}}
\author{Jean-Gabriel \textsc{Luque}\footnote{Universit\'e Paris-Est, Laboratoire d'informatique
de l'Institut-Gaspard Monge, Jean-Gabriel.Luque@univ-mlv.fr} and
Manuel
\textsc{Luque}\footnote{mluque5130@aol.com}}
\begin{document}
\maketitle
\begin{abstract}
We describe the {\tt LaTex} library {\tt pst-coxcoor} devoted to
draw regular complex polytopes.
\end{abstract}
\section{Introduction}
Inspired by the dissertation of G.C. Shephard \cite{Sh}, Coxeter
toke twenty years to write his most famous book {\em Regular Complex Polytopes} \cite{Cox}. But its
interest for the polytope dates from the beginning of his career as
shown his numerous publications on the subject (reader can refer to
\cite{Reg} or \cite{Kalei}). According to the preface of
\cite{Cox}, the term of complex polytopes is due to D.M.Y.
Sommerville \cite{Som}. A complex polytope may have more than two
vertices on an edge (and in particular the polygons may have more
than two edges at a vertice). It is a finite set of flags of subspaces in $\C^n$
with certain constraints
which will be not developed here \footnote{For a precise
definition, see \cite{Cox} Ch12}.
In fact, a complex polytope can be generated from one vertice by a finite number of pseudo-reflections.
More precisely, as for the classical solids, it
can be constructed from an arrangement of mirrors,
considering a point in the intersection of all but one the mirrors
and computing the orbit of this point by the pseudo-reflections generated by the mirrors. In the
case of the real polytopes, one uses classical reflections which are
involutions. It is not the case for general complex polytopes, since
a reflection may include a component which is a rotation.
The classification of the complex polytopes is due to G.C. Shephard
\cite{Sh} and is closely related to the classification of the
complex unitary reflection groups \cite{ST}. Many of these groups
are fundamental in geometry. For example, the polytope Hessian is a
$3$-dimensional polytope whose symmetry group is generated by $3$
pseudo-reflections $s_1$, $s_2$ and $s_3$ verifying
$s_1^3=s_2^3=s_3^3=Id$, $s_1s_2s_1=s_2s_1s_2$, $s_2s_3s_2=s_3s_2s_3$
and $s_1s_3=s_3s_1$ and which is related to the determination of the
nine inflection points of a cubic curve and the 27 lines in a cubic
plane.\\
The library described here is a {\tt LaTex} package for drawing two
dimensional projections of regular complex polytopes. The
coordinates of the vertices, edges, faces... of the projections have
been pre-calculated using a formal computer system.\\
The polytopes considered are exceptional polytopes, for drawing
infinite series use the package {\it pst-coxeterp}.\\
Note that this package have already been used by one of the author
to illustrate an article \cite{qutrit} in collaboration with E. Briand,
J.-Y. Thibon and F. Verstraete and in his ``{\it habilitation \`a
diriger les recherches}'' \cite{Luque}.
\section{Install {\tt pst-coxcoor}}
The package contains three files: A latex style file {\tt
pst-coxcoor.sty} which call the latex file {\tt pst-coxcoor.tex}
containing the description of the macro {\tt
$\setminus$CoxeterCoordinates} and a data file {\tt pst-coxcoor.pro}
which contains the list of the coordinates of each polytope.\\ The
installation is very simple. It suffices to
copy the files {\tt pst-coxcoor.sty}, {\tt pst-coxcoor.tex} and\\
{\tt pst-coxcoor.pro} in the appropriate directories.
\begin{example}\rm
The file {\tt pst-coxcoor.sty} may be copy in the directory \\ {\tt
c:/texmf/tex/latex/pst-coxcoor},\\
the file {\tt pst-coxcoor.tex} in\\
{\tt c:/texmf/tex/generic/pst-coxcoor}\\ and the file {\tt
pst-coxcoor.pro} in\\ {\tt c:/texmf/tex/dvips/pst-coxcoor}.
\end{example}
To use the package add the code
\begin{verbatim}
\usepackage{pst-coxcoor}}
\end{verbatim}
in the beginning of your LaTex-file.
\begin{example}\rm
\begin{verbatim}
\documentclass[a4paper]{article}
...
\usepackage{pst-coxcoor}
....
\end{verbatim}
\end{example}
The library needs the packages {\tt PSTrick} and {\tt pst-xkey}.
\section{Characteristics of the polytopes}
The polytope considered here are two, three or four
($\C$)-dimensional objects which generalizes the classical platonic
solids. They are constituted of vertices, edges, faces and cells
(four dimensional faces). The package contains only one macro {\tt $\setminus$CoxeterCoordinates}
which draws the vertices,
the edges, the centers of the edges\footnote{In general, for a complex polytope, the edges are
polygonal.}, the centers of the faces and the centers of the cells.
All the coordinates of the polytopes have been pre-computed and
stored in the file {\tt pst-coxcoor.pro}.
\subsection{List of the polytopes}
The parameter {\tt ichoice} contains the number identifying the
polytope.
\begin{example}
\rm Setting {\tt choice=9} makes the macro draw the (3 dimensional)
Hessian polytope which has $27$ vertices, $72$ triangular edges and
$27$ faces.
\[
\begin{pspicture}(-4,-4)(4,4)
\psset{unit=1.5cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=9] %
\end{pspicture}
\]
\begin{verbatim}
\begin{pspicture}(-4,-4)(4,4)
\psset{unit=1.5cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=9] %
\end{pspicture}
\end{verbatim}
\end{example}
There is $80$ pre-calculated polytopes in the file {\tt
pst-coxcoor.pro}. Almost all the complex regular polytopes up to the
dimension four have been computed. Only some starry polytopes in
dimension $4$ are not in the list. The following tableau contains
the list of the polytopes with their names in the notation of
Coxeter \cite{Cox}.
\[
\begin{array}{|c|c|c|}
\hline 2\{3\}3&3\{3\}3&3\{3\}3\\\hline
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=1cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=1] %
\end{pspicture}&
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=1cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=2] %
\end{pspicture}
&\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.7cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=3] %
\end{pspicture}\\\hline
{\tt choice=1}&{\tt choice=2}&{\tt choice=3}\\\hline
\end{array}\]
%%%%
\[
\begin{array}{|c|c|c|}\hline
3\{4\}2&3\{4\}4&3\{4\}3\\\hline
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.8cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=4] %
\end{pspicture}&
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.6cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=5] %
\end{pspicture}
&\begin{pspicture}(-2,-2)(2,2)
\psset{unit=1cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=6] %
\end{pspicture}\\\hline
{\tt choice=4}&{\tt choice=5}&{\tt choice=6}\\\hline
%%%%
\end{array}\]
%%%%
\[
\begin{array}{|c|c|c|}\hline
4\{3\}4&2\{4\}3\{3\}3&3\{3\}3\{3\}3\\\hline
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=1cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=7] %
\end{pspicture}&
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.8cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=8] %
\end{pspicture}
&\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.7cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=9] %
\end{pspicture}\\\hline
{\tt choice=7}&{\tt choice=8}&{\tt choice=9}\\\hline
\end{array}
\]
%%%
\[
\begin{array}{|c|c|c|}\hline
3\{3\}3\{4\}2&3\{3\}3\{3\}3\{3\}3&3\{8\}2\\\hline
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.7cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=10] %
\end{pspicture}&
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.6cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=11,drawcenters=false] %
\end{pspicture}
&\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.4cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=12] %
\end{pspicture}\\\hline
{\tt choice=10}&{\tt choice=11}&{\tt choice=12}\\\hline
\end{array}
\]
%%%%
%%%%
\[
\begin{array}{|c|c|c|}\hline
2\{8\}3&3\{5\}3&4\{4\}3\\\hline
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.4cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=13] %
\end{pspicture}&
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.6cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=14] %
\end{pspicture}
&\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.7cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=15] %
\end{pspicture}\\\hline
{\tt choice=13}&{\tt choice=14}&{\tt choice=15}\\\hline
\end{array}
\]
%%%
%%%
\[
\begin{array}{|c|c|c|}\hline
4\{3\}2&2\{3\}4&2\{6\}4\\\hline
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=1cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=16] %
\end{pspicture}&
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.6cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=17] %
\end{pspicture}
&\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.7cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=18] %
\end{pspicture}\\\hline
{\tt choice=16}&{\tt choice=17}&{\tt choice=18}\\\hline
\end{array}
\]
%%%%%
\[
\begin{array}{|c|c|c|}\hline
4\{6\}2&5\{3\}5&2\{10\}3\\\hline
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.7cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=19] %
\end{pspicture}&
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.6cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=20] %
\end{pspicture}
&\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.7cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=21] %
\end{pspicture}\\\hline
{\tt choice=19}&{\tt choice=20}&{\tt choice=21}\\\hline
\end{array}
\]
%%%%%
\[
\begin{array}{|c|c|c|}\hline
3\{10\}2&2\{5\}3&3\{5\}2\\\hline
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=1cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=22] %
\end{pspicture}&
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.5cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=23] %
\end{pspicture}
&\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.6cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=24] %
\end{pspicture}\\\hline
{\tt choice=22}&{\tt choice=23}&{\tt choice=24}\\\hline
\end{array}
\]
%%%%
\[
\begin{array}{|c|c|c|}\hline
2\{4\}3&2\{3\}2\{4\}3&3\{4\}2\{3\}2\\\hline
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=1cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=25] %
\end{pspicture}&
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.8cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=26] %
\end{pspicture}
&\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.7cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=27] %
\end{pspicture}\\\hline
{\tt choice=25}&{\tt choice=26}&{\tt choice=27}\\\hline
\end{array}
\]
%%%%
\[
\begin{array}{|c|c|c|}\hline
3\{4\}2\{3\}2\{3\}2&2\{3\}2\{3\}2\{4\}3&2\{3\}2\{5\}2\\\hline
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.6cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=28] %
\end{pspicture}&
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=1.3cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=29] %
\end{pspicture}
&\begin{pspicture}(-2,-2)(2,2)
\psset{unit=1cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=30] %
\end{pspicture}\\\hline
{\tt choice=28}&{\tt choice=29}&{\tt choice=30}\\\hline
\end{array}
\]
%%%%
\[
\begin{array}{|c|c|c|}\hline
2\{5\}2\{3\}2&2\{3\}2\{3\}2\{4\}2&2\{4\}2\{3\}2\{3\}2\\\hline
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=1cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=31] %
\end{pspicture}&
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=1cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=32] %
\end{pspicture}
&\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.7cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=33] %
\end{pspicture}\\\hline
{\tt choice=31}&{\tt choice=32}&{\tt choice=33}\\\hline
\end{array}
\]
%%%%
\[
\begin{array}{|c|c|c|}\hline
2\{3\}2\{4\}2\{3\}2&2\{3\}2\{3\}2\{5\}2&2\{5\}2\{3\}2\{3\}2\\\hline
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.7cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=34] %
\end{pspicture}&
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=1.3cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=35,drawcenters=false] %
\end{pspicture}
&\begin{pspicture}(-2,-2)(2,2)
\psset{unit=1.3cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=36,drawcenters=false] %
\end{pspicture}\\\hline
{\tt choice=34}&{\tt choice=35}&{\tt choice=36}\\\hline
\end{array}
\]
%%%%
%%%%
%%%%%
\[
\begin{array}{|c|c|c|}\hline
3\{\frac52\}3&5\{\frac52\}5&2\{\frac52\}3\\\hline
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.5cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=37] %
\end{pspicture}&
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.7cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=38] %
\end{pspicture}
&\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.8cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=39] %
\end{pspicture}\\\hline
{\tt choice=37}&{\tt choice=38}&{\tt choice=39}\\\hline
\end{array}
\]
%%%%%
\[
\begin{array}{|c|c|c|}\hline
3\{\frac52\}2&3\{\frac{10}3\}2&2\{\frac{103}\}3\\\hline
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=1cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=40] %
\end{pspicture}&
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=1.4cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=41] %
\end{pspicture}
&\begin{pspicture}(-2,-2)(2,2)
\psset{unit=1.2cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=42] %
\end{pspicture}\\\hline
{\tt choice=40}&{\tt choice=41}&{\tt choice=42}\\\hline
\end{array}
\]
%%%%%
\[
\begin{array}{|c|c|c|}\hline
3\{\frac83\}2&2\{\frac83\}3&5\{6\}2\\\hline
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=1.1 cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=43] %
\end{pspicture}&
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=1.2cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=44] %
\end{pspicture}
&\begin{pspicture}(-2,-2)(2,2)
\psset{unit=1.7cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=45] %
\end{pspicture}\\\hline
{\tt choice=43}&{\tt choice=44}&{\tt choice=45}\\\hline
\end{array}
\]
%%%%%
\[
\begin{array}{|c|c|c|}\hline
2\{6\}5&4\{\frac83\}3&3\{\frac83\}4\\\hline
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.7cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=46] %
\end{pspicture}&
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=1.2cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=47] %
\end{pspicture}
&\begin{pspicture}(-2,-2)(2,2)
\psset{unit=1.2cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=48] %
\end{pspicture}\\\hline
{\tt choice=46}&{\tt choice=47}&{\tt choice=48}\\\hline
\end{array}
\]
%%%%%
\[
\begin{array}{|c|c|c|}\hline
5\{5\}2&2\{5\}5&5\{\frac{10}3\}2\\\hline
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=1cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=49] %
\end{pspicture}&
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=1.2cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=50] %
\end{pspicture}
&\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.7cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=51] %
\end{pspicture}\\\hline
{\tt choice=49}&{\tt choice=50}&{\tt choice=51}\\\hline
\end{array}
\]
%%%%%
\[
\begin{array}{|c|c|c|}\hline
2\{\frac{10}3\}5&5\{3\}2&2\{3\}5\\\hline
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.6cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=52] %
\end{pspicture}&
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.5cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=53] %
\end{pspicture}
&\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.7cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=54] %
\end{pspicture}\\\hline
{\tt choice=52}&{\tt choice=53}&{\tt choice=54}\\\hline
\end{array}
\]
%%%
%%%%%
\[
\begin{array}{|c|c|c|}\hline
5\{4\}2&2\{4\}5&5\{\frac{10}3\}3\\\hline
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.8cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=55] %
\end{pspicture}&
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=1cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=56] %
\end{pspicture}
&\begin{pspicture}(-2,-2)(2,2)
\psset{unit=1.3cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=57] %
\end{pspicture}\\\hline
{\tt choice=55}&{\tt choice=56}&{\tt choice=57}\\\hline
\end{array}
\]
%%%%
%%%%%
\[
\begin{array}{|c|c|c|}\hline
3\{\frac{10}3\}5&5\{4\}3&3\{4\}5\\\hline
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.6cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=58] %
\end{pspicture}&
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.6cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=59] %
\end{pspicture}
&\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.25cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=60] %
\end{pspicture}\\\hline
{\tt choice=58}&{\tt choice=59}&{\tt choice=60}\\\hline
\end{array}
\]
%%%%%
\[
\begin{array}{|c|c|c|}\hline
5\{3\}3&3\{3\}5&5\{\frac52\}3\\\hline
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=1.2cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=61] %
\end{pspicture}&
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.7cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=62] %
\end{pspicture}
&\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.6cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=63] %
\end{pspicture}\\\hline
{\tt choice=61}&{\tt choice=62}&{\tt choice=63}\\\hline
\end{array}
\]
%%%%%
\[
\begin{array}{|c|c|c|}\hline
3\{\frac52\}5&2\{\frac52\}2\{3\}2&2\{3\}2\{\frac52\}2\\\hline
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.7cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=64] %
\end{pspicture}&
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=2cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=65] %
\end{pspicture}
&\begin{pspicture}(-2,-2)(2,2)
\psset{unit=3cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=66] %
\end{pspicture}\\\hline
{\tt choice=64}&{\tt choice=65}&{\tt choice=66}\\\hline
\end{array}
\]
%%%%%
\[
\begin{array}{|c|c|c|}\hline
2\{\frac52\}2\{3\}2&2\{5\}2\{\frac52\}2&2\{6\}3\\\hline
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=2.5cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=67] %
\end{pspicture}&
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=5cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=68] %
\end{pspicture}
&\begin{pspicture}(-2,-2)(2,2)
\psset{unit=2.5cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=69] %
\end{pspicture}\\\hline
{\tt choice=67}&{\tt choice=68}&{\tt choice=69}\\\hline
\end{array}
\]
%%%%%
\[
\begin{array}{|c|c|c|}\hline
3\{6\}2&2\{\frac52\}2\{3\}2\{3\}2&2\{3\}2\{3\}2\{\frac52\}2\\\hline
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=1.5cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=70] %
\end{pspicture}&
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.17cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=71] %
\end{pspicture}&
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=1.4cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=72] %
\end{pspicture}\\
\hline
{\tt choice=70}&{\tt choice=71}&{\tt choice=72}\\\hline
\end{array}
\]
\[
\begin{array}{|c|c|c|}\hline
2\{3\}2\{\frac52\}2\{5\}2&2\{3\}2\{5\}2\{\frac52\}2&2\{\frac52\}2\{3\}2\{5\}2\\\hline
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.4cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=73] %
\end{pspicture}&
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=1.3cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=74] %
\end{pspicture}&
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.7cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=75] %
\end{pspicture}\\
\hline
{\tt choice=73}&{\tt choice=74}&{\tt choice=75}\\\hline
\end{array}
\]
%
\[
\begin{array}{|c|c|c|}\hline
2\{\frac52\}2\{5\}2\{3\}2&2\{5\}2\{3\}2\{\frac52\}2&2\{5\}2\{\frac52\}2\{3\}2\\\hline
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=1cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=76] %
\end{pspicture}&
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=1.3cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=77] %
\end{pspicture}&
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=1.3cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=78] %
\end{pspicture}\\
\hline
{\tt choice=76}&{\tt choice=77}&{\tt choice=78}\\\hline
\end{array}
\]
\[
\begin{array}{|c|c|c|}\hline
2\{5\}2\{\frac52\}2\{5\}2&2\{\frac525\}2\{5\}2\{\frac52\}2\\\hline
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=1cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=79] %
\end{pspicture}&
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.4cm,linewidth=0.01mm}
\CoxeterCoordinates[choice=80] %
\end{pspicture}\\
\hline
{\tt choice=79}&{\tt choice=80}\\\hline
\end{array}
\]
\subsection{The components of a polytope}
The library {\tt pst-coxcoor.sty} contains a macro for
drawing the vertices, the edges, the centers of the edges, the
centers of the faces and the centers of the cells of many
pre-calculated regular complex polytopes.
It is possible to choice which components of the polytope will be
drawn. It suffices to use the boolean parameters {\tt drawedges},
{\tt drawvertices}, {\tt drawcenters}, {\tt drawcentersface}, and
{\tt drawcenterscells}.
By default the values of the parameters {\tt
drawedges}, {\tt drawvertices}, {\tt drawcenters} are set to {\tt
true} and the values of {\tt drawcentersface} and {\tt
drawcenterscells} are set to {\tt false}.
\begin{example}
\rm By default, the vertices, the edges and the centers of the edges
are drawn but not the centers of the faces and the cells.
\[
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.7cm}
\CoxeterCoordinates[choice=28] %
\end{pspicture}
\]
\begin{verbatim}
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=1cm}
\CoxeterCoordinates[choice=28]
\end{pspicture}
\end{verbatim}
The macro does not draw the edges
\[
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.7cm}
\CoxeterCoordinates[choice=28,drawedges=false] %
\end{pspicture}
\]
\begin{verbatim}
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=1cm}
\CoxeterCoordinates[choice=28,drawedges=false]
\end{pspicture}
\end{verbatim}
or the vertices
\[
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.7cm}
\CoxeterCoordinates[choice=28,drawvertices=false] %
\end{pspicture}
\]
\begin{verbatim}
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=1cm}
\CoxeterCoordinates[choice=28,drawvertices=false]
\end{pspicture}
\end{verbatim}
or the centers of the edges.
\[
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.7cm}
\CoxeterCoordinates[choice=28,drawcenters=false] %
\end{pspicture}
\]
\begin{verbatim}
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=1cm}
\CoxeterCoordinates[choice=28,drawcenters=false]
\end{pspicture}
\end{verbatim}
Furthermore, one can draw the centers of the faces (when the
dimension of the polytope is at least 3)
\[
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.7cm}
\CoxeterCoordinates[choice=28,drawvertices=false,drawcenters=false,drawcentersfaces=true] %
\end{pspicture}
\]
\begin{verbatim}
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=1cm}
\CoxeterCoordinates[choice=28,drawvertices=false,drawcenters=false,drawcentersfaces=true]
\end{pspicture}
\end{verbatim}
and the centers of the cells (when the dimension of the polytope is
at least 4).
\[
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.7cm}
\CoxeterCoordinates[choice=28,drawvertices=false,drawcenters=false,drawcenterscells=true] %
\end{pspicture}
\]
\begin{verbatim}
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=1cm}
\CoxeterCoordinates[choice=28,drawvertices=false,drawcenters=false,drawcenterscells=true]
\end{pspicture}
\end{verbatim}
\end{example}
\section{Graphical parameters}
It is possible to change the graphical characteristics of a
polytope.\\
The size of the polytope depends on the parameter {\tt unit}.
\begin{example}
\rm
\[
\begin{pspicture}(-1,-1)(1,1)
\CoxeterCoordinates[choice=4,unit=0.3cm] %
\end{pspicture}
\begin{pspicture}(-2,-2)(2,2)
\CoxeterCoordinates[choice=4,unit=0.8cm] %
\end{pspicture}
\begin{pspicture}(-4,-4)(4,4)
\CoxeterCoordinates[choice=4,unit=2cm] %
\end{pspicture}
\]
\begin{verbatim}
\begin{pspicture}(-1,-1)(1,1)
\CoxeterCoordinates[choice=4,unit=0.3cm] %
\end{pspicture}
\begin{pspicture}(-2,-2)(2,2)
\CoxeterCoordinates[choice=4,unit=0.8cm] %
\end{pspicture}
\begin{pspicture}(-4,-4)(4,4)
\CoxeterCoordinates[choice=4,unit=2cm] %
\end{pspicture}
\end{verbatim}
\end{example}
Classically, one can modify the color and the width of the edges
using the parameter {\tt linecolor} and {\it linewidth}.
\begin{example}
\rm
\[
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.8,linewidth=0.01,linecolor=red}
\CoxeterCoordinates[choice=4] %
\end{pspicture}
\begin{pspicture}(-2,-2)(2,2)
\CoxeterCoordinates[choice=4,linewidth=0.1] %
\end{pspicture}
\]
\begin{verbatim}
\begin{pspicture}(-2,-2)(2,2)
\psset{unit=0.8,linewidth=0.01,linecolor=red}
\CoxeterCoordinates[choice=4] %
\end{pspicture}
\begin{pspicture}(-2,-2)(2,2)
\CoxeterCoordinates[choice=4,linewidth=0.1] %
\end{pspicture}
\end{verbatim}
\end{example}
The color, the style and the size of the vertices can be modify
using the parameters {\tt colorVertices}, {\tt styleVertices} and
{\tt sizeVertices}. The style of the vertices can be chosen in the
classical dot styles.
\begin{example}
\rm
\[
\begin{pspicture}(-2,-2)(2,2)
\CoxeterCoordinates[choice=4,colorVertices=blue,styleVertices=pentagon,sizeVertices=0.2] %
\end{pspicture}
\begin{pspicture}(-2,-2)(2,2)
\CoxeterCoordinates[choice=4,colorVertices=magenta,sizeVertices=0.1,styleVertices=triangle] %
\end{pspicture}
\begin{pspicture}(-2,-2)(2,2)
\CoxeterCoordinates[choice=4,colorVertices=red,styleVertices=+,sizeVertices=0.2] %
\end{pspicture}
\]
\begin{verbatim}
\begin{pspicture}(-2,-2)(2,2)
\CoxeterCoordinates[choice=4,colorVertices=blue,styleVertices=pentagon,sizeVertices=0.2] %
\end{pspicture}
\begin{pspicture}(-2,-2)(2,2)
\CoxeterCoordinates[choice=4,colorVertices=magenta,sizeVertices=0.1,styleVertices=triangle] %
\end{pspicture}
\begin{pspicture}(-2,-2)(2,2)
\CoxeterCoordinates[choice=4,colorVertices=red,styleVertices=+,sizeVertices=0.2] %
\end{pspicture}
\end{verbatim}
\end{example}
The color, the style and the size of the centers of the edges can be
modify using the parameters {\tt colorCenters}, {\tt styleCenters}
and {\tt sizeCenters}.
\begin{example}
\rm
\[
\begin{pspicture}(-2,-2)(2,2)
\CoxeterCoordinates[choice=4,colorCenters=blue,styleCenters=pentagon,sizeCenters=0.2] %
\end{pspicture}
\begin{pspicture}(-2,-2)(2,2)
\CoxeterCoordinates[choice=4,colorCenters=magenta,sizeCenters=0.1,styleCenters=triangle] %
\end{pspicture}
\begin{pspicture}(-2,-2)(2,2)
\CoxeterCoordinates[choice=4,colorCenters=red,styleCenters=+,sizeCenters=0.2] %
\end{pspicture}
\]
\begin{verbatim}
\begin{pspicture}(-2,-2)(2,2)
\CoxeterCoordinates[choice=4,colorCenters=blue,styleCenters=pentagon,sizeCenters=0.2] %
\end{pspicture}
\begin{pspicture}(-2,-2)(2,2)
\CoxeterCoordinates[choice=4,colorCenters=magenta,sizeCenters=0.1,styleCenters=triangle] %
\end{pspicture}
\begin{pspicture}(-2,-2)(2,2)
\CoxeterCoordinates[choice=4,colorCenters=red,styleCenters=+,sizeCenters=0.2] %
\end{pspicture}
\end{verbatim}
\end{example}
The color, the style and the size of the centers of the faces can be
modify using the parameters {\tt colorCentersFaces}, {\tt
styleCentersFaces} and {\tt sizeCentersFaces}.
\begin{example}
\rm
\[\psset{unit=0.8cm,drawcentersfaces=true}
\begin{pspicture}(-3,-3)(3,3)
\CoxeterCoordinates[choice=33,styleCentersFaces=pentagon,sizeCentersFaces=0.2] %
\end{pspicture}
\begin{pspicture}(-3,-3)(3,3)
\CoxeterCoordinates[choice=33,colorCentersFaces=magenta,sizeCentersFaces=0.1] %
\end{pspicture}
\begin{pspicture}(-3,-3)(3,3)
\CoxeterCoordinates[choice=33,colorCentersFaces=red,styleCentersFaces=+] %
\end{pspicture}
\]
\begin{verbatim}
\psset{unit=0.8cm,drawcentersfaces=true}
\begin{pspicture}(-3,-3)(3,3)
\CoxeterCoordinates[choice=33,styleCentersFaces=pentagon,sizeCentersFaces=0.2] %
\end{pspicture}
\begin{pspicture}(-3,-3)(3,3)
\CoxeterCoordinates[choice=33,colorCentersFaces=magenta,sizeCentersFaces=0.1] %
\end{pspicture}
\begin{pspicture}(-3,-3)(3,3)
\CoxeterCoordinates[choice=33,colorCentersFaces=red,styleCentersFaces=+] %
\end{pspicture}\end{verbatim}
\end{example}
The color, the style and the size of the centers of the cells can be
modify using the parameters {\tt colorCentersCells}, {\tt
styleCentersCells} and {\tt sizeCentersCells}.
\begin{example}
\rm
\[\psset{unit=0.8cm,drawcenterscells=true,drawcentersfaces=false}
\begin{pspicture}(-3,-3)(3,3)
\CoxeterCoordinates[choice=33,styleCentersCells=pentagon,sizeCentersCells=0.2] %
\end{pspicture}
\begin{pspicture}(-3,-3)(3,3)
\CoxeterCoordinates[choice=33,colorCentersCells=magenta,sizeCentersCells=0.1] %
\end{pspicture}
\begin{pspicture}(-3,-3)(3,3)
\CoxeterCoordinates[choice=33,colorCentersCells=red,styleCentersCells=+] %
\end{pspicture}
\]
\begin{verbatim}
\psset{unit=0.8cm,drawcenterscells=true,drawcentersfaces=false}
\begin{pspicture}(-3,-3)(3,3)
\CoxeterCoordinates[choice=33,styleCentersCells=pentagon,sizeCentersCells=0.2] %
\end{pspicture}
\begin{pspicture}(-3,-3)(3,3)
\CoxeterCoordinates[choice=33,colorCentersCells=magenta,sizeCentersCells=0.1] %
\end{pspicture}
\begin{pspicture}(-3,-3)(3,3)
\CoxeterCoordinates[choice=33,colorCentersCells=red,styleCentersCells=+] %
\end{pspicture}\end{verbatim}
\end{example}
\section{How to modify or add a polytope to the Library}
The polytopes described in this library are the regular complex
polytopes as considered by Coxeter \cite{Cox}. But, in fact, the
same library can be used to draw any kind of polytopes (not
necessarily regular) if the user add the datas corresponding to the
vertices, the edges, the faces and the cells of the polytopes.
To add a polytope, one has to modify the file {\tt
pst-coxeterp.pro}. This file contains the list of the polytopes
which can be drawn with the macro {\tt CoxeterCoordinates}.
For each polytope, the datas are organized as follows
\begin{verbatim}
/cox+name+datas{% The name of the Polytope
/ListePoints [
% List of the edges
] def
/ListeFaces [
% List of the centers of the faces
] def
/ListeCells [
% List of the centers of the cells
] def
/NbrFaces nf def % nb of faces
/NbrCells nc def % nb of cells
/NbrEdges ne def % nb of edges
/NbrVerticesInAnEdge nv def % nb of vertices per edge
} def
\end{verbatim}
The list {\tt /ListePoints} contains the description of the edges
of the polytope. The variable {\tt /NbrEdges} contains the number
of edges and the variables {\tt /NbrVerticesInAnEdges} contains the
number of vertices by edges. An edge is defined by its {\tt
/NbrVerticesInAnEdges} vertices. The list {\tt /ListePoints} of the
edges is the list of all edges described by the sequence of their
vertices.
\begin{example}\rm
Let us explain the structure on the example of the complex polytope
$3\{4\}2$.
\begin{verbatim}
/cox342datas{%
/ListePoints [
[-1.054405725 .6087614291]
[-1.717232873 -.9914448614]
[0 -.7653668647]
[1.054405725 .6087614291]
[1.717232873 -.9914448614]
[0 -.7653668647]
[-.6628271482 .3826834323]
[0 -1.217522858]
[-1.717232873 -.9914448614]
[0 1.982889723]
[.6628271482 .3826834323]
[-1.054405725 .6087614291]
[.6628271482 .3826834323]
[0 -1.217522858]
[1.717232873 -.9914448614]
[0 1.982889723]
[-.6628271482 .3826834323]
[1.054405725 .6087614291]
] def
/ListeFaces [
[0 0]
] def
/NbrFaces 1 def
/ListeCells [
[0 0]
] def
/NbrCells 1 def
/NbrEdges 6 def
/NbrVerticesInAnEdge 3 def
} def
\end{verbatim}
This is a complex polygon and the number $3$ indicates
that each edges is triangular and contains $3$ vertices. Hence, the
list {\tt /ListePoints} is a sequence of triplet of points.
For example, the first edge is constituted by the three vertices {\tt [-1.054405725 .6087614291] [-1.717232873 -.9914448614]
[0 -.7653668647]}.
Here, since there is $6$ edges of $3$ vertices, the list {\tt
/ListePoints} contains $18$ points with two coordinates.\\ Note
that, since $3\{4\}2$ is a polygon, it has neither faces nor cells.
In such a case, the variables {\tt ListeFaces} and {\tt ListeCells}
must contain only one point {\tt [0 0]} and the variables {\tt
/NbrFaces} and {\tt /NbrCells} contain $1$.
\end{example}
When the polytope has more than two dimensions, it has faces. The
number of faces is given by the variable {\tt /NbrFaces} and the
variable {\tt /ListeFaces} contains the list of the centers of the
faces.\\
If the polytope has four dimensions, it has cells. The number of
cells is given by the variable {\tt /NbrCells} and the variable {\tt
/ListeCells} contains the list of the centers of the cells.\\ \\
To add a polytope, add the datas in the files {\tt pst-coxeter.pro}
and modify the file {\tt pst-coxeter.tex} as follows. Change the
numbers of the polytopes at the line 26 of the file
\begin{verbatim}
%%% Parameter choice. Allows to choice the polytope. To each integer
%%% 080 \typeout{choice < or = 80 and
not `\the\pst@cntg'. Value 1 forced.} \pst@cntg=1
\fi
\edef\psk@pstCoxeter@choice{#1}}
\end{verbatim}
Here, the number of polytope is $80$, if your add other datas you
must increase this number.
\begin{verbatim}
%%% Parameter choice. Allows to choice the polytope. To each integer
%%% 081 \typeout{choice < or = 81 and
not `\the\pst@cntg'. Value 1 forced.} \pst@cntg=1
\fi
\edef\psk@pstCoxeter@choice{#1}}
\end{verbatim}
Hence, you must add the polytope to the list of polytopes (line 169
- 251 of the file {\tt pst-coxcoor.tex}.
\begin{verbatim}
/choice \the\pst@cntg\space def
choice 1 eq {cox233datas} if
...
choice 78 eq {cox362datas} if
choice 79 eq {cox25223232datas} if
choice 80 eq {cox23232522datas} if
%%% <-- add new polytope here
\end{verbatim}
For example, add the line
\begin{verbatim}
choice 81 eq {coxNEWdatas} if
\end{verbatim}
\begin{thebibliography}{ABC}
\bibitem{qutrit} E. Briand, J.-G. Luque, J.-Y. Thibon and F. Verstrate, {\it the
moduli space of the three qutrit states},Journal of Mathematical
Physics, vol. 45, num. 12, pp. 4855--4867, 2004.
%
\bibitem{Reg} H. S. M. Coxeter, {\em Regular polytopes}, Third
Edition, Dover Publication Inc., New-York, 1973.
%
\bibitem{Cox}
H. S. M. Coxeter, {\em Regular Complex Polytopes}, Second Edition,
Cambridge University Press, 1991 .
%
\bibitem{Kalei}
H.S.M. Coxeter, {\em Kaleidoscopes, selected writing of H.S.M.
Coxeter by F.A. Sherk, P. McMullen, A.C. Thompson, A. Ivi\'c Weiss}, Canadian Mathematical Society Series of Monographs and
Advanced texts, Published in conjunction with the fiftieth anniversary of
the canadian mathematical society, J. M. Borwein and P. B. Borwein
Ed., A Wiley-Interscience publication, 1995.
%
\bibitem{Luque} J.-G. Luque, {\em Invariants des hypermatrices},
habilitation \`a diriger les recherches, Université Paris-Est,
Décembre 2007.
%
\bibitem{Sh} G.C. Shephard, {\em Regular Complex Polytopes},
Proceeding of the London Mathermatical Society (3), 2 82-97.
%
\bibitem{ST} G.C. Shephard and J.A. Todd, {\it Finite unitary
reflection groups}, Canadian Journal of Mathematics 6, 274-304,
1954.
%
\bibitem{Som} M.Y. Sommerville, {\it Geometry of $n$ dimension},
Methuen, Lodon, 1929.
\end{thebibliography}
\end{document}