compilation pari 2.8

Librairie C++ de calcul formel/ C++ symbolic computation library

Modérateur : xcasadmin

frederic han
Messages : 1137
Inscription : dim. mai 20, 2007 7:09 am
Localisation : Paris
Contact :

compilation pari 2.8

Message par frederic han » mer. mai 27, 2015 9:41 am

en essayant de mettre a jour le spkg avec le source de giac 1.2.0-11 j'ai l'erreur suivante:

Code : Tout sélectionner

pari.cc: In function 'void giac::do_giac_pari_init(long int)':
pari.cc:94:25: error: 'flisexpr' was not declared in this scope
     flisexpr("[x,y,z,t]");

parisse
Messages : 5739
Inscription : mar. déc. 20, 2005 4:02 pm
Contact :

Re: compilation pari 2.8

Message par parisse » mer. mai 27, 2015 1:53 pm

Tu peux essayer de le declarer, mais ca risque de poser probleme au link.
Il va falloir chercher l'equivalent ou/et ecrire a pari-dev...
Ceci dit, pari 2.8 ce n'est pas une version de developpement?

frederic han
Messages : 1137
Inscription : dim. mai 20, 2007 7:09 am
Localisation : Paris
Contact :

Re: compilation pari 2.8

Message par frederic han » mer. mai 27, 2015 2:27 pm

j'essayais de mettre a jour le spkg et sage git a pari 2.8.

dans le header pari/pariold.h j'ai trouve:

Code : Tout sélectionner

#define flisexpr gp_read_str
donc j'ai remplacé les flisexpr par gp_read_str dans ton pari.cc

la compilation se termine bien, le make check me donne juste:

Code : Tout sélectionner

PASS: chk_limit
255,256c255,256
< 1/20736*(12*x+12*((i)/sqrt(2)-1/sqrt(2)))*(12*x+12*(-(i)/sqrt(2)-1/sqrt(2)))*(12*x+12*((i)/sqrt(2)+1/sqrt(2)))*(12*x+12*(-(i)/sqrt(2)+1/sqrt(2))),
< 1/20736*(12*x+12*((i)/sqrt(2)-1/sqrt(2)))*(12*x+12*(-(i)/sqrt(2)-1/sqrt(2)))*(12*x+12*((i)/sqrt(2)+1/sqrt(2)))*(12*x+12*(-(i)/sqrt(2)+1/sqrt(2))),
---
> 1/20736*(12*x+12*(-1/sqrt(2)+(i)/sqrt(2)))*(12*x+12*(-1/sqrt(2)-(i)/sqrt(2)))*(12*x+12*(1/sqrt(2)+(i)/sqrt(2)))*(12*x+12*(1/sqrt(2)-(i)/sqrt(2))),
> 1/20736*(12*x+12*(-1/sqrt(2)+(i)/sqrt(2)))*(12*x+12*(-1/sqrt(2)-(i)/sqrt(2)))*(12*x+12*(1/sqrt(2)+(i)/sqrt(2)))*(12*x+12*(1/sqrt(2)-(i)/sqrt(2))),
FAIL: chk_cas
PASS: chk_geo
...
PASS: chk_fhan11
131c131
< % abs acos acosh apply arg asin asinh atan atanh binomial bitand bitor bitxor break ceil charpoly concat conj content cos cosh default divisors erfc eval exp factor factorial floor frac gcd global hilbert imag input isprime kill lcm length local matrix max min next nextprime norm print read real round select shift sign simplify sin sinh solve sqrt subst sum tan tanh taylor trace truncate type until valuation vector version write 
---
> % abs acos acosh apply arg asin asinh atan atanh binomial bitand bitor bitxor break ceil charpoly concat conj content cos cosh default divisors erfc eval exp factor factorial floor frac gcd global hilbert imag isprime kill lcm length local matrix max min next nextprime norm print real round select shift sign simplify sin sinh solve sqrt subst sum tan tanh taylor trace truncate type until valuation vector version write 
FAIL: chk_fhan12
ca ne me semble pas etre un veritable erreur, juste l'ordre d'une addition. Chez toi elle est dans un autre ordre ou faut il mettre a jour l'output?

Fred

parisse
Messages : 5739
Inscription : mar. déc. 20, 2005 4:02 pm
Contact :

Re: compilation pari 2.8

Message par parisse » mer. mai 27, 2015 3:20 pm

chez moi, c'est dans le bon ordre pour limit, mais c'est juste un ordre d'addition comme tu le dis. Du coup je vais changer flisexpr en gp_read_str, vu que ça compile avec pari 2.7.

frederic han
Messages : 1137
Inscription : dim. mai 20, 2007 7:09 am
Localisation : Paris
Contact :

Re: compilation pari 2.8

Message par frederic han » mer. juin 17, 2015 10:40 am

j'ai aussi le pb sous fedora avec pari 2.7

Code : Tout sélectionner

< 1/20736*(12*x+12*((i)/sqrt(2)-1/sqrt(2)))*(12*x+12*(-(i)/sqrt(2)-1/sqrt(2)))*(12*x+12*((i)/sqrt(2)+1/sqrt(2)))*(12*x+12*(-(i)/sqrt(2)+1/sqrt(2))),
< 1/20736*(12*x+12*((i)/sqrt(2)-1/sqrt(2)))*(12*x+12*(-(i)/sqrt(2)-1/sqrt(2)))*(12*x+12*((i)/sqrt(2)+1/sqrt(2)))*(12*x+12*(-(i)/sqrt(2)+1/sqrt(2))),
---
> 1/20736*(12*x+12*(-1/sqrt(2)+(i)/sqrt(2)))*(12*x+12*(-1/sqrt(2)-(i)/sqrt(2)))*(12*x+12*(1/sqrt(2)+(i)/sqrt(2)))*(12*x+12*(1/sqrt(2)-(i)/sqrt(2))),
> 1/20736*(12*x+12*(-1/sqrt(2)+(i)/sqrt(2)))*(12*x+12*(-1/sqrt(2)-(i)/sqrt(2)))*(12*x+12*(1/sqrt(2)+(i)/sqrt(2)))*(12*x+12*(1/sqrt(2)-(i)/sqrt(2))),
FAIL: chk_cas
NB: pour le sage spkg j'ai mis un patch qui remplace ce test par un regroup la difference avec ta reponse

parisse
Messages : 5739
Inscription : mar. déc. 20, 2005 4:02 pm
Contact :

Re: compilation pari 2.8

Message par parisse » mer. juin 17, 2015 6:02 pm

si on rajoute un regroup dans le source du test, est-ce que ca donne un resultat constant ?

frederic han
Messages : 1137
Inscription : dim. mai 20, 2007 7:09 am
Localisation : Paris
Contact :

Re: compilation pari 2.8

Message par frederic han » mer. juin 17, 2015 8:32 pm

Non dans les 2 versions j'ai vrai a regroup(A)==A mais faux a quote(A)==quote(B)

En revanche pour avoir un resultat constant (nul) dans les 2 versions je fais:

Code : Tout sélectionner

regroup(factor(x^4+1,exp(i*pi/4))-'1/20736*(12*x+12*(-1/sqrt(2)+(i)/sqrt(2)))*(12*x+12*(-1/sqrt(2)-(i)/sqrt(2)))*(12*x+12*(1/sqrt(2)+(i)/sqrt(2)))*(12*x+12*(1/sqrt(2)-(i)/sqrt(2)))')
Pièces jointes
pari2.8-check.patch.zip
(1.33 Kio) Téléchargé 303 fois

Répondre