mirror of https://github.com/CGAL/cgal
added PolynomialTraits_d::Permute
This commit is contained in:
parent
e58ade5b84
commit
ea60e5b6fa
|
|
@ -2957,6 +2957,7 @@ Polynomial/doc_tex/Polynomial_ref/PolynomialTraits_d_InnermostLeadingCoefficient
|
|||
Polynomial/doc_tex/Polynomial_ref/PolynomialTraits_d_IsZeroAt.tex -text
|
||||
Polynomial/doc_tex/Polynomial_ref/PolynomialTraits_d_IsZeroAtHomogeneous.tex -text
|
||||
Polynomial/doc_tex/Polynomial_ref/PolynomialTraits_d_Move.tex -text
|
||||
Polynomial/doc_tex/Polynomial_ref/PolynomialTraits_d_Permute.tex -text
|
||||
Polynomial/doc_tex/Polynomial_ref/PolynomialTraits_d_Polynomial_subresultants.tex -text
|
||||
Polynomial/doc_tex/Polynomial_ref/PolynomialTraits_d_Principal_sturm_habicht_sequence.tex -text
|
||||
Polynomial/doc_tex/Polynomial_ref/PolynomialTraits_d_Principal_subresultants.tex -text
|
||||
|
|
|
|||
|
|
@ -0,0 +1,56 @@
|
|||
\begin{ccRefConcept}{PolynomialTraits_d::Permute}
|
||||
|
||||
\ccDefinition
|
||||
|
||||
This \ccc{AdaptableFunctor} permutes the variables of the given polynomial
|
||||
with respect to a permutation $\sigma$. $\sigma$ is given by the iterator
|
||||
range of length $PolynomialTraits_d::d$, containing the second row of the permutation.
|
||||
|
||||
For instance, let $p$ be a polynomial in 4 variables and it is intended to
|
||||
change the order of the variables such that
|
||||
$x_0 \mapsto x_2$,
|
||||
$x_1 \mapsto x_0$,
|
||||
$x_2 \mapsto x_1$ and
|
||||
$x_3 \mapsto x_3$. In this case
|
||||
the permutation $\sigma$ is:
|
||||
\[\left( \begin{array}{ccccc} 0&1&2&3\\ 2&0&1&3 \end{array}\right).\]
|
||||
and the iterator range should contain the sequence $[2,0,1,3]$.
|
||||
|
||||
|
||||
\ccRefines
|
||||
|
||||
\ccc{AdaptableFunctor}
|
||||
|
||||
\ccTypes
|
||||
|
||||
\ccSetThreeColumns{xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx}{xxx}{}
|
||||
\ccTypedef{typedef PolynomialTraits_d::Polynomial_d result_type;}{}\ccGlue
|
||||
|
||||
\ccOperations
|
||||
|
||||
\ccCreationVariable{fo}
|
||||
|
||||
\ccOperations
|
||||
\ccMethod{
|
||||
template<class Input_iterator>
|
||||
result_type operator()(PolynomialTraits_d::Polynomial_d p,
|
||||
Input_iterator begin, Input_iterator end);}{
|
||||
Returns $p$ with interchanged variables as defined by the iterator range.
|
||||
%Change order of variables in $p$ as defined by the iterator range.
|
||||
\ccPrecond{(end-begin == \ccc{PolynomialTraits_d::d})}
|
||||
\ccPrecond{\ccc{std::iterator_traits< InputIterator >::value_type} is convertible to int.}
|
||||
\ccPrecond{The iterator range contains each value in $\{0,\dots,d-1\}$ exactly once. }
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
%\ccHasModels
|
||||
|
||||
\ccSeeAlso
|
||||
|
||||
\ccRefIdfierPage{Polynomial_d}\\
|
||||
\ccRefIdfierPage{PolynomialTraits_d}\\
|
||||
|
||||
\end{ccRefConcept}
|
||||
|
|
@ -26,6 +26,7 @@
|
|||
\ccRefConceptPage{PolynomialTraits_d::ConstructCoefficientConstIteratorRange}\\
|
||||
\ccRefConceptPage{PolynomialTraits_d::ConstructInnermostCoefficientConstIteratorRange}\\
|
||||
|
||||
\ccRefConceptPage{PolynomialTraits_d::Permute}\\
|
||||
\ccRefConceptPage{PolynomialTraits_d::Swap}\\
|
||||
\ccRefConceptPage{PolynomialTraits_d::Move}\\
|
||||
|
||||
|
|
|
|||
|
|
@ -15,6 +15,7 @@
|
|||
\input{Polynomial_ref/PolynomialTraits_d_ConstructCoefficientConstIteratorRange.tex}
|
||||
\input{Polynomial_ref/PolynomialTraits_d_ConstructInnermostCoefficientConstIteratorRange.tex}
|
||||
|
||||
\input{Polynomial_ref/PolynomialTraits_d_Permute.tex}
|
||||
\input{Polynomial_ref/PolynomialTraits_d_Swap.tex}
|
||||
\input{Polynomial_ref/PolynomialTraits_d_Move.tex}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue