\section{atlas::rootdata Namespace Reference}
\label{namespaceatlas_1_1rootdata}\index{atlas::rootdata@{atlas::rootdata}}


\subsection*{Classes}
\begin{CompactItemize}
\item 
struct {\bf Root\-Basis\-Tag}
\item 
class {\bf Root\-Datum}
\item 
class {\bf Root\-Iterator}
\end{CompactItemize}
\subsection*{Typedefs}
\begin{CompactItemize}
\item 
typedef unsigned long {\bf Root\-Nbr}
\item 
typedef {\bf latticetypes::Lattice\-Elt} {\bf Root}
\item 
typedef std::vector$<$ {\bf Root\-Nbr} $>$ {\bf Root\-List}
\item 
typedef {\bf Root\-Iterator}$<$ Root\-List::const\_\-iterator $>$ {\bf WRoot\-Iterator}
\item 
typedef {\bf bitmap::Bit\-Map} {\bf Root\-Set}
\item 
typedef std::vector$<$ {\bf Root\-Set} $>$ {\bf Root\-Set\-List}
\end{CompactItemize}
\subsection*{Functions}
\begin{CompactItemize}
\item 
void {\bf cartan\-Matrix} ({\bf latticetypes::Lattice\-Matrix} \&c, const {\bf Root\-Datum} \&rd)
\item 
void {\bf cartan\-Matrix} ({\bf latticetypes::Lattice\-Matrix} \&c, const {\bf Root\-List} \&rb, const {\bf Root\-Datum} \&rd)
\item 
void {\bf dual\-Based\-Involution} ({\bf LT::Lattice\-Matrix} \&di, const {\bf LT::Lattice\-Matrix} \&i, const {\bf Root\-Datum} \&rd)
\item 
void {\bf lie\-Type} ({\bf lietype::Lie\-Type} \&lt, const {\bf Root\-List} \&rb, const {\bf Root\-Datum} \&rd)
\item 
void {\bf longest} ({\bf LT::Lattice\-Matrix} \&q, const {\bf Root\-Datum} \&rd)
\item 
void {\bf make\-Orthogonal} ({\bf Root\-List} \&orth, const {\bf Root\-List} \&rl, const {\bf Root\-List} \&rs, const {\bf Root\-Datum} \&rd)
\item 
void {\bf reflection\-Matrix} ({\bf LT::Lattice\-Matrix} \&qs, {\bf Root\-Nbr} n, const {\bf Root\-Datum} \&rd)
\item 
void {\bf root\-Basis} ({\bf Root\-List} \&rb, const {\bf Root\-List} \&rl, const {\bf Root\-Datum} \&rd)
\item 
void {\bf root\-Basis} ({\bf Root\-List} \&rb, const {\bf Root\-Set} \&rs, const {\bf Root\-Datum} \&rd)
\item 
void {\bf root\-Permutation} ({\bf Root\-List} \&rl, const {\bf LT::Lattice\-Matrix} \&p, const {\bf Root\-Datum} \&rd)
\item 
void {\bf strong\-Orthogonalize} ({\bf Root\-List} \&rl, const {\bf Root\-Datum} \&rd)
\item 
bool {\bf sum\-Is\-Root} (const {\bf Weight} \&a, const {\bf Weight} \&b, const {\bf Root\-Datum} \&rd)
\item 
bool {\bf sum\-Is\-Root} (const {\bf Root\-Nbr} \&a, const {\bf Root\-Nbr} \&b, const {\bf Root\-Datum} \&rd)
\item 
void {\bf to\-Distinguished} ({\bf Lattice\-Matrix} \&q, const {\bf Root\-Datum} \&rd)
\item 
void {\bf to\-Matrix} ({\bf Lattice\-Matrix} \&q, const {\bf weyl::Weyl\-Word} \&ww, const {\bf Root\-Datum} \&rd)
\item 
void {\bf to\-Matrix} ({\bf Lattice\-Matrix} \&q, const {\bf Root\-List} \&rl, const {\bf Root\-Datum} \&rd)
\item 
void {\bf to\-Positive} ({\bf weyl::Weyl\-Word} \&ww, const {\bf Weight} \&d\_\-v, const {\bf Root\-Datum} \&rd)
\item 
void {\bf to\-Weyl\-Word} ({\bf weyl::Weyl\-Word} \&ww, {\bf Root\-Nbr} rn, const {\bf Root\-Datum} \&rd)
\item 
void {\bf to\-Weyl\-Word} ({\bf weyl::Weyl\-Word} \&ww, const {\bf latticetypes::Lattice\-Matrix} \&q, const {\bf Root\-Datum} \&rd)
\item 
void {\bf two\-Rho} ({\bf Weight} \&tr, const {\bf Root\-List} \&rl, const {\bf Root\-Datum} \&rd)
\item 
void {\bf two\-Rho} ({\bf Weight} \&tr, const {\bf Root\-Set} \&rs, const {\bf Root\-Datum} \&rd)
\item 
template$<$typename I, typename O$>$ void {\bf to\-Root\-Basis} (const I \&, const I \&, O, const {\bf Root\-List} \&, const {\bf Root\-Datum} \&)
\item 
template$<$typename I, typename O$>$ void {\bf to\-Simple\-Weights} (const I \&, const I \&, O, const {\bf Root\-List} \&, const {\bf Root\-Datum} \&)
\item 
void {\bf reflection\-Matrix} ({\bf LT::Lattice\-Matrix} \&, {\bf Root\-Nbr}, const {\bf Root\-Datum} \&, {\bf Root\-Basis\-Tag})
\item 
bool {\bf sum\-Is\-Root} (const {\bf LT::Weight} \&, const {\bf LT::Weight} \&, const {\bf Root\-Datum} \&)
\item 
void {\bf to\-Positive} ({\bf weyl::Weyl\-Word} \&, const {\bf LT::Weight} \&, const {\bf Root\-Datum} \&)
\item 
void {\bf two\-Rho} ({\bf LT::Weight} \&, const {\bf Root\-List} \&, const {\bf Root\-Datum} \&)
\item 
void {\bf two\-Rho} ({\bf LT::Weight} \&, const {\bf Root\-Set} \&, const {\bf Root\-Datum} \&)
\item 
template$<$typename I$>$ {\bf Root\-Iterator}$<$ I $>$ {\bf operator+} (typename {\bf Root\-Iterator}$<$ I $>$::difference\_\-type n, {\bf Root\-Iterator}$<$ I $>$ i)
\end{CompactItemize}


\subsection{Typedef Documentation}
\index{atlas::rootdata@{atlas::rootdata}!Root@{Root}}
\index{Root@{Root}!atlas::rootdata@{atlas::rootdata}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}typedef {\bf latticetypes::Lattice\-Elt} {\bf atlas::rootdata::Root}}\label{namespaceatlas_1_1rootdata_e1c46c69ce859cb6cf9b95b6d637c98e}


\index{atlas::rootdata@{atlas::rootdata}!RootList@{RootList}}
\index{RootList@{RootList}!atlas::rootdata@{atlas::rootdata}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}typedef std::vector$<${\bf Root\-Nbr}$>$ {\bf atlas::rootdata::Root\-List}}\label{namespaceatlas_1_1rootdata_4a34af63f4e7004ab50f79c48e2ebe2e}


\index{atlas::rootdata@{atlas::rootdata}!RootNbr@{RootNbr}}
\index{RootNbr@{RootNbr}!atlas::rootdata@{atlas::rootdata}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}typedef unsigned long {\bf atlas::rootdata::Root\-Nbr}}\label{namespaceatlas_1_1rootdata_908c22b763a4704e3d49ade3be2f42b5}


\index{atlas::rootdata@{atlas::rootdata}!RootSet@{RootSet}}
\index{RootSet@{RootSet}!atlas::rootdata@{atlas::rootdata}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}typedef {\bf bitmap::Bit\-Map} {\bf atlas::rootdata::Root\-Set}}\label{namespaceatlas_1_1rootdata_9a859874c7c39f10762ed00a59835f22}


\index{atlas::rootdata@{atlas::rootdata}!RootSetList@{RootSetList}}
\index{RootSetList@{RootSetList}!atlas::rootdata@{atlas::rootdata}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}typedef std::vector$<${\bf Root\-Set}$>$ {\bf atlas::rootdata::Root\-Set\-List}}\label{namespaceatlas_1_1rootdata_f3d98992769fb3c19747392d073ef1bd}


\index{atlas::rootdata@{atlas::rootdata}!WRootIterator@{WRootIterator}}
\index{WRootIterator@{WRootIterator}!atlas::rootdata@{atlas::rootdata}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}typedef {\bf Root\-Iterator}$<$Root\-List::const\_\-iterator$>$ {\bf atlas::rootdata::WRoot\-Iterator}}\label{namespaceatlas_1_1rootdata_a7ac3aec989d0ed6dbf1113a085ea427}




\subsection{Function Documentation}
\index{atlas::rootdata@{atlas::rootdata}!cartanMatrix@{cartanMatrix}}
\index{cartanMatrix@{cartanMatrix}!atlas::rootdata@{atlas::rootdata}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void atlas::rootdata::cartan\-Matrix ({\bf latticetypes::Lattice\-Matrix} \& {\em c}, const {\bf Root\-List} \& {\em rb}, const Root\-Datum \& {\em rd})}\label{namespaceatlas_1_1rootdata_c2c2484b4c45c889b1322122f4c9c28b}


\index{atlas::rootdata@{atlas::rootdata}!cartanMatrix@{cartanMatrix}}
\index{cartanMatrix@{cartanMatrix}!atlas::rootdata@{atlas::rootdata}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void atlas::rootdata::cartan\-Matrix ({\bf latticetypes::Lattice\-Matrix} \& {\em c}, const Root\-Datum \& {\em rd})}\label{namespaceatlas_1_1rootdata_35076c6a0392f970f9da32c106a6dbba}


\index{atlas::rootdata@{atlas::rootdata}!dualBasedInvolution@{dualBasedInvolution}}
\index{dualBasedInvolution@{dualBasedInvolution}!atlas::rootdata@{atlas::rootdata}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void atlas::rootdata::dual\-Based\-Involution ({\bf LT::Lattice\-Matrix} \& {\em di}, const {\bf LT::Lattice\-Matrix} \& {\em i}, const Root\-Datum \& {\em rd})}\label{namespaceatlas_1_1rootdata_46da5283532dbf70ed40bc7d3a3332ae}


\index{atlas::rootdata@{atlas::rootdata}!lieType@{lieType}}
\index{lieType@{lieType}!atlas::rootdata@{atlas::rootdata}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void atlas::rootdata::lie\-Type ({\bf lietype::Lie\-Type} \& {\em lt}, const {\bf Root\-List} \& {\em rb}, const Root\-Datum \& {\em rd})}\label{namespaceatlas_1_1rootdata_86bdf42f81d32b80d0dbe359b04be93e}


\index{atlas::rootdata@{atlas::rootdata}!longest@{longest}}
\index{longest@{longest}!atlas::rootdata@{atlas::rootdata}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void atlas::rootdata::longest ({\bf LT::Lattice\-Matrix} \& {\em q}, const Root\-Datum \& {\em rd})}\label{namespaceatlas_1_1rootdata_35e781d23db6960d0be6337ac074a991}


\index{atlas::rootdata@{atlas::rootdata}!makeOrthogonal@{makeOrthogonal}}
\index{makeOrthogonal@{makeOrthogonal}!atlas::rootdata@{atlas::rootdata}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void atlas::rootdata::make\-Orthogonal ({\bf Root\-List} \& {\em orth}, const {\bf Root\-List} \& {\em rl}, const {\bf Root\-List} \& {\em rs}, const Root\-Datum \& {\em rd})}\label{namespaceatlas_1_1rootdata_2452d1ccbe5afb3a6526f451cb57a87d}


\index{atlas::rootdata@{atlas::rootdata}!operator+@{operator+}}
\index{operator+@{operator+}!atlas::rootdata@{atlas::rootdata}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$typename I$>$ {\bf Root\-Iterator}$<$I$>$ atlas::rootdata::operator+ (typename Root\-Iterator$<$ I $>$::difference\_\-type {\em n}, Root\-Iterator$<$ I $>$ {\em i})\hspace{0.3cm}{\tt  [inline]}}\label{namespaceatlas_1_1rootdata_a8648b6df94a753480c212a58c3e399c}


\index{atlas::rootdata@{atlas::rootdata}!reflectionMatrix@{reflectionMatrix}}
\index{reflectionMatrix@{reflectionMatrix}!atlas::rootdata@{atlas::rootdata}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void atlas::rootdata::reflection\-Matrix ({\bf LT::Lattice\-Matrix} \&, {\bf Root\-Nbr}, const Root\-Datum \&, Root\-Basis\-Tag)}\label{namespaceatlas_1_1rootdata_005198c2da3622b04a861f7ea0bc18d8}


\index{atlas::rootdata@{atlas::rootdata}!reflectionMatrix@{reflectionMatrix}}
\index{reflectionMatrix@{reflectionMatrix}!atlas::rootdata@{atlas::rootdata}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void atlas::rootdata::reflection\-Matrix ({\bf LT::Lattice\-Matrix} \& {\em qs}, {\bf Root\-Nbr} {\em n}, const Root\-Datum \& {\em rd})}\label{namespaceatlas_1_1rootdata_565036414ab46059cfe17e0ce17c3ef1}


\index{atlas::rootdata@{atlas::rootdata}!rootBasis@{rootBasis}}
\index{rootBasis@{rootBasis}!atlas::rootdata@{atlas::rootdata}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void atlas::rootdata::root\-Basis ({\bf Root\-List} \& {\em rb}, const {\bf Root\-Set} \& {\em rs}, const Root\-Datum \& {\em rd})}\label{namespaceatlas_1_1rootdata_89498613c32364475d0fe307e4b3aa83}


\index{atlas::rootdata@{atlas::rootdata}!rootBasis@{rootBasis}}
\index{rootBasis@{rootBasis}!atlas::rootdata@{atlas::rootdata}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void atlas::rootdata::root\-Basis ({\bf Root\-List} \& {\em rb}, const {\bf Root\-List} \& {\em rl}, const Root\-Datum \& {\em rd})}\label{namespaceatlas_1_1rootdata_611359f85b920995ff88616c9510da99}


\index{atlas::rootdata@{atlas::rootdata}!rootPermutation@{rootPermutation}}
\index{rootPermutation@{rootPermutation}!atlas::rootdata@{atlas::rootdata}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void atlas::rootdata::root\-Permutation ({\bf Root\-List} \& {\em rl}, const {\bf LT::Lattice\-Matrix} \& {\em p}, const Root\-Datum \& {\em rd})}\label{namespaceatlas_1_1rootdata_84af95304edf315303f1ad627304d2cb}


\index{atlas::rootdata@{atlas::rootdata}!strongOrthogonalize@{strongOrthogonalize}}
\index{strongOrthogonalize@{strongOrthogonalize}!atlas::rootdata@{atlas::rootdata}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void atlas::rootdata::strong\-Orthogonalize ({\bf Root\-List} \& {\em rl}, const Root\-Datum \& {\em rd})}\label{namespaceatlas_1_1rootdata_7df67af81e2e75c5856613a6922f80db}


\index{atlas::rootdata@{atlas::rootdata}!sumIsRoot@{sumIsRoot}}
\index{sumIsRoot@{sumIsRoot}!atlas::rootdata@{atlas::rootdata}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}bool atlas::rootdata::sum\-Is\-Root (const {\bf LT::Weight} \&, const {\bf LT::Weight} \&, const Root\-Datum \&)}\label{namespaceatlas_1_1rootdata_de2ef02987349c6507fcf9c001b82fd3}


\index{atlas::rootdata@{atlas::rootdata}!sumIsRoot@{sumIsRoot}}
\index{sumIsRoot@{sumIsRoot}!atlas::rootdata@{atlas::rootdata}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}bool atlas::rootdata::sum\-Is\-Root (const {\bf Root\-Nbr} \& {\em a}, const {\bf Root\-Nbr} \& {\em b}, const Root\-Datum \& {\em rd})}\label{namespaceatlas_1_1rootdata_8c32d1cdf79e4e2ca504d9c6a76f15a3}


\index{atlas::rootdata@{atlas::rootdata}!sumIsRoot@{sumIsRoot}}
\index{sumIsRoot@{sumIsRoot}!atlas::rootdata@{atlas::rootdata}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}bool atlas::rootdata::sum\-Is\-Root (const {\bf Weight} \& {\em a}, const {\bf Weight} \& {\em b}, const Root\-Datum \& {\em rd})}\label{namespaceatlas_1_1rootdata_ab8382129a56aa1e7de515e586a1a559}


\index{atlas::rootdata@{atlas::rootdata}!toDistinguished@{toDistinguished}}
\index{toDistinguished@{toDistinguished}!atlas::rootdata@{atlas::rootdata}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void atlas::rootdata::to\-Distinguished ({\bf LT::Lattice\-Matrix} \& {\em q}, const Root\-Datum \& {\em rd})}\label{namespaceatlas_1_1rootdata_d61d77c78243c000be1f2fe572709667}


\index{atlas::rootdata@{atlas::rootdata}!toMatrix@{toMatrix}}
\index{toMatrix@{toMatrix}!atlas::rootdata@{atlas::rootdata}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void atlas::rootdata::to\-Matrix ({\bf LT::Lattice\-Matrix} \& {\em q}, const {\bf Root\-List} \& {\em rl}, const Root\-Datum \& {\em rd})}\label{namespaceatlas_1_1rootdata_4ebd4fcdda2d15ad9cf27340e1ea721e}


\index{atlas::rootdata@{atlas::rootdata}!toMatrix@{toMatrix}}
\index{toMatrix@{toMatrix}!atlas::rootdata@{atlas::rootdata}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void atlas::rootdata::to\-Matrix ({\bf LT::Lattice\-Matrix} \& {\em q}, const {\bf weyl::Weyl\-Word} \& {\em ww}, const Root\-Datum \& {\em rd})}\label{namespaceatlas_1_1rootdata_e557a88eb209073f8e2907b199964bc5}


\index{atlas::rootdata@{atlas::rootdata}!toPositive@{toPositive}}
\index{toPositive@{toPositive}!atlas::rootdata@{atlas::rootdata}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void atlas::rootdata::to\-Positive ({\bf weyl::Weyl\-Word} \&, const {\bf LT::Weight} \&, const Root\-Datum \&)}\label{namespaceatlas_1_1rootdata_0655c9afa1918d3db6570822bcc94d22}


\index{atlas::rootdata@{atlas::rootdata}!toPositive@{toPositive}}
\index{toPositive@{toPositive}!atlas::rootdata@{atlas::rootdata}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void atlas::rootdata::to\-Positive ({\bf weyl::Weyl\-Word} \& {\em ww}, const {\bf Weight} \& {\em d\_\-v}, const Root\-Datum \& {\em rd})}\label{namespaceatlas_1_1rootdata_eb796dd6db75a12e6b14fea91ff4c957}


