mirror of https://github.com/CGAL/cgal
polish
This commit is contained in:
parent
a685e19ed6
commit
7afac0d118
|
|
@ -6,7 +6,7 @@ namespace CGAL {
|
||||||
The function `compute_roots_of_2()` solves a univariate polynomial as it is defined by the
|
The function `compute_roots_of_2()` solves a univariate polynomial as it is defined by the
|
||||||
coefficients given to the function. The solutions are written into the given
|
coefficients given to the function. The solutions are written into the given
|
||||||
`OutputIterator`.
|
`OutputIterator`.
|
||||||
Writes the real roots of the polynomial \f$ aX^2+bX+c\f$ into \f$ oit\f$ in ascending order.
|
Writes the real roots of the polynomial \f$ aX^2+bX+c\f$ into `oit` in ascending order.
|
||||||
|
|
||||||
`OutputIterator` is required to accept \link Root_of_traits::Root_of_2 `Root_of_traits<RT>::Root_of_2`\endlink.
|
`OutputIterator` is required to accept \link Root_of_traits::Root_of_2 `Root_of_traits<RT>::Root_of_2`\endlink.
|
||||||
|
|
||||||
|
|
@ -81,8 +81,8 @@ namespace CGAL {
|
||||||
/*!
|
/*!
|
||||||
\ingroup nt_ralgebraic
|
\ingroup nt_ralgebraic
|
||||||
|
|
||||||
The function `make_sqrt()` constructs a square root of a given value of type \f$ RT\f$.
|
The function `make_sqrt()` constructs a square root of a given value of type `RT`.
|
||||||
Depending on the type \f$ RT\f$ the square root may be returned in a new type that
|
Depending on the type `RT` the square root may be returned in a new type that
|
||||||
can represent algebraic extensions of degree \f$ 2\f$.
|
can represent algebraic extensions of degree \f$ 2\f$.
|
||||||
|
|
||||||
\returns \f$ \sqrt{x}.\f$
|
\returns \f$ \sqrt{x}.\f$
|
||||||
|
|
|
||||||
|
|
@ -3,9 +3,9 @@ namespace CGAL {
|
||||||
/*!
|
/*!
|
||||||
\ingroup nt_ralgebraic
|
\ingroup nt_ralgebraic
|
||||||
|
|
||||||
An instance of this class represents an extension of the type `NT` by *one* square root of the type `ROOT`.
|
An instance of this class represents an extension of the type `NT` by *one* square root of the type `Root`.
|
||||||
|
|
||||||
`NT` is required to be constructible from `ROOT`.
|
`NT` is required to be constructible from `Root`.
|
||||||
|
|
||||||
`NT` is required to be an `IntegralDomainWithoutDivision`.
|
`NT` is required to be an `IntegralDomainWithoutDivision`.
|
||||||
|
|
||||||
|
|
@ -23,9 +23,9 @@ The result would be in \f$ \mathbb{Z}[\sqrt{a},\sqrt{b}]\f$, which is not
|
||||||
representable by `Sqrt_extension<Integer,Integer>`.
|
representable by `Sqrt_extension<Integer,Integer>`.
|
||||||
|
|
||||||
\attention The user is responsible to check that arithmetic operations are carried out for elements from the same extensions only.
|
\attention The user is responsible to check that arithmetic operations are carried out for elements from the same extensions only.
|
||||||
|
|
||||||
This is not tested by `Sqrt_extension` for efficiency reasons.
|
This is not tested by `Sqrt_extension` for efficiency reasons.
|
||||||
A violation of the precondition leads to undefined behavior.
|
A violation of the precondition leads to undefined behavior.
|
||||||
|
|
||||||
Be aware that for efficiency reasons the given \f$\mathrm{root}\f$ is stored as it is given to
|
Be aware that for efficiency reasons the given \f$\mathrm{root}\f$ is stored as it is given to
|
||||||
the constructor. In particular, an extension by a square root of a square is
|
the constructor. In particular, an extension by a square root of a square is
|
||||||
considered as an extension.
|
considered as an extension.
|
||||||
|
|
@ -104,7 +104,7 @@ In case `NT` is not `RealEmbeddable`, `DifferentExtensionComparable` as well as
|
||||||
\sa \cgalTagFalse
|
\sa \cgalTagFalse
|
||||||
|
|
||||||
*/
|
*/
|
||||||
template< typename NT, typename ROOT,
|
template< typename NT, typename Root,
|
||||||
typename DifferentExtensionComparable = Tag_false,
|
typename DifferentExtensionComparable = Tag_false,
|
||||||
typename FilterPredicates = Tag_false>
|
typename FilterPredicates = Tag_false>
|
||||||
class Sqrt_extension {
|
class Sqrt_extension {
|
||||||
|
|
@ -148,7 +148,7 @@ Sqrt_extension (int a0, int a1, int r);
|
||||||
/*!
|
/*!
|
||||||
General constructor: `ext`\f$ = a0 + a1 \cdot sqrt(r)\f$. \pre \f$ r \neq0\f$
|
General constructor: `ext`\f$ = a0 + a1 \cdot sqrt(r)\f$. \pre \f$ r \neq0\f$
|
||||||
*/
|
*/
|
||||||
Sqrt_extension (NT a0, NT a1, ROOT r);
|
Sqrt_extension (NT a0, NT a1, Root r);
|
||||||
|
|
||||||
/// @}
|
/// @}
|
||||||
|
|
||||||
|
|
@ -172,10 +172,10 @@ const NT & a1 () const ;
|
||||||
/*!
|
/*!
|
||||||
Const access operator for root
|
Const access operator for root
|
||||||
*/
|
*/
|
||||||
const ROOT & root () const;
|
const Root & root () const;
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
Returns true in case root of `ext` is not zero.
|
Returns `true` in case root of `ext` is not zero.
|
||||||
|
|
||||||
Note that \f$ a1 == 0 \f$ does not imply \f$ \mathrm{root} == 0\f$.
|
Note that \f$ a1 == 0 \f$ does not imply \f$ \mathrm{root} == 0\f$.
|
||||||
*/
|
*/
|
||||||
|
|
@ -192,7 +192,7 @@ of `ext`. see also: `AlgebraicStructureTraits::Simplify`.
|
||||||
void simplify ();
|
void simplify ();
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
returns true if `ext` represents the value zero.
|
returns `true` if `ext` represents the value zero.
|
||||||
*/
|
*/
|
||||||
bool is_zero () const;
|
bool is_zero () const;
|
||||||
|
|
||||||
|
|
@ -326,19 +326,19 @@ In case the mode is `CGAL::IO::ASCII` the format is `EXT[a0,a1,root]`.
|
||||||
|
|
||||||
In case the mode is `CGAL::IO::PRETTY` the format is human readable.
|
In case the mode is `CGAL::IO::PRETTY` the format is human readable.
|
||||||
|
|
||||||
\attention `operator>>` must be defined for `ROOT` and `NT`.
|
\attention `operator>>` must be defined for `Root` and `NT`.
|
||||||
|
|
||||||
\relates Sqrt_extension
|
\relates Sqrt_extension
|
||||||
*/
|
*/
|
||||||
std::ostream& operator<<(std::ostream& os, const Sqrt_extension<NT,ROOT> &ext);
|
std::ostream& operator<<(std::ostream& os, const Sqrt_extension<NT,Root> &ext);
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
reads `ext` from istream `is` in format `EXT[a0,a1,root]`, the output format in mode `CGAL::IO::ASCII`
|
reads `ext` from istream `is` in format `EXT[a0,a1,root]`, the output format in mode `CGAL::IO::ASCII`
|
||||||
|
|
||||||
\attention `operator<<` must be defined exist for `ROOT` and `NT`.
|
\attention `operator<<` must be defined exist for `Root` and `NT`.
|
||||||
|
|
||||||
\relates Sqrt_extension
|
\relates Sqrt_extension
|
||||||
*/
|
*/
|
||||||
std::istream& operator>>(std::istream& is, const Sqrt_extension<NT,ROOT> &ext);
|
std::istream& operator>>(std::istream& is, const Sqrt_extension<NT,Root> &ext);
|
||||||
|
|
||||||
} /* end namespace CGAL */
|
} /* end namespace CGAL */
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue