#include <mpr_numeric.h>
Definition at line 149 of file mpr_numeric.h.
§ rootArranger() [1/2]
§ ~rootArranger()
rootArranger::~rootArranger |
( |
| ) |
|
|
inline |
§ rootArranger() [2/2]
§ arrange()
void rootArranger::arrange |
( |
| ) |
|
Definition at line 895 of file mpr_numeric.cc.
900 int xkoord,
r, rtest, xk, mtest;
904 for ( xkoord= 0; xkoord < anzm; xkoord++ ) {
906 for ( r= 0; r < anzr; r++ ) {
910 for ( xk =0; xk <= xkoord; xk++ )
912 tmp -= (*
roots[xk])[r] *
mu[xkoord]->evPointCoord(xk+1);
916 for ( rtest= r; rtest < anzr; rtest++ ) {
917 zwerg = tmp - (*
roots[xk])[rtest] *
mu[xkoord]->evPointCoord(xk+1);
918 for ( mtest= 0; mtest < anzr; mtest++ )
922 if ( ((zwerg.
real() <= (*
mu[xkoord])[mtest].real() + mprec) &&
923 (zwerg.
real() >= (*
mu[xkoord])[mtest].real() - mprec)) &&
924 ((zwerg.
imag() <= (*
mu[xkoord])[mtest].imag() + mprec) &&
925 (zwerg.
imag() >= (*
mu[xkoord])[mtest].imag() - mprec)) )
935 WarnS(
"rootArranger::arrange: precision lost");
942 Warn(
"rootArranger::arrange: No match? coord %d, root %d.",xkoord,r);
944 WarnS(
"One of these ...");
945 for ( rtest= r; rtest < anzr; rtest++ )
948 for ( xk =0; xk <= xkoord; xk++ )
950 tmp-= (*
roots[xk])[r] *
mu[xkoord]->evPointCoord(xk+1);
952 tmp-= (*
roots[xk])[rtest] *
mu[xkoord]->evPointCoord(xk+1);
955 WarnS(
" ... must match to one of these:");
956 for ( mtest= 0; mtest < anzr; mtest++ )
bool swapRoots(const int from, const int to)
gmp_complex numbers based on
char * complexToStr(gmp_complex &c, const unsigned int oprec, const coeffs src)
Rational pow(const Rational &a, int e)
§ solve_all()
void rootArranger::solve_all |
( |
| ) |
|
Definition at line 870 of file mpr_numeric.cc.
877 for ( i= 0; i <
rc; i++ )
885 for ( i= 0; i <
mc; i++ )
§ success()
bool rootArranger::success |
( |
| ) |
|
|
inline |
§ listOfRoots
Definition at line 4974 of file ipshell.cc.
4977 int count=
self->roots[0]->getAnzRoots();
4978 int elem=
self->roots[0]->getAnzElems();
4984 listofroots->
Init( count );
4986 for (i=0; i <
count; i++)
4989 onepoint->
Init(elem);
4990 for ( j= 0; j < elem; j++ )
5006 listofroots->
m[
i].
data=(
void *)onepoint;
5014 listofroots->
Init( 0 );
int status int void size_t count
ring currRing
Widely used global variable which specifies the current polynomial ring for Singular interpreter and ...
static BOOLEAN rField_is_long_C(const ring r)
INLINE_THIS void Init(int l=0)
static FORCE_INLINE number n_Copy(number n, const coeffs r)
return a copy of 'n'
char * complexToStr(gmp_complex &c, const unsigned int oprec, const coeffs src)
§ found_roots
bool rootArranger::found_roots |
|
private |
§ howclean
int rootArranger::howclean |
|
private |
§ mc
§ mu
§ rc
§ roots
The documentation for this class was generated from the following files: