mirror of https://github.com/CGAL/cgal
58 lines
1.7 KiB
TeX
58 lines
1.7 KiB
TeX
\begin{ccRefConcept}{AlgebraicKernelForCircles::RootOf_2}
|
|
|
|
\ccDefinition
|
|
|
|
The \ccc{AlgebraicKernelForCircles::RootOf_2} concept represents algebraic numbers of
|
|
degree up to~2 over a \ccc{RingNumberType} denoted as \ccc{RT}.
|
|
|
|
\ccc{FT} denotes the \ccc{FieldNumberType} constructed from \ccc{RT}.
|
|
\footnote{see \ccc{make_rational}, we need something to get FT from RT in a clean way.}
|
|
|
|
\ccCreation
|
|
|
|
\footnote{How to get RT...?}
|
|
|
|
\ccFunction{RootOf_2 make_root_of_2(RT a, RT b, RT c, int i);}{Returns
|
|
the \ccc{i}th root of equation $aX^2+bX+c=0$.}
|
|
\footnote{numbering of roots from 0 or 1? to be checked}
|
|
\ccGlue
|
|
\ccFunction{RootOf_2 make_root_of_2(FT a, FT b, FT c, int i);}{Returns
|
|
the \ccc{i}th root of equation $aX^2+bX+c=0$.}
|
|
|
|
\ccOperations
|
|
|
|
The comparison operators \ccc{==, !=, <, >, <=, >=} as well as the \ccc{sign}
|
|
and \ccc{compare} functions need to be
|
|
provided to compare elements of types \ccc{RootOf_2, RT} and \ccc{FT}.
|
|
|
|
In addition, the following operations must be provided:
|
|
|
|
\def\ccTagRmEigenClassName{\ccFalse}
|
|
|
|
\ccFunction{RootOf_2 operator+(const RT &a, const RootOf_2 &r);}{}
|
|
\ccGlue
|
|
\ccFunction{RootOf_2 operator+(const FT &a, const RootOf_2 &r);}{}
|
|
\ccGlue
|
|
\ccFunction{RootOf_2 operator+(const RootOf_2 &r, const RT &a);}{}
|
|
\ccGlue
|
|
\ccFunction{RootOf_2 operator+(const RootOf_2 &r, const FT &a);}{}
|
|
|
|
and similarly for operators -, * and /.
|
|
|
|
\ccFunction{RootOf_2 square(const RootOf_2 & r);}{}
|
|
|
|
\def\ccTagRmEigenClassName{\ccTrue}
|
|
|
|
\ccHasModels
|
|
|
|
\ccc{double}, \ccc{Root_of_2<RT>}, etc \footnote{to be precised}
|
|
|
|
\ccSeeAlso
|
|
|
|
\ccRefIdfierPage{CGAL::Root_of_2<RT>}\\
|
|
\ccRefIdfierPage{CGAL::Root_of_traits_2<RT>}\\
|
|
\ccRefIdfierPage{AlgebraicKernelForCircles::PolynomialForCircles_2_2}\\
|
|
\ccRefIdfierPage{AlgebraicKernelForCircles}
|
|
|
|
\end{ccRefConcept}
|