 |
My Project
debian-1:4.1.1-p2+ds-4build1
|
Go to the documentation of this file.
48 nf(number n):
_n(n){};
51 inline number
N()
const {
return _n;}
74 return nf(
k).
F() >= 0.0;
81 return nf(
nf(a).F() *
nf(
b).F()).
N();
111 static number
nrAdd (number a, number
b,
const coeffs r)
143 static number
nrSub (number a, number
b,
const coeffs r)
179 return (0.0 ==
nf(a).F());
211 return nf(
nf(a).F() / n).
N();
224 return nf(1.0 / n).
N();
231 return nf(-
nf(c).F()).
N();
258 int n = sprintf(ch,
"%9.3e",
nf(a).F());
262 char* chbr =
new char[n+3];
263 memcpy(&chbr[2],&ch[1],n-1);
276 static void nrPower (number a,
int i, number *
result,
const coeffs r)
296 static const char* nrEatr(
const char *
s,
SI_FLOAT *r)
300 if (*
s >=
'0' && *
s <=
'9')
309 while (*
s >=
'0' && *
s <=
'9');
316 static const char *
nrRead (
const char *
s, number *a,
const coeffs r)
321 static const char *nIllegalChar=
"illegal character in number";
331 if (
s==start) {
WerrorS(nIllegalChar);
return s; }
341 if (
s==start) {
WerrorS(nIllegalChar);
return s; }
344 while (*t >=
'0' && *t <=
'9')
350 z1 = (z1*n + z2) / n;
357 else if (*
s==
'-') {
s++; si=-1; }
358 while (*
s >=
'0' && *
s <=
'9')
365 while (e>0) {z1*=10.0; e--; }
369 while (e>0) {z1/=10.0; e--; }
386 #pragma GCC diagnostic ignored "-Wunused-parameter"
400 int i = (int)((
long)from);
431 #define SR_HDL(A) ((long)(A))
432 #define IS_INT(A) ((A)->s==3)
433 #define IS_IMM(A) (SR_HDL(A) & SR_INT)
434 #define GET_NOM(A) ((A)->z)
435 #define GET_DENOM(A) ((A)->n)
444 zz=(mpz_ptr)
omAlloc(
sizeof(mpz_t));
458 int sign= mpf_sgn(e);
476 basis = mpf_get_d_2exp(&
exp, e);
502 basis = mpf_get_d_2exp(&
exp, q);
519 zz=(mpz_ptr)
omAlloc(
sizeof(mpz_t));
533 int sign= mpf_sgn(e);
548 basis = mpf_get_d_2exp(&
exp, e);
707 return (
char*)
"Float()";
731 n->cfExactDiv=
nrDiv;
static FORCE_INLINE n_coeffType getCoeffType(const coeffs r)
Returns the type of coeffs domain.
static long nrInt(number &n, const coeffs r)
static number nrMapZ(number from, const coeffs aRing, const coeffs r)
static const char * nrRead(const char *s, number *a, const coeffs r)
static FORCE_INLINE BOOLEAN nCoeff_is_Zp(const coeffs r)
void StringAppendS(const char *st)
static nMapFunc nrSetMap(const coeffs src, const coeffs dst)
Get a mapping function from src into the domain of this type: n_R.
static FORCE_INLINE BOOLEAN nCoeff_is_R(const coeffs r)
static char * nrCoeffString(const coeffs r)
const CanonicalForm int const CFList const Variable & y
static BOOLEAN nrGreater(number a, number b, const coeffs r)
static BOOLEAN nrIsMOne(number a, const coeffs r)
#define SHORT_REAL_LENGTH
complex floating point (GMP) numbers
SI_FLOAT nrFloat(number n)
Converts a n_R number into a float. Needed by Maps.
number ndCopyMap(number a, const coeffs aRing, const coeffs r)
const CanonicalForm CFMap CFMap & N
static FORCE_INLINE BOOLEAN nCoeff_is_long_C(const coeffs r)
static BOOLEAN nrDBTest(number a, const coeffs r, const char *f, const int l)
real floating point (GMP) numbers
static void nrWrite(number a, const coeffs r)
static number nrDiv(number a, number b, const coeffs r)
number(* nMapFunc)(number a, const coeffs src, const coeffs dst)
maps "a", which lives in src, into dst
const char *const nDivBy0
void PrintS(const char *s)
#define omFreeSize(addr, size)
static number nrAdd(number a, number b, const coeffs r)
static number nrMapQ(number from, const coeffs r, const coeffs aRing)
static const SI_FLOAT nrEps
static FORCE_INLINE BOOLEAN nCoeff_is_long_R(const coeffs r)
static void nrCoeffWrite(const coeffs r, BOOLEAN)
single prescision (6,6) real numbers
gmp_float exp(const gmp_float &a)
BOOLEAN nrInitChar(coeffs n, void *p)
Initialize r.
static number nrMapLongR(number from, const coeffs aRing, const coeffs r)
static number nrMapP(number from, const coeffs aRing, const coeffs r)
static number nrMult(number a, number b, const coeffs r)
static char * nrCoeffName(const coeffs r)
void WerrorS(const char *s)
static number nrInvers(number c, const coeffs r)
static BOOLEAN nrIsOne(number a, const coeffs r)
static BOOLEAN nrGreaterZero(number k, const coeffs r)
static number nrSub(number a, number b, const coeffs r)
static number nrInit(long i, const coeffs r)
static number nrNeg(number c, const coeffs r)
const CanonicalForm int s
static number nrMapC(number from, const coeffs aRing, const coeffs r)
static BOOLEAN nrEqual(number a, number b, const coeffs r)
(gmp_complex), see gnumpc.h
static BOOLEAN nrIsZero(number a, const coeffs r)
gmp_complex numbers based on
(), see rinteger.h, new impl.