89 polynome_error(
"polynome_sum_of_power",
"negative power: %d\n", p);
94 double factor, result = 0;
114 result =
intpower(cste, p) * ((double) (cste / (p+1)) + 0.5);
115 factor = ((double) p/2);
117 for (i=1; 0<p-2*i+1; i++) {
120 factor *= - ((double) (p-2*i+1)*(p-2*i)) / ((double) (2*i+1)*(2*i+2));
136 factor = ((float) p / 2);
139 for (i=1; 0 < p-2*i+1; i++) {
149 factor *= -((float)(p-2*i+1)*(p-2*i))/((float)(2*i+1)*(2*i+2));
274 if ( pmcur != NULL ) {
void const char const char const int
bool is_inferior_var(Variable, Variable)
Ppolynome make_polynome(float coeff, Variable var, Value expo)
Ppolynome make_polynome(float coeff, Variable var, Value expo) PRIVATE allocates space for,...
Ppolynome polynome_dup(Ppolynome pp)
Ppolynome polynome_dup(Ppolynome pp) creates and returns a copy of pp.
void polynome_rm(Ppolynome *ppp)
void polynome_rm(Ppolynome* ppp) frees space occupied by polynomial *ppp returns *ppp pointing to POL...
Ppolynome polynome_mult(Ppolynome pp1, Ppolynome pp2)
Ppolynome polynome_mult(Ppolynome pp1, Ppolynome pp2) returns pp1 * pp2.
void polynome_add(Ppolynome *ppp, Ppolynome pp2)
void polynome_add(Ppolynome* ppp, Ppolynome pp2) (*ppp) = (*ppp) + pp2.
void polynome_error(const char *name, char *fmt,...)
INTLIBRARY.
float Bernouilli(int i)
float Bernouilli(int i) PRIVATE returns Bi = i-th Bernouilli number
bool is_inferior_monome(Pmonome pm1, Pmonome pm2, int *is_inferior_var)
bool is_inferior_monome(Pmonome pm1, pm2, int (*is_inferior_var)()) returns the qsort comparison (pm1...
double intpower(double d, int n)
double intpower(double d, int n) returns d^n for all integers n
int polynome_degree(Ppolynome pp, Variable var)
int polynome_degree(Ppolynome pp, Variable var) returns the degree of polynomial pp viewed as a polyn...
float polynome_TCST(Ppolynome pp)
float polynome_TCST(Ppolynome pp) returns the constant term of polynomial pp.
bool polynome_constant_p(Ppolynome pp)
bool polynome_constant_p(Ppolynome pp) return true if pp is a constant polynomial (including null pol...
Ppolynome polynome_factorize(Ppolynome pp, Variable var, int n)
Ppolynome polynome_factorize(Ppolynome pp, Variable var, int n) returns the (polynomial) coefficient ...
Ppolynome polynome_power_n(Ppolynome pp, int n)
Ppolynome polynome_power_n(Ppolynome pp, int n) returns pp ^ n (n>=0)
void polynome_scalar_mult(Ppolynome *ppp, float factor)
void polynome_scalar_mult(Ppolynome* ppp, float factor) (*ppp) = factor * (*ppp) !...
Ppolynome polynome_sigma(Ppolynome pp, Variable var, Ppolynome ppinf, Ppolynome ppsup)
Ppolynome polynome_sigma(Ppolynome pp, Variable var, Ppolynome ppinf, ppsup) returns the sum of pp wh...
Ppolynome polynome_opposed(Ppolynome pp)
Ppolynome polynome_opposed(Ppolynome pp); changes sign of polynomial pp.
void polynome_negate(Ppolynome *ppp)
void polynome_negate(Ppolynome *ppp); changes sign of polynomial *ppp.
Ppolynome polynome_sum_of_power(Ppolynome ppsup, int p)
Ppolynome polynome_sum_of_power(Ppolynome ppsup, int p) calculates the sum of i^p for i=1 to (ppsup),...
void polynome_chg_var(Ppolynome *ppp, Variable v_old, Variable v_new)
void polynome_chg_var(Ppolynome *ppp, Variable v_old, Variable v_new) replace the variable v_old by v...
Ppolynome polynome_sort(Ppolynome *ppp, int *is_inferior_var)
Ppolynome polynome_sort((Ppolynome *) ppp, bool (*is_inferior_var)()) Sorts the polynomial *ppp: mono...
#define POLYNOME_UNDEFINED
#define POLYNOME_UNDEFINED_P(pp)
#define polynome_monome(pp)
#define monome_coeff(pm)
Macros definitions.
#define POLYNOME_NUL_P(pp)
#define polynome_succ(pp)
le type des coefficients dans les vecteurs: Value est defini dans le package arithmetique
#define TCST
VARIABLE REPRESENTANT LE TERME CONSTANT.
void * Variable
arithmetique is a requirement for vecteur, but I do not want to inforce it in all pips files....
int vect_compare(Pvecteur *pv1, Pvecteur *pv2)
for qsort, returns:
Pvecteur vect_sort(Pvecteur v, int *compare)
Pvecteur vect_sort(v, compare) Pvecteur v; int (*compare)();.
void vect_chg_var(Pvecteur *ppv, Variable v_old, Variable v_new)
void vect_chg_var(Pvecteur *ppv, Variable v_old, Variable v_new) replace the variable v_old by v_new