\index{atlas::rootdata@{atlas::rootdata}!toRootBasis@{toRootBasis}}
\index{toRootBasis@{toRootBasis}!atlas::rootdata@{atlas::rootdata}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$typename I, typename O$>$ void atlas::rootdata::to\-Root\-Basis (const I \&, const I \&, O, const {\bf Root\-List} \&, const Root\-Datum \&)}\label{namespaceatlas_1_1rootdata_de9cb647d54a9b143d366ee4b2df687e}


\index{atlas::rootdata@{atlas::rootdata}!toSimpleWeights@{toSimpleWeights}}
\index{toSimpleWeights@{toSimpleWeights}!atlas::rootdata@{atlas::rootdata}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$typename I, typename O$>$ void atlas::rootdata::to\-Simple\-Weights (const I \&, const I \&, O, const {\bf Root\-List} \&, const Root\-Datum \&)}\label{namespaceatlas_1_1rootdata_5f897865af7d8100361d0d4a46672a51}


\index{atlas::rootdata@{atlas::rootdata}!toWeylWord@{toWeylWord}}
\index{toWeylWord@{toWeylWord}!atlas::rootdata@{atlas::rootdata}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void atlas::rootdata::to\-Weyl\-Word ({\bf weyl::Weyl\-Word} \& {\em ww}, const {\bf latticetypes::Lattice\-Matrix} \& {\em q}, const Root\-Datum \& {\em rd})}\label{namespaceatlas_1_1rootdata_8f35b5ce826561e8ba7f995ac2ea3b9c}


\index{atlas::rootdata@{atlas::rootdata}!toWeylWord@{toWeylWord}}
\index{toWeylWord@{toWeylWord}!atlas::rootdata@{atlas::rootdata}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void atlas::rootdata::to\-Weyl\-Word ({\bf weyl::Weyl\-Word} \& {\em ww}, {\bf Root\-Nbr} {\em rn}, const Root\-Datum \& {\em rd})}\label{namespaceatlas_1_1rootdata_85104b3bde76ea64ddce5741e2152513}


\index{atlas::rootdata@{atlas::rootdata}!twoRho@{twoRho}}
\index{twoRho@{twoRho}!atlas::rootdata@{atlas::rootdata}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void atlas::rootdata::two\-Rho ({\bf LT::Weight} \&, const {\bf Root\-Set} \&, const Root\-Datum \&)}\label{namespaceatlas_1_1rootdata_518456f379eefe3dd52ce060705a156f}


\index{atlas::rootdata@{atlas::rootdata}!twoRho@{twoRho}}
\index{twoRho@{twoRho}!atlas::rootdata@{atlas::rootdata}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void atlas::rootdata::two\-Rho ({\bf LT::Weight} \&, const {\bf Root\-List} \&, const Root\-Datum \&)}\label{namespaceatlas_1_1rootdata_8eeb523e89ccaac8abba05b1a6c629ea}


\index{atlas::rootdata@{atlas::rootdata}!twoRho@{twoRho}}
\index{twoRho@{twoRho}!atlas::rootdata@{atlas::rootdata}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void atlas::rootdata::two\-Rho ({\bf Weight} \& {\em tr}, const {\bf Root\-Set} \& {\em rs}, const Root\-Datum \& {\em rd})}\label{namespaceatlas_1_1rootdata_a3ede2d82bfdbcbf126f4b0e6f78fe7f}


\index{atlas::rootdata@{atlas::rootdata}!twoRho@{twoRho}}
\index{twoRho@{twoRho}!atlas::rootdata@{atlas::rootdata}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void atlas::rootdata::two\-Rho ({\bf Weight} \& {\em tr}, const {\bf Root\-List} \& {\em rl}, const Root\-Datum \& {\em rd})}\label{namespaceatlas_1_1rootdata_277b01f8897c6727d15ba23641e3e2bd}


