Page 1 sur 1

sign, abs et integrales

Publié : mar. oct. 18, 2011 6:21 pm
par Alek
int(sign(x),x=-1..1) retourne x-1 sous windows (0.9.3).
Curieusement, sous linux cela retourne 0 (la meme version)

D'autres examples (windows):
int(sign(x)*sin(x),x=-pi..pi) donne 2 (correct), mais int(sign(x)*sin(x),x=0..pi) donne 2 aussi.
fourier_bn(sign(x),x,2*pi,1,-pi) donne 2/pi (or c'est plutot 4/pi; si fourier_bn n'est qu'un macro, c'est la meme chose).

int(abs(x)*cos(x), x=-pi..pi) provoque une erreur
(or int(abs(x)*cos(2*x), x=-pi..pi) marche plutot bien).

Re: sign, abs et integrales

Publié : mer. oct. 19, 2011 12:29 pm
par parisse
Alek a écrit :int(sign(x),x=-1..1) retourne x-1 sous windows (0.9.3).
Curieusement, sous linux cela retourne 0 (la meme version)
j'ai corrige un bug la-dedans mais sans changer le numero de version (car ca prend beaucoup de temps...)
D'autres examples (windows):
int(sign(x)*sin(x),x=-pi..pi) donne 2 (correct), mais int(sign(x)*sin(x),x=0..pi) donne 2 aussi.
mauvaise gestion de la discontinuite en 0 de la primitive, je viens de corriger dans le source ca renvoie maintenant 4 pour le 1er et 2 pour le second.
fourier_bn(sign(x),x,2*pi,1,-pi) donne 2/pi (or c'est plutot 4/pi; si fourier_bn n'est qu'un macro, c'est la meme chose).
oui, ca renvoie bien 4/pi apres correction.
int(abs(x)*cos(x), x=-pi..pi) provoque une erreur
(or int(abs(x)*cos(2*x), x=-pi..pi) marche plutot bien).
erreur corrigee! Renvoie -4 maintenant.

Re: sign, abs et integrales

Publié : mer. oct. 19, 2011 5:26 pm
par Alek
Wow.
Merci!
A.